@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500;600;800&family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&family=Roboto+Condensed:ital,wght@0,100..900;1,100..900&display=swap');
/* --------------------------------------------------------------------------------------
[ Initialization ]
----------------------------------------------------------------------------------------- */
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,input,textarea,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video {
	margin: 0;
	padding: 0;
	box-sizing:border-box;
}
h1,h2,h3,h4,h5,h6,th,input,textarea,select {
	font-family: inherit;
	font-size: 100%;
	font-weight: 300;
}
li {
	list-style: none outside;
}
input,textarea {
	padding: 0;
	vertical-align: middle;
	overflow: auto;
}
select {
	padding: 0px;
	vertical-align: middle;
}
em, strong {
	font-weight: 500;
	font-style: normal;
}
img {
	border: none;
	outline: none;
	vertical-align: top;
	max-width: 100%;
}
table {
	font-size: inherit;
	border-collapse: collapse;
	border-spacing: 0;
}
hr, map {
	display: none;
}
sub {
	vertical-align: -0.1em;
	line-height: 1.0em;
	font-size: 0.6em;
}
sup {
	vertical-align: 0.65em;
	line-height: 1.0em;
	font-size: 0.6em;
}


/* --------------------------------------------------------------------------------------
[ Base setting ]
----------------------------------------------------------------------------------------- */
html {
	overflow-y: scroll;
	font-size: 62.5%;
}
body {
	min-width: 320px;
	font-family: "Noto Sans JP", sans-serif;
	font-feature-settings: "palt";
	letter-spacing: 0.075em;
	font-size: 160%;
	font-style: normal;
	font-weight: 300;
	color: #222;
	line-height: 0;
	-webkit-text-size-adjust: 100%;
	margin: 0;
	padding: 0;
	background: #2F2F2F;
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

a:link, a:visited, a:active, a:hover {
	color: #222;
	text-decoration: none;
	outline: none;
	-moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; user-select: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0); tap-highlight-color: rgba(0,0,0,0);
}
a * {
	outline: none;
	-moz-user-select: none; -webkit-user-select: none; -ms-user-select: none; user-select: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0); tap-highlight-color: rgba(0,0,0,0);
}
::-webkit-input-placeholder {
	color: rgba(255,255,255,.5);
}
::-moz-placeholder {
	color: rgba(255,255,255,.5);
	opacity: 1;
}
:-ms-input-placeholder {
	color: rgba(255,255,255,.5);
}
:placeholder-shown {
	color: rgba(255,255,255,.5);
}


@media screen and (min-width: 768px) {
	.forSP {
		display:none;
	}
}
@media screen and (max-width: 767px) {
	.forPC {
		display:none;
	}
	img {
		width:100%;
	}
}


/* --------------------------------------------------------------------------------------
[ Page frame ]
----------------------------------------------------------------------------------------- */


#header {
	width:100%;
	height:80px;
	background-color:rgba(0,0,0,0.25);
	padding:20px 40px;
	display:flex;
	align-items:center;
	justify-content:flex-start;
	position:absolute;
	top:0;
	z-index: 1;
}
#header .box_header {
	margin-right:17px;
}
#header p {
	font-size:16px;
	line-height:1;
	color:#FFF;
}

@media screen and (max-width: 767px) {
	#header {
		height:60px;
		padding:13px 10px;
	}
	#header .box_header {
		margin-right:13px;
	}
	#header .box_header a img {
		height:34px;
	}
	#header p {
		font-size:12px;
	}

}



