@charset "UTF-8";

/* !Base -------------------------------------------------------------- */
:root {
  --blue: #003ff6;
  --lblue: #e9eef4;
  --dblue: #062d9f;
  --pink: #e7658d;
  --purple: #9e44c4;
  --green: #359e4b;
  --orange: #e89900;
  --red: #c02c24;
}
a {	color: inherit; text-decoration: none; }
a.underline { border-bottom: 1px solid; }
a.blue { color: #003ff6; text-decoration: none; }
a.blue:hover { border-bottom: 1px solid; }
a.hblue:hover { color: #003ff6; }
html { 
	font-size: 100%; overflow-y: scroll;
}
body {
	font-size: 16px;
	font-family: "Noto Sans JP", sans-serif;
	font-optical-sizing: auto;
	font-weight: 500;
	font-style: normal;
	letter-spacing: 0;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	line-height: 1.9;
	color: #262e42;
}
.Kiwi {
	font-family: "Kiwi Maru", serif;
	font-weight: 500;
	font-style: normal;
}
.noto {
	font-family: "Noto Sans JP", sans-serif;
}
.bold {
	font-weight: 700;
}
.semibold {
	font-weight: 600;
}
.medium {
	font-weight: 500;
}
.normal {
	font-weight: 400;
}
p { padding: 1em 0; }
img { max-width: 100%; height: auto; }
.taL { text-align: left;}
.taC { text-align: center;}
.taR { text-align: right;}
.marker { background:linear-gradient(transparent 60%, #fff65c 60%, #fff65c 100%, #fff 100%);}
.white { color: #fff; }
.black { color: #000; }
.blue { color: var(--blue); }
.lblue { color: var(--lblue); }
.pink { color: var(--pink); }
.purple { color: var(--purple); }
.green { color: var(--green); }
.orange { color: var(--orange); }
.red { color: #c02c24; }
.gray { color: #797979; }
.bg_white { background: #fff; }
.bg_black { background: #000; }
.bg_blue { background: var(--blue); }
.bg_lblue { background: var(--lblue); }
.bg_dblue { background: var(--dblue); }
.bg_pink { background: var(--pink); }
.bg_purple { background: var(--purple); }
.bg_green { background: var(--green); }
.bg_orange { background: var(--orange); }
.fz66 { font-size: 66px; }
.fz60 { font-size: 60px; }
.fz50 { font-size: 50px; }
.fz49 { font-size: 49px; }
.fz48 { font-size: 48px; }
.fz42 { font-size: 42px; }
.fz40 { font-size: 40px; }
.fz37 { font-size: 37px; }
.fz33 { font-size: 33px; }
.fz32 { font-size: 32px; }
.fz30 { font-size: 30px; }
.fz28 { font-size: 28px; }
.fz26 { font-size: 26px; }
.fz24 { font-size: 24px; }
.fz22 { font-size: 22px; }
.fz20 { font-size: 20px; }
.fz18 { font-size: 18px; }
.fz16 { font-size: 16px; }
.fz15 { font-size: 15px; }
.fz14 { font-size: 14px; }
.h1 { font-size: 52px; line-height: 1.4; padding: 0; }
h2,h3,h4,h5 { font-size: 40px; line-height: 1.4; }
.detail h1 { font-size: 28px; }
.detail h2 { font-size: 24px; }
.detail h3 { font-size: 23px; }
.detail h4 { font-size: 22px; }
.detail h5 { font-size: 20px; }
.detail-journey h2 { font-size: 24px; }
.detail-journey h3 { font-size: 22px; }
.detail-journey h4 { font-size: 21px; }
.detail-journey h5 { font-size: 20px; }
strong { font-weight: 700; }
.lh25 {line-height:2.5;}
.lh24 {line-height:2.4;}
.lh23 {line-height:2.3;}
.lh22 {line-height:2.2;}
.lh21 {line-height:2.1;}
.lh20 {line-height:2.0;}
.lh19 {line-height:1.9;}
.lh18 {line-height:1.8;}
.lh17 {line-height:1.7;}
.lh16 {line-height:1.6;}
.lh15 {line-height:1.5;}
.lh14 {line-height:1.4;}
.lh13 {line-height:1.3;}
.lh12 {line-height:1.2;}
.lh11 {line-height:1.1;}
.lh10 {line-height:1;}
.ls00 {letter-spacing:0;}
.ls002 {letter-spacing:0.02em;}
.ls004 {letter-spacing:0.04em;}
.ls005 {letter-spacing:0.05em;}
.ls008 {letter-spacing:0.08em;}
.ls01 {letter-spacing:0.1em;}
.ls015 {letter-spacing:0.15em;}
.ls02 {letter-spacing:0.19em;}
.ls025 {letter-spacing:0.25em;}
.ls03 {letter-spacing:0.3em;}
.ls04 {letter-spacing:0.4em;}
figcaption { line-height: 1.5; margin-top: 0.5em; font-size: 1.125em; }
.r_over { transition: all 0.3s;}
.r_over:hover { filter: brightness(120%);}
.r_over2 { transition: all 0.3s;}
.r_over2:hover { filter: brightness(300%) contrast(30%);}
.br10 { border-radius: .625em; }
.br20,.br20 > img { border-radius: 1.25em; }
.br30,.br30 > img { border-radius: 1.875em; }
.br05,.br05 > img { border-radius: .35em; }
.hdn { display: none; }
@media screen and (max-width: 1384px) {
body { font-size: 16px; }
.fz66 { font-size: 66px; }
.fz60 { font-size: 60px; }
.fz49 { font-size: 49px; }
.fz48 { font-size: 48px; }
.fz42 { font-size: 42px; }
.fz40 { font-size: 40px; }
.fz37 { font-size: 37px; }
.fz33 { font-size: 33px; }
.fz32 { font-size: 32px; }
.fz30 { font-size: 30px; }
.fz28 { font-size: 28px; }
.fz26 { font-size: 26px; }
.fz24 { font-size: 24px; }
.fz21 { font-size: 21px; }
.fz20 { font-size: 20px; }
.fz18 { font-size: 18px; }
.fz16 { font-size: 16px; }
.fz15 { font-size: 15px; }
.fz14 { font-size: 14px; }
.h1 { font-size: 52px; }
h2,h3,h4,h5 { font-size: 40px; }
.detail h1 { font-size: 28px; }
.detail h2 { font-size: 26px; }
.detail h3 { font-size: 24px; }
.detail h4 { font-size: 22px; }
.detail h5 { font-size: 20px; }
body { font-size: 1.156vw; }
.fz66 { font-size: 4.769vw; }
.fz60 { font-size: 4.335vw; }
.fz50 { font-size: 3.613vw; }
.fz49 { font-size: 3.54vw; }
.fz48 { font-size: 3.468vw; }
.fz42 { font-size: 3.035vw; }
.fz40 { font-size: 2.89vw; }
.fz37 { font-size: 2.673vw; }
.fz33 { font-size: 2.384vw; }
.fz32 { font-size: 2.312vw; }
.fz30 { font-size: 2.168vw; }
.fz28 { font-size: 2.023vw; }
.fz26 { font-size: 1.879vw; }
.fz24 { font-size: 1.734vw; }
.fz22 { font-size: 1.59vw; }
.fz20 { font-size: 1.445vw; }
.fz18 { font-size: 1.301vw; }
.fz16 { font-size: 1.156vw; }
.fz15 { font-size: 1.084vw; }
.fz14 { font-size: 1.012vw; }
.h1 { font-size: 3.757vw; }
h2,h3,h4,h5 { font-size: 2.89vw; }
.detail h1 { font-size: 2.023vw; }
.detail h2 { font-size: 1.734vw; }
.detail h3 { font-size: 1.662vw; }
.detail h4 { font-size: 1.59vw; }
.detail h5 { font-size: 1.445vw; }
.detail-journey h2 { font-size: 1.734vw; }
.detail-journey h3 { font-size: 1.59vw; }
.detail-journey h4 { font-size: 1.517vw; }
.detail-journey h5 { font-size: 1.445vw; }
}
@media screen and (max-width: 1024px) { /*1100*/
body { font-size: 1.455vw; }
.fz66 { font-size: 5vw; }
.fz60 { font-size: 4.8vw; }
.fz50 { font-size: 4vw; }
.fz49 { font-size: 4.455vw; }
.fz48 { font-size: 4.364vw; }
.fz42 { font-size: 3.818vw; }
.fz40 { font-size: 3.636vw; }
.fz37 { font-size: 3.364vw; }
.fz33 { font-size: 3vw; }
.fz32 { font-size: 2.909vw; }
.fz30 { font-size: 2.727vw; }
.fz28 { font-size: 2.545vw; }
.fz26 { font-size: 2.364vw; }
.fz24 { font-size: 2.182vw; }
.fz22 { font-size: 2vw; }
.fz20 { font-size: 1.818vw; }
.fz18 { font-size: 1.636vw; }
.fz16 { font-size: 1.455vw; }
.fz15 { font-size: 1.364vw; }
.fz14 { font-size: 1.273vw; }
._fz42 { font-size: 2.6vw; }
.h1 { font-size: 4.2vw; }
h2,h3,h4,h5 { font-size: 3.636vw; }
.detail h1 { font-size: 2.545vw; }
.detail h2 { font-size: 2.182vw; }
.detail h3 { font-size: 2.091vw; }
.detail h4 { font-size: 2vw; }
.detail h5 { font-size: 1.818vw; }
.detail-journey h2 { font-size: 2.182vw; }
.detail-journey h3 { font-size: 2vw; }
.detail-journey h4 { font-size: 1.909vw; }
.detail-journey h5 { font-size: 1.818vw; }
.tab-taC { text-align: center !important;}
}
@media screen and (max-width: 540px) { /*500px*/
body { font-size: 3.2vw; line-height: 1.8; }
.fz66 { font-size: 8.8vw; }
.fz60 { font-size: 8vw; }
.fz50 { font-size: 5.5vw; }
.fz49 { font-size: 6.533vw; }
.fz48 { font-size: 6.4vw; }
.fz42 { font-size: 5.6vw; }
.fz40 { font-size: 5.333vw; }
.fz37 { font-size: 5.333vw; }
.fz33 { font-size: 5.3vw; }
.fz32 { font-size: 5.2vw; }
.fz30 { font-size: 5vw; }
.fz28 { font-size: 4.4vw; }
.fz26 { font-size: 4.3vw; }
.fz24 { font-size: 4.2vw; }
.fz22 { font-size: 4vw; }
.fz20 { font-size: 3.8vw; }
.fz18 { font-size: 3.46vw; }
.fz16 { font-size: 3.2vw; }
.fz15 { font-size: 3vw; }
.fz14 { font-size: 2.5vw; }
._fz56 { font-size: 5.6vw; }
._fz44 { font-size: 4.4vw; }
._fz42 { font-size: 4.26vw; }
._fz37 { font-size: 3.73vw; }
._fz53 { font-size: 5.3vw; }
.h1 { font-size: 6.8vw; }
.h1.h1_min { font-size: 6.5vw; }
h2,h3,h4,h5 { font-size: 5.333vw; }
.detail h1 { font-size: 4.8vw; }
.detail h2 { font-size: 4.4vw; }
.detail h3 { font-size: 4.3vw; }
.detail h4 { font-size: 4.2vw; }
.detail h5 { font-size: 4vw; }
.detail-journey h2 { font-size: 4.4vw; }
.detail-journey h3 { font-size: 4.2vw; }
.detail-journey h4 { font-size: 4vw; }
.detail-journey h5 { font-size: 3.8vw; }
.lh25 {line-height:2;}
.lh22 {line-height:1.8;}
.sp-taC { text-align: center !important;}
.br10 { border-radius: .4em; }
.br20,.br20 > img { border-radius: .8em; }
.br30,.br30 > img { border-radius: 1.2em; }
}
.sp,
.tab {
	display: none;
}
@media screen and (max-width: 1024px) {
	.pc {
		display: none;
	}
	.tab {
		display: block;
	}
}
@media screen and (max-width: 540px) {
	.sp {
		display: block;
	}
	.nosp {
		display: none;
	}
}
.mw100 { width: 100%; height: auto;}
.mw90 { width: 90%; margin: 0 5%;}
.dib { display: inline-block; }
.db { display: block; }
.ofh { overflow-x: hidden; }


/*ナビゲーション部分*/

@media screen and (max-width: 1024px) {
	.menu { 
		background-color: #fff;
		-webkit-transform: translateX(100%);
		transform: translateX(100%);
		position: fixed;
		z-index: 6;
		right: 0;
		top: 0;
		width: 78vw;
		height: 100%;
		overflow-y: auto;
		scrollbar-width: none;
		overscroll-behavior: none;
		padding: 0;
		font-size: 1.8em;
		transition: 0.1s ease;
	}
	.menu-nav-wrap {
		/*height: 100%;*/
		min-height: 100.1%;
		min-height: calc(100% + 1px);
		overflow-y: auto;
		display: flex;
		align-items: center;
	}
	.menu.open {
		-webkit-transform: translateX(0%);
		transform: translateX(0%);
		transition: 0.4s ease;
	}
	.menu-nav {
		padding: 0 0 10vh 5vw;
	}
	.menu a {
		display: block;
		padding: .9em 0;
	}
	.menu-addtxt-pc {
		display: none !important;
	}
}
@media screen and (max-width: 540px) {
	.menu-nav {
	}
	.menu { 
		font-size: 5vw;
	}
}

@media screen and (max-width: 1024px) {
	.Toggle {
		display: block;
		position: relative;
		cursor: pointer;
		z-index: 9;
		right: 0;
		top: 0;
		width: 10vw;
		height: 10vw;
		background: var(--blue);
	}
	.Toggle.active {
	}
	.Toggle span {
		display: block;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		width: 36%;
		border-bottom: solid 2px #fff;
		-webkit-transition: .35s ease-in-out;
		-moz-transition: .35s ease-in-out;
		transition: .35s ease-in-out;
	}
	.Toggle span:nth-child(1) {
		top: 37%;
	}
	.Toggle span:nth-child(2) {
		top: 50%;
	}
	.Toggle span:nth-child(3) {
		top: 63%;
	}
	.Toggle.active span:nth-child(1) {
		top: 50%;
		left: 29%;
		width: 44%;
		-webkit-transform: rotate(-45deg);
		-moz-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.Toggle.active span:nth-child(2),
	.Toggle.active span:nth-child(3) {
		top: 50%;
		left: 29%;
		width: 44%;
		-webkit-transform: rotate(45deg);
		-moz-transform: rotate(45deg);
		transform: rotate(45deg);
	}
	.header-cover {
		background-color: rgba(8,18,15,.5);
		position: fixed;
		top: 0;
		left: 0;
		height: 100%;
		width: 100%;
		opacity: 0;
		visibility: hidden;
		transition: opacity .2s ease;
		z-index: 5;
	}
	.menu.open + .header-cover {
		opacity: 1;
		visibility: visible;
	}
}
@media screen and (max-width: 540px) {
	.Toggle {
		width: 14.6vw;
		height: 14.6vw;
	}
	.Toggle span {
		border-bottom-width: 1px;
	}
}


.menu li a {
	font-weight: 700;
}
.menu li:nth-child(1) a:hover {
	color: var(--pink);
}
.menu li:nth-child(2) a:hover {
	color: var(--purple);
}
.menu li:nth-child(3) a:hover {
	color: var(--green);
}
.menu li:nth-child(4) a:hover {
	color: var(--orange);
}
.menu li a::before {
	content: "●";
}
.menu li:nth-child(1) a::before {
	color: var(--pink);
}
.menu li:nth-child(2) a::before {
	color: var(--purple);
}
.menu li:nth-child(3) a::before {
	color: var(--green);
}
.menu li:nth-child(4) a::before {
	color: var(--orange);
}
@media screen and (min-width: 1024.1px) {
	.header-cover,
	.Toggle {
		display: none;
	}
	.menu-nav-wrap {
		text-align: right;
	}
	.menu-nav {
		display: flex;
	}
	.menu li {
		margin-top: .8em;
	}
	.menu li {
		margin-left: 3.1em;
		line-height: 1;
	}
	.menu li a {
		font-size: 1.5em;
	}
	.menu-addtxt-pc {
		font-size: .9375em;
		padding: .2em .8em;
		border-radius: 1.5em;
		background: var(--lblue);
		display: inline-block;
	}
	.menu-addtxt-pc:hover {
		filter: brightness(90%);
	}
}



/* !header -------------------------------------------------------------- */
#header {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 7;
	width: 100%;
	height: 6.875em;
	margin: 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	padding: 0 2em 0 1.5625%;
}
#contents {
	padding-top: 6.875em;
	background: url(../images/bg_01.webp) center top repeat-y;
	background-size: 100% auto;
	padding-bottom: 5.5em;
}
@media screen and (max-width: 1600px) {
	#header {
		font-size: 1vw;
	}
}
@media screen and (max-width: 1024px) {
	#header {
		height: 10vw;
		padding: 0 0 0 5%;
		font-size: 1.5vw;
	}
	#contents {
		padding-top: 10vw;
	}
}
@media screen and (max-width: 540px) {
	#header {
		height: 14.6vw;
		padding: 0 0 0 6.9%;
		font-size: 2.13vw;
	}
	#contents {
		padding-top: 14.6vw;
		padding-bottom: 4em;
	}
}


/* !logo -------------------------------------------------------------- */
.logo {
	padding: 0;
}
.logo a {
	display: block;
	line-height: 1;
}
.headtitle2 {
	padding: .2em 0 .15em;
}
.headtitle1,
.headtitle2,
.headtitle3 {
	display: flex;
	align-items: center;
	color: #000;
}
.headtitle1_txt {
	font-weight: 900;
	color: var(--red);
	font-size: 1.125em;
	font-style: italic;
}
.headtitle3_txt1 {
	font-size: 2.3125em;
}
.headtitle3_txt2 {
	font-size: 1.125em;
	color: #fff;
	background: var(--blue);
	padding: .25em .6em .3em;
	border-radius: .3em;
	margin-left: .6em;
	margin-right: 1em;
	margin-top: .3em;
}
.headtitle4 {
	font-size: 1.125em;
	font-weight: 500;
	margin-top: .55em;
	display: inline-block;
}
.logo-img {
	width: 5.5em;
	margin-right: .2em;
}
.logo-2 {
	width: 1.625em;
	margin-right: .4em;
}
#footer .headtitle2 {
	margin-right: 1.5em;
}
#footer .headtitle2_txt {
	font-size: 1.125em;
}
@media screen and (max-width: 1600px) {
	#header .logo {
		font-size: 1vw;
	}
	#footer .logo {
		font-size: 1vw;
	}
}
@media screen and (max-width: 1024px) {
	#header .logo {
		font-size: 1.5vw;
	}
	#footer .logo {
		font-size: 1.5vw;
	}
	#header .headtitle4 {
		margin-top: .2em;
		font-size: 1.4em;
	}
	#header .headtitle3 {
		padding: .3em 0 0 .7em;
	}
}
@media screen and (max-width: 540px) {
	#header .logo {
		font-size: 2.13vw;
	}
	#footer .logo {
		font-size: 2.4vw;
	}
}


