body{
	margin: 0;
}
table{
	border-collapse: collapse;
}
*{
	box-sizing: border-box;
	font-family: "Noto Sans JP";
}
/* header */
.lite-header{
	display: flex;
	align-items: center;

	position: fixed;
	top: 0;
	z-index: 99;

	/*padding: 1em;*/
	padding: 8px 0;

	width: 100%;
	height: 122px;

	background-color: black;
}
.header-items{
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 100%;
}
.header-img{
	/*width: 15vw;*/
	width: 80vw;
	margin-left: 3vw;
	& > a{
		& > img{
			/*width: 100%;*/
			width: 318px;
			object-fit: cover;
			object-position: center;
			vertical-align: middle;
			padding: 5px 0;
		}
	}
}
.hamburger-icon{
	display: none;
}
#hamburger-close-btn{
	display: none;
}
#header-page-list{
	display: flex;
	align-items: center;

	/*height: 100%;*/

	/*flex-grow: 1;*/

	margin-left: auto;
	margin-right: 108px;
}
.header-menu{
	display: flex;
	justify-content: space-evenly;
	
	width: 100%;
	
	margin: 0;
	padding: 0;
}
.header-menu-item{
	margin-left: 1.39vw;
	list-style: none;
	& > a,& >a:hover,& >a:visited{
		color: #FF7600;
		text-decoration: none;
	}
}
.main-link{
	display: inline-block;
	vertical-align: top;
	font-size: clamp(12px,0.85vw, 24px);
	line-height: 1.6em;
	font-weight: 400;
}
.sub-link{
	display: block;
	font-size: 12px;
	line-height: 14px;
}
.language{
	& > a,& >a:hover,& >a:visited{
		background-color: #2a93cc;
		color: white;
	}
}
.header-space{
	width: 100%;
	height: 122px;
}
@media (max-width: 1270px){
        #header-page-list{
                margin-right: 10px;
        }
	.header-img{
		width: 22.4vw;
		& > a{
			& > img{
				width: 100%;
			}
		}
	}
	.main-link{
		font-size: 1.1vw;
	}
	.sub-link{
		font-size: 0.9vw;
	}
}
@media (max-width: 1024px){
	.lite-header{
		padding: 0;
	}
	.header-items{
		align-items: center;
		justify-content: space-between;
	}
	.header-img{
		#position: relative;
		#left: 3vw;
		width: 318px;
		padding: 5px 0;
		margin-right: 12px;
	}
	.hamburger-icon{
		display: block;
		width: 34px;
		height: 37px;
		margin-right: 50px;
		& > img{
			width: 100%;
			height: 100%;
			object-fit: cover;
			object-position: center;
		}
	}
	#header-page-list{
		display: none;
		position: absolute;
		top: 122px;
		left: 0;
		background-color: black;
		width: 100vw;
		height: calc(100vh - 122px);
		
		overflow-y: scroll;
		overflow-x: hidden;

		flex-direction: column;
	}
	.hamburger-open{
		display: flex !important;
	}
	.scroll-bind{
		overflow: hidden;
	}
	.header-menu{
		flex-direction: column;
	}
	.header-menu::before,.header-menu::after{
		content: " ";
		display: block;
		width: 100%;
		min-height: 1px;
		background: #FF7600;
		margin-left: 100px;
		margin-top: 26.5px;
		margin-bottom: 26.5px;
	}
	.header-menu-item{
		padding: 0px;
		padding-bottom: 24px;
		margin: 0px 0px 0px 100px;
	}
	#hamburger-close-btn{
		display: block;
		opacity: 1;
		width: 33px;
		height: 33px;
		right: 40px;
		top: 51px;
		position: absolute;
		margin: 0;
	}

	.header-menu-item{
		padding-bottom: 28px;
	}
	.main-link{
		font-size: 32px;
		line-height: 1.5;
	}
	.sub-link{
		font-size: 20px;
		line-height: 1.5;
	}
}
@media (max-width: 760px){
	#header-page-list{
		width: 78vw;
	}
	.header-menu-item,.header-menu::before,.header-menu::after{
		margin-left: 50px;
	}
}
@media (max-width: 500px){
	.header-img{
		width: 73.9vw;
		height: 11.8vw;
		left: 0;
		padding: 0;
		& > a{
			& > img{
				width: 100%;
				height: 100%;
				box-sizing: content-box;
			}
		}
	}
	.hamburger-icon{
		margin-right: 10px;
	}
	.header-menu-item,.header-menu::before,.header-menu::after{
		margin-left: 30px;
	}
	.main-link{
		font-size: 22px;
	}
	.sub-link{
		font-size: 14px;
	}
	#hamburger-close-btn{
		width: 22px;
		height: 22px;
	}
}


/*footer*/