.floatbnr {
	display:block;
	width:56px;
	height:248px;
	border:4px solid #FFF;
	background:transparent linear-gradient(180deg, #FF9900 0%, #ED6300 100%) 0% 0% no-repeat padding-box;
	border-radius: 12px 0px 0px 12px;
	position:fixed;
	top:50%;
	right:-4px;
	transform:translateY(-50%);
	text-align:center;
	box-sizing:border-box;
	padding:20px 0 0;
	cursor:pointer;
	z-index:1;
}
.floatbnr span {
	font-family:'Noto Sans JP', sans-serif;
	font-weight:800;
	font-size:26px;
	writing-mode: vertical-rl;
	color:#FFF;
	text-shadow:0px -1px #00000066;
}
.floatbnr::after {
	content:'';
	display:inline-block;
	width:0;
	height:0;
	border-top:20px solid #FFF;
	border-right:12px solid transparent;
	border-left:12px solid transparent;
	border-bottom:0;
	position:absolute;
	left:50%;
	bottom:15px;
	transform:translateX(-50%);
}
@media screen and (max-width: 767px) {
	.floatbnr {
		width:100%;
		height:48px;
		border:0;
		top:unset;
		right:unset;
		bottom:0;
		background:ransparent linear-gradient(180deg, #FF9900 0%, #ED6300 100%) 0% 0% no-repeat padding-box;
		display:flex;
		justify-content:center;
		align-items:center;
		border-radius:0;
		padding:0;
		transform:none;
	}
	.floatbnr span {
		font-weight:500;
		font-size:24px;
		writing-mode:horizontal-tb;
		text-shadow:0px -1px #00000066;
	}
	.floatbnr::after {
		position:relative;
		left:unset;
		bottom:unset;
		margin-left:10px;
		border-top:17px solid #FFF;
		border-right:9px solid transparent;
		border-left:9px solid transparent;
		border-bottom:0;
	}
	.floatbnr::before {
		content:'';
		display:inline-block;
		width:20px;
		opacity:0;
	}
	.-bottom .floatbnr {
		opacity:0;
		display:none;
	}
}


main h2,
main h3,
main h4,
main p,
main li,
main small,
main strong,
main a {
	line-height:1;
}

.secBox {
	padding:120px 0 120px;
	position:relative;
}
.secBox .secInner {
	width:100%;
	max-width:1320px;
	margin:0 auto;
}
@media screen and (max-width: 767px) {
	.secBox {
		padding:60px 0 60px;
	}
	.secBox .secInner {
		margin:0 10px;
		width:calc(100% - 20px);
	}
	.secBox h2 {
		margin-left:auto;
		margin-right:auto;
	}
	.secBox h2 img {
		width:revert-layer;
	}
}

.secVisual {
	min-height:100vh;
	max-height:1000px;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content: center;
	padding:0;
	margin:0 10px;
}
.secVisual h1 {
	font-size:0;
	text-align:center;
	color:#FFF;
}
.secVisual p {
	font-size:20px;
	font-weight:500;
	line-height:2.5;
	letter-spacing:1.5px;
	text-align:center;
	color:#FFF;
	margin-top:40px;
}

.secBox#sec01 {
	min-height:100vh;
	max-height:1000px;
	display:flex;
	align-items:center;
	margin:0 10px;
}
#sec01 .secInner {
	width:100%;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content: center;
	/*
	padding:50px;
	background: rgba(236, 101, 1, 0.75);
	*/
}
#sec01 .secInner h2 {
	font-size:36px;
	font-weight:600;
	text-align:center;
	color:#FFF;
}
#sec01 .secInner h2 br {
	display:none;
}
#sec01 .secInner p {
	font-size:20px;
	font-weight:500;
	line-height:2.5;
	text-align:center;
	color:#FFF;
	margin-top:48px;
}

#sec02 {
	background:url(../../img/background.jpg) 50% 0;
	background-size:cover;
	padding:120px 20px;
}
#sec02 h2 {
	text-align:center;
}
#sec02 .nav_point {
	margin:40px 0 0;
}
#sec02 .nav_point ul {
	display:flex;
	justify-content:space-between;
}
#sec02 .nav_point ul li {
	width:calc((100% - (24px * 5)) / 6);
}
#sec02 .nav_point ul li a {
	display:flex;
	height:180px;
	width:100%;
	justify-content:center;
	border-radius:10px;
	background:#FFF;
	font-size:16px;
	font-weight:bold;
	text-align:center;
	padding:116px 0 0;
	position:relative;
}
#sec02 .nav_point ul li a::after {
	content:'';
	display:inline-block;
	width:0;
	height:0;
	border-top:10px solid #EC6501;
	border-left:8px solid transparent;
	border-right:8px solid transparent;
	position:absolute;
	bottom:20px;
	left:50%;
	transform:translateX(-50%);
}
#sec02 .nav_point ul li a::before {
	content:'';
	display:inline-block;
	width:80px;
	height:80px;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:contain;
	position:absolute;
	top:24px;
	left:50%;
	transform:translateX(-50%);
}
#sec02 .nav_point ul li:nth-of-type(1) a::before {
	background-image:url(../../img/point1.svg);
}
#sec02 .nav_point ul li:nth-of-type(2) a::before {
	background-image:url(../../img/point2.svg);
}
#sec02 .nav_point ul li:nth-of-type(3) a::before {
	background-image:url(../../img/point3.svg);
}
#sec02 .nav_point ul li:nth-of-type(4) a::before {
	width:106px;
	background-image:url(../../img/point4.svg);
}
#sec02 .nav_point ul li:nth-of-type(5) a::before {
	background-image:url(../../img/point5.svg);
}
#sec02 .nav_point ul li:nth-of-type(6) a::before {
	background-image:url(../../img/point6.svg);
}