/* !grid -------------------------------------------------------------- */
.grid {
	display: grid;
	grid-template-areas:
		"a a"
		"b b"
		"c d";
}
.item-a {
	grid-area: a;
}
.item-b {
	grid-area: b;
}
.item-c {
	grid-area: c;
}
.item-d {
	grid-area: d;
}
@media screen and (max-width: 1024px) {
	.grid {
		grid-template-areas:
			"a c"
			"b c"
			"d d";
	}
}
@media screen and (max-width: 540px) {
}


/*基準1384*/
.container {
	width: 86.7%;
	max-width: 1200px;
	margin: 0 auto;
}
.container1920 {
	width: 100%;
	max-width: 1920px;
	margin: 0 auto;
}
.container100 {
	width: 100%;
	margin: 0 auto;
}
.container96 {
	width: 95.8%;
	margin: 0 auto;
}
.container91 {
	width: 91.6%;
	margin: 0 auto;
}
.container88 {
	width: 88%;
	margin: 0 auto;
}
.container75 {
	width: 75%;
	margin: 0 auto;
}
.container-left {
	width: 81.25%;
	max-width: 97.5em;
	margin-left: 0;
	margin-right: auto;
}
.container-right {
	width: 81.25%;
	max-width: 97.5em;
	margin-right: 0;
	margin-left: auto;
}
@media screen and (max-width: 1024px) {
	._tab100 {
		width: 100%;
	}
	._tab90 {
		width: 90%;
	}
	._tab86 {
		width: 86%;
	}
	._tab80 {
		width: 80%;
	}
	._tab70 {
		width: 70%;
	}
}
@media screen and (max-width: 540px) {
	._sp100 {
		width: 100%;
	}
	._sp92 {
		width: 92.3%;
	}
	._sp90 {
		width: 90%;
	}
	._sp86 {
		width: 86%;
	}
	._sp80 {
		width: 80%;
	}
}


