@charset "utf-8";

/*Googlefonts*/
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap');

body {
	margin: 0px;
	padding: 0px;
	font-family: "Noto Sans JP", "Arial", Lato, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	color: #172238;
	-webkit-text-size-adjust: 100%;
	font-size: 1.5rem;
	max-width: 1920px;
	margin: 0 auto;
	background-color: #fff;
}

html {
	-ms-overflow-style: scrollbar;
	font-size: 62.5%;
}

.serif {
	font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "ＭＳ Ｐ明朝", "MS PMincho", serif;
}

ul {
	padding: 0;
}

li {
	list-style: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0px;
	padding: 0px;
	font-weight: normal;
	font-size: 100%
}

a {
	transition-property: all;
	transition: 0.2s linear;
	text-decoration: none;
}

_:-ms-lang(x)::-ms-backdrop,
a {
	transition: 0s;
}

a:focus,
*:focus {
	outline: none;
}

p {
	margin: 0px;
	padding: 0px
}

.clearfix:after {
	content: " ";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
}

.clearfix {
	min-height: 1px;
}

* html .clearfix {
	height: 1px;
	/*\*/
	/*/
height: auto;
overflow: hidden;
/**/
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

.moa {
	margin: 0 auto;
}

.tac {
	text-align: center;
}

.tal {
	text-align: left
}

@media (min-width: 992px) {
	.tal {
		text-align: center
	}
}

.left {
	float: left;
}

.right {
	float: right;
}

.mb0 {
	margin-bottom: 0 !important;
}

.mb5 {
	margin-bottom: .5rem !important;
}

.mb10 {
	margin-bottom: 1rem !important;
}

.mb15 {
	margin-bottom: 1.5rem !important;
}

.mb20 {
	margin-bottom: 2rem !important;
}

.mb25 {
	margin-bottom: 2.5rem !important;
}

.mb30 {
	margin-bottom: 3rem !important;
}

.mb35 {
	margin-bottom: 3.5rem !important;
}

.mb40 {
	margin-bottom: 4rem !important;
}

.mb45 {
	margin-bottom: 4.5rem !important;
}

.mb50 {
	margin-bottom: 5rem !important;
}

.mb55 {
	margin-bottom: 5.5rem !important;
}

.mb60 {
	margin-bottom: 6rem !important;
}

.mb65 {
	margin-bottom: 6.5rem !important;
}

.mb70 {
	margin-bottom: 7rem !important;
}

.mb75 {
	margin-bottom: 7.5rem !important;
}

.mb80 {
	margin-bottom: 8rem !important;
}

.mb85 {
	margin-bottom: 8.5rem !important;
}

.mb90 {
	margin-bottom: 9rem !important;
}

.mb95 {
	margin-bottom: 9.5rem !important;
}

.mb100 {
	margin-bottom: 10rem !important;
}

.fwb {
	font-weight: bold;
}

@media (max-width: 767px) {
	.lh2 {
		line-height: 1.8 !important;
	}

	.lh22 {
		line-height: 1.8 !important;
	}
}

@media (min-width: 768px) {
	.lh2 {
		line-height: 1.8 !important;
	}

	.lh22 {
		line-height: 2 !important;
	}
}

@media (min-width: 992px) {
	.lh2 {
		line-height: 2 !important;
	}

	.lh22 {
		line-height: 2.2 !important;
	}
}

.s11 {
	font-size: 1.1rem !important;
	line-height: 1.6;
}

.s12 {
	font-size: 1.2rem !important;
	line-height: 1.6;
}

.s13 {
	font-size: 1.3rem !important;
	line-height: 1.6;
}

.s14 {
	font-size: 1.4rem !important;
	line-height: 1.6;
}

.s14_c {
	font-size: 1.4rem !important;
	line-height: 1.6;
	text-align: center;
}

@media (max-width: 767px) {
	.s15 {
		font-size: 1.5rem !important;
		line-height: 1.7;
	}

	.s16 {
		font-size: 1.5rem !important;
		line-height: 1.7;
	}

	.s15_c {
		font-size: 1.5rem !important;
		line-height: 1.7;
		text-align: left;
	}

	.s16_c {
		font-size: 1.5rem !important;
		line-height: 1.7;
		text-align: left;
	}
}

@media (min-width: 768px) {
	.s15 {
		font-size: 1.5rem !important;
		line-height: 1.7;
	}

	.s16 {
		font-size: 1.6rem !important;
		line-height: 1.7;
	}

	.s15_c {
		font-size: 1.5rem !important;
		line-height: 1.7;
		text-align: center;
	}

	.s16_c {
		font-size: 1.6rem !important;
		line-height: 1.7;
		text-align: center;
	}
}

@media (min-width: 992px) {
	.s15 {
		font-size: 1.5rem !important;
		line-height: 1.7;
	}

	.s16 {
		font-size: 1.6rem !important;
		line-height: 1.7;
	}

	.s15_c {
		font-size: 1.5rem !important;
		line-height: 1.7;
		text-align: center;
	}

	.s16_c {
		font-size: 1.6rem !important;
		line-height: 1.7;
		text-align: center;
	}
}

.s17 {
	font-size: 1.7rem !important;
	line-height: 1.7;
}

.s18 {
	font-size: 1.8rem !important;
	line-height: 1.7;
}

.s19 {
	font-size: 1.9rem !important;
	line-height: 1.7;
}

.s20 {
	font-size: 2rem !important;
	line-height: 1.7;
}

.s21 {
	font-size: 2.1rem !important;
	line-height: 1.7;
}

.s22 {
	font-size: 2.2rem !important;
	line-height: 1.7;
}

.s23 {
	font-size: 2.3rem !important;
	line-height: 1.7;
}

.s24 {
	font-size: 2.4rem !important;
	line-height: 1.7;
}

.s25 {
	font-size: 2.5rem !important;
	line-height: 1.7;
}

.s26 {
	font-size: 2.6rem !important;
	line-height: 1.7;
}

.s27 {
	font-size: 2.7rem !important;
	line-height: 1.7;
}

.s28 {
	font-size: 2.8rem !important;
	line-height: 1.7;
}

.s29 {
	font-size: 2.9rem !important;
	line-height: 1.7;
}

.s30 {
	font-size: 3rem !important;
	line-height: 1.7;
}

.br10 img {
	border-radius: 10px;
}

.br20 img {
	border-radius: 20px;
}

.br30 img {
	border-radius: 30px;
}

img.br10 {
	border-radius: 10px;
}

img.br20 {
	border-radius: 20px;
}

img.br30 {
	border-radius: 30px;
}

a.underline {
	text-decoration: underline;
}

a:hover {
	text-decoration: none;
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
}

.pos {
	position: relative;
}

@media (max-width: 767px) {
	.flex_b {
		display: flex;
		flex-direction: column;
		justify-content: space-between;
	}

	.reverse_sp {
		flex-direction: column-reverse !important;
	}
}

@media (min-width: 768px) {
	.flex_b {
		display: flex;
		flex-direction: row;
		justify-content: space-between;
	}
}

@media (max-width: 767px) {
	.flex_c {
		display: flex;
		flex-direction: column;
		justify-content: center;
	}
}

@media (min-width: 768px) {
	.flex_c {
		display: flex;
		flex-direction: row;
		justify-content: center;
	}
}

@media (max-width: 767px) {
	.flex_s {
		display: flex;
		flex-direction: column;
		justify-content: flex-start;
	}
}

@media (min-width: 768px) {
	.flex_s {
		display: flex;
		flex-direction: row;
		justify-content: flex-start;
	}
}

@media (max-width: 767px) {
	.flex_e {
		display: flex;
		flex-direction: column;
	}
}

@media (min-width: 768px) {
	.flex_e {
		display: flex;
		flex-direction: row;
		justify-content: flex-end;
	}
}

.stretch {
	align-items: stretch;
}

.center {
	align-items: center;
}

.start {
	align-items: flex-start;
}

.end {
	align-items: flex-end;
}

.baseline {
	align-items: baseline;
}

.wrap {
	flex-wrap: wrap;
}

.dg {
	display: grid;
}

@media (max-width: 767px) {
	.cont20 {
		width: 100%;
	}

	.cont21 {
		width: 100%;
	}

	.cont22 {
		width: 100%;
	}

	.cont23 {
		width: 100%;
	}

	.cont24 {
		width: 100%;
	}

	.cont25 {
		width: 100%;
	}

	.cont26 {
		width: 100%;
	}

	.cont27 {
		width: 100%;
	}

	.cont28 {
		width: 100%;
	}

	.cont29 {
		width: 100%;
	}

	.cont30 {
		width: 100%;
	}

	.cont31 {
		width: 100%;
	}

	.cont32 {
		width: 100%;
	}

	.cont33 {
		width: 100%;
	}

	.cont34 {
		width: 100%;
	}

	.cont35 {
		width: 100%;
	}

	.cont36 {
		width: 100%;
	}

	.cont37 {
		width: 100%;
	}

	.cont38 {
		width: 100%;
	}

	.cont39 {
		width: 100%;
	}

	.cont40 {
		width: 100%;
	}

	.cont41 {
		width: 100%;
	}

	.cont42 {
		width: 100%;
	}

	.cont43 {
		width: 100%;
	}

	.cont44 {
		width: 100%;
	}

	.cont45 {
		width: 100%;
	}

	.cont46 {
		width: 100%;
	}

	.cont47 {
		width: 100%;
	}

	.cont48 {
		width: 100%;
	}

	.cont49 {
		width: 100%;
	}

	.cont50 {
		width: 100%;
	}

	.cont51 {
		width: 100%;
	}

	.cont52 {
		width: 100%;
	}

	.cont53 {
		width: 100%;
	}

	.cont54 {
		width: 100%;
	}

	.cont55 {
		width: 100%;
	}

	.cont56 {
		width: 100%;
	}

	.cont57 {
		width: 100%;
	}

	.cont58 {
		width: 100%;
	}

	.cont59 {
		width: 100%;
	}

	.cont60 {
		width: 100%;
	}

	.cont61 {
		width: 100%;
	}

	.cont62 {
		width: 100%;
	}

	.cont63 {
		width: 100%;
	}

	.cont64 {
		width: 100%;
	}

	.cont65 {
		width: 100%;
	}

	.cont66 {
		width: 100%;
	}

	.cont67 {
		width: 100%;
	}

	.cont68 {
		width: 100%;
	}

	.cont69 {
		width: 100%;
	}

	.cont70 {
		width: 100%;
	}

	.cont71 {
		width: 100%;
	}

	.cont72 {
		width: 100%;
	}

	.cont73 {
		width: 100%;
	}

	.cont74 {
		width: 100%;
	}

	.cont75 {
		width: 100%;
	}

	.cont76 {
		width: 100%;
	}

	.cont77 {
		width: 100%;
	}

	.cont78 {
		width: 100%;
	}

	.cont79 {
		width: 100%;
	}

	.cont80 {
		width: 100%;
	}
}

@media (min-width: 768px) {
	.cont20 {
		width: 20%;
	}

	.cont21 {
		width: 21%;
	}

	.cont22 {
		width: 22%;
	}

	.cont23 {
		width: 23%;
	}

	.cont24 {
		width: 24%;
	}

	.cont25 {
		width: 25%;
	}

	.cont26 {
		width: 26%;
	}

	.cont27 {
		width: 27%;
	}

	.cont28 {
		width: 28%;
	}

	.cont29 {
		width: 29%;
	}

	.cont30 {
		width: 30%;
	}

	.cont31 {
		width: 31%;
	}

	.cont32 {
		width: 32%;
	}

	.cont33 {
		width: 33%;
	}

	.cont34 {
		width: 34%;
	}

	.cont35 {
		width: 35%;
	}

	.cont36 {
		width: 36%;
	}

	.cont37 {
		width: 37%;
	}

	.cont38 {
		width: 38%;
	}

	.cont39 {
		width: 39%;
	}

	.cont40 {
		width: 40%;
	}

	.cont41 {
		width: 41%;
	}

	.cont42 {
		width: 42%;
	}

	.cont43 {
		width: 43%;
	}

	.cont44 {
		width: 44%;
	}

	.cont45 {
		width: 45%;
	}

	.cont46 {
		width: 46%;
	}

	.cont47 {
		width: 47%;
	}

	.cont48 {
		width: 48%;
	}

	.cont49 {
		width: 49%;
	}

	.cont50 {
		width: 50%;
	}

	.cont51 {
		width: 51%;
	}

	.cont52 {
		width: 52%;
	}

	.cont53 {
		width: 53%;
	}

	.cont54 {
		width: 54%;
	}

	.cont55 {
		width: 55%;
	}

	.cont56 {
		width: 56%;
	}

	.cont57 {
		width: 57%;
	}

	.cont58 {
		width: 58%;
	}

	.cont59 {
		width: 59%;
	}

	.cont60 {
		width: 60%;
	}

	.cont61 {
		width: 61%;
	}

	.cont62 {
		width: 62%;
	}

	.cont63 {
		width: 63%;
	}

	.cont64 {
		width: 64%;
	}

	.cont65 {
		width: 65%;
	}

	.cont66 {
		width: 66%;
	}

	.cont67 {
		width: 67%;
	}

	.cont68 {
		width: 68%;
	}

	.cont69 {
		width: 69%;
	}

	.cont70 {
		width: 70%;
	}

	.cont71 {
		width: 71%;
	}

	.cont72 {
		width: 72%;
	}

	.cont73 {
		width: 73%;
	}

	.cont74 {
		width: 74%;
	}

	.cont75 {
		width: 75%;
	}

	.cont76 {
		width: 76%;
	}

	.cont77 {
		width: 77%;
	}

	.cont78 {
		width: 78%;
	}

	.cont79 {
		width: 79%;
	}

	.cont80 {
		width: 80%;
	}
}

@media (max-width: 420px) {
	.mb_mainimg {
		margin-bottom: 3rem !important;
	}

	.mb_cont {
		margin-bottom: 4rem !important;
	}

	.mb_cont2 {
		margin-bottom: 4rem !important;
	}

	.mb_cont3 {
		margin-bottom: 2rem !important;
	}

	.mb_cont4 {
		margin-bottom: 1.5rem !important;
	}
}

@media (min-width: 421px) {
	.mb_mainimg {
		margin-bottom: 4rem !important;
	}

	.mb_cont {
		margin-bottom: 4rem !important;
	}

	.mb_cont2 {
		margin-bottom: 4rem !important;
	}

	.mb_cont3 {
		margin-bottom: 3rem !important;
	}

	.mb_cont4 {
		margin-bottom: 2rem !important;
	}
}

@media (min-width: 768px) {
	.mb_mainimg {
		margin-bottom: 4rem !important;
	}

	.mb_cont {
		margin-bottom: 5rem !important;
	}

	.mb_cont2 {
		margin-bottom: 4rem !important;
	}

	.mb_cont3 {
		margin-bottom: 3rem !important;
	}

	.mb_cont4 {
		margin-bottom: 2.5rem !important;
	}
}

@media (min-width: 992px) {
	.mb_mainimg {
		margin-bottom: 5rem !important;
	}

	.mb_cont {
		margin-bottom: 6rem !important;
	}

	.mb_cont2 {
		margin-bottom: 5rem !important;
	}

	.mb_cont3 {
		margin-bottom: 4rem !important;
	}

	.mb_cont4 {
		margin-bottom: 3rem !important;
	}
}

@media (min-width: 1920px) {
	.mb_mainimg {
		margin-bottom: 7rem !important;
	}

	.mb_cont {
		margin-bottom: 7rem !important;
	}

	.mb_cont2 {
		margin-bottom: 5rem !important;
	}

	.mb_cont3 {
		margin-bottom: 4rem !important;
	}

	.mb_cont4 {
		margin-bottom: 3rem !important;
	}
}

.dn {
	display: none;
}

span.tel_link {
	color: inherit;
}

span.tel_link_white {
	color: #fff;
}

@media (min-width: 768px) {
	.smooth {
		clip-path: inset(0 100% 0 0);
		display: inline-block;
		transition: 1s cubic-bezier(0.37, 0, 0.63, 1);
		transition-property: clip-path;
	}

	.smooth.is-animated {
		clip-path: inset(0);
	}

	span.text2 {
		transition-delay: 1s;
	}

	.delay1 {
		animation-delay: 1s;
	}

}

.lead {
	font-weight: 400;
}

/* header
=========================================================================== */

.inner_body {
	max-width: 1920px;
	margin: 0 auto;
	overflow: hidden;
	position: relative;
}

header {
	width: 100%;
	max-width: 1920px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	z-index: 1000;
	padding: 25px 50px 25px 50px;
	box-sizing: border-box;
	transition: background-color .2s, box-shadow .2s, padding .2s;
	background-color: rgba(255, 255, 255, .7);
	backdrop-filter: blur(9px);
}

.inner_h {
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	min-width: 0;
}

h1.logo_h {
	width: auto;
	min-width: 252px;
	margin: 0;
	position: relative;
	z-index: 10;
	line-height: 1;
}

h1.logo_h a {
	display: block;
	color: #123965;
}

.logo_h .logo_sub {
	display: block;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: .04em;
	color: #123965;
	margin-left: 2px;
}

.logo_h .logo_main {
	display: block;
	font-size: 2.2rem;
	font-weight: 500;
	line-height: 1.4;
	letter-spacing: .04em;
	color: #123965;
	margin-top: 6px;
	white-space: nowrap;
}

.gnav {
	margin-left: auto;
}

.info_h {
	display: flex;
	align-items: center;
	margin-left: 40px;
}

.tel_h {
	display: flex;
	align-items: center;
	gap: 6px;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 1.15;
	color: #123965;
	white-space: nowrap;
	margin-right: 35px;
}

.tel_h img {
	width: 15px;
	height: 18px;
	object-fit: contain;
}

.btn_h a {
	width: 181px;
	height: 51px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 7px;
	border-radius: 25px;
	background-color: #1773df;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1;
	color: #fff;
	transition: background-color .25s ease;
}

.btn_h a:hover {
	background-color: #3588e6;
	color: #fff;
	opacity: 1;
}

.btn_h a img {
	width: 19px;
	height: 17px;
	object-fit: contain;
}

.h_fixed {
	position: fixed;
	padding-top: 12px;
	padding-bottom: 12px;
	background-color: rgba(255, 255, 255, .9);
	backdrop-filter: blur(12px);
	box-shadow: 0 1px 10px rgba(18, 57, 101, .08);
}

.bg_sub>header {
	background-color: #fff;
	backdrop-filter: none;
}

.bg_sub>header.h_fixed {
	background-color: #fff;
	backdrop-filter: none;
}

.drawer {
	display: none;
}

@media (min-width: 1200px) and (max-width: 1400px) {
	header {
		padding-right: 30px;
		padding-left: 30px;
	}

	.inner_h {
		justify-content: flex-start;
	}

	h1.logo_h {
		min-width: 235px;
	}

	.logo_h .logo_sub {
		font-size: 1.3rem;
	}

	.logo_h .logo_main {
		font-size: 2rem;
	}

	.gnav {
		margin-left: 8vw;
	}

	.info_h {
		margin-left: auto;
	}

	.tel_h {
		font-size: 2rem;
		margin-right: 18px;
		gap: 4px;
	}

	.btn_h a {
		width: 160px;
		height: 49px;
		font-size: 1.5rem;
	}
}

@media (max-width: 1199px) {
	header {
		padding-right: 10px;
		padding-left: 10px;
	}

	.logo_h .logo_main {
		font-size: 1.9rem;
	}

	.info_h {
		margin-left: 20px;
	}

	.tel_h {
		font-size: 1.8rem;
		margin-right: 15px;
		gap: 3px;
	}

	.btn_h a {
		width: 140px;
		font-size: 1.5rem;
	}
}

@media (max-width: 991px) {
	header {
		padding: 15px 20px 15px;
	}

	.h_fixed {
		padding-top: 15px;
		padding-bottom: 15px;
	}

	.info_h {
		display: none;
	}

	.drawer {
		display: block;
	}

	.gnav {
		position: fixed;
		top: 0;
		left: 100%;
		z-index: 500;
		width: 80%;
		height: 100vh;
		margin-left: 0;
		padding: 90px 25px 140px;
		box-sizing: border-box;
		overflow-x: hidden;
		background-color: #0251a1;
		transition: .5s cubic-bezier(.645, .045, .355, 1);
		pointer-events: none;
	}

	.is-drawer-open .gnav {
		overflow-y: auto;
		-webkit-transform: translateX(-100%);
		transform: translateX(-100%);
		pointer-events: auto;
	}

	body.is-drawer-open {
		overflow: hidden;
	}
}

@media (max-width: 767px) {
	header {
		padding-right: 15px;
		padding-left: 15px;
	}

	h1.logo_h {
		min-width: 0;
	}

	.logo_h .logo_sub {
		font-size: 1rem;
	}

	.logo_h .logo_main {
		font-size: 1.6rem;
		margin-top: 4px;
	}
}

/* ドロワー
--------------------------------------------------------- */
.drawer_btn {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 1000;
	width: 50px;
	height: 50px;
	outline: none !important;
	background-color: transparent;
	transition: background-color .5s;
	-webkit-user-select: none;
	user-select: none;
	border: none;
}

.btn_line {
	position: absolute;
	top: 20px;
	right: 15px;
	bottom: 0;
	left: 0;
	z-index: 100;
	display: block;
	width: 30px;
	height: 2px;
	margin: auto;
	background: #1773df;
	transition: .5s cubic-bezier(.645, .045, .355, 1);
	pointer-events: none;
	box-shadow: 1px 1px 2px 1px rgba(0, 0, 0, 0.1);
}

.is-drawer-open .btn_line {
	background-color: #fff;
}

.btn_line:nth-child(1) {
	-webkit-transform: translateY(-9px);
	transform: translateY(-9px);
}

.is-drawer-open .btn_line:nth-child(1) {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

.is-drawer-open .btn_line:nth-child(2) {
	opacity: 0;
}

.btn_line:nth-child(3) {
	-webkit-transform: translateY(9px);
	transform: translateY(9px);
}

.is-drawer-open .btn_line:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

@media (max-width: 767px) {
	.gnav {
		width: 90%;
		padding-right: 20px;
		padding-left: 20px;
	}

	.drawer__overlay {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 400;
		visibility: hidden;
		width: 100%;
		height: 100vh;
		opacity: 0;
		transition: .5s cubic-bezier(.645, .045, .355, 1);
		pointer-events: none;
	}

	.is-drawer-open .drawer__overlay {
		visibility: visible;
		background: rgba(0, 0, 0, 0.3);
		opacity: 1;
		pointer-events: auto;
	}
}

@media (min-width: 768px) and (max-width:991px) {
	.drawer_btn {
		right: 10px;
	}

	.drawer__overlay {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 400;
		visibility: hidden;
		width: 100%;
		height: 100vh;
		opacity: 0;
		transition: .5s cubic-bezier(.645, .045, .355, 1);
		pointer-events: none;
	}

	.is-drawer-open .drawer__overlay {
		visibility: visible;
		background: rgba(0, 0, 0, 0.3);
		opacity: 1;
		pointer-events: auto;
	}
}

@media (min-width: 992px) {
	.drawer_btn {
		display: none;
	}
}


/* グローバルナビ
--------------------------------------------------------- */
.gnav_item>a {
	display: block;
	text-decoration: none;
	font-weight: 500;
	transition: color .2s, opacity .2s;
}

@media (max-width: 767px) {
	.gnav_items {
		padding-right: 2vw;
		padding-left: 2vw;
	}

	.gnav_item {
		position: relative;
		border-bottom: 1px dotted rgba(255, 255, 255, .45);
	}

	.gnav_item>a {
		padding: .8em .5em;
		color: #fff;
		text-align: left;
		font-size: 1.6rem;
	}

	.gnav_item.active>a,
	.gnav_item>a:hover {
		color: #6eb6fa;
		opacity: 1;
	}
}

@media (min-width: 768px) and (max-width:991px) {
	.gnav_items {
		padding-right: 2vw;
		padding-left: 2vw;
	}

	.gnav_item {
		position: relative;
		border-bottom: 1px solid rgba(255, 255, 255, .35);
	}

	.gnav_item>a {
		padding: .8em .5em;
		color: #fff;
		text-align: left;
		font-size: 1.8rem;
	}

		.gnav_item.active>a,
	.gnav_item>a:hover {
		color: #6eb6fa;
		opacity: 1;
	}
}

@media (min-width: 992px) {
	.gnav_items {
		display: flex;
		align-items: center;
		gap: 42px;
		margin: 0;
	}

	.gnav_item>a {
		position: relative;
		padding: 8px 0;
		font-size: 1.6rem;
		font-weight: 500;
		line-height: 1;
		letter-spacing: 0;
		color: #123965;
		white-space: nowrap;
	}

	.gnav_item>a:hover,
	.gnav_item.active>a {
		color: #123965;
		opacity: 1;
	}

	.gnav_item>a:after {
		content: "";
		position: absolute;
		left: 50%;
		bottom: -8px;
		width: 0;
		height: 2px;
		background-color: #1773df;
		transform: translateX(-50%);
		transition: width .28s ease;
	}

	.gnav_item>a:hover:after,
	.gnav_item.active>a:after {
		width: 30px;
	}
}

@media (min-width: 1200px) and (max-width: 1400px) {
	.gnav_items {
		gap: 2vw;
	}

	.gnav_item>a {
		font-size: 1.55rem;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.gnav_items {
		gap: 15px;
	}

	.gnav_item>a {
		font-size: 1.4rem;
	}
}


/* ドロワー内 連絡先
--------------------------------------------------------- */
.drawer_contact_info {
	margin: 0 2vw 0;
	padding-top: 24px;
}

.drawer_contact_tel {
	display: flex;
	align-items: center;
	gap: 10px;
	margin: 0;
	font-family: "Roboto", Arial, sans-serif;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: .02em;
	color: #fff;
}

.drawer_contact_tel i {
	font-size: 1.5rem;
	color: #b9ddff;
}

.drawer_contact_tel .tel_link {
	color: #fff;
}

.drawer_contact_btn {
	margin-top: 18px;
}

.drawer_contact_btn a {
	height: 52px;
	max-width: 260px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 9px;
	border: 1px solid rgba(255, 255, 255, .75);
	border-radius: 26px;
	background-color: #fff;
	font-size: 1.5rem;
	font-weight: 600;
	color: #0251a1;
	transition: background-color .2s ease, color .2s ease;
}

.drawer_contact_btn a:hover {
	background-color: #eaf5ff;
	color: #0251a1;
	opacity: 1;
}

/* メインイメージ
=========================================================================== */

.bg_mainimg {
	position: relative;
	width: 100%;
	max-width: 1920px;
	height: 970px;
	padding: 0;
}

.mainimg_slider,
.mainimg_swiper,
.mainimg_swiper .swiper-wrapper,
.mainimg_swiper .swiper-slide,
.slide-img {
	width: 100%;
	height: 970px;
}

.mainimg_slider {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

.swiper-container {
	overflow: hidden !important;
	width: 100%;
	height: 100%;
}

.swiper-slide {
	position: relative;
	overflow: hidden;
}

.slide-img {
	display: block;
	overflow: hidden;
}

.slide-img img {
	width: 100%;
	height: 970px;
	object-fit: cover;
	object-position: center top;
	display: block;
	transform: scale(1.1);
	transform-origin: center center;
	will-change: transform;
}

.swiper-slide.is-mainimg-zooming .slide-img img {
	animation: mainimg-zoom-out 6.8s ease-out forwards;
}

.swiper-slide.is-mainimg-end .slide-img img {
	transform: scale(1);
}

@keyframes mainimg-zoom-out {
	from {
		transform: scale(1.1);
	}

	to {
		transform: scale(1);
	}
}

@media (prefers-reduced-motion: reduce) {

	.slide-img img,
	.swiper-slide.is-mainimg-zooming .slide-img img,
	.swiper-slide.is-mainimg-end .slide-img img {
		animation: none;
		transform: scale(1);
	}
}

.overlay_mainimg {
	display: none;
}

.inner_mainimg {
	position: relative;
	z-index: 3;
	width: 100%;
	height: 970px;
	pointer-events: none;
}

.inner_mainimg:before {
	content: "";
	position: absolute;
	top: 70px;
	left: 48%;
	width: 700px;
	height: 700px;
	transform: translateX(-50%);
	border-radius: 50%;
	background: radial-gradient(circle at center, rgba(255, 255, 255, .94) 0%, rgba(255, 255, 255, .82) 24%, rgba(255, 255, 255, .46) 52%, rgba(255, 255, 255, 0) 74%);
	filter: blur(20px);
	pointer-events: none;
}

.cont_mainimg {
	position: absolute;
	top: 270px;
	left: 50%;
	z-index: 2;
	width: 751px;
	transform: translateX(-50%);
	text-align: center;
	pointer-events: auto;
}

.copy_mainimg {
	width: 540px;
	margin: 0 auto;
	font-size: 5.6rem;
	font-weight: 500;
	line-height: 1.25;
	letter-spacing: .12em;
	text-align: center;
}

.copy_mainimg span {
	display: block;
	color: #1773df;
}

.copy_mainimg span.green {
	color: #30ba3d;
}

.deco_line_mainimg {
	position: relative;
	display: block;
	width: 600px;
	height: 60px;
	margin: 0 auto 0;
}

.deco_line_mainimg svg {
	display: block;
	width: 600px;
	height: 60px;
	overflow: visible;
}

.deco_line_mainimg path {
	fill: none;
	stroke: #1773df;
	stroke-width: 1.6;
	stroke-linecap: round;
	opacity: .68;
}

.deco_line_mainimg path:last-child {
	stroke: #35bccd;
	opacity: .62;
}

.text_mainimg {
	margin-top: 21px;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.7778;
	letter-spacing: .2em;
	text-align: center;
	color: #153c68;
}

.btns_mainimg {
	display: flex;
	justify-content: center;
	gap: 24px;
	margin-top: 38px;
}

.btn_mainimg a {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 11px;
	height: 70px;
	border-radius: 35px;
	font-size: 1.7rem;
	font-weight: 500;
	line-height: 1.15;
	color: #fff;
	transition: background-color .25s ease;
}

.btn_mainimg a:hover {
	color: #fff;
	opacity: 1;
}

.btn_mainimg01 a {
	width: 280px;
	background-color: #1773df;
}

.btn_mainimg01 a:hover {
	background-color: #3588e6;
}

.btn_mainimg02 a {
	width: 281px;
	background-color: #30ba3d;
}

.btn_mainimg02 a:hover {
	background-color: #4bc35a;
}

.btn_mainimg img {
	width: 24px;
	height: 24px;
	object-fit: contain;
}

.btn_mainimg02 img {
	height: 21px;
}

a.scroll-guide {
	position: absolute;
	left: 50%;
	bottom: 22px;
	z-index: 5;
	transform: translateX(-50%);
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 16px;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1;
	letter-spacing: .18em;
	color: #fff;
	pointer-events: auto;
}

.scroll-guide i {
	position: relative;
	display: block;
	width: 2px;
	height: 37px;
	background: rgba(255, 255, 255, .5);
	overflow: hidden;
}

.scroll-guide i:after {
	content: "";
	position: absolute;
	top: -100%;
	left: 0;
	width: 2px;
	height: 100%;
	background: #fff;
	animation: scrollLine 2.2s infinite;
}

@keyframes scrollLine {
	to {
		transform: translateY(200%);
	}
}




@media (max-width: 1499px) {
	.bg_mainimg {
	position: relative;
	width: 100%;
	max-width: 1920px;
	height: 800px;
	padding: 0;
}

.mainimg_slider,
.mainimg_swiper,
.mainimg_swiper .swiper-wrapper,
.mainimg_swiper .swiper-slide,
.slide-img {
	width: 100%;
	height: 800px;
}


	.slide-img img {
		width: 100%;
		height: 800px;
		object-fit: cover;
		object-position: center top;
		display: block;
		transform: scale(1.1);
		transform-origin: center center;
		will-change: transform;
	}

	.cont_mainimg {
		width: 650px;
	}

	.copy_mainimg {
		width: 500px;
		font-size: 4.6rem;
	}

		.deco_line_mainimg {
	position: relative;
	display: block;
	width: 400px;
	height: 46px;
	margin: -3px auto 0;
}

.deco_line_mainimg svg {
	display: block;
	width: 400px;
	height: 46px;
	overflow: visible;
	margin: 0 auto;
}

	.text_mainimg {
		font-size: 1.6rem;
		letter-spacing: .16em;
	}

	.btn_mainimg a {
		height: 62px;
		font-size: 1.5rem;
	}

	.btn_mainimg01 a,
	.btn_mainimg02 a {
		width: 250px;
	}
}

@media (max-width: 991px) {
	.bg_mainimg {
	position: relative;
	width: 100%;
	max-width: 1920px;
	height: 700px;
	padding: 0;
}

	.bg_mainimg,
	.mainimg_slider,
	.mainimg_swiper,
	.mainimg_swiper .swiper-wrapper,
	.mainimg_swiper .swiper-slide,
	.slide-img,
	.slide-img img,
	.inner_mainimg {
		height: 700px;
	}

	.slide-img img {
		width: 100%;
		height: 700px;
		object-fit: cover;
		object-position: center top;
		display: block;
		transform: scale(1.1);
		transform-origin: center center;
		will-change: transform;
	}

	.inner_mainimg:before {
		top: 80px;
		width: 580px;
		height: 580px;
	}

	.deco_line_mainimg {
	position: relative;
	display: block;
	width: 300px;
	height: 46px;
	margin: -3px auto 0;
}

.deco_line_mainimg svg {
	display: block;
	width: 300px;
	height: 46px;
	overflow: visible;
	margin: 0 auto;
}


	.cont_mainimg {
		top: 200px;
		width: 580px;
	}

	.copy_mainimg {
		width: 460px;
		font-size: 3.8rem;
		letter-spacing: .1em;
	}

	.text_mainimg {
		font-size: 1.5rem;
		letter-spacing: .13em;
	}

	.btns_mainimg {
		margin-top: 30px;
	}
}

@media (max-width: 767px) {
	.bg_mainimg {
	position: relative;
	width: 100%;
	max-width: 1920px;
	height: 500px;
	padding: 0;
}

	.bg_mainimg,
	.mainimg_slider,
	.mainimg_swiper,
	.mainimg_swiper .swiper-wrapper,
	.mainimg_swiper .swiper-slide,
	.slide-img,
	.slide-img img,
	.inner_mainimg {
		height: 500px;
	}

	.inner_mainimg:before {
		top: 120px;
		width: 320px;
		height: 300px;
			transform: translateX(-50%);
	border-radius: 50%;
	background: radial-gradient(circle at center, rgba(255, 255, 255, .60) 0%, rgba(255, 255, 255, .50) 24%, rgba(255, 255, 255, .25) 52%, rgba(255, 255, 255, 0) 74%);
	filter: blur(20px);
	pointer-events: none;
	}

	.cont_mainimg {
		top: 200px;
		width: calc(100% - 30px);
	}

	.copy_mainimg {
		width: 100%;
		font-size: 2rem;
		letter-spacing: .08em;
		line-height: 1.4;
	}

	.deco_line_mainimg {
		width: 100%;
		max-width: 160px;
		height: 36px;
	}

	.deco_line_mainimg svg {
		display: block;
		width: 160px;
		height: 30px;
		overflow: visible;
	}

	.text_mainimg {
		font-size: 1.3rem;
		letter-spacing: .1em;
		margin-top: 10px;
	}

	.btns_mainimg {
		width: 100%;
		flex-direction: column;
		align-items: center;
		gap: 10px;
		margin-top: 15px;
		display: none;
	}

	.btn_mainimg01,
	.btn_mainimg02 {
		width: 100%;
		max-width: 240px;
	}

	.btn_mainimg01 a,
	.btn_mainimg02 a {
		width: 100%;
		height: 50px;
		font-size: 1.4rem;
	}

	a.scroll-guide {
		display: none;
	}
}

/* index.html
=========================================================================== */

/* top01 イントロ
--------------------------------------------------------- */
.bg_top01 {
	padding: 100px 0 120px;
	background-color: #fff;
}

.container_top01 {
	width: 100%;
	max-width: 1700px;
	margin: 0 auto;
	padding: 0 80px;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 775px 646px;
	gap: 119px;
	align-items: start;
	align-items: center;
}

.pic_top01 {
	width: 775px;
	order: 1;
}

.pic_top01 img {
	width: 775px;
}

.cont_top01 {
	width: 646px;
	padding-top: 61px;
	order: 2;
}

.bg_top01 .sub_top {
	margin-bottom: 40px;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: .12em;
	color: #a8b4c7;
}

.ttl_top01 {
	margin-bottom: 37px;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.5625;
	letter-spacing: .05em;
	color: #0870dc;
}

.ttl_top01 span {
	color: #30ba3d;
}

.bg_top01 p.text {
	font-size: 1.7rem;
	font-weight: 400;
	line-height: 2.15;
	letter-spacing: .019em;
	color: #172238;
}

.btn_line_blue {
	margin-top: 16px;
}

.btn_line_blue a {
	width: 222px;
	height: 66px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 28px;
	box-sizing: border-box;
	border: 1px solid #0870dc;
	border-radius: 2px;
	font-size: 1.6rem;
	font-weight: 700;
	color: #0870dc;
	transition: background-color .25s ease, border-color .25s ease, color .25s ease;
}

.btn_line_blue a:hover {
	background-color: #f1f7ff;
	border-color: #2c82e4;
	color: #2c82e4;
	opacity: 1;
}

@media (min-width: 1200px) and (max-width: 1699px) {
	.container_top01 {
		padding-right: 5vw;
		padding-left: 5vw;
		grid-template-columns: 1.2fr 1fr;
		gap: 7vw;
	}

	.pic_top01,
	.pic_top01 img,
	.cont_top01 {
		width: 100%;
	}

	.bg_top01 p.text {
		white-space: normal;
	}
}

@media (max-width: 1199px) {
	.bg_top01 {
		padding: 95px 0;
	}

	.container_top01 {
		padding-right: 50px;
		padding-left: 50px;
		grid-template-columns: minmax(0, 1.1fr) minmax(0, 1fr);
		gap: 40px;
	}

	.pic_top01,
	.pic_top01 img,
	.cont_top01 {
		width: 100%;
	}

	.cont_top01 {
		min-width: 0;
		order: 2;
		padding-top: 0;
	}

	.pic_top01 {
		order: 1;
	}

	.bg_top01 .sub_top {
		margin-bottom: 28px;
		font-size: 1.1rem;
	}

	.ttl_top01 {
		margin-bottom: 28px;
		font-size: 2.8rem;
		line-height: 1.5;
	}

	.bg_top01 p.text {
		font-size: 1.55rem;
		line-height: 2;
		white-space: normal;
	}

	.btn_line_blue a {
		width: 205px;
		height: 58px;
		font-size: 1.5rem;
	}
}

@media (max-width: 991px) {
	.bg_top01 {
		padding: 70px 0 75px;
	}

	.container_top01 {
		padding-right: 30px;
		padding-left: 30px;
		grid-template-columns: 1fr;
		gap: 35px;
	}

	.cont_top01 {
		padding-top: 0;
		order: 1;
	}


	.pic_top01 {
		order: 2;
	}

	.bg_top01 .sub_top {
		margin-bottom: 22px;
	}

	.ttl_top01 {
		margin-bottom: 24px;
		font-size: 2.6rem;
	}

	.bg_top01 p.text {
		font-size: 1.5rem;
		line-height: 1.95;
		white-space: normal;
	}
}

@media (max-width: 767px) {
	.bg_top01 {
		padding: 0 0 50px;
		position: relative;
		z-index: 100;
	}

	.container_top01 {
		padding-right: 15px;
		padding-left: 15px;
	}

	.cont_top01 {
		padding-top: 0;
		order: 2;
	}


	.pic_top01 {
		order: 1;
		margin-top: -50px;
		width: 110%;
		margin-left: -5%;
	}

	.bg_top01 .sub_top {
		margin-bottom: 20px;
		font-size: 1rem;
	}

	.ttl_top01 {
		font-size: 2.3rem;
		margin-bottom: 25px;
	}

	.bg_top01 p.text {
		font-size: 1.5rem;
		line-height: 2;
	}

	.btn_line_blue a {
		width: 190px;
		height: 58px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0 28px;
		box-sizing: border-box;
		border: 1px solid #0870dc;
		border-radius: 2px;
		font-size: 1.5rem;
		font-weight: 700;
		color: #0870dc;
		transition: background-color .25s ease, border-color .25s ease, color .25s ease;
	}
}

/* top02 最新情報
--------------------------------------------------------- */
.bg_top02 {
	position: relative;
	padding: 180px 0 110px;
	background-color: #0870dc;
	color: #fff;
}

.wave_top02 {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 100%;
	height: 110px;
	pointer-events: none;
}

.wave_top02 svg {
	display: block;
	width: 100%;
	height: 110px;
}

.wave_top02 path {
	fill: #fff;
}

.container_top02 {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1700px;
	margin: 0 auto;
	padding: 0 80px;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 300px 1100px;
	gap: 140px;
}

.head_top02 {
	position: relative;
	padding-top: 22px;
}

.bg_top02 .sub_top_w {
	margin-bottom: 18px;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #dbe8ff;
}

.ttl_top02 {
	margin-bottom: 34px;
	font-size: 5rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: .005em;
	color: #fff;
}

.head_top02 p.text {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2;
	letter-spacing: .02em;
	color: #eaf2ff;
}

.btn_ghost {
	margin-top: 30px;
}

.btn_ghost a {
	width: 190px;
	height: 58px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 22px;
	box-sizing: border-box;
	border: 1px solid rgba(255, 255, 255, .7);
	font-size: 1.5rem;
	font-weight: 500;
	color: #fff;
	transition: background-color .25s ease, border-color .25s ease;
	position: relative;
	z-index: 2;
}

.btn_ghost a:hover {
	background-color: rgba(255, 255, 255, .12);
	border-color: rgba(255, 255, 255, .92);
	color: #fff;
	opacity: 1;
}

.deco_top02 {
	position: absolute;
	left: -48px;
	top: 100px;
	width: 260px;
	opacity: .5;
}

.tabs_news {
	display: flex;
	align-items: center;
	gap: 9px;
	margin: 0 0 27px;
	padding: 0;
	list-style: none;
}

.tabs_news li {
	margin: 0;
}

.tabs_news li a {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 47px;
	padding: 0 12px;
	box-sizing: border-box;
	border: 1px solid rgba(255, 255, 255, .45);
	background-color: transparent;
	font-family: inherit;
	font-size: 1.4rem;
	font-weight: 500;
	color: #fff;
	white-space: nowrap;
	transition: background-color .2s ease, border-color .2s ease;
}



.tabs_news li a:hover,
.tabs_news li.active a,
.tabs_news li.active a:hover,
.tabs_news li.active a:focus {
	background-color: rgba(255, 255, 255, .12);
	border-color: rgba(255, 255, 255, .65);
	color: #fff;
	opacity: 1;
}

.list_news {
	margin: 0;
	border-top: 1px solid rgba(255, 255, 255, .4);
}

.news_item {
	margin: 0;
	border-bottom: 1px solid rgba(255, 255, 255, .4);
}

.news_item>.news_link,
.news_item>.news_row {
	display: grid;
	grid-template-columns: 110px 140px 1fr 50px;
	align-items: center;
	gap: 24px;
	min-height: 84px;
	box-sizing: border-box;
}

.news_item>.news_link {
	transition: background-color .2s ease;
}

.news_item>.news_link:hover {
	/* background-color: rgba(255, 255, 255, .05); */
	opacity: 1;
}

.news_item .date {
	font-size: 1.6rem;
	font-weight: 500;
	white-space: nowrap;
	color: #fff;
}

.new_top02 {
	display: inline-block;
	margin-left: 7px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .06em;
	vertical-align: middle;
	color: #ff4a4a;
}

.news_item .cat {
	padding: 8px 10px;
	border: 1px solid rgba(255, 255, 255, .55);
	font-size: 1.3rem;
	line-height: 1.2;
	text-align: center;
	color: #fff;
}

.news_item .ttl {
	font-size: 1.6rem;
	font-weight: 700;
	line-height: 1.85;
	letter-spacing: .02em;
	color: #fff;
}

.news_item .arrow {
	font-size: 1.6rem;
	text-align: center;
	color: #fff;
	width: 50px;
}

.news_item .arrow a {
	display: block;
	color: #fff;
}

@media (min-width: 1200px) and (max-width: 1699px) {
	.container_top02 {
		padding-right: 5vw;
		padding-left: 5vw;
		grid-template-columns: 3fr 11fr;
		gap: 8.2vw;
	}
}

@media (max-width: 1199px) {
	.bg_top02 {
		padding: 145px 0 95px;
	}

	.container_top02 {
		padding-right: 50px;
		padding-left: 50px;
		grid-template-columns: 220px minmax(0, 1fr);
		gap: 50px;
	}

	.cont_top02 {
		min-width: 0;
	}

	.bg_top02 .sub_top_w {
		font-size: 1.1rem;
	}

	.ttl_top02 {
		margin-bottom: 28px;
		font-size: 4.2rem;
	}

	.head_top02 p.text {
		font-size: 1.5rem;
		line-height: 1.9;
	}

	.tabs_news li a {
		height: 44px;
		font-size: 1.3rem;
	}

	.news_item .date,
	.news_item .ttl {
		font-size: 1.4rem;
	}

	.news_item .cat {
		font-size: 1.2rem;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {

	.news_item>.news_link,
	.news_item>.news_row {
		grid-template-columns: 96px 120px minmax(0, 1fr) 20px;
		gap: 16px;
	}
}

@media (max-width: 991px) {
	.bg_top02 {
		padding: 110px 0 85px;
	}

	.container_top02 {
		padding-right: 30px;
		padding-left: 30px;
		grid-template-columns: 1fr;
		gap: 45px;
	}

	.head_top02 {
		padding-top: 0;
	}

	.deco_top02 {
		right: 0;
		left: auto;
		top: 20px;
	}

	.ttl_top02 {
		margin-bottom: 25px;
		font-size: 3.5rem;
	}

	.head_top02 p.text {
		font-size: 1.45rem;
	}

	.tabs_news {
		margin-bottom: 22px;
	}

	.news_item>.news_link,
	.news_item>.news_row {
		min-height: 76px;
	}
}

@media (max-width: 767px) {
	.container_top02 {
		padding-right: 15px;
		padding-left: 15px;
	}

	.bg_top02 .sub_top_w {
		margin-bottom: 10px;
		font-size: 1.1rem;
		font-weight: 700;
		line-height: 1;
		letter-spacing: .18em;
		color: #dbe8ff;
	}

	.ttl_top02 {
		font-size: 3rem;
	}

	.wave_top02,
	.wave_top02 svg {
		height: 60px;
	}

	.tabs_news {
		gap: 5px;
		margin-bottom: 27px;
		overflow-x: auto;
	}

	.head_top02 p.text {
		font-size: 1.6rem;
		line-height: 2;
	}

	.tabs_news li a {
		height: 42px;
		padding: 0 10px;
		font-size: 1.4rem;
	}

	.news_item>.news_link {
		grid-template-columns: max-content max-content minmax(0, 1fr) 18px;
		grid-template-areas:
			"date cat spacer arrow"
			"ttl ttl ttl arrow";
		column-gap: 8px;
		row-gap: 8px;
		min-height: 0;
		padding: 13px 0;
	}

	.news_item>.news_row {
		grid-template-columns: max-content max-content minmax(0, 1fr);
		grid-template-areas:
			"date cat spacer"
			"ttl ttl ttl";
		column-gap: 8px;
		row-gap: 8px;
		min-height: 0;
		padding: 13px 0;
	}

	.news_item .date {
		grid-area: date;
		display: flex;
		align-items: center;
		gap: 6px;
		font-size: 1.2rem;
	}

	.news_item .date .new_top02 {
		margin-left: 0;
		flex: 0 0 auto;
	}

	.news_item .cat {
		grid-area: cat;
		align-self: center;
		padding: 5px 8px;
		font-size: 1rem;
		white-space: nowrap;
	}

	.news_item .ttl {
		grid-area: ttl;
		min-width: 0;
		font-size: 1.3rem;
		line-height: 1.65;
	}

	.news_item .arrow {
		grid-area: arrow;
		align-self: center;
		justify-self: end;
		font-size: 1.5rem;
	}
}

/* top03 私たちの活動
--------------------------------------------------------- */
.bg_top03 {
	padding: 148px 0 239px;
	background-color: #fff;
}

.container_top03 {
	width: 100%;
	max-width: 1700px;
	margin: 0 auto;
	padding: 0 80px;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 655px 720px;
	gap: 165px;
}

.bg_top03 .sub_top_b {
	margin-bottom: 29px;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #0870dc;
}

.ttl_top03 {
	margin-bottom: 36px;
	font-size: 5.4rem;
	font-weight: 500;
	line-height: 1.4352;
	letter-spacing: .005em;
	color: #172238;
}

.lead_top03 {
	margin-bottom: 48px;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1.9;
	letter-spacing: .02em;
	color: #172238;
}

.lead_top03 span {
	color: #30ba3d;
}

.pics_top03 {
	position: relative;
	padding-bottom: 68px;
}

.pic_top03_1 {
	width: 655px;
	overflow: hidden;
	border-radius: 22px;
}

.pic_top03_1 img {
	width: 655px;
}

.pic_top03_2_wrap {
	position: absolute;
	top: 326px;
	left: 159px;
	display: flex;
	align-items: center;
	gap: 46px;
}

.pic_top03_label {
	width: 179px;
	padding-top: 32px;
	font-size: 1rem;
	font-weight: 700;
	line-height: 1.7;
	letter-spacing: .16em;
	text-align: center;
	color: #adb6c5;
}

.pic_top03_2 {
	width: 314px;
	margin: 0;
	border: 10px solid #fff;
	border-radius: 18px;
	background-color: #fff;
	box-sizing: content-box;
	overflow: hidden;
}

.pic_top03_2 img {
	display: block;
	width: 314px;
}

.cont_top03_r {
	padding-top: 24px;
}

.list_top03 li {
	display: grid;
	grid-template-columns: 52px 1fr;
	gap: 27px;
	padding: 24px 0 28px;
	border-bottom: 1px solid #dce3ec;
}

.list_top03 li:first-child {
	border-top: 1px solid #dce3ec;
}

.list_top03 .num {
	width: 40px;
	height: 40px;
	border-radius: 50%;
	background-color: #0870dc;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 40px;
	text-align: center;
	color: #fff;
}

.box_top03 .ttl {
	margin-bottom: 10px;
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.85;
	letter-spacing: .016em;
	color: #172238;
}

.box_top03 .text {
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 2;
	letter-spacing: .02em;
	color: #536174;
}

.cont_top03_r .btn_line_blue {
	margin-top: 36px;
}

@media (min-width: 1200px) and (max-width: 1699px) {
	.bg_top03 {
		padding: 148px 0 70px;
		background-color: #fff;
	}

	.container_top03 {
		padding-right: 5vw;
		padding-left: 5vw;
		grid-template-columns: 1fr 1.1fr;
		gap: 9.7vw;
	}

	.pic_top03_1,
	.pic_top03_1 img {
		width: 100%;
	}

	.pic_top03_2_wrap {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		bottom: auto;
		align-items: flex-end;
		justify-content: flex-end;
		gap: 28px;
		margin-top: -20px;
	}

	.pic_top03_label {
		width: auto;
		padding-top: 0;
		padding-bottom: 24px;
	}
}

@media (max-width: 1199px) {
	.bg_top03 {
		padding: 105px 0 80px;
		background-color: #fff;
	}

	.container_top03 {
		padding-right: 50px;
		padding-left: 50px;
		grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
		gap: 45px;
	}

	.cont_top03_l,
	.cont_top03_r {
		min-width: 0;
	}

	.pic_top03_1,
	.pic_top03_1 img {
		width: 100%;
	}

	.pic_top03_2_wrap {
		position: relative;
		top: auto;
		left: auto;
		right: auto;
		bottom: auto;
		align-items: flex-end;
		justify-content: flex-end;
		gap: 28px;
		margin-top: -20px;
	}

	.pic_top03_label {
		width: auto;
		padding-top: 0;
		padding-bottom: 24px;
	}

	.bg_top03 .sub_top_b {
		margin-bottom: 22px;
		font-size: 1.1rem;
	}

	.ttl_top03 {
		margin-bottom: 28px;
		font-size: 4.2rem;
	}

	.lead_top03 {
		margin-bottom: 36px;
		font-size: 1.8rem;
		line-height: 1.8;
	}

	.box_top03 .ttl {
		font-size: 1.8rem;
	}

	.box_top03 .text {
		font-size: 1.4rem;
		line-height: 1.9;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.pic_top03_2_wrap {
		gap: 18px;
	}

	.pic_top03_label {
		flex: 1;
	}

	.pic_top03_2 {
		width: 58%;
		border-width: 8px;
		box-sizing: border-box;
	}

	.pic_top03_2 img {
		width: 100%;
	}
}

@media (max-width: 991px) {
	.bg_top03 {
		padding: 90px 0;
	}

	.container_top03 {
		padding-right: 30px;
		padding-left: 30px;
		grid-template-columns: 1fr;
		gap: 50px;
	}

	.cont_top03_r {
		padding-top: 0;
	}

	.ttl_top03 {
		margin-bottom: 26px;
		font-size: 3.5rem;
	}

	.lead_top03 {
		margin-bottom: 32px;
		font-size: 1.7rem;
	}

	.list_top03 li {
		padding: 20px 0 23px;
	}
}

@media (max-width: 767px) {
	.bg_top03 {
		padding: 70px 0;
	}

	.container_top03 {
		padding-right: 15px;
		padding-left: 15px;
	}

	.ttl_top03 {
		font-size: 2.7rem;
		margin-bottom: 25px;
	}

	.lead_top03 {
		font-size: 1.7rem;
	}

	.pic_top03_2_wrap {
		gap: 15px;
	}

	.pic_top03_2 {
		width: 50%;
		border-width: 6px;
		box-sizing: border-box;
	}

	.pic_top03_2 img {
		width: 100%;
	}

	.list_top03 li {
		grid-template-columns: 42px 1fr;
		gap: 10px;
		padding: 24px 0 28px;
	}

	.list_top03 .num {
		width: 38px;
		height: 38px;
		line-height: 38px;
	}

	.box_top03 .ttl {
		font-size: 2rem;
	}

	.box_top03 .text {
		font-size: 1.5rem;
		line-height: 2;
	}

	.bg_top03 .sub_top_b {
		margin-bottom: 15px;
		font-size: 1rem;
	}
}

/* top04 助成金について
--------------------------------------------------------- */
.bg_top04 {
	padding: 148px 0 112px;
	background-color: #0db45a;
	color: #fff;
}

.container_top04 {
	width: 100%;
	max-width: 1700px;
	margin: 0 auto;
	padding: 0 80px;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 638px 833px;
	gap: 69px;
	align-items: start;
}

.cont_top04 {
	padding-top: 43px;
}

.bg_top04 .sub_top_g {
	margin-bottom: 18px;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: rgba(255, 255, 255, .75);
}

.ttl_top04 {
	margin-bottom: 35px;
	font-size: 5.4rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: .005em;
	color: #fff;
}

.lead_top04 {
	margin-bottom: 48px;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: .011em;
	color: #fff;
}

.bg_top04 p.text {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2;
	letter-spacing: .02em;
	color: #fff;
}

.btns_top04 {
	display: flex;
	gap: 30px;
	margin-top: 62px;
}

.btn_line_white a {
	width: 240px;
	height: 54px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 25px;
	box-sizing: border-box;
	border: 1px solid rgba(255, 255, 255, .8);
	font-size: 1.5rem;
	font-weight: 500;
	color: #fff;
	transition: background-color .25s ease, border-color .25s ease;
}

.btn_line_white a:hover {
	background-color: rgba(255, 255, 255, .13);
	border-color: #fff;
	color: #fff;
	opacity: 1;
}

.pics_top04 {
	position: relative;
	min-height: 602px;
}

.pic_top04_1 {
	position: absolute;
	top: 0;
	left: 87px;
	width: 447px;
	height: 413px;
	overflow: hidden;
	border-radius: 24px;
}

.pic_top04_1 img {
	width: 447px;
	height: 413px;
	object-fit: cover;
}

.pic_top04_2 {
	position: absolute;
	right: 0;
	bottom: 0;
	width: 523px;
}

.pic_top04_2 img {
	width: 523px;
}

@media (min-width: 1200px) and (max-width: 1699px) {
	.container_top04 {
		padding-right: 5vw;
		padding-left: 5vw;
		grid-template-columns: 1fr 1.3fr;
		gap: 4vw;
	}
}

@media (min-width: 1200px) and (max-width: 1399px) {
	.btns_top04 {
		gap: 15px;
	}

	.btns_top04 .btn_line_white a {
		width: 210px;
	}
}

@media (max-width: 1199px) {
	.bg_top04 {
		padding: 105px 0 90px;
	}

	.container_top04 {
		padding-right: 50px;
		padding-left: 50px;
		grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
		gap: 40px;
	}

	.cont_top04,
	.pics_top04 {
		min-width: 0;
	}

	.pic_top04_1 {
		left: 0;
	}

	.bg_top04 .sub_top_g {
		font-size: 1.1rem;
	}

	.ttl_top04 {
		margin-bottom: 28px;
		font-size: 4.2rem;
	}

	.lead_top04 {
		margin-bottom: 35px;
		font-size: 2.6rem;
		line-height: 1.45;
	}

	.bg_top04 p.text {
		font-size: 1.5rem;
		line-height: 1.9;
	}

	.btn_line_white a {
		height: 50px;
		font-size: 1.4rem;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.btns_top04 {
		flex-wrap: nowrap;
		gap: 12px;
		margin-top: 38px;
	}

	.btns_top04 .btn_line_white a {
		width: 190px;
		padding: 0 20px;
	}

	.pic_top04_1 {
		width: 76%;
		height: auto;
	}

	.pic_top04_1 img {
		width: 100%;
		height: auto;
	}

	.pic_top04_2 {
		width: 92%;
	}

	.pic_top04_2 img {
		width: 100%;
	}
}

@media (max-width: 991px) {
	.bg_top04 {
		padding: 70px 0;
	}

	.container_top04 {
		padding-right: 30px;
		padding-left: 30px;
		grid-template-columns: 1fr;
		gap: 50px;
	}

	.cont_top04 {
		padding-top: 0;
	}

	.pics_top04 {
		min-height: 520px;
	}

	.bg_top04 .sub_top_g {
		margin-bottom: 14px;
	}

	.ttl_top04 {
		margin-bottom: 24px;
		font-size: 3.5rem;
	}

	.lead_top04 {
		margin-bottom: 28px;
		font-size: 2.3rem;
	}

	.bg_top04 p.text {
		font-size: 1.45rem;
	}

	.btns_top04 {
		margin-top: 38px;
	}
}

@media (max-width: 767px) {
	.container_top04 {
		padding-right: 15px;
		padding-left: 15px;
	}

	.bg_top04 .sub_top_g {
		margin-bottom: 18px;
		font-size: 1.2rem;
	}

	.ttl_top04 {
		font-size: 2.7rem;
		margin-bottom: 25px;
	}

	.lead_top04 {
		font-size: 2rem;
		margin-bottom: 25px;
	}

	.bg_top04 p.text {
		font-size: 1.6rem;
		line-height: 2;
	}

	.btn_line_white a {
		height: 54px;
		font-size: 1.5rem;
	}

	.btns_top04 {
		flex-direction: column;
		gap: 12px;
		margin-top: 40px;
	}

	.pics_top04 {
		min-height: 0;
	}

	.pic_top04_1,
	.pic_top04_2 {
		position: relative;
		top: auto;
		right: auto;
		bottom: auto;
		left: auto;
	}

	.pic_top04_1 {
		width: 75%;
		height: auto;
	}

	.pic_top04_1 img {
		width: 100%;
		height: auto;
	}

	.pic_top04_2 {
		width: 82%;
		margin: -25px 0 0 auto;
	}
}

/* top05 基金について
--------------------------------------------------------- */
.bg_top05 {
	position: relative;
	padding: 199px 0 162px;
	background: url(../images/bg_top05.jpg) center center / cover no-repeat;
	color: #fff;
}

.overlay_top05 {
	position: absolute;
	inset: 0;
	background-color: rgba(18, 70, 139, .78);
}

.container_top05 {
	position: relative;
	z-index: 2;
	width: 100%;
	max-width: 1700px;
	margin: 0 auto;
	padding: 0 80px;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: 635px 730px;
	gap: 175px;
	align-items: start;
}

.bg_top05 .sub_top_w {
	margin-bottom: 33px;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #edf3ff;
}

.ttl_top05 {
	margin-bottom: 48px;
	font-size: 5.4rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: .005em;
	color: #fff;
}

.lead_top05 {
	margin-bottom: 38px;
	font-size: 3.2rem;
	font-weight: 700;
	line-height: 1.5997;
	letter-spacing: .01em;
	color: #fff;
}

.bg_top05 p.text {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2;
	letter-spacing: .02em;
	color: #edf3ff;
}

.bg_top05 .btn_line_white {
	margin-top: 33px;
}

.bg_top05 .btn_line_white a {
	width: 220px;
	height: 64px;
}

.box_top05 {
	padding-top: 53px;
}

.list_top05 {
	display: grid;
	grid-template-columns: 365px 365px;
	margin: 0;
	border-top: 1px solid rgba(255, 255, 255, .62);
	border-left: 1px solid rgba(255, 255, 255, .62);
}

.list_top05 li {
	min-height: 190px;
	padding: 31px 32px 20px;
	box-sizing: border-box;
	border-right: 1px solid rgba(255, 255, 255, .62);
	border-bottom: 1px solid rgba(255, 255, 255, .62);
}

.list_top05 .label {
	margin-bottom: 24px;
	font-size: 1.3rem;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: .025em;
	color: #dbe6ff;
}

.data_top05 {
	display: flex;
	align-items: baseline;
	margin: 0;
}

.list_top05 .num {
	display: block;
	font-variant-numeric: tabular-nums;
	font-size: 8.4rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: -.04em;
	color: #fff;
}

.list_top05 .unit {
	display: block;
	margin-left: 9px;
	font-size: 1.5rem;
	font-weight: 400;
	line-height: 1.85;
	letter-spacing: .021em;
	color: #e3ebff;
}

@media (min-width: 1200px) and (max-width: 1699px) {
	.container_top05 {
		padding-right: 5vw;
		padding-left: 5vw;
		grid-template-columns: 1fr 1.15fr;
		gap: 10.3vw;
	}

	.cont_top05,
	.box_top05 {
		min-width: 0;
	}

	.list_top05 {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 1199px) {
	.bg_top05 {
		padding: 120px 0 105px;
	}

	.container_top05 {
		padding-right: 50px;
		padding-left: 50px;
		grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
		gap: 45px;
	}

	.cont_top05,
	.box_top05 {
		min-width: 0;
	}

	.list_top05 {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	}

	.bg_top05 .sub_top_w {
		margin-bottom: 24px;
		font-size: 1.1rem;
	}

	.ttl_top05 {
		margin-bottom: 34px;
		font-size: 4.2rem;
	}

	.lead_top05 {
		margin-bottom: 30px;
		font-size: 2.6rem;
		line-height: 1.5;
	}

	.bg_top05 p.text {
		font-size: 1.5rem;
		line-height: 1.9;
	}

	.list_top05 .label {
		font-size: 1.2rem;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.list_top05 li {
		padding: 28px 20px 20px;
	}

	.list_top05 .num {
		font-size: 6.4rem;
	}

	.list_top05 .unit {
		font-size: 1.4rem;
	}
}

@media (max-width: 991px) {
	.bg_top05 {
		padding: 70px 0;
	}

	.container_top05 {
		padding-right: 30px;
		padding-left: 30px;
		grid-template-columns: 1fr;
		gap: 45px;
	}

	.box_top05 {
		padding-top: 0;
	}

	.bg_top05 .sub_top_w {
		margin-bottom: 18px;
	}

	.ttl_top05 {
		margin-bottom: 26px;
		font-size: 3.5rem;
	}

	.lead_top05 {
		margin-bottom: 26px;
		font-size: 2.3rem;
	}

	.bg_top05 p.text {
		font-size: 1.45rem;
	}

	.list_top05 .num {
		font-size: 6rem;
	}

	.list_top05 .unit {
		font-size: 1.3rem;
	}
}

@media (max-width: 991px) {
	.bg_top05 p.text {
		white-space: normal;
	}
}

@media (max-width: 767px) {
	.container_top05 {
		padding-right: 15px;
		padding-left: 15px;
	}

	.bg_top05 .sub_top_w {
		margin-bottom: 33px;
		font-size: 1.2rem;
	}

	.ttl_top05 {
		font-size: 2.7rem;
		margin-bottom: 25px;
	}

	.lead_top05 {
		font-size: 2rem;
		margin-bottom: 25px;
	}

	.bg_top05 p.text {
		font-size: 1.6rem;
		line-height: 2;
	}

	.list_top05 .label {
		font-size: 1.3rem;
	}

	.list_top05 .unit {
		font-size: 1.5rem;
	}

	.list_top05 {
		grid-template-columns: 1fr;
	}

	.list_top05 li {
		min-height: 0;
		padding: 25px 30px 20px;
	}

	.list_top05 .num {
		font-size: 5.4rem;
	}

	.list_top05 li {}
}




/* top06 お問い合わせ
--------------------------------------------------------- */
.bg_top06 {
	padding: 111px 0 98px;
	background-color: #fff;
}

.container_top06 {
	width: 100%;
	max-width: 1340px;
	margin: 0 auto;
	display: grid;
	grid-template-columns: 546px 668px;
	gap: 126px;
	align-items: start;
}


.cont_top06 {
	padding-top: 68px;
}

.bg_top06 .sub_top_b {
	margin-bottom: 20px;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #0870dc;
}

.ttl_top06 {
	margin-bottom: 53px;
	font-size: 5.4rem;
	font-weight: 500;
	line-height: 1.2;
	letter-spacing: .005em;
	color: #0870dc;
}

.bg_top06 p.text {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2;
	letter-spacing: .02em;
	color: #172238;
	white-space: nowrap;
}

.btns_top06 {
	display: flex;
	gap: 16px;
	margin-top: 42px;
}

.btn_tel_top06 {
	width: 270px;
	height: 98px;
	padding: 14px 20px;
	box-sizing: border-box;
	border: 1px solid #30ba3d;
	display: flex;
	flex-direction: column;
	justify-content: center;
	transition: background-color .25s ease, border-color .25s ease;
}

.btn_tel_top06:hover {
	background-color: #f3fff7;
	border-color: #47c568;
}

.btn_tel_label {
	margin-bottom: 6px;
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 1.4;
	color: #172238;
}

.btn_tel_top06 .tel_link {
	font-family: "Roboto", Arial, sans-serif;
	font-size: 2.7rem;
	font-weight: 700;
	line-height: 1;
	color: #30ba3d;
}

.btn_mail_top06 a {
	width: 260px;
	height: 97px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 25px;
	box-sizing: border-box;
	background-color: #30ba3d;
	font-size: 1.6rem;
	font-weight: 500;
	color: #fff;
	transition: background-color .25s ease;
}

.btn_mail_top06 a:hover {
	background-color: #47c568;
	color: #fff;
	opacity: 1;
}

.pic_top06,
.pic_top06 img {
	width: 668px;
}

@media (min-width: 1200px) and (max-width: 1400px) {
	.container_top06 {
		width: calc(100% - 100px);
		grid-template-columns: 1fr 1.22fr;
		gap: 6vw;
	}

	.bg_top06 p.text {
		white-space: normal;
	}

	.btns_top06 {
		gap: 12px;
	}

	.btn_tel_top06 {
		width: 235px;
	}

	.btn_mail_top06 a {
		width: 215px;
	}

	.pic_top06,
	.pic_top06 img {
		width: 100%;
	}
}

@media (max-width: 1199px) {
	.bg_top06 {
		padding: 90px 0 80px;
	}

	.container_top06 {
		width: calc(100% - 100px);
		grid-template-columns: minmax(0, .95fr) minmax(0, 1.05fr);
		gap: 40px;
	}

	.cont_top06,
	.pic_top06 {
		min-width: 0;
	}

	.pic_top06,
	.pic_top06 img {
		width: 100%;
	}

	.bg_top06 p.text {
		white-space: normal;
	}

	.btns_top06 {
		flex-wrap: wrap;
		gap: 12px;
		margin-top: 34px;
	}

	.bg_top06 .sub_top_b {
		font-size: 1.1rem;
	}

	.ttl_top06 {
		margin-bottom: 35px;
		font-size: 4.2rem;
	}

	.bg_top06 p.text {
		font-size: 1.5rem;
		line-height: 1.9;
	}

	.btn_tel_top06 {
		height: 88px;
	}

	.btn_tel_top06 .tel_link {
		font-size: 2.3rem;
	}

	.btn_mail_top06 a {
		height: 88px;
		font-size: 1.5rem;
	}
}

@media (min-width: 992px) and (max-width: 1199px) {
	.btns_top06 {
		flex-wrap: nowrap;
	}

	.btn_tel_top06 {
		width: 195px;
		padding-right: 12px;
		padding-left: 12px;
	}

	.btn_tel_top06 .tel_link {
		font-size: 2.1rem;
	}

	.btn_mail_top06 a {
		width: 198px;
		padding-right: 15px;
		padding-left: 15px;
		font-size: 1.4rem;
	}
}

@media (max-width: 991px) {
	.bg_top06 {
		padding: 70px 0;
	}

	.container_top06 {
		width: calc(100% - 60px);
		grid-template-columns: 1fr;
		gap: 40px;
	}

	.ttl_top06 {
		margin-bottom: 28px;
		font-size: 3.5rem;
	}

	.bg_top06 p.text {
		font-size: 1.45rem;
	}

	.btns_top06 {
		margin-top: 28px;
	}

	.btn_tel_top06 .tel_link {
		font-size: 2.2rem;
	}
}

@media (max-width: 991px) {
	.cont_top06 {
		padding-top: 0;
	}

	.bg_top06 p.text {
		white-space: normal;
	}
}

@media (max-width: 767px) {
	.container_top06 {
		width: calc(100% - 30px);
		gap: 45px;
	}

	.ttl_top06 {
		font-size: 2.7rem;
		margin-bottom: 30px;
	}

	.bg_top06 .sub_top_b {
		margin-bottom: 10px;
		font-size: 1.1rem;
		font-weight: 700;
		line-height: 1;
		letter-spacing: .18em;
		color: #0870dc;
	}

	.bg_top06 p.text {
		font-size: 1.6rem;
		line-height: 2;
	}

	.btns_top06 {
		flex-direction: column;
		margin-top: 20px;
	}

	.btn_tel_top06 {
		height: 98px;
	}

	.btn_tel_top06 .tel_link {
		font-size: 2.7rem;
	}

	.btn_tel_top06,
	.btn_mail_top06 a {
		width: 100%;
	}

	.btn_mail_top06 a {
		width: 100%;
		height: 64px;
		display: flex;
		align-items: center;
		justify-content: space-between;
		padding: 0 25px;
		box-sizing: border-box;
		background-color: #30ba3d;
		font-size: 1.6rem;
		font-weight: 500;
		color: #fff;
		transition: background-color .25s ease;
	}
}

/* フッター
=========================================================================== */

footer {
	position: relative;
	padding: 160px 0 40px;
	background: #0565C9 url(../images/bg_f.jpg) center top / 1920px auto no-repeat;
	color: #fff;
}

.wave_footer {
	position: absolute;
	top: -12px;
	left: 0;
	width: 100%;
	height: 12px;
	pointer-events: none;
	background: url(../images/wave_footer.png) left top / auto 12px repeat-x;
}

.inner_footer {
	width: 100%;
	max-width: 1340px;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
	padding-bottom: 70px;
	border-bottom: 1px solid rgba(255, 255, 255, .24);
}

.footer_l {
	width: 620px;
}

.footer_r {
	width: 560px;
}

p.logo_f {
	width: auto;
	margin-bottom: 24px;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: .04em;
	color: #fff;
}

p.logo_f span {
	font-size: 2.4rem;
}

p.text_f {
	font-size: 1.4rem;
	line-height: 2;
	letter-spacing: .02em;
	color: rgba(255, 255, 255, .9);
	margin-bottom: 0;
}

p.text_f span.tel_link {
	color: #fff;
}

span.btn_map_f a {
    display: inline-block;
    margin-left: 10px;
}

span.btn_map_f a img {
	width:16px;
}

ul.fnav {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 15px 65px;
	padding-top: 12px;
}

ul.fnav li {
	margin: 0;
}

ul.fnav li a {
	font-size: 1.4rem;
	font-weight: 500;
	color: #fff;
}

p.copyright {
	width: 100%;
	margin-top: 40px;
	font-size: 1rem;
	line-height: 1.7;
	letter-spacing: .02em;
	text-align: center;
	color: #afc3f0;
}

@media (min-width: 1200px) and (max-width: 1400px) {
	.inner_footer {
		width: calc(100% - 100px);
	}

	.footer_l {
		width: 46.5%;
	}

	.footer_r {
		width: 42%;
	}
}

@media (max-width: 1199px) {
	.inner_footer {
		width: calc(100% - 100px);
	}
}

@media (max-width: 991px) {
	.inner_footer {
		width: calc(100% - 60px);
		gap: 40px;
	}
}

@media (max-width: 767px) {
	footer {
		padding-top: 60px;
	}

	.inner_footer {
		width: calc(100% - 30px);
		flex-direction: column;
		gap: 20px;
		margin-bottom: 20px;
		padding-bottom: 30px;
	}

	.footer_l,
	.footer_r {
		width: 100%;
	}

	ul.fnav {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	p.pagetop a {
		position: fixed;
		bottom: 15px;
		right: 15px;
		width: 30px;
		height: 31px;
		z-index: 999;
	}

	p.pagetop a img {
		width: 30px;
		height: 31px;
	}
}

p.pagetop a {
	transition: filter .25s ease;
}

p.pagetop a:hover {
	filter: brightness(1.08);
	opacity: 1;
}

@media (min-width: 768px) {
	p.pagetop a {
		position: fixed;
		bottom: 35px;
		right: 35px;
		width: 56px;
		height: 57px;
		z-index: 999;
	}

	p.pagetop a img {
		width: 56px;
		height: 57px;
	}
}

@media (min-width: 1921px) {
	p.pagetop a {
		right: calc(50% - 920px);
		z-index: 99;
	}
}




/* 下層ページ メインビジュアル共通
--------------------------------------------------------- */
.bg_sub {
	position: relative;
	height: 400px;
	background: #0870dc url(../images/bg_f.jpg) right bottom / 1920px auto no-repeat;
	padding-top: 130px;
}

.bg_sub:before {
	content: none;
	display: none;
}

.bg_sub>[class^="inner_sub_"] {
	height: 100%;
	min-height: 100%;
}

.inner_sub {
	width: 100%;
	max-width: 1140px;
	margin: 0 auto;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	padding: 80px 30px 0;
}

.en_sub {
	margin-bottom: 18px;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	text-transform: uppercase;
	color: #d7f0ff;
}

h2.sub {
	font-size: 4.8rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: .02em;
	color: #fff;
	text-shadow: 0 2px 12px rgba(5, 47, 99, .22);
}

@media (max-width: 991px) {
	.bg_sub {
		height: 300px;
	}

	.inner_sub {
		width: 100%;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		align-items: flex-start;
		padding: 30px 30px 0;
	}

	.en_sub {
		margin-bottom: 10px;
		font-size: 1.1rem;
		font-weight: 700;
		line-height: 1;
		letter-spacing: .18em;
		text-transform: uppercase;
		color: #d7f0ff;
	}

	h2.sub {
		font-size: 3.6rem;
		font-weight: 600;
		line-height: 1.3;
		letter-spacing: .02em;
		color: #fff;
		text-shadow: 0 2px 12px rgba(5, 47, 99, .22);
	}
}

@media (max-width: 767px) {
	.bg_sub {
		height: 240px;
		background-size: auto 100%;
		background-position: center center;
	}

	.inner_sub {
		width: 100%;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		align-items: center;
		padding: 0px 30px 0;
	}

	.en_sub {
		margin-bottom: 10px;
		font-size: 1rem;
		font-weight: 700;
		line-height: 1;
		letter-spacing: .18em;
		text-transform: uppercase;
		color: #d7f0ff;
	}

	h2.sub {
		font-size: 2.7rem;
		font-weight: 600;
		line-height: 1.3;
		letter-spacing: .02em;
		color: #fff;
		text-shadow: 0 2px 12px rgba(5, 47, 99, .22);
	}
}








/* grant.html 助成金について
=========================================================================== */


.deco_sub_grant {
	position: absolute;
	right: -80px;
	bottom: 0;
	width: 760px;
	height: 245px;
	opacity: .75;
}

.deco_sub_grant svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

.deco_sub_grant path {
	fill: none;
	stroke-linecap: round;
}

.deco_sub_grant .river01 {
	stroke: rgba(23, 115, 223, .16);
	stroke-width: 54px;
}

.deco_sub_grant .river02 {
	stroke: rgba(48, 186, 61, .12);
	stroke-width: 18px;
}

.is-drawer-open .bg_sub .btn_line {
	background-color: #fff;
}

.breadcrumb_grant {
	border-bottom: 1px solid #e8eef4;
	background-color: #fff;
}

.breadcrumb_grant .container_grant {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-top: 16px;
	padding-bottom: 16px;
	font-size: 1.2rem;
	color: #7c8b99;
}

.breadcrumb_grant a {
	color: #52708d;
}

.breadcrumb_grant a:hover {
	color: #0870dc;
	opacity: 1;
}

.container_grant {
	width: 96%;
	max-width: 1140px;
	margin: 0 auto;
}

.bg_grant01 {
	padding: 100px 0 100px;
	background-color: #fff;
}

.block_intro_grant {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 75px;
}

.pic_intro_grant {
	position: relative;
	width: 47%;
}

.pic_intro_grant:before {
	content: "";
	position: absolute;
	left: -18px;
	bottom: -18px;
	width: 118px;
	height: 118px;
	border-radius: 50%;
	background-color: #ddf5e4;
	z-index: 0;
}

.pic_intro_grant img {
	position: relative;
	z-index: 1;
	width: 100%;
	border-radius: 34px 8px 34px 8px;
}

.cont_intro_grant {
	width: 53%;
}

.sub_grant {
	margin-bottom: 15px;
	font-size: 1.2rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #0870dc;
}

.ttl_grant {
	font-size: 3.6rem;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: .02em;
	color: #123965;
}

.lead_grant {
	margin-top: 28px;
	font-size: 2.3rem;
	font-weight: 600;
	line-height: 1.75;
	letter-spacing: .02em;
	color: #0870dc;
}

.lead_grant span {
	color: #30ba3d;
}

.bg_grant01 p.text,
.bg_grant02 p.text,
.bg_grant03 p.text,
.bg_grant04 p.text {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2;
	letter-spacing: .02em;
	color: #344658;
}

.cont_intro_grant p.text {
	margin-top: 25px;
}

.bg_grant02 {
	padding: 115px 0 120px;
	background-color: #dff2ff;
}

.bg_grant02 .sub_grant,
.bg_grant02 .ttl_grant,
.bg_grant02 .intro_text_grant,
.bg_grant02 .note_grant {
	color: #1773df;
}

.bg_grant02 .intro_text_grant {
	color: #344658;
}

.bg_grant02 .list_require_grant li {
	color: #344658;
}

.bg_grant02 .note_grant {
	color: #52708d;
}

.bg_grant02 .list_require_grant li:before {
	border-color: #1773df;
}

.head_grant {
	margin-bottom: 35px;
}

.list_require_grant {
	max-width: 880px;
	margin: 28px 0 25px;
}

.list_require_grant li {
	position: relative;
	padding: 7px 0 7px 30px;
	font-size: 1.5rem;
	line-height: 1.8;
	color: #344658;
}

.list_require_grant li:before {
	content: "";
	position: absolute;
	top: 15px;
	left: 2px;
	width: 13px;
	height: 7px;
	border-left: 2px solid #30ba3d;
	border-bottom: 2px solid #30ba3d;
	transform: rotate(-45deg);
}

.note_grant {
	font-size: 1.4rem;
	line-height: 1.9;
	color: #6c7c8d;
}

.activities_grant {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 28px;
	margin-top: 70px;
}

.box_activity_grant {
	padding: 45px 45px 42px;
	border: 1px solid #dbe8f3;
	border-radius: 0;
	background-color: #fff;
}

.box_activity01_grant {
	border-top: 3px solid #1773df;
}

.box_activity02_grant {
	border-top: 3px solid #30ba3d;
}

.head_activity_grant {
	display: flex;
	align-items: center;
	gap: 16px;
	margin-bottom: 18px;
}

.head_activity_grant .num {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #1773df;
	font-family: Arial, sans-serif;
	font-size: 1.5rem;
	font-weight: 700;
	color: #fff;
}

.box_activity02_grant .head_activity_grant .num {
	background-color: #30ba3d;
}

.head_activity_grant h4 {
	font-size: 2.3rem;
	font-weight: 600;
	line-height: 1.5;
	color: #123965;
}

.box_activity_grant .lead {
	font-size: 1.7rem;
	line-height: 1.9;
	color: #344658;
}

.box_activity_grant .label {
	display: inline-block;
	margin: 25px 0 12px;
	font-size: 1.6rem;
	font-weight: 700;
	color: #0870dc;
}

.box_activity02_grant .label {
	color: #229632;
}

.list_activity_grant {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 5px 20px;
}

.list_activity_grant li {
	position: relative;
	padding-left: 10px;
	font-size: 1.6rem;
	line-height: 1.6;
	color: #445668;
}

.list_activity_grant li:before {
	content: "";
	position: absolute;
	top: 11px;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #7db8f1;
}

.box_activity02_grant .list_activity_grant li:before {
	background-color: #76ce80;
}

.box_exclude_grant {
	margin-top: 30px;
	padding: 35px 42px;
	border-left: 3px solid #1773df;
	background-color: #fff;
}

.box_exclude_grant h4 {
	margin-bottom: 14px;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.5;
	color: #28445f;
}

.box_exclude_grant ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 5px 35px;
	margin-top: 18px;
}

.box_exclude_grant li {
	position: relative;
	padding-left: 16px;
	font-size: 1.6rem;
	line-height: 1.6;
	color: #546778;
}

.box_exclude_grant li:before {
	content: "";
	position: absolute;
	top: 12px;
	left: 0;
	width: 6px;
	height: 1px;
	background-color: #8093a5;
}

.bg_grant03 {
	padding: 115px 0 120px;
	background-color: #1773df;
}

.bg_grant03 .block_amount_grant .sub_grant,
.bg_grant03 .flow_grant>.head_grant .sub_grant {
	color: #c8e6ff;
}

.bg_grant03 .block_amount_grant .ttl_grant,
.bg_grant03 .block_cost_grant .ttl_grant,
.bg_grant03 .flow_grant>.head_grant .ttl_grant,
.bg_grant03 .block_amount_grant p.text,
.bg_grant03 .block_cost_grant p.text {
	color: #fff;
}

.block_amount_grant {
	display: grid;
	grid-template-columns: 390px 1fr;
	gap: 80px;
	align-items: center;
	padding-bottom: 70px;
	border-bottom: 1px solid rgba(255, 255, 255, .35);
}

.amount_grant {
	display: flex;
	align-items: baseline;
	gap: 5px;
	margin-top: 18px;
	color: #fff;
}

.amount_grant span {
	font-size: 1.8rem;
	font-weight: 600;
}

.amount_grant strong {
	font-family: Arial, sans-serif;
	font-size: 9rem;
	font-weight: 700;
	line-height: 1;
	color: #fff;
}

.block_cost_grant {
	padding: 70px 0 85px;
}

.block_cost_grant .ttl_grant {
	margin-bottom: 25px;
}

.btn_doc_grant {
	margin-top: 28px;
}

.btn_doc_grant a {
	display: inline-block;
	text-decoration: none;
}

.btn_doc_grant a:hover {
	opacity: 1;
}

.btn_doc_grant span {
	width: 275px;
	height: 55px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 20px;
	box-sizing: border-box;
	border: 1px solid #1773df;
	background-color: #fff;
	font-size: 1.4rem;
	font-weight: 500;
	color: #1773df;
}

.btn_doc_grant span:hover {
	background-color: #f1f7ff;
	border-color: #2c82e4;
	color: #2c82e4;
	opacity: 1;
}



.flow_grant {
	padding-top: 70px;
	border-top: 1px solid rgba(255, 255, 255, .35);
}

.list_flow_grant {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	width: 100%;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	counter-reset: grantstep;
}

.list_flow_grant li {
	position: relative;
	padding: 28px 25px 30px;
	border-top: 3px solid #1773df;
	background-color: #fff;
	border-radius: 8px;
}

.list_flow_grant li:after {
	content: "";
	position: absolute;
	top: 42px;
	right: -14px;
	width: 26px;
	height: 26px;
	border-top: 1px solid #9db9d1;
	border-right: 1px solid #9db9d1;
	transform: rotate(45deg);
	background-color: #fff;
	z-index: 2;
}

.list_flow_grant li:nth-child(3):after,
.list_flow_grant li:nth-child(6):after,
.list_flow_grant li:last-child:after {
	display: none;
}

.list_flow_grant .step {
	margin-bottom: 12px;
	font-family: Arial, sans-serif;
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: .08em;
	color: #1773df;
}

.list_flow_grant h4 {
	font-size: 1.9rem;
	font-weight: 600;
	line-height: 1.55;
	color: #123965;
}

.list_flow_grant p.text {
	margin-top: 15px;
	font-size: 1.5rem;
	line-height: 1.85;
}

.box_documents_grant {
	margin-top: 35px;
	padding: 48px 50px;
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
	gap: 50px;
	border-radius: 20px;
	background-color: #fff;
}

.box_documents_grant>div {
	flex: 1;
}

.box_documents_grant .ttl_grant {
	margin-bottom: 20px;
	font-size: 3rem;
}

.list_documents_grant {
	display: flex;
	flex-wrap: wrap;
	gap: 7px 22px;
	margin: 20px 0 18px;
}

.list_documents_grant li {
	position: relative;
	padding-left: 17px;
	font-size: 1.6rem;
	line-height: 1.8;
	color: #445668;
}

.list_documents_grant li:before {
	content: "○";
	position: absolute;
	left: 0;
	top: 0;
	color: #30ba3d;
}

.box_documents_grant .btn_doc_grant {
	flex: 0 0 250px;
	margin: 0;
}

.box_documents_grant .btn_doc_grant span {
	width: 250px;
}

.bg_grant04 {
	padding: 115px 0 125px;
	background-color: #fff;
}

.block_notes_grant {
	padding-bottom: 50px;
	border-bottom: 1px solid #e1eaf1;
}

.cont_notes_grant .ttl_grant,
.block_report_grant .ttl_grant {
	margin-bottom: 28px;
}

.list_check_grant {
	width: 100%;
	margin-top: 25px;
	padding: 26px 28px;
	border: 2px solid #30ba3d;
	border-radius: 20px;
	background-color: #f0fdf1;
}

.list_check_grant li {
	position: relative;
	padding: 8px 0 8px 31px;
	font-size: 1.6rem;
	line-height: 1.8;
	color: #344658;
}

.list_check_grant li:before {
	content: "";
	position: absolute;
	top: 15px;
	left: 3px;
	width: 14px;
	height: 8px;
	border-left: 2px solid #30ba3d;
	border-bottom: 2px solid #30ba3d;
	transform: rotate(-45deg);
}

.box_credit_grant {
	padding: 10px 28px;
	border: 1px solid #d9e5ee;
	background-color: #e0f1e1;
	margin-top: 15px;
	max-width: 380px;
}

.box_credit_grant .label {
	margin-bottom: 10px;
	font-size: 1.4rem;
	font-weight: 700;
	letter-spacing: .08em;
	color: #30ba3d;
	padding: 0;
}

.box_credit_grant p:last-child {
	font-size: 1.5rem;
	line-height: 1.8;
	color: #344658;
}

.block_report_grant {
	padding: 50px 0 35px;
}

.ttl_small_grant {
	margin-top: 35px;
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 1.6;
	color: #123965;
}

.list_report_grant {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px 40px;
	margin-top: 18px;
	padding: 30px 28px;
	border: 2px solid #1773df;
	border-radius: 20px;
	background-color: #f2f7fd;
}

.list_report_grant li {
	position: relative;
	padding-left: 16px;
	font-size: 1.6rem;
	line-height: 1.8;
	color: #445668;
}

.list_report_grant li:before {
	content: "";
	position: absolute;
	top: 11px;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #1773df;
}

.results_grant {
	margin-top: 30px;
}

.btn_results_grant {
	width: 100%;
	max-width: 1140px;
	height: 80px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 28px;
	border: none;
	border-radius: 8px;
	background-color: #1773df;
	font-size: 2.4rem;
	font-weight: 600;
	color: #fff;
	cursor: pointer;
	transition: background-color .25s ease;
}

.btn_results_grant:hover {
	background-color: #3588e6;
}

.btn_results_grant i {
	transition: transform .25s ease;
}

.btn_results_grant.is-open i {
	transform: rotate(180deg);
}

.slide_results_grant {
	margin-top: 10px;
	padding: 45px 0 38px;
}

.slide_results_grant[hidden] {
	display: none;
}

.head_results_grant {
	margin-bottom: 25px;
}

.head_results_grant .ttl_grant {
	font-size: 3rem;
}

.scroll_results_grant {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
}

.table_results_grant {
	width: 100%;
	min-width: 1100px;
	border-collapse: collapse;
	background-color: #fff;
}

.table_results_grant th,
.table_results_grant td {
	border: 1px solid #bfd0de;
	vertical-align: top;
}

.table_results_grant th {
	padding: 14px 10px;
	background-color: #e8f5ff;
	font-size: 1.2rem;
	font-weight: 600;
	line-height: 1.5;
	text-align: center;
	color: #23435d;
}

.table_results_grant td {
	padding: 14px 12px;
	font-size: 1.2rem;
	line-height: 1.75;
	color: #344658;
}

.table_results_grant .num_result,
.table_results_grant .people_result {
	text-align: center;
	white-space: nowrap;
}

.table_results_grant .num_result {
	width: 52px;
	font-weight: 700;
	color: #0870dc;
}

.table_results_grant .name_result {
	width: 190px;
	font-weight: 600;
	color: #23435d;
}

.table_results_grant .people_result {
	width: 80px;
}

.table_results_grant .note_result {
	width: 420px;
}

.table_results_grant .note_result p+p {
	margin-top: 8px;
}

.table_results_grant .total_result td {
	background-color: #edf8ec;
	font-weight: 700;
	text-align: center;
	color: #22522a;
}

.bg_grant05 {
	padding: 110px 0 130px;
	background-color: #f5f9fc;
}

.container_faq_grant {
	max-width: 1140px;
}

.head_faq_grant {
	text-align: center;
	margin-bottom: 45px;
}

.faq_grant {
	border-top: 1px solid #dce6ee;
}

.item_faq_grant {
	border-bottom: 1px solid #dce6ee;
	background-color: #fff;
}

.btn_faq_grant {
	position: relative;
	width: 100%;
	min-height: 86px;
	display: grid;
	grid-template-columns: 46px 1fr 28px;
	align-items: center;
	padding: 22px 28px 22px 30px;
	border: none;
	background-color: #fff;
	text-align: left;
	cursor: pointer;
	transition: background-color .2s ease;
}

.btn_faq_grant:hover {
	background-color: #f8fbff;
}

.btn_faq_grant .q,
.answer_faq_grant .a {
	font-family: Arial, sans-serif;
	font-size: 2.4rem;
	font-weight: 700;
	color: #1773df;
}

.btn_faq_grant .question {
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.7;
	color: #223e58;
}

.icon_faq_grant {
	position: relative;
	width: 24px;
	height: 24px;
}

.icon_faq_grant:before,
.icon_faq_grant:after {
	content: "";
	position: absolute;
	top: 11px;
	left: 4px;
	width: 16px;
	height: 2px;
	background-color: #1773df;
	transition: transform .25s ease;
}

.icon_faq_grant:after {
	transform: rotate(90deg);
}

.btn_faq_grant.is-open .icon_faq_grant:after {
	transform: rotate(0deg);
}

.answer_faq_grant {
	display: none;
	padding: 0 30px 30px;
}

.answer_faq_grant>div {
	display: grid;
	grid-template-columns: 46px 1fr;
	padding: 25px 28px;
	background-color: #eef7ff;
}

.answer_faq_grant .a {
	color: #30ba3d;
}

.answer_faq_grant p {
	font-size: 1.7rem;
	line-height: 1.9;
	color: #344658;
}

@media (max-width: 1199px) {
	.deco_sub_grant {
		right: -180px;
	}

	.block_intro_grant {
		gap: 55px;
	}

	.list_flow_grant {
		grid-template-columns: repeat(2, 1fr);
	}

	.list_flow_grant li:nth-child(2):after,
	.list_flow_grant li:nth-child(4):after,
	.list_flow_grant li:nth-child(6):after,
	.list_flow_grant li:nth-child(8):after {
		display: none;
	}

	.list_flow_grant li:nth-child(3):after {
		display: block;
	}
}

@media (max-width: 991px) {

	.inner_sub_grant {
		padding-top: 60px;
	}

	.deco_sub_grant {
		width: 650px;
		right: -270px;
	}

	.ttl_sub_grant {
		font-size: 4.2rem;
	}

	.bg_grant01,
	.bg_grant02,
	.bg_grant03,
	.bg_grant04,
	.bg_grant05 {
		padding-top: 85px;
		padding-bottom: 90px;
	}

	.block_intro_grant {
		align-items: flex-start;
		gap: 40px;
	}

	.ttl_grant {
		font-size: 3.2rem;
	}

	.lead_grant {
		font-size: 2rem;
	}

	.activities_grant {
		grid-template-columns: 1fr;
	}

	.box_activity_grant .lead {
		min-height: 0;
		font-size: 1.6rem;
	}

	.block_amount_grant {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.box_documents_grant {
		align-items: flex-start;
		flex-direction: column;
	}

	.box_documents_grant .btn_doc_grant {
		flex: none;
	}

	.block_notes_grant {
		grid-template-columns: 1fr;
		gap: 35px;
	}

	.box_credit_grant {
		max-width: 420px;
	}
}

@media (max-width: 767px) {

	.head_grant {
		margin-bottom: 20px;
	}


	.inner_sub_grant {
		width: calc(100% - 30px);
		padding-top: 55px;
	}

	.en_sub_grant {
		font-size: 1rem;
		margin-bottom: 10px;
	}

	.ttl_sub_grant {
		font-size: 3rem;
	}

	.deco_sub_grant {
		right: -360px;
		bottom: -30px;
		width: 610px;
	}

	.breadcrumb_grant .container_grant {
		padding-top: 13px;
		padding-bottom: 13px;
	}

	.container_grant {
		width: calc(100% - 30px);
	}

	.bg_grant01,
	.bg_grant02,
	.bg_grant03,
	.bg_grant04,
	.bg_grant05 {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.block_intro_grant {
		display: block;
	}

	.pic_intro_grant,
	.cont_intro_grant {
		width: 100%;
	}

	.pic_intro_grant {
		margin-bottom: 45px;
	}

	.pic_intro_grant img {
		border-radius: 24px 6px 24px 6px;
	}

	.sub_grant {
		font-size: 1rem;
		margin-bottom: 10px;
	}

	.ttl_grant {
		font-size: 2.1rem;
	}

	.lead_grant {
		margin-top: 20px;
		font-size: 1.9rem;
	}

	.bg_grant01 p.text,
	.bg_grant02 p.text,
	.bg_grant03 p.text,
	.bg_grant04 p.text {
		font-size: 1.4rem;
		line-height: 1.9;
	}

	.list_require_grant li,
	.list_check_grant li {
		font-size: 1.4rem;
	}

	.activities_grant {
		margin-top: 50px;
	}

	.box_activity_grant {
		padding: 32px 25px 30px;
		border-radius: 0;
	}

	.head_activity_grant {
		align-items: center;
		gap: 10px;
	}

	.head_activity_grant .num {
		width: 36px;
		height: 36px;
		flex: 0 0 36px;
	}

	.head_activity_grant h4 {
		font-size: 2rem;
	}

	.list_activity_grant,
	.box_exclude_grant ul,
	.list_report_grant {
		grid-template-columns: 1fr;
	}

	.box_exclude_grant {
		padding: 28px 24px;
	}

	.block_amount_grant {
		padding-bottom: 50px;
	}

	.amount_grant {
		flex-wrap: wrap;
	}

	.amount_grant strong {
		font-size: 6rem;
	}

	.block_cost_grant {
		padding: 55px 0 65px;
	}

	.btn_doc_grant span,
	.box_documents_grant .btn_doc_grant span {
		width: 100%;
	}

	.flow_grant {
		padding-top: 55px;
	}

	.list_flow_grant {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.list_flow_grant li {
		padding: 25px 22px;
	}

	.list_flow_grant li:after {
		display: none !important;
	}

	.list_flow_grant h4 {
		min-height: 0;
	}

	.list_flow_grant .step {
		margin-bottom: 5px;
		font-family: Arial, sans-serif;
		font-size: 1.1rem;
		font-weight: 700;
		letter-spacing: .08em;
		color: #1773df;
	}

	.box_documents_grant {
		margin-top: 25px;
		padding: 32px 24px;
		border-radius: 22px;
	}

	.box_documents_grant .ttl_grant {
		font-size: 2.1rem;
	}

	.block_notes_grant {
		padding-bottom: 65px;
	}

	.block_report_grant {
		padding-top: 65px;
	}

	.btn_results_grant {
		height: 60px;
		padding: 0 22px;
		font-size: 1.5rem;
	}

	.slide_results_grant {
		padding: 32px 18px 25px;
	}

	.head_results_grant .ttl_grant {
		font-size: 2.5rem;
	}

	.head_faq_grant {
		margin-bottom: 32px;
	}

	.btn_faq_grant {
		min-height: 76px;
		grid-template-columns: 38px 1fr 24px;
		padding: 20px 18px;
	}

	.btn_faq_grant .q,
	.answer_faq_grant .a {
		font-size: 2.1rem;
	}

	.btn_faq_grant .question {
		font-size: 1.5rem;
	}

	.answer_faq_grant {
		padding: 0 15px 20px;
	}

	.answer_faq_grant>div {
		grid-template-columns: 38px 1fr;
		padding: 22px 18px;
	}

	.answer_faq_grant p {
		font-size: 1.4rem;
	}
}


/* service.html 活動内容
=========================================================================== */
.inner_sub_service {
	position: relative;
	z-index: 2;
	width: 90%;
	max-width: 1140px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	padding-top: 80px;
	box-sizing: border-box;
}

.cont_sub_service {
	position: relative;
	z-index: 3;
}

.en_sub_service {
	margin-bottom: 18px;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #d7f0ff;
}

.ttl_sub_service {
	font-size: 4.8rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: .02em;
	color: #fff;
	text-shadow: 0 2px 12px rgba(5, 47, 99, .22);
}

.deco_sub_service {
	position: absolute;
	right: -80px;
	bottom: 0;
	width: 760px;
	height: 245px;
	opacity: .78;
}

.deco_sub_service svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

.deco_sub_service path {
	fill: none;
	stroke-linecap: round;
}

.deco_sub_service .river01 {
	stroke: rgba(48, 186, 61, .14);
	stroke-width: 54px;
}

.deco_sub_service .river02 {
	stroke: rgba(23, 115, 223, .12);
	stroke-width: 18px;
}

.breadcrumb_service {
	border-bottom: 1px solid #e8eef4;
	background-color: #fff;
}

.breadcrumb_service .container_service {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-top: 16px;
	padding-bottom: 16px;
	font-size: 1.2rem;
	color: #7c8b99;
}

.breadcrumb_service a {
	color: #52708d;
}

.breadcrumb_service a:hover {
	color: #0870dc;
	opacity: 1;
}

.container_service {
	width: 96%;
	max-width: 1140px;
	margin: 0 auto;
}

.bg_service01,
.bg_service02,
.bg_service03,
.bg_service04,
.bg_service05,
.bg_service06 {
	position: relative;
}

.bg_service01 p.text,
.bg_service02 p.text,
.bg_service03 p.text,
.bg_service04 p.text,
.bg_service05 p.text,
.bg_service06 p.text {
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 2;
	letter-spacing: .02em;
	color: #344658;
}

.bg_service01 {
	padding: 80px 0 80px;
	/* background: #dff2ff url(../images/bg_service01_water.jpg) center center / cover no-repeat; */
	background-color: #dff2ff;
}

.intro_service {
	padding: 58px 70px 60px;
	border: 1px solid rgba(184, 223, 197, .85);
	border-radius: 42px 8px 42px 8px;
	background-color: rgba(255, 255, 255, .9);
	backdrop-filter: blur(1px);
	text-align: center;
}

.ttl_intro_service {
	margin-bottom: 28px;
	font-size: 2.7rem;
	font-weight: 600;
	line-height: 1.55;
	letter-spacing: .03em;
	color: #1773df;
}

.intro_service p.text {
	max-width: inherit;
	margin: 0 auto;
	line-height: 2;
}

.bg_service02 {
	padding: 115px 0 120px;
	background-color: #f7fbff;
}

.head_service {
	margin-bottom: 45px;
}

.center_service {
	text-align: center;
}

.ttl_service {
	font-size: 3.6rem;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: .02em;
	color: #123965;
}

.block_dam_service {
	display: grid;
	grid-template-columns: 46% 54%;
	gap: 65px;
	align-items: start;
}

.pic_dam_service {
	position: sticky;
	top: 120px;
}

.pic_dam_service:before {
	content: "";
	position: absolute;
	left: -50px;
	bottom: -60px;
	width: 110px;
	height: 110px;
	z-index: -1;
	border-radius: 50%;
	background-color: #deefff;
}

.pic_dam_service img {
	position: relative;
	z-index: 1;
	width: 100%;
	border-radius: 34px 8px 34px 8px;
}

.roles_service {
	border-top: 1px solid #d9e6f0;
}

.item_role_service {
	display: grid;
	grid-template-columns: 50px 1fr;
	gap: 18px;
	padding: 22px 0;
	border-bottom: 1px solid #d9e6f0;
}

.item_role_service .num {
	width: 34px;
	height: 34px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	background-color: #1773df;
	font-family: Arial, sans-serif;
	font-size: 1.1rem;
	font-weight: 700;
	color: #fff;
}

.item_role_service h4 {
	margin-bottom: 7px;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.5;
	color: #123965;
}

.item_role_service p {
	font-size: 1.5rem;
	line-height: 1.85;
	color: #506273;
}

.note_dam_service {
	margin-top: 42px;
	padding: 30px 24px;
	background-color: #eef6ff;
	font-size: 1.6rem;
	line-height: 1.9;
	color: #4d6377;
}

.bg_service03 {
	padding: 115px 0 120px;
	background-color: #1773df;
}

.bg_service03 .ttl_service,
.bg_service03 p.text {
	color: #fff;
}

.text_role_service {
	position: relative;
	max-width: 940px;
	margin: 0 auto;
	padding: 0 55px;
}

.text_role_service:before,
.text_role_service:after {
	content: "";
	position: absolute;
	top: 0;
	width: 1px;
	height: 100%;
	background-color: rgba(255, 255, 255, .4);
}

.text_role_service:before {
	left: 0;
}

.text_role_service:after {
	right: 0;
}

.text_role_service p.text+p.text {
	margin-top: 26px;
}

.bg_service04 {
	padding: 115px 0 125px;
	background-color: #fff;
}

.head_business_service {
	text-align: center;
	margin-bottom: 60px;
}


.head_business_item_service {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 18px;
}

.num_business_service {
	flex: 0 0 52px;
	padding-top: 2px;
	font-family: Arial, sans-serif;
	font-size: 1.9rem;
	font-weight: 700;
	line-height: 1.4;
	color: #1773df;
}

.head_business_item_service h4 {
	font-size: 2.7rem;
	font-weight: 600;
	line-height: 1.45;
	letter-spacing: .02em;
	color: #123965;
}

.lead_business_service {
	margin-top: 8px;
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 1.7;
	color: #0870dc;
}

.green_service .num_business_service,
.green_service .lead_business_service {
	color: #229632;
}


.label_service {
	margin-bottom: 10px;
	font-size: 1.7rem;
	font-weight: 700;
	line-height: 1.5;
	color: #0870dc;
}

.lists_business_service ul,
.list_plain_service {
	margin: 0;
}

.lists_business_service li,
.list_plain_service li {
	position: relative;
	padding: 2px 0 2px 18px;
	font-size: 1.5rem;
	line-height: 1.6;
	color: #2c3844;
}

.lists_business_service li:before,
.list_plain_service li:before {
	content: "";
	position: absolute;
	top: 16px;
	left: 0;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background-color: #7db8f1;
}

.business_activity_service {
	display: grid;
	grid-template-columns: 44% 56%;
	gap: 65px;
	align-items: center;
}

.business_exchange_service {
	grid-template-columns: 1fr 1fr;
	align-items: center;
}

.business_exchange_service .cont_business_service {
	max-width: none;
}


.cont_business_service p.text {
	margin-top: 28px;
}

.lists_business_service {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 30px;
	margin-top: 45px;
}

.lists_business_service>div {
	padding: 30px 32px;
	border: 2px solid #c0d8f3;
	border-radius: 28px;
	background-color: #eef6ff;
}

.bg_service05 {
	padding: 115px 0 125px;
	background-color: #effbed;
}


.bg_service05 .label_service {
	color: #26b136;
}

.business_forest_service {
	grid-template-columns: 1fr 1fr;
	align-items: center;
}

.business_forest_service .cont_business_service {
	max-width: none;
}

.green_lists_service {
	padding-left: 0;
	padding-right: 0;
}

.green_lists_service>div {
	border-color: #cee5d1;
	background-color: #fff;
}

.green_lists_service li:before,
.green_plain_service li:before {
	background-color: #76ce80;
}

.pic_business_service img {
	width: 100%;
	border-radius: 30px 8px 30px 8px;
}

.waku_green {
	padding: 25px 32px;
	border: 2px solid #c0d8f3;
	border-radius: 28px;
	background-color: #fff;
	margin-top: 20px;
}

.bg_service06 {
	padding: 115px 0 0;
	background-color: #fff;
}

.small_businesses_service {
	display: block;
}

.item_small_business_service {
	padding-top: 38px;
	border-top: 1px solid #cfdde8;
}

.item_small_business_service .text {
	margin-top: 25px;
}

.item_cohost_service {
	display: grid;
	grid-template-columns: 46% 1fr;
	gap: 55px;
	align-items: start;
}

.pic_cohost_service {
	margin-bottom: 0;
}

.pic_cohost_service img {
	width: 100%;
	border-radius: 30px 8px 30px 8px;
}

.pic_other_service img {
	width: 100%;
	border-radius: 30px 8px 30px 8px;
}

.other_service {
	display: grid;
	grid-template-columns: 1fr 48%;
	align-items: center;
	gap: 60px;
	margin-top: 90px;
	padding: 45px 50px;
	background-color: #f1f1f1;
	border-radius: 20px;
}

.ttl_other_service {
	margin-bottom: 18px;
	font-size: 2.6rem;
	font-weight: 600;
	line-height: 1.5;
	color: #333;
}

.links_other_service {
	margin-top: 30px;
}

.btn_report_service a {
	width: 230px;
	height: 58px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 22px;
	box-sizing: border-box;
	background-color: #1773df;
	font-size: 1.5rem;
	font-weight: 600;
	color: #fff;
	transition: background-color .25s ease;
}

.btn_report_service a:hover {
	background-color: #4bc35a;
	color: #fff;
	opacity: 1;
}

.link_news_service {
	margin-top: 15px;
	text-align: right;
}

.link_news_service a {
	font-size: 1.3rem;
	font-weight: 500;
	color: #52708d;
}

.link_news_service a:hover {
	color: #0870dc;
	opacity: 1;
}

@media (max-width: 1199px) {
	.deco_sub_service {
		right: -180px;
	}

	.block_dam_service,
	.business_activity_service {
		gap: 45px;
	}

}

@media (max-width: 991px) {

	.inner_sub_service {
		padding-top: 60px;
	}

	.deco_sub_service {
		width: 650px;
		right: -270px;
	}

	.ttl_sub_service {
		font-size: 4.2rem;
	}

	.bg_service01,
	.bg_service02,
	.bg_service03,
	.bg_service04,
	.bg_service05,
	.bg_service06 {
		padding-top: 85px;
		padding-bottom: 90px;
	}

	.intro_service {
		padding: 45px 45px 48px;
	}

	.ttl_intro_service {
		font-size: 2.6rem;
	}

	.ttl_service {
		font-size: 3.2rem;
	}

	.block_dam_service {
		grid-template-columns: 1fr 1fr;
		gap: 35px;
	}

	.pic_dam_service {
		position: static;
	}

	.item_role_service {
		grid-template-columns: 42px 1fr;
		gap: 12px;
	}

	.business_activity_service,
	.business_forest_service {
		grid-template-columns: 1fr 1fr;
		gap: 35px;
	}

	.lists_business_service,
	.green_lists_service {
		padding-left: 0;
		padding-right: 0;
	}

	.item_cohost_service {
		grid-template-columns: 42% 1fr;
		gap: 35px;
	}

	.other_service {
		align-items: flex-start;
	}
}

@media (max-width: 767px) {


	.inner_sub_service {
		width: calc(100% - 30px);
		padding-top: 55px;
	}

	.en_sub_service {
		font-size: 1.1rem;
	}

	.ttl_sub_service {
		font-size: 3.4rem;
	}

	.deco_sub_service {
		right: -360px;
		bottom: -30px;
		width: 610px;
	}

	.breadcrumb_service .container_service {
		padding-top: 13px;
		padding-bottom: 13px;
	}

	.container_service {
		width: calc(100% - 30px);
	}

	.bg_service01,
	.bg_service02,
	.bg_service03,
	.bg_service04,
	.bg_service05,
	.bg_service06 {
		padding-top: 65px;
		padding-bottom: 70px;
	}

	.bg_service01 p.text,
	.bg_service02 p.text,
	.bg_service03 p.text,
	.bg_service04 p.text,
	.bg_service05 p.text,
	.bg_service06 p.text {
		font-size: 1.5rem;
		line-height: 1.9;
	}

	.intro_service {
		padding: 35px 23px 38px;
		border-radius: 28px 6px 28px 6px;
		text-align: left;
	}

	.ttl_intro_service {
		margin-bottom: 20px;
		font-size: 2rem;
		text-align: center;
	}

	.head_service {
		margin-bottom: 32px;
	}

	.ttl_service {
		font-size: 2.2rem;
	}

	.block_dam_service {
		grid-template-columns: 1fr;
		gap: 45px;
	}

	.pic_dam_service img,
	.pic_business_service img,
	.pic_cohost_service img,
	.pic_other_service img {
		border-radius: 24px 6px 24px 6px;
	}

	.item_role_service {
		padding: 18px 0;
	}

	.item_role_service h4 {
		font-size: 1.7rem;
	}

	.note_dam_service {
		margin-top: 32px;
		padding: 18px 20px;
		font-size: 1.5rem;
	}

	.text_role_service {
		padding: 0 20px;
	}


	.head_business_item_service {
		gap: 0;
	}

	.num_business_service {
		flex-basis: inherit;
		font-size: 1.4rem;
		margin-bottom: 8px;
	}

	.head_business_item_service h4 {
		font-size: 2.2rem;
	}

	.lead_business_service {
		font-size: 1.5rem;
	}


	.business_activity_service,
	.business_forest_service {
		grid-template-columns: 1fr;
		gap: 35px;
	}

	.business_forest_service .pic_business_service {
		order: -1;
	}

	.cont_business_service p.text {
		margin-top: 22px;
	}

	.lists_business_service {
		grid-template-columns: 1fr;
		gap: 16px;
		margin-top: 35px;
	}

	.lists_business_service>div {
		padding: 26px 22px;
		border-radius: 22px;
	}

	.item_cohost_service {
		display: block;
	}

	.item_cohost_service .pic_cohost_service {
		margin-bottom: 30px;
	}

	.pic_other_service {
		margin-top: 30px;
	}

	.other_service {
		display: block;
		margin-top: 65px;
		padding: 32px 24px;
	}

	.ttl_other_service {
		font-size: 2.2rem;
	}

	.links_other_service {
		width: 100%;
		margin-top: 28px;
	}

	.btn_report_service a {
		width: 100%;
	}
}


/* company.html 基金について
=========================================================================== */
.inner_sub_company {
	position: relative;
	z-index: 2;
	width: 90%;
	max-width: 1140px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	padding-top: 80px;
	box-sizing: border-box;
}

.cont_sub_company {
	position: relative;
	z-index: 3;
}

.en_sub_company {
	margin-bottom: 18px;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #d7f0ff;
}

.ttl_sub_company {
	font-size: 4.8rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: .02em;
	color: #fff;
	text-shadow: 0 2px 12px rgba(5, 47, 99, .22);
}

.deco_sub_company {
	position: absolute;
	right: -80px;
	bottom: 0;
	width: 760px;
	height: 245px;
	opacity: .78;
}

.deco_sub_company svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

.deco_sub_company path {
	fill: none;
	stroke-linecap: round;
}

.deco_sub_company .river01 {
	stroke: rgba(23, 115, 223, .13);
	stroke-width: 54px;
}

.deco_sub_company .river02 {
	stroke: rgba(48, 186, 61, .12);
	stroke-width: 18px;
}

.breadcrumb_company {
	border-bottom: 1px solid #e8eef4;
	background-color: #fff;
}

.breadcrumb_company .container_company {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-top: 16px;
	padding-bottom: 16px;
	font-size: 1.2rem;
	color: #7c8b99;
}

.breadcrumb_company a {
	color: #52708d;
}

.breadcrumb_company a:hover {
	color: #0870dc;
	opacity: 1;
}

.container_company {
	width: 96%;
	max-width: 1140px;
	margin: 0 auto;
}

.bg_company01 {
	padding: 110px 0 120px;
	background-color: #fff;
}

.bg_company02 {
	padding: 110px 0 120px;
	background-color: #dff2ff;
}

.bg_company03 {
	padding: 110px 0 125px;
	background-color: #1773df;
}

.head_company {
	margin-bottom: 20px;
}

.en_company {
	margin-bottom: 10px;
	font-family: Arial, sans-serif;
	font-size: 1.1rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #1773df;
}

.ttl_company {
	/* border-bottom: 1px solid #bfd1df; */
	font-size: 3.4rem;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: .02em;
	color: #123965;
}

.ttl_company span {
	margin-left: 12px;
	font-size: 1.3rem;
	font-weight: 400;
	color: #718294;
}

.table_company table {
	width: 100%;
	border-collapse: collapse;
}

.table_company th,
.table_company td {
	padding: 22px 20px;
	border-bottom: 1px solid #dce5ec;
	vertical-align: top;
	font-size: 1.6rem;
	line-height: 1.9;
	color: #344658;
}

.table_company th {
	width: 220px;
	font-weight: 600;
	color: #1773df;
}

.table_company .tel_link {
	color: #333;
}

.list_business_company {
	margin: 0;
	padding-left: 0;
}

.list_business_company li {
	position: relative;
	padding-left: 15px;
}

.list_business_company li+li {
	margin-top: 6px;
}

.list_business_company li:before {
	content: "";
	position: absolute;
	top: 15px;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #1773df;
}

.note_business_company {
	margin-top: 7px;
}

.list_funds_company {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 6px 25px;
	margin: 0;
}

.list_funds_company li {
	position: relative;
	padding-left: 15px;
}

.list_funds_company li:before {
	content: "";
	position: absolute;
	top: 15px;
	left: 0;
	width: 5px;
	height: 5px;
	border-radius: 50%;
	background-color: #30ba3d;
}

.map_company {
	width: 100%;
	background-color: #dfe8ed;
}

.map_company iframe {
	display: block;
	width: 100%;
	height: 470px;
	border: 0;
}

.btn_map_company {
	width: 220px;
	margin: 25px auto 0;
	position: relative;
	z-index: 2;
}

.btn_map_company a {
	width: 200px;
	height: 50px;
	border-radius: 10px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	background-color: #30ba3d;
	font-size: 1.4rem;
	font-weight: 600;
	color: #fff;
	transition: background-color .25s ease;
}

.btn_map_company a:hover {
	background-color: #4bc35a;
	color: #fff;
	opacity: 1;
}

.access_items_company {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 35px;
	margin-top: 55px;
}

.item_access_company {
	display: flex;
	align-items: center;
	gap: 20px;
	padding: 24px 0;
	border-top: 1px solid #cad9e5;
	border-bottom: 1px solid #cad9e5;
}

.icon_access_company {
	width: 44px;
	font-size: 2.5rem;
	text-align: center;
	color: #1773df;
}

.label_access_company {
	margin-bottom: 6px;
	font-size: 1.4rem;
	font-weight: 600;
	color: #123965;
}

.item_access_company>div>p:last-child {
	font-size: 1.4rem;
	line-height: 1.7;
	color: #526577;
}

.head_disclosure_company .en_company {
	color: #a9d8ff;
}

.head_disclosure_company .ttl_company {
	border-bottom-color: rgba(255, 255, 255, .35);
	color: #fff;
}

.head_disclosure_company .ttl_company span {
	color: #c8e6ff;
}

.list_disclosure_company {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	column-gap: 30px;
	row-gap: 20px;
}

.item_disclosure_company {
	padding: 28px 30px 30px;
	border-bottom: 1px solid rgba(255, 255, 255, .3);
	background-color: #0355b5;
}

.ttl_disclosure_company {
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 1.7;
	color: #fff;
}

.ttl_disclosure_company a,
.item_disclosure_company li a {
	color: #fff;
}

.ttl_disclosure_company a {
	display: flex;
	justify-content: space-between;
	gap: 15px;
}

.ttl_disclosure_company a i,
.item_disclosure_company li a i {
	font-size: 1.1rem;
	color: #a9d8ff;
	display: inline-block;
	margin-top: 8px;
	margin-left: 5px;
}

.ttl_disclosure_company a:hover,
.item_disclosure_company li a:hover {
	color: #d9efff;
	opacity: 1;
}

.note_disclosure_company {
	margin-top: 7px;
	font-size: 1.3rem;
	line-height: 1.7;
	color: #c8e6ff;
}

.item_disclosure_company ul {
	margin-top: 12px;
}

.item_disclosure_company li {
	font-size: 1.5rem;
	line-height: 1.8;
	color: #eaf6ff;
	list-style-type: disc;
	margin-left: 2em;
}

.item_disclosure_company li+li {
	margin-top: 6px;
}

.item_disclosure_company li span {
	margin-right: 10px;
	color: #c8e6ff;
}

@media (max-width: 1199px) {
	.deco_sub_company {
		right: -180px;
	}

	.list_disclosure_company {
		column-gap: 30px;
	}
}

@media (max-width: 991px) {

	.inner_sub_company {
		padding-top: 60px;
	}

	.deco_sub_company {
		width: 650px;
		right: -270px;
	}

	.ttl_sub_company {
		font-size: 4.2rem;
	}

	.bg_company01,
	.bg_company02,
	.bg_company03 {
		padding-top: 85px;
		padding-bottom: 90px;
	}

	.table_company th {
		width: 180px;
	}

	.map_company iframe {
		height: 410px;
	}

	.list_disclosure_company {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 767px) {


	.inner_sub_company {
		width: calc(100% - 30px);
		padding-top: 55px;
	}

	.en_sub_company {
		font-size: 1.1rem;
	}

	.ttl_sub_company {
		font-size: 3.4rem;
	}

	.deco_sub_company {
		right: -360px;
		bottom: -30px;
		width: 610px;
	}

	.breadcrumb_company .container_company {
		padding-top: 13px;
		padding-bottom: 13px;
	}

	.container_company {
		width: calc(100% - 30px);
	}

	.bg_company01,
	.bg_company02,
	.bg_company03 {
		padding-top: 65px;
		padding-bottom: 70px;
	}

	.head_company {
		margin-bottom: 32px;
	}

	.ttl_company {
		font-size: 2.4rem;
	}

	.ttl_company span {
		display: block;
		margin: 6px 0 0;
		font-size: 1.2rem;
	}

	.table_company table,
	.table_company tbody,
	.table_company tr,
	.table_company th,
	.table_company td {
		display: block;
		width: 100%;
	}

	.table_company tr {
		border-bottom: 1px solid #dce5ec;
	}

	.table_company th {
		padding: 14px 5px 5px;
		border-bottom: 0;
		font-size: 1.5rem;
	}

	.table_company td {
		padding: 0 5px 14px;
		border-bottom: 0;
		font-size: 1.5rem;
	}

	.list_funds_company {
		grid-template-columns: 1fr;
		gap: 5px;
	}

	.map_company iframe {
		height: 340px;
	}

	.btn_map_company {
		width: calc(100% - 30px);
		max-width: 320px;
	}

	.access_items_company {
		grid-template-columns: 1fr;
		gap: 18px;
		margin-top: 45px;
	}

	.item_access_company {
		padding: 20px 0;
	}

	.list_disclosure_company {
		grid-template-columns: 1fr;
		column-gap: 0;
	}

	.item_disclosure_company {
		padding: 25px 20px 25px;
	}
}







/* contact.html お問い合わせ
=========================================================================== */
.inner_sub_contact {
	position: relative;
	z-index: 2;
	width: 90%;
	max-width: 1140px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	padding-top: 80px;
	box-sizing: border-box;
}

.cont_sub_contact {
	position: relative;
	z-index: 3;
}

.en_sub_contact {
	margin-bottom: 18px;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #d7f0ff;
}

.ttl_sub_contact {
	font-size: 4.8rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: .02em;
	color: #fff;
	text-shadow: 0 2px 12px rgba(5, 47, 99, .22);
}

.deco_sub_contact {
	position: absolute;
	right: -80px;
	bottom: 0;
	width: 760px;
	height: 245px;
	opacity: .78;
}

.deco_sub_contact svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

.deco_sub_contact path {
	fill: none;
	stroke-linecap: round;
}

.deco_sub_contact .river01 {
	stroke: rgba(23, 115, 223, .13);
	stroke-width: 54px;
}

.deco_sub_contact .river02 {
	stroke: rgba(48, 186, 61, .12);
	stroke-width: 18px;
}

.breadcrumb_contact {
	border-bottom: 1px solid #e8eef4;
	background-color: #fff;
}

.breadcrumb_contact .container_contact {
	display: flex;
	align-items: center;
	gap: 12px;
	padding-top: 16px;
	padding-bottom: 16px;
	font-size: 1.2rem;
	color: #7c8b99;
}

.breadcrumb_contact a {
	color: #52708d;
}

.breadcrumb_contact a:hover {
	color: #0870dc;
	opacity: 1;
}

.container_contact {
	width: 90%;
	max-width: 1140px;
	margin: 0 auto;
}

.bg_contact01 {
	padding: 100px 0 105px;
	/* background: #eef6fe url(../images/bg_contact_direct.png) center center / cover no-repeat; */
	background-color: #dff2ff;
}

.bg_contact02 {
	padding: 105px 0 125px;
	background-color: #fff;
}

.head_contact {
	margin-bottom: 42px;
}

.center_contact {
	text-align: center;
}

.en_contact {
	margin-bottom: 10px;
	font-family: Arial, sans-serif;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #1773df;
}

.ttl_contact {
	font-size: 3.4rem;
	font-weight: 500;
	line-height: 1.45;
	letter-spacing: .02em;
	color: #123965;
}

.contact_direct {
	display: grid;
	grid-template-columns: 1fr;
	gap: 28px;
}

.item_direct_contact {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 5px;
	padding: 38px 30px;
	border-radius: 24px 6px 24px 6px;
}

.item_tel_contact,
.item_fax_contact {
	background-color: #edf3f6;
	border: 1px solid rgba(23, 115, 223, .12);
	box-shadow: 0 12px 28px rgba(18, 57, 101, .06);
}

.icon_direct_contact {
	position: relative;
	z-index: 1;
	width: 32px;
	height: 32px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 32px;
}

.icon_direct_contact img {
	width: 32px;
	height: 32px;
	object-fit: contain;
}

.item_direct_contact>div {
	position: relative;
	z-index: 1;
}

.label_direct_contact {
	margin-bottom: 4px;
	font-size: 1.8rem;
	font-weight: 600;
	color: #587086;
	text-align: center;
}

.num_direct_contact {
	font-family: Arial, sans-serif;
	font-size: 4rem;
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: .02em;
	color: #111;
}

.num_direct_contact .tel_link {
	color: #111;
}

.time_direct_contact {
	font-size: 1.6rem;
	line-height: 1.6;
	color: #66798a;
	margin-left: 50px;
}

.intro_contact {
	position: relative;
	margin-bottom: 45px;
	padding: 28px 34px;
	overflow: hidden;
	border-radius: 18px 4px 18px 4px;
	background-color: #f4f8fc;
}

.intro_contact:before,
.intro_contact:after {
	content: "";
	position: absolute;
	border-radius: 50%;
	background-color: #dfeeff;
}

.intro_contact:before {
	top: -22px;
	right: 38px;
	width: 68px;
	height: 68px;
}

.intro_contact:after {
	top: 18px;
	right: 12px;
	width: 28px;
	height: 28px;
	background-color: #e6f5e9;
}

.intro_contact p {
	position: relative;
	z-index: 1;
	font-size: 1.4rem;
	line-height: 1.9;
	color: #465b6d;
}

.intro_contact span,
.note_required_contact span,
.required_contact {
	font-weight: 600;
	color: #e45353;
}

.form_contact {
	margin: 0;
}

.note_required_contact {
	margin-bottom: 20px;
	font-size: 1.3rem;
	line-height: 1.7;
	color: #627587;
}

.rows_contact {
	border-top: 1px solid #d8e3eb;
}

.row_contact {
	display: grid;
	grid-template-columns: 245px 1fr;
	border-bottom: 1px solid #d8e3eb;
}

.label_contact {
	display: flex;
	align-items: center;
	padding: 24px 24px;
	background-color: #f5f9fc;
	font-size: 1.4rem;
	font-weight: 600;
	line-height: 1.7;
	color: #123965;
}

.field_contact {
	min-width: 0;
	padding: 16px 22px;
}

.field_contact input[type="text"],
.field_contact input[type="email"],
.field_contact select,
.field_contact textarea {
	width: 100%;
	border: 1px solid #cddbe5;
	border-radius: 4px;
	background-color: #fff;
	box-sizing: border-box;
	font-size: 1.5rem;
	line-height: 1.6;
	color: #344658;
	outline: none;
	transition: border-color .2s ease, box-shadow .2s ease;
}

.field_contact input[type="text"],
.field_contact input[type="email"],
.field_contact select {
	height: 50px;
	padding: 0 15px;
}

.field_contact textarea {
	padding: 14px 15px;
	resize: vertical;
}

.field_contact input:focus,
.field_contact select:focus,
.field_contact textarea:focus {
	border-color: #6aa8e8;
	box-shadow: 0 0 0 3px rgba(23, 115, 223, .08);
}

.field_contact input::placeholder,
.field_contact textarea::placeholder {
	color: #a4afb8;
}

.options_contact {
	display: flex;
	align-items: center;
	gap: 25px;
	flex-wrap: wrap;
}

.options_contact label,
.agree_contact label {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin: 0;
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.6;
	color: #344658;
	cursor: pointer;
}

.options_contact input[type="radio"],
.agree_contact input[type="checkbox"] {
	width: 18px;
	height: 18px;
	margin: 0;
	accent-color: #1773df;
}

.field_postal_contact {
	display: flex;
	align-items: center;
	gap: 10px;
}

.postal_mark_contact {
	font-size: 1.5rem;
	color: #526577;
}

.field_postal_contact input {
	max-width: 260px;
}

.btn_auto_contact {
	height: 42px;
	padding: 0 18px;
	border: 1px solid #8ab4da;
	border-radius: 4px;
	background-color: #f1f7fd;
	font-size: 1.3rem;
	font-weight: 600;
	color: #1669bd;
	transition: background-color .2s ease;
}

.btn_auto_contact:hover {
	background-color: #e2f0fc;
}

.field_select_contact {
	position: relative;
}

.field_select_contact select {
	max-width: 360px;
}

.field_file_contact input[type="file"] {
	max-width: 100%;
	font-size: 1.3rem;
	color: #526577;
}

.file_name_contact {
	display: none;
	margin-top: 8px;
	font-size: 1.2rem;
	color: #718294;
}

.privacy_contact {
	margin-top: 70px;
}

.ttl_privacy_contact {
	position: relative;
	margin-bottom: 22px;
	padding-left: 24px;
	font-size: 2rem;
	font-weight: 600;
	line-height: 1.5;
	color: #123965;
}

.ttl_privacy_contact:before {
	content: "";
	position: absolute;
	top: 14px;
	left: 0;
	width: 12px;
	height: 2px;
	background-color: #30ba3d;
}

.scroll_privacy_contact {
	max-height: 330px;
	overflow-y: auto;
	padding: 30px 32px;
	border: 1px solid #d6e1e8;
	background-color: #fbfcfd;
}

.scroll_privacy_contact p,
.scroll_privacy_contact li {
	font-size: 1.2rem;
	line-height: 1.9;
	color: #536576;
}

.scroll_privacy_contact p+h5,
.scroll_privacy_contact ol+h5,
.scroll_privacy_contact p+p {
	margin-top: 22px;
}

.scroll_privacy_contact h5 {
	margin-bottom: 8px;
	padding-bottom: 7px;
	border-bottom: 1px solid #dce5eb;
	font-size: 1.3rem;
	font-weight: 600;
	line-height: 1.6;
	color: #263f56;
}

.scroll_privacy_contact ol {
	margin: 12px 0 0;
	padding-left: 28px;
	list-style: none;
}

.scroll_privacy_contact a {
	color: #1773df;
	text-decoration: underline;
}

.scroll_privacy_contact .tel_link {
	color: #536576;
}

.lead_privacy_contact {
	font-weight: 600;
	color: #263f56 !important;
}

.agree_contact {
	margin-top: 35px;
	text-align: center;
}

.submit_contact {
	margin-top: 35px;
	text-align: center;
}

.submit_contact button {
	width: 460px;
	max-width: 100%;
	height: 68px;
	display: inline-flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 28px;
	border: 0;
	background-color: #1773df;
	font-size: 1.4rem;
	font-weight: 600;
	color: #fff;
	transition: background-color .25s ease;
	border-radius: 50px;
}

.submit_contact button:hover {
	background-color: #0f5fa8;
}

.submit_contact button i {
	font-size: 1.2rem;
}

.confirm_actions_contact {
	max-width: 520px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 16px;
	margin: 18px auto 0;
}

.confirm_actions_contact button {
	height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 0 22px;
	border-radius: 28px;
	font-family: inherit;
	font-size: 1.4rem;
	font-weight: 600;
	transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.btn_back_contact {
	border: 1px solid #b8cce0;
	background-color: #fff;
	color: #52708d;
}

.btn_back_contact:hover {
	border-color: #1773df;
	background-color: #f2f8ff;
	color: #1773df;
}

.btn_send_contact {
	border: 1px solid #1773df;
	background-color: #1773df;
	color: #fff;
}

.btn_send_contact:hover {
	border-color: #0f5fa8;
	background-color: #0f5fa8;
	color: #fff;
}

@media (max-width: 767px) {
	.confirm_actions_contact {
		gap: 10px;
	}

	.confirm_actions_contact button {
		height: 52px;
		padding: 0 12px;
		font-size: 1.3rem;
	}
}

@media (max-width: 1199px) {
	.deco_sub_contact {
		right: -180px;
	}
}

@media (max-width: 991px) {

	.inner_sub_contact {
		padding-top: 60px;
	}

	.deco_sub_contact {
		width: 650px;
		right: -270px;
	}

	.ttl_sub_contact {
		font-size: 4.2rem;
	}

	.bg_contact01,
	.bg_contact02 {
		padding-top: 85px;
		padding-bottom: 90px;
	}

	.row_contact {
		grid-template-columns: 200px 1fr;
	}

	.item_direct_contact {
		gap: 0;
		padding-left: 20px;
		padding-right: 20px;
	}

	.num_direct_contact {
		font-size: 3.2rem;
	}

	.ttl_contact {
		font-size: 2.7rem;
		font-weight: 500;
		line-height: 1.45;
		letter-spacing: .02em;
		color: #123965;
	}

	.icon_direct_contact img {
		width: 26px;
		height: 26px;
		object-fit: contain;
	}
}

@media (max-width: 767px) {

	.deco_sub_contact {
		right: -360px;
		bottom: -30px;
		width: 610px;
	}

	.breadcrumb_contact .container_contact {
		padding-top: 13px;
		padding-bottom: 13px;
	}

	.container_contact {
		width: calc(100% - 30px);
	}

	.bg_contact01,
	.bg_contact02 {
		padding-top: 50px;
		padding-bottom: 50px;
	}

	.head_contact {
		margin-bottom: 30px;
	}

	.ttl_contact {
		font-size: 2rem;
	}

	.contact_direct {
		grid-template-columns: 1fr;
		gap: 16px;
	}

	.item_direct_contact {
		display: grid;
		grid-template-columns: auto auto;
		grid-template-areas:
			"icon number"
			"time time";
		column-gap: 6px;
		row-gap: 8px;
		align-items: center;
		justify-content: center;
		padding: 28px 20px;
	}

	.icon_direct_contact {
		grid-area: icon;
		width: 36px;
		height: 36px;
		flex-basis: 36px;
	}

	.item_direct_contact > div {
		grid-area: number;
	}

	.icon_direct_contact img {
		width: 24px;
		height: 24px;
	}

	.num_direct_contact {
		font-size: 2.5rem;
	}

	.time_direct_contact {
		grid-area: time;
		margin-left: 0;
		text-align: center;
	}

	.intro_contact {
		margin-bottom: 35px;
		padding: 22px 20px;
		border-radius: 14px 4px 14px 4px;
	}

	.intro_contact p {
		font-size: 1.3rem;
	}

	.row_contact {
		display: block;
	}

	.label_contact {
		padding: 14px 15px 10px;
		background-color: #f5f9fc;
	}

	.field_contact {
		padding: 12px 15px 18px;
	}

	.field_contact input[type="text"],
	.field_contact input[type="email"],
	.field_contact select {
		height: 48px;
		font-size: 1.6rem;
	}

	.field_contact textarea {
		font-size: 1.6rem;
	}

	.options_contact {
		align-items: flex-start;
		gap: 14px 22px;
	}

	.field_postal_contact {
		flex-wrap: wrap;
	}

	.field_postal_contact input {
		max-width: calc(100% - 35px);
	}

	.btn_auto_contact {
		margin-left: 25px;
	}

	.field_select_contact select {
		max-width: 100%;
	}

	.privacy_contact {
		margin-top: 50px;
	}

	.ttl_privacy_contact {
		font-size: 1.8rem;
	}

	.scroll_privacy_contact {
		max-height: 280px;
		padding: 22px 18px;
	}

	.agree_contact {
		text-align: left;
	}

	.submit_contact button {
		height: auto;
		min-height: 64px;
		padding: 18px 30px;
		font-size: 1.3rem;
		text-align: left;
	}

	.item_direct_contact:after {
		display: none;
	}
}

/* news.html / view.html お知らせ
--------------------------------------------------------- */
.inner_sub_news {
	position: relative;
	z-index: 2;
	width: 90%;
	max-width: 1140px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	padding-top: 80px;
	box-sizing: border-box;
}

.cont_sub_news {
	position: relative;
	z-index: 2;
}

.en_sub_news {
	margin-bottom: 18px;
	font-size: 1.3rem;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .18em;
	color: #d7f0ff;
}

.ttl_sub_news {
	font-size: 4.8rem;
	font-weight: 600;
	line-height: 1.3;
	letter-spacing: .02em;
	color: #fff;
	text-shadow: 0 2px 12px rgba(5, 47, 99, .22);
}

.deco_sub_news {
	position: absolute;
	right: -80px;
	bottom: 0;
	width: 760px;
	height: 245px;
	opacity: .78;
	pointer-events: none;
}

.deco_sub_news svg {
	width: 100%;
	height: 100%;
	overflow: visible;
}

.deco_sub_news path {
	fill: none;
	stroke-linecap: round;
}

.deco_sub_news .river01 {
	stroke: rgba(23, 115, 223, .13);
	stroke-width: 54px;
}

.deco_sub_news .river02 {
	stroke: rgba(48, 186, 61, .12);
	stroke-width: 18px;
}

.breadcrumb_news {
	background-color: #fff;
	border-bottom: 1px solid #e6edf3;
}

.breadcrumb_news .container_news {
	display: flex;
	align-items: center;
	gap: 10px;
	padding-top: 17px;
	padding-bottom: 17px;
	font-size: 1.2rem;
	color: #7a8793;
}

.breadcrumb_news a {
	color: #4b6279;
}

.breadcrumb_news a:hover {
	color: #1773df;
	opacity: 1;
}

.container_news,
.container_view {
	position: relative;
	z-index: 1;
	width: 90%;
	max-width: 1140px;
	margin: 0 auto;
}

.bg_news01 {
	position: relative;
	padding: 70px 0 0;
	background-color: #ffffff;
}

.catnav_news {
	display: flex;
	align-items: center;
	padding-bottom: 32px;
	border-bottom: 1px solid #dce7f0;
}

.label_catnav_news {
	flex: 0 0 auto;
	font-family: Arial, sans-serif;
	font-size: 1.3rem;
	font-weight: 700;
	letter-spacing: .12em;
	color: #123965;
}

.catnav_news ul {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	margin: 0;
}

.catnav_news li a {
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 120px;
	height: 44px;
	padding: 0 20px;
	box-sizing: border-box;
	border: 1px solid #cdddeb;
	background-color: #fff;
	font-size: 1.3rem;
	font-weight: 500;
	color: #40566b;
	transition: background-color .2s ease, border-color .2s ease, color .2s ease;
}

.catnav_news li a:hover,
.catnav_news li.active a {
	border-color: #1773df;
	background-color: #edf6ff;
	color: #1773df;
	opacity: 1;
}

.list_news {
	margin-top: 25px;
	border-top: 1px solid #dce7f0;
}

.item_news {
	position: relative;
	padding: 30px 0;
	border-bottom: 1px solid #dce7f0;
}

.meta_news {
	display: flex;
	align-items: center;
	gap: 16px;
	min-height: 26px;
}

.new_news {
	font-family: Arial, sans-serif;
	font-size: 1.1rem;
	font-weight: 700;
	letter-spacing: .08em;
	color: #e75050;
}

.date_news {
	font-size: 1.4rem;
	font-weight: 600;
	color: #1773df;
}

.cat_news {
	padding: 5px 12px;
	border-radius: 3px;
	background-color: #eef6ff;
	font-size: 1.1rem;
	line-height: 1.4;
	color: #46617a;
}

.body_news {
	display: grid;
	grid-template-columns: 1fr 165px;
	align-items: center;
	gap: 35px;
	margin-top: 14px;
}

.ttl_news {
	font-size: 1.7rem;
	font-weight: 600;
	line-height: 1.8;
	letter-spacing: .02em;
	color: #263849;
}

.btn_news {
	margin: 0;
}

.btn_news a {
	width: 165px;
	height: 46px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 17px;
	box-sizing: border-box;
	background-color: #edf6ff;
	font-size: 1.2rem;
	font-weight: 600;
	color: #1773df;
	transition: background-color .2s ease;
}

.btn_news a:hover {
	background-color: #dfeeff;
	color: #1773df;
	opacity: 1;
}

.pager_news {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 55px;
}

.pager_news a,
.pager_news .current {
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	border: 1px solid #cfdae4;
	background-color: #fff;
	font-size: 1.3rem;
	color: #496176;
}

.pager_news .current {
	border-color: #1773df;
	background-color: #1773df;
	color: #fff;
}

.pager_news a:hover {
	border-color: #1773df;
	color: #1773df;
	opacity: 1;
}

.pager_news .dots {
	padding: 0 5px;
	color: #738393;
}

.pager_news .pager_arrow {
	font-size: 1.5rem;
}

.pager_news .pager_arrow.disabled {
	width: 42px;
	height: 42px;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	border: 1px solid #e2e8ee;
	background-color: #f7f9fb;
	color: #b5c0ca;
}

.bg_view01 {
	position: relative;
	padding: 70px 0 0;
	background-color: #fff;
}

.container_view {
	max-width: 1000px;
}

.head_view {
	padding-bottom: 28px;
	border-bottom: 1px solid #dce7f0;
}

.meta_view {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 20px;
	margin-bottom: 12px;
}

.date_view {
	font-size: 1.5rem;
	font-weight: 600;
	color: #1773df;
}

.cat_view {
	padding: 6px 14px;
	border-radius: 3px;
	background-color: #eef6ff;
	font-size: 1.2rem;
	line-height: 1.4;
	color: #46617a;
}

.ttl_view {
	font-size: 3rem;
	font-weight: 600;
	line-height: 1.55;
	letter-spacing: .02em;
	color: #263849;
}

.gallery_view {
	max-width: 860px;
	margin: 55px auto 0;
}

.news_gallery_wrap {
	position: relative;
	padding: 0 54px;
	box-sizing: border-box;
}

.news_gallery_main {
	overflow: hidden;
}

.news_gallery_main .swiper-slide {
	background-color: #f7f9fb;
}

.photo-ofi {
	height: 0;
	display: block;
	padding-bottom: 80%;
	background-color: transparent;
	overflow: hidden;
	position: relative;
}

.photo-ofi img {
	max-width: inherit;
	max-height: inherit;
	width: 100%;
	height: 100%;
	object-fit: scale-down;
	font-family: 'object-fit: scale-down;';
	position: absolute;
	left: 0;
	top: 0;
}

.news_gallery_main .photo-ofi {
	background-color: #f7f9fb;
}

.news_gallery_wrap .swiper-button-prev,
.news_gallery_wrap .swiper-button-next {
	width: 42px;
	height: 42px;
	margin-top: -21px;
	border-radius: 50%;
	background-image: none;
	background-color: #1773df;
}

.news_gallery_wrap .swiper-button-prev:after,
.news_gallery_wrap .swiper-button-next:after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 9px;
	height: 9px;
	border-left: 2px solid #fff;
	border-bottom: 2px solid #fff;
}

.news_gallery_wrap .swiper-button-prev:after {
	transform: translate(-35%, -50%) rotate(45deg);
}

.news_gallery_wrap .swiper-button-next:after {
	transform: translate(-65%, -50%) rotate(-135deg);
}

.news_gallery_wrap .swiper-button-prev {
	left: 0;
}

.news_gallery_wrap .swiper-button-next {
	right: 0;
}

.news_gallery_thumbs {
	margin-top: 18px;
}

.news_gallery_thumbs .swiper-slide {
	box-sizing: border-box;
	border: 2px solid transparent;
	background-color: #f7f9fb;
	transition: border-color .2s ease, opacity .2s ease;
	opacity: .65;
}

.news_gallery_thumbs .swiper-slide.active {
	border-color: #1773df;
	opacity: 1;
}

.news_gallery_thumbs button {
	width: 100%;
	display: block;
	padding: 0;
	border: 0;
	background: transparent;
	cursor: pointer;
}

.news_gallery_thumbs .photo-ofi {
	padding-bottom: 72%;
}

.cont_view {
	max-width: 860px;
	margin: 55px auto 0;
}

.item_view {
	margin-bottom: 18px;
	font-size: 1.8rem;
	font-weight: 600;
	line-height: 1.7;
	color: #123965;
}

.cont_view p.text {
	font-size: 1.5rem;
	line-height: 2;
	color: #405466;
}

.files_view {
	max-width: 860px;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 12px;
	margin: 48px auto 0;
}

.btn_pdf_view {
	min-height: 56px;
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 10px;
	padding: 10px 16px;
	box-sizing: border-box;
	border: 1px solid #c9d8e5;
	border-radius: 5px;
	background-color: #fff;
	font-family: inherit;
	font-size: 1.3rem;
	font-weight: 500;
	line-height: 1.5;
	color: #40566b;
}

.btn_pdf_view i {
	font-size: 1.7rem;
	color: #1773df;
}

.btn_back_view {
	margin-top: 55px;
	text-align: center;
}

.btn_back_view a {
	width: 270px;
	height: 56px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 14px;
	background-color: #edf6ff;
	font-size: 1.4rem;
	font-weight: 600;
	color: #1773df;
	transition: background-color .2s ease;
}

.btn_back_view a:hover {
	background-color: #dfeeff;
	color: #1773df;
	opacity: 1;
}

@media (max-width: 1199px) {
	.deco_sub_news {
		right: -180px;
	}
}

@media (max-width: 991px) {

	.inner_sub_news {
		padding-top: 60px;
	}

	.ttl_sub_news {
		font-size: 4.2rem;
	}

	.deco_sub_news {
		width: 650px;
		right: -270px;
	}

	.bg_news01,
	.bg_view01 {
		padding-top: 80px;
		padding-bottom: 90px;
		background-size: 150% auto, 150% auto;
	}

	.files_view {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (max-width: 767px) {


	.inner_sub_news {
		width: calc(100% - 30px);
		padding-top: 55px;
	}

	.en_sub_news {
		font-size: 1.1rem;
	}

	.ttl_sub_news {
		font-size: 3.4rem;
	}

	.deco_sub_news {
		right: -360px;
		bottom: -30px;
		width: 610px;
	}

	.container_news,
	.container_view {
		width: calc(100% - 30px);
	}

	.breadcrumb_news .container_news {
		padding-top: 13px;
		padding-bottom: 13px;
	}

	.bg_news01,
	.bg_view01 {
		padding-top: 60px;
		padding-bottom: 70px;
		background-size: 220% auto, 220% auto;
	}

	.catnav_news {
		display: block;
		padding-bottom: 24px;
	}

	.catnav_news ul {
		gap: 7px;
	}

	.catnav_news li a {
		min-width: auto;
		height: 40px;
		padding: 0 13px;
		font-size: 1.1rem;
	}

	.item_news {
		padding: 24px 0 28px;
	}

	.meta_news {
		gap: 10px;
		flex-wrap: wrap;
	}

	.body_news {
		display: block;
		margin-top: 12px;
	}

	.ttl_news {
		font-size: 1.5rem;
	}

	.btn_news {
		margin-top: 17px;
	}

	.btn_news a {
		width: 155px;
		height: 43px;
	}

	.pager_news {
		margin-top: 40px;
	}

	.head_view {
		padding-bottom: 22px;
	}

	.ttl_view {
		font-size: 2.3rem;
	}

	.gallery_view {
		margin-top: 38px;
	}

	.news_gallery_wrap {
		padding: 0 34px;
	}

	.news_gallery_wrap .swiper-button-prev,
	.news_gallery_wrap .swiper-button-next {
		width: 32px;
		height: 32px;
		margin-top: -16px;
		background-size: 10px auto;
	}

	.cont_view {
		margin-top: 40px;
	}

	.item_view {
		font-size: 1.6rem;
	}

	.cont_view p.text {
		font-size: 1.4rem;
		line-height: 1.9;
	}

	.files_view {
		grid-template-columns: 1fr;
		gap: 9px;
		margin-top: 38px;
	}

	.btn_pdf_view {
		min-height: 52px;
	}

	.btn_back_view {
		margin-top: 42px;
	}

	.btn_back_view a {
		width: 100%;
	}
}