.pointBox_wrap {
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
	flex-wrap: wrap;
	padding:80px 0 240px;
}
.pointBox_wrap .pointBox {
	border:4px solid #FFF;
	background:#FFF;
	border-radius:12px;
	width:calc((100% - 24px) / 2);
	margin-top:80px;
	padding:0 0 44px;
}
.pointBox_wrap .pointBox:first-child {
	margin-top:0;
}
.pointBox_wrap .pointBox:nth-child(even) {
	transform:translateY(400px);
}
.pointBox_wrap .pointBox#point1::before {
	background-image:url(../../img/img_feature_01.jpg);
}
.pointBox_wrap .pointBox#point2::before {
	background-image:url(../../img/img_feature_02.jpg);
}
.pointBox_wrap .pointBox#point3::before {
	background-image:url(../../img/img_feature_03.jpg);
}
.pointBox_wrap .pointBox#point4::before {
	background-image:url(../../img/img_feature_04.jpg);
}
.pointBox_wrap .pointBox#point5::before {
	background-image:url(../../img/img_feature_05.jpg);
}
.pointBox_wrap .pointBox#point6::before {
	background-image:url(../../img/img_feature_06.jpg);
}
.pointBox_wrap .pointBox#point2 {
}
.pointBox_wrap .pointBox#point4 {
	margin-top:70px;
}
.pointBox_wrap .pointBox#point6 {
	margin-top:-80px;
}

.pointBox_wrap .pointBox h3 {
	text-align:center;
	font-size:36px;
	line-height:1.5;
	font-weight:600;
	margin:40px 0 0;
}
.pointBox_wrap .pointBox h3 small {
	display:block;
	margin:8px 0 0;
	font-size:12px;
	font-weight:bold;
	color:#EC6501;
}
.pointBox_wrap .pointBox::before {
	content:'';
	display:block;
	width:100%;
	aspect-ratio:2/1;
	background-repeat:no-repeat;
	background-position:50% 50%;
	background-size:cover;
	border-radius:10px 10px 0 0;
}