/* !行間設定 -------------------------------------------------------------- */
.pd0	{ padding: 0; }
.pd02	{ padding: 0.2em 0; }
.pd03	{ padding: 0.3em 0; }
.pd04	{ padding: 0.4em 0; }
.pd05	{ padding: 0.5em 0; }
.pd07	{ padding: 0.7em 0; }
.pd08	{ padding: 0.8em 0; }
.pd1	{ padding: 1em 0; }
.pd15	{ padding: 1.5em 0; }
.pd2	{ padding: 2em 0; }
.pd25	{ padding: 2.5em 0; }
.pd3	{ padding: 3em 0; }
.pd35	{ padding: 3.5em 0; }
.pd4	{ padding: 4em 0; }
.pd45	{ padding: 4.5em 0; }
.pd5	{ padding: 5em 0; }
.pd6	{ padding: 6em 0; }
.pd7	{ padding: 7em 0; }
.pd8	{ padding: 8em 0; }
.mg05	{ margin: 0.5em auto; }
.mg1	{ margin: 1em auto; }
.mg15	{ margin: 1.5em auto; }
.mg2	{ margin: 2em auto; }
.mg25	{ margin: 2.5em auto; }
.mg3	{ margin: 3em auto; }
.mg4	{ margin: 4em auto; }
.mg5	{ margin: 5em auto; }
.mt03	{ margin-top: 0.3em;}
.mt05	{ margin-top: 0.5em;}
.mt1	{ margin-top: 1em;}
.mt15	{ margin-top: 1.5em;}
.mt18	{ margin-top: 1.8em;}
.mt2	{ margin-top: 2em;}
.mt25	{ margin-top: 2.5em;}
.mt3	{ margin-top: 3em;}
.mt35	{ margin-top: 3.5em;}
.mt4	{ margin-top: 4em;}
.mt45	{ margin-top: 4.5em;}
.mt5	{ margin-top: 5em;}
.mt6	{ margin-top: 6em;}
.mt7	{ margin-top: 7em;}
.mt8	{ margin-top: 8em;}
.mt9	{ margin-top: 9em;}
.mr05	{ margin-right: 0.5em;}
.mr1	{ margin-right: 1em;}
.mr15	{ margin-right: 1.5em;}
.mr2	{ margin-right: 2em;}
.mr25	{ margin-right: 2.5em;}
.mr3	{ margin-right: 3em;}
.mr4	{ margin-right: 4em;}
.mr5	{ margin-right: 5em;}
.ml05	{ margin-left: 0.5em;}
.ml1	{ margin-left: 1em;}
.ml15	{ margin-left: 1.5em;}
.ml2	{ margin-left: 2em;}
.ml25	{ margin-left: 2.5em;}
.ml3	{ margin-left: 3em;}
.ml4	{ margin-left: 4em;}
.ml5	{ margin-left: 5em;}
.mb05	{ margin-bottom: 0.5em;}
.mb1	{ margin-bottom: 1em;}
.mb15	{ margin-bottom: 1.5em;}
.mb2	{ margin-bottom: 2em;}
.mb25	{ margin-bottom: 2.5em;}
.mb3	{ margin-bottom: 3em;}
.mb35	{ margin-bottom: 3.5em;}
.mb4	{ margin-bottom: 4em;}
.mb45	{ margin-bottom: 4.5em;}
.mb5	{ margin-bottom: 5em;}
.mb6	{ margin-bottom: 6em;}
.pt05	{ padding-top: 0.5em;}
.pt1	{ padding-top: 1em;}
.pt15	{ padding-top: 1.5em;}
.pt2	{ padding-top: 2em;}
.pt25	{ padding-top: 2.5em;}
.pt3	{ padding-top: 3em;}
.pt35	{ padding-top: 3.5em;}
.pt4	{ padding-top: 4em;}
.pt45	{ padding-top: 4.5em;}
.pt5	{ padding-top: 5em;}
.pt6	{ padding-top: 6em;}
.pt7	{ padding-top: 7em;}
.pt8	{ padding-top: 8em;}
.pt10	{ padding-top: 10em;}
.pr05	{ padding-right: 0.5em;}
.pr1	{ padding-right: 1em;}
.pr15	{ padding-right: 1.5em;}
.pr2	{ padding-right: 2em;}
.pr25	{ padding-right: 2.5em;}
.pr3	{ padding-right: 3em;}
.pr35	{ padding-right: 3.5em;}
.pr4	{ padding-right: 4em;}
.pr5	{ padding-right: 5em;}
.pl05	{ padding-left: 0.5em;}
.pl1	{ padding-left: 1em;}
.pl15	{ padding-left: 1.5em;}
.pl2	{ padding-left: 2em;}
.pl25	{ padding-left: 2.5em;}
.pl3	{ padding-left: 3em;}
.pl35	{ padding-left: 3.5em;}
.pl4	{ padding-left: 4em;}
.pl45	{ padding-left: 4.5em;}
.pl5	{ padding-left: 5em;}
.pb05	{ padding-bottom: 0.5em;}
.pb1	{ padding-bottom: 1em;}
.pb15	{ padding-bottom: 1.5em;}
.pb2	{ padding-bottom: 2em;}
.pb25	{ padding-bottom: 2.5em;}
.pb3	{ padding-bottom: 3em;}
.pb35	{ padding-bottom: 3.5em;}
.pb4	{ padding-bottom: 4em;}
.pb45	{ padding-bottom: 4.5em;}
.pb5	{ padding-bottom: 5em;}
.pb6	{ padding-bottom: 6em;}
.pb7	{ padding-bottom: 7em;}
.pb8	{ padding-bottom: 8em;}
.pb9	{ padding-bottom: 9em;}
.pb10	{ padding-bottom: 10em;}
.pb-f	{ padding-bottom: 15em;}
@media screen and (max-width: 1024px) {
.pd08	{ padding: 1.2vw 0; }
.pd1	{ padding: 1.5vw 0; }
.pd15	{ padding: 2.25vw 0; }
.pd2	{ padding: 3vw 0; }
.pd25	{ padding: 3.75vw 0; }
.pd3	{ padding: 4.5vw 0; }
.pd35	{ padding: 5.25vw 0; }
.pd4	{ padding: 6vw 0; }
.pd45	{ padding: 6.75vw 0; }
.pd5	{ padding: 7.5vw 0; }
.pd6	{ padding: 9vw 0; }
.pd7	{ padding: 10.5vw 0; }
.pd8	{ padding: 12vw 0; }
.mg1	{ margin: 1.5vw auto; }
.mg15	{ margin: 2.25vw auto; }
.mg2	{ margin: 3vw auto; }
.mg25	{ margin: 3.75vw auto; }
.mg3	{ margin: 4.5vw auto; }
.mg4	{ margin: 6vw auto; }
.mg5	{ margin: 7.5vw auto; }
.mt05	{ margin-top: 0.75vw;}
.mt1	{ margin-top: 1.5vw;}
.mt15	{ margin-top: 2.25vw;}
.mt2	{ margin-top: 3vw;}
.mt25	{ margin-top: 3.75vw;}
.mt3	{ margin-top: 4.5vw;}
.mt35	{ margin-top: 5.25vw;}
.mt4	{ margin-top: 6vw;}
.mt45	{ margin-top: 6.75vw;}
.mt5	{ margin-top: 7.5vw;}
.mt6	{ margin-top: 9vw;}
.mt8	{ margin-top: 12vw;}
.mt9	{ margin-top: 13.5vw;}
.mr1	{ margin-right: 1.5vw;}
.mr15	{ margin-right: 2.25vw;}
.mr2	{ margin-right: 3vw;}
.mr25	{ margin-right: 3.75vw;}
.mr3	{ margin-right: 4.5vw;}
.mr4	{ margin-right: 6vw;}
.mr5	{ margin-right: 7.5vw;}
.ml1	{ margin-left: 1.5vw;}
.ml15	{ margin-left: 2.25vw;}
.ml2	{ margin-left: 3vw;}
.ml25	{ margin-left: 3.75vw;}
.ml3	{ margin-left: 4.5vw;}
.ml4	{ margin-left: 6vw;}
.ml5	{ margin-left: 7.5vw;}
.mb1	{ margin-bottom: 1.5vw;}
.mb15	{ margin-bottom: 2.25vw;}
.mb2	{ margin-bottom: 3vw;}
.mb25	{ margin-bottom: 3.75vw;}
.mb3	{ margin-bottom: 4.5vw;}
.mb35	{ margin-bottom: 5.25vw;}
.mb4	{ margin-bottom: 6vw;}
.mb45	{ margin-bottom: 6.75vw;}
.mb5	{ margin-bottom: 7.5vw;}
.mb6	{ margin-bottom: 9vw;}
.pt1	{ padding-top: 1.5vw;}
.pt15	{ padding-top: 2.25vw;}
.pt2	{ padding-top: 3vw;}
.pt25	{ padding-top: 3.75vw;}
.pt3	{ padding-top: 4.5vw;}
.pt35	{ padding-top: 5.25vw;}
.pt4	{ padding-top: 6vw;}
.pt45	{ padding-top: 6.75vw;}
.pt5	{ padding-top: 7.5vw;}
.pt6	{ padding-top: 9vw;}
.pt7	{ padding-top: 10.5vw;}
.pt8	{ padding-top: 12vw;}
.pt10	{ padding-top: 15vw;}
.pr1	{ padding-right: 1.5vw;}
.pr15	{ padding-right: 2.25vw;}
.pr2	{ padding-right: 3vw;}
.pr25	{ padding-right: 3.75vw;}
.pr3	{ padding-right: 4.5vw;}
.pr35	{ padding-right: 5.25vw;}
.pr4	{ padding-right: 6vw;}
.pr5	{ padding-right: 7.5vw;}
.pl1	{ padding-left: 1.5vw;}
.pl15	{ padding-left: 2.25vw;}
.pl2	{ padding-left: 3vw;}
.pl25	{ padding-left: 3.75vw;}
.pl3	{ padding-left: 4.5vw;}
.pl35	{ padding-left: 5.25vw;}
.pl4	{ padding-left: 6vw;}
.pl45	{ padding-left: 6.75vw;}
.pl5	{ padding-left: 7.5vw;}
.pb1	{ padding-bottom: 1.5vw;}
.pb15	{ padding-bottom: 2.25vw;}
.pb2	{ padding-bottom: 3vw;}
.pb25	{ padding-bottom: 3.75vw;}
.pb3	{ padding-bottom: 4.5vw;}
.pb3-0	{ padding-bottom: 0;}
.pb35	{ padding-bottom: 5.25vw;}
.pb4	{ padding-bottom: 6vw;}
.pb45	{ padding-bottom: 6.75vw;}
.pb5	{ padding-bottom: 7.5vw;}
.pb6	{ padding-bottom: 9vw;}
.pb7	{ padding-bottom: 10.5vw;}
.pb8	{ padding-bottom: 12vw;}
.pb9	{ padding-bottom: 13.5vw;}
.pb10	{ padding-bottom: 15vw;}
.pb-f	{ padding-bottom: 20vw;}
.tab-mt { margin-top: 2vw; }
.tab-mt2 { margin-top: 5vw; }
.tab-pt { padding-top: 5vw; }
.tab-pd { padding: 3vw 0; }
}
@media screen and (max-width: 540px) {
.pd02	{ padding: 0.1em 0; }
.pd08	{ padding: 2vw 0; }
.pd1	{ padding: 2vw 0; }
.pd15	{ padding: 3vw 0; }
.pd2	{ padding: 4vw 0; }
.pd25	{ padding: 5vw 0; }
.pd3	{ padding: 6vw 0; }
.pd35	{ padding: 7vw 0; }
.pd4	{ padding: 8vw 0; }
.pd45	{ padding: 9vw 0; }
.pd5	{ padding: 10vw 0; }
.pd6	{ padding: 12vw 0; }
.pd7	{ padding: 14vw 0; }
.pd8	{ padding: 16vw 0; }
.mg1	{ margin: 2vw auto; }
.mg15	{ margin: 3vw auto; }
.mg2	{ margin: 4vw auto; }
.mg25	{ margin: 5vw auto; }
.mg3	{ margin: 6vw auto; }
.mg4	{ margin: 8vw auto; }
.mg5	{ margin: 10vw auto; }
.mt1	{ margin-top: 2vw;}
.mt15	{ margin-top: 3vw;}
.mt2	{ margin-top: 4vw;}
.mt25	{ margin-top: 5vw;}
.mt3	{ margin-top: 6vw;}
.mt35	{ margin-top: 7vw;}
.mt4	{ margin-top: 8vw;}
.mt45	{ margin-top: 9vw;}
.mt5	{ margin-top: 10vw;}
.mt6	{ margin-top: 12vw;}
.mt7	{ margin-top: 14vw;}
.mt8	{ margin-top: 16vw;}
.mt9	{ margin-top: 18vw;}
.mr1	{ margin-right: 2vw;}
.mr15	{ margin-right: 3vw;}
.mr2	{ margin-right: 4vw;}
.mr25	{ margin-right: 5vw;}
.mr3	{ margin-right: 6vw;}
.mr4	{ margin-right: 8vw;}
.mr5	{ margin-right: 10vw;}
.ml1	{ margin-left: 2vw;}
.ml15	{ margin-left: 3vw;}
.ml2	{ margin-left: 4vw;}
.ml25	{ margin-left: 5vw;}
.ml3	{ margin-left: 6vw;}
.ml4	{ margin-left: 8vw;}
.ml5	{ margin-left: 10vw;}
.mb1	{ margin-bottom: 2vw;}
.mb15	{ margin-bottom: 3vw;}
.mb2	{ margin-bottom: 4vw;}
.mb25	{ margin-bottom: 5vw;}
.mb3	{ margin-bottom: 6vw;}
.mb35	{ margin-bottom: 7vw;}
.mb4	{ margin-bottom: 8vw;}
.mb45	{ margin-bottom: 9vw;}
.mb5	{ margin-bottom: 10vw;}
.mb6	{ margin-bottom: 12vw;}
.pt1	{ padding-top: 2vw;}
.pt15	{ padding-top: 3vw;}
.pt2	{ padding-top: 4vw;}
.pt25	{ padding-top: 5vw;}
.pt3	{ padding-top: 6vw;}
.pt35	{ padding-top: 7vw;}
.pt4	{ padding-top: 8vw;}
.pt45	{ padding-top: 9vw;}
.pt5	{ padding-top: 10vw;}
.pt6	{ padding-top: 12vw;}
.pt7	{ padding-top: 14vw;}
.pt8	{ padding-top: 16vw;}
.pt10	{ padding-top: 20vw;}
.pr1	{ padding-right: 2vw;}
.pr15	{ padding-right: 3vw;}
.pr2	{ padding-right: 4vw;}
.pr25	{ padding-right: 5vw;}
.pr3	{ padding-right: 6vw;}
.pr35	{ padding-right: 7vw;}
.pr4	{ padding-right: 8vw;}
.pr5	{ padding-right: 10vw;}
.pl1	{ padding-left: 2vw;}
.pl15	{ padding-left: 3vw;}
.pl2	{ padding-left: 4vw;}
.pl25	{ padding-left: 5vw;}
.pl3	{ padding-left: 6vw;}
.pl35	{ padding-left: 7vw;}
.pl4	{ padding-left: 8vw;}
.pl45	{ padding-left: 9vw;}
.pl5	{ padding-left: 10vw;}
.pb1	{ padding-bottom: 2vw;}
.pb15	{ padding-bottom: 3vw;}
.pb2	{ padding-bottom: 4vw;}
.pb25	{ padding-bottom: 5vw;}
.pb3	{ padding-bottom: 6vw;}
.pb3-2	{ padding-bottom: 19vw;}
.pb35	{ padding-bottom: 7vw;}
.pb4	{ padding-bottom: 8vw;}
.pb45	{ padding-bottom: 9vw;}
.pb5	{ padding-bottom: 10vw;}
.pb6	{ padding-bottom: 12vw;}
.pb7	{ padding-bottom: 14vw;}
.pb8	{ padding-bottom: 16vw;}
.pb9	{ padding-bottom: 18vw;}
.pb10	{ padding-bottom: 20vw;}
.pb-f	{ padding-bottom: 25vw;}
.tab-mt { margin-top: 3vw; }
.tab-mt2 { margin-top: 9vw; }
.tab-pt { padding-top: 0; }
.tab-pd { padding: 10vw 0; }
.sp-pt	{ padding-top: 8vw;}
.sp-mt0 { margin-top: 0; }
.sp-mt { margin-top: 3vw; }
.sp-mt1 { margin-top: 2vw; }
.sp-mt2 { margin-top: 6vw; }
.sp-mt3 { margin-top: 9vw; }
.sp-mt4 { margin-top: 12vw; }
.sp-mt5 { margin-top: 15vw; }
.sp-pt { padding-top: 5vw; }
.sp-pl { padding-left: 3vw; }
.sp-pb { padding-bottom: 5vw; }
}
@media screen and (min-width: 541px) {
.pt5-pc { padding-top: 5em;}
}