.site-footer{
	background: black;
	padding: 77px 100px 44px;
	min-height: 586px;
}
.image-logo{
	padding: 0px 0px 43px;
	& > img{
		width: 318px;
		height: 51px;
	}
}
.foot-menu{
	border-bottom: 1px solid white;
	border-top: 1px solid white;
	padding: 77px 0px 20px 0px;
}
.footer-item-list{
	display: flex;
	flex-wrap: wrap;
	list-style-type: none;
	margin: 0;
	padding: 0;
	width: 820px;
	max-width: 100%;
}
.footer-item{
	display: inline-block;
	min-width: 164px;
	margin: 0px 0px 57px 0px;
	& a{
		color: #fff;
		text-decoration: none;
	}
}
.footer-main{
	font-size: 16px;
}
.footer-sub{
	display: block;
	font-size: 12px;
	line-height: 17px;
}
.footer-copyright{
	color: white;
	margin: 0;
	margin-top: 43px;
	& a{
		text-decoration: none;
	}
	& span{
		display: block;
		padding-top: 3px;
	}
}
@media (max-width: 920px){
	.footer-item-list{
		width: 656px;
	}
}
@media (max-width: 760px){
	.site-footer{
		position: relative;
		padding: 95px 50px 38px;
	}
	.image-logo{
		padding: 0px 0px 77px;
		& > img{
			width: 62.1vw;
			height: 9.8vw;
		}
	}
	.foot-menu{
		padding: 77px 0px 78px 0px;
	}
	.footer-item-list{
		width: 79.7vw;
	}
	.footer-item{
		margin: 0 0px 77px 0px;
		min-width: 33.5vw;
	}
	.footer-main{
		font-size: 3.5vw;
		line-height: 5.1vw;
	}
	.footer-sub{
		font-size: 2.6vw;
		line-height: 3.8vw;
	}
	.footer-copyright{
		position: absolute;
		margin-left: 10vw;
		margin-right: 10vw;
		bottom: 53px;
		left: 0;
		text-align: center;
	}
}


/*widget*/

.element-btn-action {
	border-top: 0.3vw solid #000;
	border-bottom: 0.3vw solid #000;
	margin-bottom: 60px;
	height: auto;
}
.element-btn-action .description-btn-bottom {
	font-size: 1.6vw;
	font-weight: bold;
	margin-top: 3.1vw;
	line-height: 2.6vw;
	text-align: center;
}
.element-btn-action .action-posion {
	margin: auto;
	margin-bottom: 6.1vw;
}
.btn-group-next.btn-group-next-bg {
	mix-blend-mode: multiply;
	position: absolute;
	top: 11%;
	left: 4%;
}
.element-btn-action .btn-group-next {
	width: fit-content;
	margin: 0 auto;
	display: flex;
	justify-content: center;
}
.element-btn-action .brand-btn-top-global {
	position: relative;
	width: 28.2vw;
	float: left;
	margin: 3.2vw auto 0px;
	left: 50%;
	transform: translateX(-50%);
}
.element-btn-action .btn-group-next.btn-group-next-bg .brand-btn-top-link {
	display: inline-block;
	width: 100%;
	padding: 1.5vw 0;
	text-align: center;
	background: transparent;
	border-radius: 10px;
	background-image: url("../images/dot.png");
	background-color: transparent;
	background-repeat: no-repeat;
	background-size: 47vw 10.9vw;
	background-position: bottom;
}
.element-btn-action .brand-btn-top-global::after {
	content: "";
	position: absolute;
	top: 95%;
	right: 4%;
	width: 3.9vw;
	height: 2.9vw;
	clip-path: polygon(35% 0%, 75% 0%, 60% 23%, 100% 23%, 23% 100%, 54% 39%, 11% 39%);
	-webkit-clip-path: polygon(35% 0%, 75% 0%, 60% 23%, 100% 23%, 23% 100%, 54% 39%, 11% 39%);
	background: black;
}
.btn-group-next.btn-group-next-bg .brand-btn-top-global::after {
	background-image: url("../images/dot.png");
	background-color: transparent;
	background-size: 57.6vw 10.9vw;
	background-position: bottom;
}

.element-btn-action .brand-btn-top-link {
	display: inline-block;
	width: 100%;
	padding: 1.3vw 0 1.3vw 0;
	text-align: center;
	background: #000;
	border-radius: 10px;
}
.element-btn-action .brand-btn-top-global::after {
	content: "";
	position: absolute;
	top: 95%;
	right: 4%;
	width: 3.9vw;
	height: 2.9vw;
	clip-path: polygon(35% 0%, 75% 0%, 60% 23%, 100% 23%, 23% 100%, 54% 39%, 11% 39%);
	-webkit-clip-path: polygon(35% 0%, 75% 0%, 60% 23%, 100% 23%, 23% 100%, 54% 39%, 11% 39%);
	background: black;
}
.element-btn-action .brand-btn-top-link>span {
	display: inline-block;
	line-height: 1.8vw;
	color: #fff;
	font-weight: bold;
	opacity: 0.99;
	font-size: 1.4vw;
}
@media (max-width: 760px){
	.element-btn-action {
		height: auto;
		border-top: 0.7vw solid #000;
		border-bottom: 0.7vw solid #000;
		margin-bottom: 38px;
		margin-top: 23px;
	}
	.element-btn-action .description-btn-bottom {
		font-size: 4vw;
		line-height: 6.6vw;
		margin-top: 9.2vw;
		margin-bottom: 3.6vw;
	}
	.element-btn-action .action-posion {
		margin-bottom: 14.1vw;
	}
	.btn-group-next {
		padding-bottom: 50px;
	}
	.element-btn-action .brand-btn-top-global {
		width: 71.1vw;
	}
	.element-btn-action .brand-btn-top-link {
		padding: 3.3vw 0 3.3vw 0;
	}
	.brand-btn-top-link {
		padding: 15px 0;
	}
	.element-btn-action .btn-group-next.btn-group-next-bg .brand-btn-top-link {
		padding: 3.9vw 0;
		background-size: 118.7vw 27.5vw;
	}
	.element-btn-action .brand-btn-top-global::after {
		width: 9.9vw;
		height: 7.3vw;
		background-size: 108.6vw 29.9vw;
	}
	.element-btn-action .brand-btn-top-link {
		padding: 3.3vw 0 3.3vw 0;
	}
	.element-btn-action .brand-btn-top-link>span {
		font-size: 3.5vw;
		line-height: 1em;
	}
}