.pointBox .text {
	margin:32px auto 0;
	padding:0 56px 0;
	line-height:1.75;
	text-align:justify;
}
.pointBox .img {
	margin:32px auto 0;
	padding:0 20px;
	text-align:center;
}
.ul_staff {
	margin:32px auto 0;
	padding:0 56px 0;
}
.ul_staff li {
	border-radius:4px;
	background:#F5F5F5;
	padding:24px 32px;
}
.ul_staff li + li {
	margin-top:16px;
}
.ul_staff li h4 {
	color:#EC6501;
	font-size:12px;
	font-weight:600;
}
.ul_staff li dl {
}
.ul_staff li dl dt {
	font-size:20px;
	font-weight:600;
	color:#222;
	line-height:1.25;
	margin:4px 0 0;
}
.ul_staff li dl dd {
	margin:8px 0 0;
	line-height:1.75;
	text-align:justify;
}
.ul_staff li p.staff {
	text-align:right;
	margin:15px 0 0;
	line-height: 1.5;
}
.ul_staff li p.staff::before {
	content:'';
	display:inline-block;
	width:18px;
	height:18px;
	background:url(../../img/staff.svg) no-repeat 50% 50%;
	background-size:contain;
	margin-right:5px;
	transform: translateY(3px);
}
.ul_thumb {
	margin:32px auto 0;
	padding:0 56px 0;
}
.ul_thumb li {
	display:flex;
	width:100%;
	gap:12px;
}
.ul_thumb li + li {
	margin-top:20px;
}
.ul_thumb li .boximg {
	width:80px;
	height:80px;
}
.ul_thumb li .boxtxt {
	width:calc(100% - 92px);
}
.ul_thumb li .boxtxt h4 {
	font-size:20px;
	font-weight:600;
	line-height:1.75;
}
.ul_thumb li .boxtxt p {
	line-height:1.75;
	margin-top:4px;
	text-align:justify;
}
.pointBox .link_text {
	margin:32px auto 0;
	padding:0 20px;
	font-size:14px;
	text-align:center;
}
.pointBox .bnr_link {
	margin:16px auto 0;
	padding:0 20px;
}
.pointBox .bnr_link a {
	display:flex;
	border-radius:30px;
	background:#E96300;
	justify-content:center;
	align-items:center;
	color:#FFF;
	font-size:20px;
	font-weight:600;
	position:relative;
	max-width:360px;
	width:100%;
	height:60px;
	margin:0 auto;
	transition:all 0.25s linear 0s;
}
.pointBox .bnr_link a:hover {
	background-color:#fba82a;
}
.pointBox .bnr_link a::before {
	content:'';
	display:inline-block;
	width:13px;
	height:13px;
	border-left:1px solid #FFF;
	border-bottom:1px solid #FFF;
	position:absolute;
	right:27px;
	top:calc(50% + 1px);
	transform: translateY(-50%);
	box-sizing: border-box;
}
.pointBox .bnr_link a::after {
	content:'';
	display:inline-block;
	width:13px;
	height:13px;
	border:1px solid #FFF;
	border-top:3px solid #FFF;
	position:absolute;
	right:24px;
	top:calc(50% - 2px);
	transform: translateY(-50%);
	box-sizing: border-box;
}
@media screen and (max-width: 1023px) {
	#sec02 .nav_point ul {
		flex-wrap:wrap;
	}
	#sec02 .nav_point ul li {
		width:calc((100% - (15px * 5)) / 6);
	}
	#sec02 .nav_point ul li a {
		height:160px;
		padding:110px 0 0;
		font-size:13px;
	}
	#sec02 .nav_point ul li a::after {
	}
	#sec02 .nav_point ul li a::before {
		width:60px;
		height:60px;
	}
	#sec02 .nav_point ul li:nth-of-type(4) a::before {
		width:90px;
	}
	.pointBox_wrap {
		padding:80px 0 120px;
	}
	.pointBox_wrap .pointBox {
		width:calc((100% - 24px) / 2);
		margin-top:40px;
		padding:0 0 40px;
	}
	.pointBox_wrap .pointBox:first-child {
	}
	.pointBox_wrap .pointBox:nth-child(even) {
		transform:translateY(200px);
	}
	.pointBox_wrap .pointBox h3 {
		font-size:28px;
	}
	.pointBox .text {
		padding:0 20px 0;
	}
	.ul_staff {
		padding:0 20px 0;
	}
	.ul_staff li {
		padding:22px 26px;
	}
	.ul_thumb {
		padding:0 20px 0;
	}
	.pointBox .bnr_link a {
		font-size:17px;
		height:50px;
	}
}