/* !flex -------------------------------------------------------------- */
.flex,
.flex_pc,
.flex_all {
	display: flex;
	justify-content: space-between;
}
.aic {
	align-items: center;
}
.ais {
	align-items: start;
}
.aie {
	align-items: flex-end;
}
.flwWrap {
	flex-wrap: wrap;
}
.jcs {
	justify-content: start;
}
.jcc {
	justify-content: center;
}
.jcr {
	justify-content: flex-end;
}
.jc-se {
	justify-content: space-evenly;
}
.fd-rr {
	flex-direction: row-reverse;
}
.fd-column {
	flex-direction: column;
}
.order-1 {
	order: 1;
}
.order-2 {
	order: 2;
}
.flex-w77 {
	width: 77%;
}
.flex-w76 {
	width: 76%;
}
.flex-w70 {
	width: 70%;
}
.flex-w69 {
	width: 69.2%;
}
.flex-w52 {
	width: 52%;
}
.flex-w50 {
	width: 50%;
}
.flex-w45 {
	width: 45%;
}
.flex-w43 {
	width: 43%;
}
.flex-w31 {
	width: 30.8%;
}
.flex-w30 {
	width: 30%;
}
.flex-w20 {
	width: 19.4%;
}
.flex-col-2 {
	width: 48.4%;
}
.flex-col-2:nth-child(2n) {
	margin-left: 3.2%;
}

@media screen and (max-width: 1024px) {
	.flex_pc {
		display: block;
	}
	.flex_pc > [class^="flex-w"] {
		width: 100%;
	}
}
@media screen and (max-width: 540px) {
	.flex {
		display: block;
	}
	.flex > [class^="flex-w"],
	.flex > [class^="flex-col-"] {
		width: 100%;
	}
	.flex_sp {
		display: flex;
	}
	.sp-ais {
		align-items: start;
	}
}


/* !fv -------------------------------------------------------------- */
.fv {
	background: url(../images/fv_img.webp) center no-repeat;
	background-size: cover;
	height: 28.4375vw;
	max-height: 100vh;
	position: relative;
	font-size: 0.833vw;
}
.fv_txtBox1 {
	position: absolute;
	top: 22.1%;
	left: 5.05%;
}
.fv_txtBox2 {
	position: absolute;
	right: 3.7%;
	bottom: 4.5%;
}
.fv_txt_title {
	background: #fff;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	padding: .57em 1em .57em .57em;
}
.fv_txt_title img {
	width: 18.4375em;
}
.fv_txt_title span {
	font-size: 3.7625em;
	color: var(--red);
	font-style: italic;
	font-weight: 900;
	display: inline-block;
	padding-bottom: .13em;
}
.fv_txt1 {
	line-height: 1.5;
	font-size: 2.2em;
	padding: .4em 0 .6em;
	font-weight: 700;
	color: #fff;
}
.fv_txt2 {
	font-size: 1.25em;
	padding: 0;
	color: #fff;
	background: var(--blue);
	display: inline-block;
	padding: .3em 1.2em .4em;
	border-radius: 1.5em;
	transition: .2s;
}
.fv_txt2:hover {
	background: var(--dblue);
}
.fv_txt3 {
	line-height: 1.62;
	font-size: 1.8125em;
	font-weight: 700;
	color: #fff;
	text-align: right;
}
@media screen and (max-width: 1024px) {
	.fv {
		font-size: 1.18vw;
		height: 34.125em;
		border-radius: 0 0 5.6em 5.6em;
	}
	.fv_txtBox1 {
		top: 15%;
	}
	.fv_txtBox2 {
		right: 6%;
	}
}
@media screen and (max-width: 540px) {
	.fv {
		background-image: url(../images/fv_img_sp.webp);
		height: 104.266vw;
		font-size: 2.12vw;
	}
	.fv_txtBox1 {
		top: 6%;
		left: 6%;
	}
	.fv_txt2 {
		font-size: 1.45em;
	}
}