@media screen and (max-width: 767px) {
	.secVisual h1 {
/*
		padding:0 10px;
		*/
		width:100%;
	}
	.secVisual h1 img {
	}
	.secVisual p {
		font-size:14px;
		margin-top:15px;
		text-align: justify;
	}
	#sec01 {
	/*
		padding:0 20px;
		*/
	}
	#sec01 .secInner {
		margin:	0 auto;
		/*
		padding:40px 35px;
		*/
	}
	#sec01 .secInner h2 {
		font-size:24px;
		line-height:1.5;
		font-weight:700;
		text-shadow:1px 1px rgb(161 69 0);
	}
	#sec01 .secInner h2 br {
		display:inline;
	}
	#sec01 .secInner p {
		font-size:14px;
		margin:24px 0 0;
		text-align: justify;
		text-shadow:1px 1px rgb(161 69 0);
	}
	#sec02 {
		padding:40px 0;
	}
	#sec02 h2 img {
		max-width:280px;
	}
	#sec02 .nav_point {
		margin:10px 0 0;
	}
	#sec02 .nav_point ul {
	}
	#sec02 .nav_point ul li {
		width:calc((100% - (9px * 2)) / 3);
		margin-top:12px;
	}
	#sec02 .nav_point ul li a {
		height:120px;
		padding:74px 0 0;
		font-size:12px;
	}
	#sec02 .nav_point ul li a::after {
	}
	#sec02 .nav_point ul li a::before {
		width:48px;
		height:48px;
		top:16px;
	}
	#sec02 .nav_point ul li:nth-of-type(4) a::before {
		width:64px;
	}
	#sec02 .nav_point ul li a::after {
		bottom:12px;
	}
	.pointBox_wrap {
		padding:40px 0 0;
	}
	.pointBox_wrap .pointBox {
		width:100%;
		border-radius:4px;
		border:2px solid #FFF;
	}
	.pointBox_wrap .pointBox + .pointBox,
	.pointBox_wrap .pointBox#point2,
	.pointBox_wrap .pointBox#point4,
	.pointBox_wrap .pointBox#point6 {
		margin-top:40px;
	}
	.pointBox_wrap .pointBox::before {
		border-radius:2px 2px 0 0;
	}
	.pointBox_wrap .pointBox:nth-child(even) {
		transform: unset;
	}
	.pointBox_wrap .pointBox h3 {
		margin:25px 0 0;
	}
	.pointBox .text {
		padding:0 16px 0;
		font-size:14px;
	}
	.ul_staff {
		padding:0 16px 0;
	}
	.ul_staff li {
		padding:16px 16px;
	}
	.ul_staff li dl dt {
		font-size:16px;
	}
	.ul_staff li dl dd {
		font-size:14px;
	}
	.ul_thumb {
		padding:0 16px 0;
	}
	.ul_thumb li .boximg {
		width:60px;
		height:60px;
	}
	.ul_thumb li .boxtxt h4 {
		font-size:16px;	
	}
	.ul_thumb li .boxtxt p {
		font-size:14px;
	}
	.pointBox .link_text {
		text-align: justify;
		line-height: 1.5;
		margin:20px 0 0;
	}
	.pointBox .bnr_link {
		margin:12px 0 0;
	}
	.pointBox#point4 .img img {
		width:240px;
	}
}


.bnr_footer {
	display:flex;
	justify-content:center;
	align-items:flex-end;
	gap:40px;
	padding:80px 20px;
	background:#FFF;
}
.bnr_footer li span {
	display:block;
	font-size:14px;
	line-height:1;
	margin-bottom:8px;
}

@media screen and (max-width: 767px) {
	.bnr_footer {
		display:block;
		padding:40px 10px;
		gap:20px;
	}
	.bnr_footer li {
		width:100%;
	}
	.bnr_footer li + li {
		margin-top:25px;
	}
	.bnr_footer li span {
	}
}

footer {
	background:#2F2F2F;
	padding:40px 20px;
	color:#FFF;
}
footer .link_footer {
	display:flex;
	justify-content:center;
	gap:20px;
}
footer .link_footer li a {
	color:#FFF;
}
footer .copylight {
	display:block;
	text-align:center;
	margin-top:40px;
}
@media screen and (max-width: 767px) {
	footer {
		padding:20px 20px;
	}
	footer .link_footer {
	}
	footer .link_footer li {
		font-size:12px;
		line-height:1;
	}
	footer .copylight {
		margin-top:20px;
		font-size:12px;
		line-height:1;
	}
}


#backvisual {
	position:fixed;
	top:0;
	z-index:-1;
	width:100%;
	height:100vh;
}
#backvisual .vegas-slide .vegas-slide-inner {
	background-image:url(../../img/mv_01_pc.jpg);
}


.fp-slide {
	float:none !important;
}
.fp-slides {
	width:100%;
	height:auto;
}
.fp-tableCell {
	height:auto !important;
}