/* !btn -------------------------------------------------------------- */
.btn_01,
.submitbtnWrap {
	position: relative;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	color: #fff;
	background: var(--blue);
	min-width: 11.75em;
	height: 2.625em;
	border-radius: 1.5em;
	transition: all 0.2s;
	font-size: 1em;
}
.btn_01::after,
.submitbtnWrap::after {
	content: "";
	display: block;
	background: #fff;
	position: absolute;
	right: 10%;
	top: 50%;
	transform: translateY(-50%);
	clip-path: polygon(0 40%, 70% 40%, 50% 13%, 62% 0, 100% 50%, 62% 100%, 50% 87%, 70% 60%, 0 60%);
	transition: all 0.2s;
	width: 1.25em;
	height: 1em;
}
a.btn_01:hover,
.submitbtnWrap:hover {
	background: #262e42;
}
a.btn_01:hover::after,
a:hover .btn_01::after,
.submitbtnWrap:hover::after {
	right: 7%;
}
.btn_01 span {
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0 3em .1em 1.5em;
}
.submitbtnWrap input {
	width: 100%;
	height: 100%;
	text-align: center;
	padding: 0 1.5em .1em 0;
}

.btn_01._white {
	color: #000;
	background: #fff;
}
.btn_01._white::after {
	background: var(--blue);
}
.btn_01._white:hover {
	background: #fff;
}
.btn_01._head {
	color: #000;
	background: #fff;
	height: 3.375em;
	border-radius: 2em;
	min-width: inherit;
}
.btn_01._head span {
	font-size: 1.25em;
	font-weight: 700;
	padding: 0 4em .1em 1.6em;
}
.btn_01._head::after {
	background: var(--blue);
	right: 7.8%;
}
.btn_01._head:hover::after {
	right: 6%;
}
.btn_01._head:hover {
	background: #fff;
}

.btn_01._big {
	min-width: 23.125em;
	height: 5em;
	border-radius: .6em;
}
.btn_01._big span {
	font-size: 1.25em;
	font-weight: 700;
}
.btn_01._big::after {
	right: 8%;
}
.btn_01._big:hover::after {
	right: 6%;
}
@media screen and (max-width: 1384px) {
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 540px) {
	.btn_01,
	.submitbtnWrap {
		min-width: 10em;
	}
	.btn_01._head {
		height: 2.7em;
		width: 100%;
	}
	.btn_01._head span {
		font-size: 1.07em;
		padding: 0 4em .1em 1.6em;
	}
	.btn_01._head::after {
		background: var(--blue);
		right: 7.8%;
	}
	.btn_01._head:hover::after {
		right: 6%;
	}
	.btn_01._big {
		min-width: 20.5em;
		height: 3.6em;
	}
	.btn_01,
	.submitbtnWrap {
	}
	.btn_01::after,
	.submitbtnWrap::after {
	}
}

.submitbtnWrap:not(.submitbtnWrap-confirm) {
	background: #ccc;
}
.contactFormWrap:has(input[type=checkbox]:checked) + .submitbtnWrap {
	background: #000;
}
.contactFormWrap:has(input[type=checkbox]:checked) + .submitbtnWrap:hover,
.submitbtnWrap.submitbtnWrap-confirm:hover {
	background: var(--blue);
}


/* !decorations -------------------------------------------------------------- */
.title {
	position: relative;
	display: inline-block;
	padding: 0;
	line-height: 1.4;
}
.title::before {
	content: attr(data-text);
	position: absolute;
	inset: 0;
	color: transparent;
	-webkit-text-stroke: 0.25em var(--blue);
	z-index: 0;
}
.title::after {
	content: attr(data-text);
	position: absolute;
	inset: 0;
	color: transparent;
	-webkit-text-stroke: 0.182em #fff;
	z-index: 0;
}
.title span {
	position: relative;
	color: var(--blue);
	z-index: 1;
}


.bg_txt {
	position: relative;
	line-height: 1;
}
.bg_txt span {
	position: absolute;
	color: #fff;
	font-family: "Lato", sans-serif;
	font-weight: 100;
	font-style: normal;
	font-size: 14em;
	display: block;
	text-align: center;
	width: 100%;
	left: 0;
	top: 0;
}
.bg_txt._bg span {
	transform: translateY(-30%);
}
.bg_txt._interview span {
	position: relative;
	font-size: 13.625em;
}
@media screen and (max-width: 1024px) {
	.bg_txt span {
		font-size: 11em;
	}
	.bg_txt._interview span {
		font-size: 11em;
	}
}
@media screen and (max-width: 540px) {
	.bg_txt span {
		font-size: 5em;
	}
	.bg_txt._interview span {
		font-size: 5em;
	}
}


.border-bottom {
	border-bottom: 1px solid var(--blue);
}
.border-bottom-gray {
	border-bottom: 1px solid #a9a9a9;
}


/* !contents -------------------------------------------------------------- */
.txt-1 {
	margin-left: 1em;
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 540px) {
	.txt-1 {
		margin-left: 0;
	}
}


.img_01 img {
	border-radius: 1.25em 0 0 1.25em;
	width: 23.0625em;
	height: 14.25em;
	object-fit: cover;
	object-position: 50% top;
}
.box-1-inner {
	padding: 2.7% 2.5% 0 7%;
}
@media screen and (max-width: 540px) {
	.box-1 {
		margin-top: 30vw;
	}
	.img_01 {
		text-align: center;
	}
	.img_01 img {
		border-radius: .8em;
		width: 74%;
		height: auto;
		margin-top: -20.5vw;
	}
	.box-1-inner {
		padding: 4.5% 0 7%;
	}
}

.bg_02,
.bg_03 {
	padding: 1% 4.5% 0 6.5%;
	display: flex;
	align-items: center;
}
.bg_02 {
	background: #0b3bb9 url(../images/bg_02.webp) center no-repeat;
	background-size: cover;
	height: 18.75em;
}
.bg_03 {
	background: #1a3039 url(../images/bg_03.webp) center no-repeat;
	background-size: cover;
	height: 11.875em;
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 540px) {
	.bg_02 {
		background-image: url(../images/bg_02_sp.webp);
		height: 40vw;
	}
	.bg_03 {
		background-image: url(../images/bg_03_sp.webp);
		height: 25.333vw;
	}
}

.bg_04 {
	position: relative;
	z-index: 2;
}
.bg_04::before {
	position: absolute;
	background: #fff;
	content: "";
	display: block;
	width: 60%;
	height: 65%;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	z-index: -1;
}
@media screen and (max-width: 1024px) {
	.txt-2 {
		padding-left: 6em;
	}
}
@media screen and (max-width: 540px) {
	.bg_04 {
		padding-bottom: 7vw;
	}
	.bg_04::before {
		width: 100%;
		height: 58%;
		top: inherit;
		bottom: 0;
		transform: none;
	}
	.img_02 {
		text-align: center;
	}
	.img_02 img {
		width: 74%;
	}
}

.img_03 {
	background: url(../images/img_03.webp) center top no-repeat;
	background-size: 120em;
	padding: 36.25em 0 0;
}
.box-4 {
	padding: 2.2em 0 2.2em 1.7em;
}
@media screen and (max-width: 1024px) {
	.img_03 {
		background-size: 100vw;
		padding: 20vw 0 0;
	}
	.box-5 {
		padding-bottom: 2.5em;
	}
}
@media screen and (max-width: 540px) {
	.img_03 {
		background-image: url(../images/img_03_sp.webp);
		padding: 35vw 0 0;
	}
	.box-4 {
		padding: 1.5em 0 .6em;
	}
	.txt-3 {
		padding-left: 12em;
	}
	.box-5 {
		padding-bottom: 1.8em;
		padding-top: .1em;
	}
}



/* !news -------------------------------------------------------------- */
.news_list li {
	border-bottom: 1px solid #a3a3a3;
	padding: .3em 0;
}
.news_list li a {
	display: flex;
	align-items: center;
	padding: 1em 0 1em .5em;
}
.news_list li a:hover {
	background: #f5f5f5;
}
.news_inner {
	margin-right: 1.5em;
}
.news_day {
	font-size: .9375em;
	margin-right: 1em;
}
.news_cat {
	min-width: 7.8em;
	background: #000;
	color: #fff;
	font-size: .9375em;
	text-align: center;
	border-radius: .3em;
	white-space: nowrap;
	padding: 0 .5em;
}
.single-information .news_cat {
	display: inline-block;
}
.news_txt {
	padding: 0;
	font-size: 1.125em;
}
@media screen and (max-width: 1024px) {
	.news_day {
	}
	.news_txt {
	}
}
@media screen and (max-width: 540px) {
	.news_list li a {
		display: block;
	}
	.news_inner {
		margin-right: 0;
		padding: .3em 0 .6em;
	}
	.news_day {
	}
	.news_txt {
		width: 100%;
	}
}


.zi2 {
	z-index: 2;
	position: relative;
}


/* !footer
---------------------------------------------------------- */
#footer {
	padding: 1.7em 0;
}
.footer-nav {
	line-height: 1;
	display: flex;
	padding: 1.2em 0;
}
.footer-nav li:not(:first-child)::before {
	content: "|";
	margin-left: 1.25em;
	margin-right: 1.25em;
}
.footer-nav2 {
	line-height: 1;
	display: flex;
	justify-content: flex-end;
}
.footer-nav2 li + li {
	margin-left: 2em;
}
.footer-nav li a:hover,
.footer-nav2 li a:hover {
	color: var(--blue);
}
@media screen and (max-width: 1024px) {
}
@media screen and (max-width: 540px) {
	#footer {
		padding: 2.3em 0 1.5em;
	}
}


a.anchor {
    display: block;
    padding-top: 6.875em;
    margin-top: -6.875em;
}
@media screen and (max-width: 1024px) {
	a.anchor {
		padding-top: 9vw;
		margin-top: -9vw;
	}
}
@media screen and (max-width: 540px) {
	a.anchor {
		padding-top: 14.6vw;
		margin-top: -14.6vw;
	}
}

/* !Clearfix
---------------------------------------------------------- */
.clearfix::after,
.contactForm dd::after {
	content: '';
	display: block;
	height: 0;
	overflow: hidden;
	clear: both;
}

/* !tel
---------------------------------------------------------- */
@media (min-width: 541px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none;
	}
}
