/******************
全体[共通]
******************/
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@700&family=Noto+Sans+JP:wght@100..900&family=Zen+Old+Mincho:wght@400;500;700&display=swap');
/*
@import url('https://fonts.googleapis.com/css2?family=BIZ+UDGothic:wght@400;700&family=Zen+Old+Mincho:wght@400;500;700&display=swap');*/

html {
	font-size: 62.5%;
}
body {
	font-family: "Noto Sans JP", serif;
	/*font-family:"BIZ UDGothic", sans-serif;*/
	/*font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;*/
	font-size: 1.6rem;
	color: #000;
	line-height: 1.8;
	-webkit-text-size-adjust: 100%;
	word-wrap: break-word;
	overflow-wrap: break-word;
	word-break: break-all;
	word-break: break-word;
}
body, div, pre, p, blockquote, form, fieldset, input, textarea, select, option, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, table, th, td, embed, object, img {
	margin: 0;
	padding: 0;
}
*, *::before, *::after {
	box-sizing: border-box;
}
img {
	border: none;
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
}
ul li {
	list-style-type: none;
}
a {
	color: #323232;
	text-decoration: none;
	-webkit-transition: all 0.3s;
	transition: all 0.3s;
}
a:hover {
	color: #e50020;
}
a img {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
	outline: none;
}
a:hover img {
	opacity: 0.7;
	-moz-opacity: 0.7;
	-webkit-opacity: 0.7;
}
table {
	border-collapse: collapse;
	border-color: #333333;
}
th {
	font-weight: 500;
}
td {
	vertical-align: middle;
}
a:link {
	text-decoration: none;
}
a:visited {
	text-decoration: none;
}
a:active {
	text-decoration: none;
}
.bodyDisable{
	width:100%;
	height:100%;
	overflow:hidden;
}
:root {
  	--colorkizakura: #e40020;
  	--coloregibow: #eba518;
	--colorishidama: #1d2284;
}

.egibow-box a:hover{
	color:var(--coloregibow);
}
.ishidama-box a:hover{
	color:var(--colorishidama);
}
/******************
汎用[共通]
******************/
#wrapperTop, #wrapper {
	width: 100%;
	overflow: hidden;
	position: relative;
	height: auto !important; /*IE6対策*/
	height: 100%; /*IE6対策*/
	min-height: 100%;
}
#header {
	position: relative;
}
/************
ヘッダーメニュー
*************/
#headerLogo{
	margin:20px 0 20px 4%;
	line-height:1;
}
#headerLogo2{
	margin:10px 0 10px 4%;
	line-height:1;
}
#headerLogo3{
	margin:5px 0 5px 4%;
	line-height:1;
}
#headerLogo a, #headerLogo2 a, #headerLogo3 a{
	display:inline-block;
}
@media print, screen and (min-width: 769px) {
	.pc-none{
		display:none !important;
	}
	#headerBox {
		position: fixed;
		top:0;
		left:0;
		right:0;
		z-index:100;
		background-color:#fff;
	}
	#hMenuBtnWrap, #hMenuBtnWrap2, .refine-search, .close-btn{
		display:none;
	}
	#nav-bg{
		background-color:#000;
		padding:15px 0;
	}
	#nav-bg2{
		background-color:#e50020;
		padding:15px 0;
	}
	#nav-bg3{
		background-color:var(--coloregibow);
		padding:15px 0;
	}
	#nav-bg4{
		background-color:var(--colorishidama);
		padding:15px 0;
	}
	.nav-menu{
		width:96%;
		max-width:1400px;
		margin:auto;
		display:flex;
		justify-content: center;
	}
	.nav-menu li{
		width:13.8%;
		text-align:center;
		border-left:1px solid #fff;
	}
	.nav-menu li.menu-haba{
		width:17.2%;
	}
	.nav-menu li:last-child{
		border-right:1px solid #fff;
	}
	.nav-menu li a{
		color:#fff;
		font-weight:bold;
		position:relative;
		display: block;
		height:40px;
		line-height: 40px;
		overflow: hidden;
		cursor: pointer;
	}

	.nav-menu li .menu-en, .nav-menu li .menu-jp {
		position: absolute;
		left: 0;
		display: block;
		height: 100%;
		width: 100%;
		color: #fff;
		font-weight: bold;
		text-align: center;
		transition: all 0.3s;
	}
	.menu-jp {
		top: 0;
	}
	.menu-en {
		top: -100%;
	}
	.nav-menu li a:hover .menu-jp {
		top: 100%;
	}
	.nav-menu li a:hover .menu-en {
		top: 0;
	}
	/*
	.header-kizakura .nav-menu li:nth-child(6) .menu-en::before, .header-kizakura .nav-menu li:nth-child(6) .menu-jp::before,
	.header-kizakura .nav-menu li:nth-child(7) .menu-en::before, .header-kizakura .nav-menu li:nth-child(7) .menu-jp::before,
	.header-egibow .nav-menu li:nth-child(6) .menu-en::before, .header-egibow .nav-menu li:nth-child(6) .menu-jp::before,
	.header-egibow .nav-menu li:nth-child(7) .menu-en::before, .header-egibow .nav-menu li:nth-child(7) .menu-jp::before,
	.header-ishidama .nav-menu li:nth-child(6) .menu-en::before, .header-ishdama .nav-menu li:nth-child(6) .menu-jp::before,
	.header-ishidama .nav-menu li:nth-child(7) .menu-en::before, .header-ishdama .nav-menu li:nth-child(7) .menu-jp::before {
		content: '\f08e';
		font-family: 'Font Awesome 5 Free';
		position: absolute;
		top: 50%;
		right: 10%;
		transform: translate(-10%,-50%);
		font-size: 1.6rem;
		font-weight: bold;
		transition: .3s;
	}
	*/
}
@media screen and (max-width: 1120px) {
	.nav-menu li a{
		font-size:1.4rem;
	}
	/*
	.header-kizakura .nav-menu li:nth-child(6) .menu-en::before, .header-kizakura .nav-menu li:nth-child(6) .menu-jp::before,
	.header-kizakura .nav-menu li:nth-child(7) .menu-en::before, .header-kizakura .nav-menu li:nth-child(7) .menu-jp::before,
	.header-egibow .nav-menu li:nth-child(6) .menu-en::before, .header-egibow .nav-menu li:nth-child(6) .menu-jp::before,
	.header-egibow .nav-menu li:nth-child(7) .menu-en::before, .header-egibow .nav-menu li:nth-child(7) .menu-jp::before,
	.header-ishidama .nav-menu li:nth-child(6) .menu-en::before, .header-ishdama .nav-menu li:nth-child(6) .menu-jp::before,
	.header-ishidama .nav-menu li:nth-child(7) .menu-en::before, .header-ishdama .nav-menu li:nth-child(7) .menu-jp::before {
		top:50%;
		right: 5%;
		transform: translate(-5%,-50%);
		font-size: 1.2rem;
	}
	*/
}
@media screen and (max-width: 768px) {
	.sp-none{
		display:none !important;
	}
	.close-btn{
		width:90%;
		margin:auto;
		text-align:center;
		display:block;
		background-color: rgba(113, 112, 113, 0.9);
		padding:10px 0 20px;
	}
	.close-btn span{
		display:inline-block;
		font-size:1.4rem;
		line-height:1.4;
		border:1px solid #000;
		padding:5px 20px;
		background-color:#fff;
	}
	.close-btn span:hover{
		color:#fff;
		background-color:#000;
		cursor: pointer;
	}
	.refine-search{
		width:94%;
		margin:auto;
		color:#fff;
		background-color:#9c9c9d;
		padding:10px 0 10px 20px;
		transition:.3s;
		border-bottom:1px solid #fff;
	}
	#headerBox{
		background-color:#fff;
		margin: auto;
		position: fixed;
		top:0;
		left:0;
		right:0;
		z-index:1000;
		display:flex;
		justify-content:space-between;
		/*border-bottom:1px solid #000;*/
	}
	.bodyDisable #headerBox{
		background-color:#000;
	}
	.header-kizakura #headerBox{
		background-color:var(--colorkizakura);
	}
	.header-egibow #headerBox{
		background-color:var(--coloregibow);
	}
	.header-ishidama #headerBox{
		background-color:var(--colorishidama);
	}
	#headerLeft{
		width:calc(100% - 80px);
	}
	#headerLogo{
		max-width:240px;
		margin:20px 0 20px 10%;
	}
	#headerLogo2{
		max-width:192px;
		margin:10px 0 11px 10%;
	}
	#headerLogo3{
		max-width:156px;
		margin:5px 0 6px 10%;
	}
	#headerRight{
		position:relative;
		/*margin:20px 5% 0 0;*/
	}
	#productMenu-sp{
		position:relative;
	}
#hMenuBtnWrap {
	display:block;
	position:fixed;
	top:25px;
	right:5%;
	z-index:5500;
	width:40px;
	height:40px;
	cursor: pointer;
	-webkit-transition: opacity .2s ease .3s, top 0s ease .3s;
	-moz-transition: opacity .2s ease .3s, top 0s ease .3s;
	-ms-transition: opacity .2s ease .3s, top 0s ease .3s;
	transition: opacity .2s ease .3s, top 0s ease .3s;
}
#hMenuBtnWrap2 {
	display:block;
	position:absolute;
	top:5px;
	left:0;
	right:0;
	margin:auto;
	z-index:500;
	width:94%;
	height:48px;
	cursor: pointer;
	-webkit-transition: opacity .2s ease .3s, top 0s ease .3s;
	-moz-transition: opacity .2s ease .3s, top 0s ease .3s;
	-ms-transition: opacity .2s ease .3s, top 0s ease .3s;
	transition: opacity .2s ease .3s, top 0s ease .3s;
}
#hMenuBtnWrap .hMenuBtnBox {
	height: 30px;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	transition: all .3s ease;
}
#hMenuBtnWrap2 .hMenuBtnBox {
	width:40px;
	height: 30px;
	margin-left:auto;
	margin-right:4%;
	-webkit-transition: all .3s ease;
	-moz-transition: all .3s ease;
	-ms-transition: all .3s ease;
	transition: all .3s ease;
}
.hMenuBtnBox:after, .hMenuBtnBox:before{
	content: '';
	display: block;
	width: 40px;
	height: 1px;
	margin: 12px auto 0;
	background-color: #000;
	-webkit-transition: all .25s ease;
	-moz-transition: all .25s ease;
	-ms-transition: all .25s ease;
	transition: all .25s ease;
	outline: 1px solid transparent;
}
.headerMenuBgActive {
	-webkit-transform: translateX(0);
	-moz-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
}
/* menu button */
.hMenuBtnBox:after, .hMenuBtnBox:before, .hMenuBtnBox div.hMenuBtnMiddle:before {
	background-color: #000;
}
/* main menu button hover */
.hMenuBtnBox:hover:after, .hMenuBtnBox:hover:before, .hMenuBtnBox:hover div.hMenuBtnMiddle:before {
	background-color: #000;
}
.header-kizakura .hMenuBtnBox:after, .header-kizakura .hMenuBtnBox:before, .header-kizakura .hMenuBtnBox div.hMenuBtnMiddle:before,
.header-egibow .hMenuBtnBox:after, .header-egibow .hMenuBtnBox:before, .header-egibow .hMenuBtnBox div.hMenuBtnMiddle:before,
.header-ishidama .hMenuBtnBox:after, .header-ishidama .hMenuBtnBox:before, .header-ishidama .hMenuBtnBox div.hMenuBtnMiddle:before,
#hMenuBtnWrap2 .hMenuBtnBox:after, #hMenuBtnWrap2 .hMenuBtnBox:before {
	background-color: #fff;
}
.header-kizakura .hMenuBtnBox:hover:after, .header-kizakura .hMenuBtnBox:hover:before, .header-kizakura .hMenuBtnBox:hover div.hMenuBtnMiddle:before,
.header-egibow .hMenuBtnBox:hover:after, .header-egibow .hMenuBtnBox:hover:before, .header-egibow .hMenuBtnBox:hover div.hMenuBtnMiddle:before,
.header-ishidama .hMenuBtnBox:hover:after, .header-ishidama .hMenuBtnBox:hover:before, .header-ishidama .hMenuBtnBox:hover div.hMenuBtnMiddle:before{
	background-color: #fff;
}
/* menu button active */
#header .morph-menu-active .hMenuBtnBox:after, #header .morph-menu-active .hMenuBtnBox:before, #header .morph-menu-active .hMenuBtnBox div.hMenuBtnMiddle:before {
	background-color: #fff;
}
/* menu button active hover */
#header .morph-menu-active .hMenuBtnBox:hover:after, #header .morph-menu-active .hMenuBtnBox:hover:before, #header .morph-menu-active .hMenuBtnBox:hover div.hMenuBtnMiddle:before {
	background-color: #fff;
}
.morph-menu-active .hMenuBtnBox:before {
	margin: 2px auto 0;
	-moz-transform: translateY(12px) rotate(30deg);
	-ms-transform: translateY(12px) rotate(30deg);
	-webkit-transform: translateY(12px) rotate(30deg);
	transform: translateY(12px) rotate(30deg);
}
/* menu button animations (-/X) */
/* top bar animation (3 lines) */
.morph-menu-active .hMenuBtnBox:before {
	margin: 2px auto 0;
	-moz-transform: translateY(12px) rotate(30deg);
	-ms-transform: translateY(12px) rotate(30deg);
	-webkit-transform: translateY(12px) rotate(30deg);
	transform: translateY(12px) rotate(30deg);
}
/* bottom bar animation (3 lines) */
.morph-menu-active .hMenuBtnBox:after {
	margin: 1px auto 0;
	-moz-transform: translateY(10px) rotate(-30deg);
	-ms-transform: translateY(10px) rotate(-30deg);
	-webkit-transform: translateY(10px) rotate(-30deg);
	transform: translateY(10px) rotate(-30deg);
}
/* middle bar fade out (3 lines) */
.morph-menu-active div.hMenuBtnMiddle:before {
	opacity: 0;
	-webkit-transition: all .15s ease;
	-moz-transition: all .15s ease;
	-ms-transition: all .15s ease;
	transition: all .15s ease;
}
.morph-menu-active .hMenuBtnBox:before {
	margin: 8px auto 0;
	-moz-transform: translateY(13px) rotate(30deg);
	-ms-transform: translateY(13px) rotate(30deg);
	-webkit-transform: translateY(13px) rotate(30deg);
	transform: translateY(13px) rotate(30deg);

}
#header .headerMenuMainWrap-active {
	-webkit-transform: translateX(0);
	-moz-transform: translateX(0);
	-ms-transform: translateX(0);
	transform: translateX(0);
}
.btnTxt {
	text-align: center;
	font-size:1.4rem;
	font-weight: bold;
	line-height: 1;
	color: #f00;
}
.h-nav {
	/*display: none;*/
	background-color: #000;
	width: 0;
	height: calc(100% - 76px);
	position: fixed;
	overflow-y: auto;
	top: 76px;
	right: 0;
	z-index: 98;
	transition: 0.4s;
}
	.header-kizakura .h-nav{
		background-color:var(--colorkizakura);
	}
	.header-egibow .h-nav{
		background:var(--coloregibow);
	}
	.header-ishidama .h-nav{
		background:var(--colorishidama);
	}
#nav-bg {
	width:100vw;
	overflow:hidden;
}
.nav-wrap {
	max-width: 1400px;
	width: 96%;
	margin: auto;
	padding: 80px 0 40px;
	/*overflow-y:scroll !important;*/
	overflow-x: hidden;
	/* smooth scroll on iOS */
	-webkit-overflow-scrolling: touch;
	-webkit-transition: all .4s cubic-bezier(.37, .15, .32, .94);
	-moz-transition: all .4s cubic-bezier(.37, .15, .32, .94);
	-ms-transition: all .4s cubic-bezier(.37, .15, .32, .94);
	transition: all .4s cubic-bezier(.37, .15, .32, .94);
	transition-duration: 0.5s;
}
.h-nav.headerMenuMainWrap-active {
	width: 100vw;
}
.header .morph-menu-active div.hMenuBtnMiddle:before {
	opacity: 0;
	-webkit-transition: all .15s ease;
	-moz-transition: all .15s ease;
	-ms-transition: all .15s ease;
	transition: all .15s ease;
}
/*
#nav-sns {
	display: flex;
	align-items: center;
	width: 45%;
	margin: 0;
}
#nav-sns li {
	padding: 0 12px;
}
#nav-sns li a {
	line-height: 1;
	display: block;
}
	*/
	.nav-menu {
		width:90%;
        margin: auto;
        border-top: 1px solid #fff;
        padding-top: 40px;
	}
	.nav-menu-item, .sp-nav-menu-item {
		border-bottom:1px solid #fff;
	}
	.nav-menu-item:last-child{
		border:none;
	}
	.nav-menu li a {
		color:#fff;
		font-weight: normal;
		padding: 25px 20px 20px 20px;
		position: relative;
		display: block;
		line-height:1.4;
		font-size:1.8rem;
	}
	.nav-menu-item a::before{
		position:absolute;
		top:40%;
		right:20px;
		content:'';
		width: 13px;
		height: 13px;
		border: 3px solid;
		border-color: #fff #fff transparent transparent;
		transform: rotate(45deg);
	}
/*
	.header-kizakura .nav-menu li:nth-child(6) .menu-en::before, .header-kizakura .nav-menu li:nth-child(6) .menu-jp::before,
	.header-kizakura .nav-menu li:nth-child(7) .menu-en::before, .header-kizakura .nav-menu li:nth-child(7) .menu-jp::before,
	.header-egibow .nav-menu li:nth-child(6) .menu-en::before, .header-egibow .nav-menu li:nth-child(6) .menu-jp::before,
	.header-egibow .nav-menu li:nth-child(7) .menu-en::before, .header-egibow .nav-menu li:nth-child(7) .menu-jp::before,
	.header-ishidama .nav-menu li:nth-child(6) .menu-en::before, .header-ishdama .nav-menu li:nth-child(6) .menu-jp::before,
	.header-ishidama .nav-menu li:nth-child(7) .menu-en::before, .header-ishdama .nav-menu li:nth-child(7) .menu-jp::before {
		content: '\f08e';
		font-family: 'Font Awesome 5 Free';
		position: absolute;
		top: 50%;
		right: 20px;
		transform: translate(-10%,-50%);
		font-size: 1.6rem;
		font-weight: bold;
		transition: .3s;
	}
	.header-kizakura .nav-menu li:nth-child(6) a::before, .header-kizakura .nav-menu li:nth-child(6) a::before,
	.header-kizakura .nav-menu li:nth-child(7) a::before, .header-kizakura .nav-menu li:nth-child(7) a::before,
	.header-egibow .nav-menu li:nth-child(6) a::before, .header-egibow .nav-menu li:nth-child(6) a::before,
	.header-egibow .nav-menu li:nth-child(7) a::before, .header-egibow .nav-menu li:nth-child(7) a::before,
	.header-ishidama .nav-menu li:nth-child(6) a::before, .header-ishdama .nav-menu li:nth-child(6) a::before,
	.header-ishidama .nav-menu li:nth-child(7) a::before, .header-ishdama .nav-menu li:nth-child(7) a::before {
		position:static;
		content:unset;
		width: 0;
		height: 0;
		border: none;
		border-color: unset;
	}
*/
	.nav-submenu ul{
		display:flex;
		flex-wrap:wrap;
		margin-bottom:20px;	
	}
	.nav-submenu2 ul{
		margin-bottom:20px;	
	}
	.nav-submenu ul li{
		width:40%;
		margin-right:2%;
	}
	.nav-submenu ul li:nth-child(even){
		width:56%;
	}
	.nav-submenu ul li a, .nav-submenu2 ul li a{
		padding:0px 10px 15px 20px;
	}
	.sp-nav-menu-item a.spToggle::before{
		display: block;
		content: '';
		position: absolute;
		top:0;
		right:16px;
		bottom:0;
		margin:auto;
		width: 16px;
		height: 2px;
		background-color: #fff;
		transition: .2s;
		transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
	}
	.sp-nav-menu-item a.spToggle::after{
		display: block;
		content: '';
		position: absolute;
		top: 0; 
		right: 16px;
		bottom: 0;
		margin: auto;
		width: 16px;
		height: 2px; 
		background-color: #fff;
		transition: .3s;
	}

	.sp-nav-menu-item a.on::before{
		transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
	}
		.sp-nav-menu-item a.on::after{
			background-color: transparent;
	}
	.menu-en{
		font-weight:bold;
		display:block;
	}
	.menu-jp{
		color:#b3b3b3;
		display:block;
	}
	.header-kizakura .menu-jp, .header-egibow .menu-jp, .header-ishidama .menu-jp{
		color:#fff;
	}
	#nav-sns {
		width:90%;
		border-top:1px solid #fff;
		margin:auto;
	}
	#nav-sns ul{
		width:100%;
		max-width:180px;
		display:flex;
		align-items:center;
		margin:60px 0 60px;
	}
	#nav-sns ul li{
		margin:0 5%;
	}
	.nav-menu li .nav-submenu, .nav-menu li .nav-submenu2{
		display:none;
	}
}
@media screen and (max-width: 430px) {
	.nav-menu li a{
		font-size:1.5rem;
	}
}
/*コンテンツ*/
/*
#product, #contents, #brand, #features01, #about{
	padding-top:200px;
	margin-top:-200px;
}
#topics, #movie, #focus, #faq{
	padding-top:90px;
	margin-top:-90px;
}
*/
#swiperWrap{
	position:relative;
	margin:auto;
	z-index:10;
}
.swiper1 .swiper-slide{
	background-size: cover;
	background-position: center bottom;
	background-repeat: no-repeat;
	padding-top: calc(100vh - 170px);
	position: relative;
	overflow: hidden;
}
.slide-img1{
	background-image:url('./images/corporate/top/main-img01.jpg');
}
.slide-img2{
	background-image:url('./images/corporate/top/main-img02.jpg');
}
.slide-img3{
	background-image:url('./images/corporate/top/main-img03.jpg');
}
#corporateImg{
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	padding-top: calc(80vh - 155px);
	position: relative;
	overflow: hidden;
	background-image:url('./images/corporate/top/main-img01.jpg');
	margin-top:155px;
}
#scrollBox{
	position:relative;
}
#wrapper #scrollBox{
	margin-top: 155px;
}
.scroll_down{
	position:absolute;
	bottom:-140px;
	right:5%;
	animation: arrowmove 1s ease-in-out infinite;
	z-index:10;
	font-family:"Noto Sans JP", serif;
}
.scroll_down a{
	position: absolute;
	right: -14px;
	bottom: 80px;
	color: #000;
	font-size:1.4rem;
	font-weight:normal;
	writing-mode: vertical-rl;
	text-decoration: none;
	word-break:normal;
}
.scroll_down:before {
	content: '';
	position: absolute;
	bottom: 5px;
	right: -5px;
	width: 1px;
	height: 16px;
	background: #000;
	transform: skewX(-31deg);
}
.scroll_down:after{
	content:'';
	position: absolute;
	bottom: 5px;
	right: 0;
	width: 1px;
	height: 70px;
	background:#000;
}
@keyframes arrowmove{
	0%{bottom:-140px;}
	50%{bottom:-160px;}
	00%{bottom:-140px;}
}
.contents {
	position: relative;
}
#brandBox{
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
	max-width:1000px;
	margin:80px auto 0px;
	overflow:hidden;
}
#brandBox div{
	width:24%;
	margin:0 auto;
}
#maintext{
	font-family:"Zen Old Mincho", serif;
	font-weight:500;
}
#mainTxt{
	font-size:6rem;
	font-weight:bold;
	letter-spacing:0.1rem;
	text-align:center;
	margin-top:240px;
}
#mainSentence{
	text-align:center;
	font-size:2.2rem;
	font-weight:bold;
	line-height:2.2;
	margin:40px auto 240px;
}
#mainSentence span{
	display:block;
}
.main{
	width:94%;
	max-width:1000px;
	margin:auto;
}
.topMidashi2-a{
	font-size:5rem;
	text-align:center;
	line-height:1.4;
	margin:0 auto 60px;
}
.md2-jp{
	text-align:center;
	display:block;
	font-size:1.8rem;
	font-weight:500;
}
.topMidashi2-b, .topMidashi2-c{
	font-size:3.4rem;
	font-weight:bold;
	text-align:center;
	line-height:1.4;
	margin:0 auto 60px;
	border:none;
	padding:0;
}
.topMidashi2-b span{
	position: relative;
	width:300px;
	display: inline-block;
	padding: 0 10px;
}
.topMidashi2-c span{
	position: relative;
	display: inline-block;
	padding: 0 60px;
}
.topMidashi2-b span::before,
.topMidashi2-b span::after,
.topMidashi2-c span::before,
.topMidashi2-c span::after {
	content: '';
	position: absolute;
	top: 54%;
	-webkit-transform: translate(0, -50%);
	transform: translate(0, -50%);
	display: inline-block;
	width: 6px;
	height: 26px;
	background-color: #000;
}
.topMidashi2-b span::before, .topMidashi2-c span::before {
	left: 0;
}
.topMidashi2-b span::after, .topMidashi2-c span::after{
	right: 0;
}
.featuresNum{
	font-size:2rem;
	font-weight:bold;
	text-align:center;
}
.featuresBox{
	/*display:flex;*/
	margin:0 auto 120px;
	display: grid;
	grid-template-columns: 1fr 1fr; /* 左右2列 */
	grid-template-rows: auto auto; /* 上下2行 */
}
.featuresLeft{
	grid-row: 1 / span 2; /* 1行目から2行目まで */
}
.featuresRight{
	grid-column: 2;
	grid-row: 1;
	margin-left:13%;
}
.featuresRight p{
	font-size:1.8rem;
	/*line-height:2;*/
}
.featuresRight a{
	font-weight:bold;
}
.featuresRight span{
	display:block;
}
.featuresSub{
	grid-column: 2;
	grid-row: 2;
	display:flex;
	justify-content: space-between;
	align-items:end;
	margin:20px 0 0 15%;
}
.featuresSub p{
	width:32%;
}
.featuresLink{
	grid-column: 2;
	grid-row: 2;
	display:flex;
	justify-content: center;
	align-items:end;
	margin:20px 0 0 15%;
}
.featuresLink a{
	display:block;
	font-size:1.8rem;
	font-weight:bold;
	color:#fff;
	background-color:#e50020;
	padding:15px 40px 17px 80px;
	position:relative;
	/* 右下を切り欠く */
	clip-path: polygon(
	0 0,        /* 左上 */
	100% 0,     /* 右上 */
	100% calc(100% - 15px), /* 右下（上から15px） */
	calc(100% - 15px) 100%, /* 右下（左から15px） */
	0 100%      /* 左下 */);
}
.featuresLink a::before{
	position:absolute;
	top:24px;
	left:40px;
	content:'';
	width: 17px;
	height: 17px;
	border: 4px solid;
	border-color: #fff #fff transparent transparent;
	transform: rotate(45deg);
}
.featuresLink a:hover{
	background-color:#000;
}
.featuresLink span{
	font-weight:500;
	padding-left:20px;
}
.bgColor1{
	overflow:hidden;
	padding:110px 0 0;
	background-color:#eeeeef;
}
.bgColor2{
	overflow:hidden;
	padding:110px 0;
	background-color:#eeeeef;
}
.bgColor3{
	overflow:hidden;
	padding:120px 0 60px;
}
.bgColor4{
	overflow:hidden;
	padding:120px 0 0;
}
#newsBox{
	margin-bottom:60px;
}
#newsBox li{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:10px;
}
#wrapper #newsBox li{
	margin-bottom:20px;
}
#newsBox li a{
	position:relative;
	display:block;
	padding-right:60px;
}
#newsBox li a::before{
	position:absolute;
	top:8px;
	right:20px;
	content:'';
	width: 10px;
	height: 10px;
	border: 2px solid;
	border-color: #000 #000 transparent transparent;
	transform: rotate(45deg);
	transition:.3s;
}
#newsBox li a:hover::before{
	border-color: #e50020 #e50020 transparent transparent;	
}
.egibow-box #newsBox li a:hover::before{
	border-color: #eba518 #eba518 transparent transparent;	
}
.newsDate{
	font-weight:500;
	width:130px;
}
.newsCate{
	width:140px;
	font-weight:500;
	display: inline-block;
	text-align:justify;
	text-align-last: justify;
	margin:0 40px 0 90px;
	position:relative;
}
/*
#wrapper .newsCate{
	width:100px;
	margin:0 20px 0 60px;
}
*/
.newsCate::before{
	content:'【';
}
.newsCate::after{
	content:'】';
}
.newsTitle{
	width:calc(100% - 440px);
}
.cateFrame{
	width:140px;
	margin:0 60px 0 110px;
}
.moreBtn, .moreBtn2{
	width:250px;
	margin:0 auto 40px;
	text-align:center;
}
.moreBtn a, .moreBtn2 a{
	display:block;
	font-size:2rem;
	font-weight:bold;
	color:#fff;
	background-color:#000;
	padding:2px 20px 3px;
	position:relative;
}
.moreBtn a::after, .moreBtn2 a::after{
	content: '';
	position: absolute;
	bottom: 5px;
	right: 5px;
	width: 0;
	height: 0;
	border-left: 13px solid transparent;
	border-bottom: 13px solid #fff;
}
.moreBtn a:hover, .moreBtn2 a:hover{
	color:#fff;
	background-color:#e50020;
}
.egibow-box .moreBtn a:hover, .egibow-box .moreBtn2 a:hover{
	background:var(--coloregibow);
}
.ishidama-box .moreBtn a:hover, .ishidama-box .moreBtn2 a:hover{
	background:var(--colorishidama);
}
#reportBox, #eventBox{
	display:flex;
	flex-wrap:wrap;
}
#reportBox li{
	width:23%;
	margin:0 2.666% 60px 0;
}
#reportBox li a{
	display:block;
}
#reportBox li:nth-child(4n){
	margin-right:0;
}
#reportBox li a img{
	aspect-ratio: 3/2;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.reportDate{
	font-weight:500;
	color:#808080;
	margin: 10px auto 5px;
}
.reportBtn{
	margin:0 auto 120px;
}
#aboutBox{
	display:flex;
	justify-content: space-between;
	margin:0 auto 120px;
}
#aboutLeft{
	width:50%;
	margin-right:5%;
}
#aboutRight{
	width:45%;
}
#aboutMap{
	position: relative;
	padding-bottom: 100%;
	height: 0;
	overflow: hidden;
	width:100%;
}
#aboutMap iframe,
#aboutMap object,
#aboutMap embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#overviewBox{
}
#overviewBox dl{
	display:flex;
}
#overviewBox dt{
	width:120px;
	font-weight:500;
	padding:10px 10px 10px 0;
	line-height: 1.4;
}
#overviewBox dd{
	padding:10px;
	line-height: 1.4;
}
#overviewBox dl:last-child dt, #overviewBox dl:last-child dd{
	padding:0 10px;
}
#overviewBox p{
	margin-bottom:10px;
}
.overview-indent{
	margin-left:60px;
}
.overview-color{
	color:#f00;
}
.contact-md{
	margin-bottom:40px;
}
#contactTxt{
	font-size:1.8rem;
	font-weight:500;
	text-align:center;
}
#contactTxt span{
	display:block;
}
#contactBtn{
	max-width:300px;
	margin:40px auto 120px;
}
#contactBtn a{
	display:block;
	text-align:center;
	font-size:1.8rem;
	font-weight:bold;
	color:#fff;
	background-color:#e50020;
	padding:10px 20px 14px;
	position:relative;
	/* 右下を切り欠く */
	clip-path: polygon(
	0 0,        /* 左上 */
	100% 0,     /* 右上 */
	100% calc(100% - 15px), /* 右下（上から15px） */
	calc(100% - 15px) 100%, /* 右下（左から15px） */
	0 100%      /* 左下 */);
}
#contactBtn a:hover{
	background-color:#000;
}
#snsBox{
	display:flex;
	width:90%;
	max-width:500px;
	margin:0 auto 120px;
}
#snsLeft{
	width:45%;
	display:flex;
	justify-content: space-between;
	align-items:center;
	margin-right:5%;
}
#snsLeft p{
	width:26%;
}
#snsRight{
	width:50%;
}
#features03, #features05, #sns{
	margin-top:120px;
}
@media screen and (max-width: 768px) {
	.topMidashi2-b span{
		width:240px;
	}
}
/************
コンテンツ
*************/
@media screen and (max-width: 960px) {
	.featuresLink a{
		font-size:1.6rem;
		padding:12px 20px 14px 40px;
	}
	.featuresLink a::before{
		top:20px;
		left:15px;
		content:'';
		width: 13px;
		height: 13px;
		border: 3px solid;
		border-color: #fff #fff transparent transparent;
	}
}
@media screen and (max-width: 1120px) {
	.scroll_down{
		bottom:-80px;
		right:2%;
	}
	.scroll_down a{
		bottom: 40px;
	}
	.scroll_down:before {
		right:-3px;
		height: 10px;
	}
	.scroll_down:after{
		height: 30px;
	}
	@keyframes arrowmove{
		0%{bottom:-80px;}
		50%{bottom:-100px;}
		00%{bottom:-80px;}
	}
	#brandBox{
		margin-top:120px;
	}
}
@media screen and (max-width: 768px) {
	#swiperWrap{
		margin-top:76px;
	}
	.swiper1 .swiper-slide{
		padding-top: 75%;
	}
	#corporateImg{
		padding-top: calc(50vh - 76px);
		margin-top:76px;
	}
	#brandBox{
	}
	#brandBox div{
		width:46%;
		margin:0 auto 20px;
	}
	#wrapper #scrollBox{
		margin-top: 76px;
	}
	#scrollBox{
		/*width:94%;
		margin:auto;
		padding-top:60px;*/
	}
	.scroll_down{
		right:20px;
	}
	/*
	.scroll_down{
		bottom:-32%;
		right:2%;
	}
	.scroll_down a{
		bottom: 60px;
	}
	.scroll_down:before {
		right:-3px;
		height: 10px;
	}
	.scroll_down:after{
		height: 50px;
	}
	@keyframes arrowmove{
		0%{bottom:-32%;}
		50%{bottom:-37%;}
		00%{bottom:-32%;}
	}
	*/
	#mainTxt{
		font-size:5rem;
		margin-top:120px;
	}
	#mainSentence{
		font-size:2rem;
		margin-bottom:120px;
	}
	.topMidashi2-a{
		font-size:4rem;
		line-height:1.2;
		margin-bottom:40px;
	}
	.md2-jp{
		margin-top:10px;
		font-size:1.6rem;
	}
	.topMidashi2-b, .topMidashi2-c{
		font-size:2.8rem;
		line-height:1.2;
		margin-bottom:40px;
	}
	.topMidashi2-c span{
		padding: 0 20px;
	}
	.bgColor1 {
		padding-top: 60px;
	}
	.bgColor2{
		padding:60px 0 30px;
	}
	.bgColor3 {
		padding:60px 0 0;
	}
	.bgColor4{
		padding:60px 0 0;
	}
	.featuresBox{
		display:block;
		margin:0 auto 80px;
	}
	.featuresLeft{
		width:90%;
		max-width:400px;
		margin:0 auto 40px;
	}
	.featuresRight{
		width:96%;
		margin:auto;
	}
	.featuresRight p{
		font-size:1.6rem;
	}
	.featuresRight span{
		display:inline;
	}
	.featuresSub{
		margin:40px 10% 0;
	}
	.featuresLink{
		margin:40px auto 0;
	}
	.featuresLink a{
		/*
		font-size:1.8rem;
		padding:15px 30px 17px 80px;
		*/
	}
	#newsBox{
		margin-bottom:40px;
	}
	#newsBox li{
		border-bottom:1px solid #000;
		padding-bottom:10px;
	}
	#newsBox li:last-child{
		border-bottom:none;
		padding-bottom:0;
	}
	.newsDate{
		width:120px;
		color:#808080;
		font-size:1.4rem;
	}
	.newsCate, #wrapper .newsCate{
		width:auto;
		margin:0;
		font-size:1.4rem;
	}
	.newsCate::before, .newsCate::after{
		content:unset;
	}
	.newsTitle{
		display:block;
		width:100%;
		margin-top:5px;
	}
	#newsBox li a::before{
		top:10px;
	}
	#reportBox li{
		width:48%;
		margin:0 4% 30px 0;
	}
	#reportBox li:nth-child(4n){
		margin-right:0;
	}
	#reportBox li:nth-child(2n){
		margin-right:0;
	}
	.reportDate{
		margin-bottom:10px;
	}
	.reportBtn{
		margin:20px auto 80px;
	}
	#aboutBox{
		display:block;
		margin-bottom:80px;
	}
	#aboutLeft{
		width:90%;
		max-width:480px;
		margin:0 auto 60px;
	}
	#aboutRight{
		width:90%;
		max-width:480px;
		margin:auto;
	}
	#contactTxt{
		font-size:1.6rem;
	}
	#contactBtn, #snsBox{
		margin-bottom:80px;
	}
	#features03, #features05, #sns{
		margin-top:80px;
	}
}
@media screen and (max-width: 520px) {
	#mainTxt{
		font-size:8.5vw;
	}
	#mainSentence{
		font-size:1.8rem;
		line-height:2;
	}
		#mainSentence span{
			display:inline;
	}
}
@media screen and (max-width: 460px) {
	.swiper1 .swiper-slide{
			padding-top: 100%;
			background-position: 60% bottom;
	}
	#reportBox li{
		width:100%;
		margin:0 auto 30px;
	}
	#reportBox li:nth-of-type(n+5){
		display:none;
	}
	#overviewBox dl{
		display:block;
		font-size:1.4rem;
	}
	#overviewBox dt{
		width:auto;
		border-bottom:1px solid #000;
	}
	#overviewBox dl:last-child dt{
		padding:10px 0;
	}
	#overviewBox dl:last-child dd{
		padding:10px;
	}
	.overview-indent{
		margin-left:50px;
	}
}
/************
フッター
*************/
#footer {
	background-color:#000;
	color:#fff;
	position: relative;
	clear: both;
	padding: 80px 0 0;
	margin-top:120px;
}
#footerBox {
	max-width: 1100px;
	width: 96%;
	margin: auto;
	position: relative;
	z-index: 5;
	display:flex;
	justify-content:space-between;
}
#footerLeft{
	width:300px;
}
#footerLogo{
	margin:40px auto 120px;
}
#footerSns {
	display: flex;
	align-items: center;
	justify-content: end;
}
#footerSns p{
	margin:0 10px;
}
#footerSns li {
	padding: 0 12px;
}
#footerSns li a {
	line-height: 1;
	display: block;
}

#footerMenu {
	width:200px;
	margin:0 5% 0 20%;
}
#footerMenu li {
/*
	width: 46%;
	margin: 0 2%;
	text-align: center;
	line-height: 1.4;
*/
}
#footerMenu li a {
	display: inline-block;
	font-size: 1.4rem;
	line-height:1.4;
	padding:5px;
	color:#fff;
}
#footerMenu li span::after {
	background-color: #e50020;
	content: '';
	display: block;
	height: 1px;
	margin: 2px 0 0;
	transition: 0.5s;
	-webkit-transition: 0.5s;
	width: 0;
}
#footerMenu li a:hover span:after {
	width: 100%;
}
#footerRight{
	/*width:calc(54% - 300px);*/
	max-width:300px;
	width:100%;
}
#footerLink p{
	margin-bottom:20px;
}
#footerLink a{
	color:#fff;
	display:block;
	border:1px solid #fff;
	padding:15px 10px 15px 40px;
	position:relative;
}
#footerLink a::after {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	width: 0;
	height: 0;
	border-left: 15px solid transparent;
	border-bottom: 15px solid white;
}
#footerLink a:hover{
	background-color:#e50020;
}
#copyright {
	margin-top:40px;
	text-align: center;
	padding: 10px 0;
	font-size: 1.4rem;
}
#pageTopBtn {
	position: fixed;
	bottom: 30px;
	right: 2%;
	z-index: 10;
}
#pageTopBtn a{
	display:block;
	position:relative;
	-webkit-animation: pg-top 2.4s ease-in-out infinite;
	animation: pg-top 2.4s ease-in-out infinite;
}
@keyframes pg-top {
	0%, 100%, 20%, 50%, 80% { transform: translateY(0px); }
	40% { transform: translateY(-10px); }
	60% { transform: translateY(-5px); }
}
@media screen and (max-width: 960px) {
	#footerMenu{
		margin:0 0 0 5%;
	}
	#footerRight{
		max-width:280px;
		/*width:calc(72% - 300px);*/
	}
}
@media screen and (max-width: 768px) {
	#footer{
		margin-top:80px;
	}
	#footerBox {
		flex-wrap:wrap;
		max-width:500px;
	}
	#footerLeft{
		width:50%;
		margin:0 10% 0 5%;
	}
	#footerLogo{
		margin:0px auto 60px;
	}
	#footerSns {
		justify-content: center;
	}
	#footerMenu {
		width:35%;
		margin:auto;
	}
	#footerRight{
		width:100%;
		max-width:300px;
		margin:60px auto 0;
	}
	#footerLink a{
		text-align:center;
		padding:15px 10px;
	}
	#copyright{
		font-size:1.2rem;
	}
	#pageTopBtn{
		width:40px;
	}
}
@media screen and (max-width: 460px) {
	#footerLeft{
		width:45%;
		margin:0 5%;
	}
	#footerSns{
		width:90%;
		margin:auto;
	}
	#footerMenu {
		width:45%;
	}
	#footerMenu li a{
		font-size:1.2rem;
	}
	#copyright{
		font-size:1rem;
	}
}
/************
印刷用
*************/
@page {
	margin: 16mm 10mm;
}
@-moz-document url-prefix() {
	@page {
		margin: auto;
	}
}
@media screen and (-webkit-min-device-pixel-ratio:0) {
	@page {
		margin: auto;
	}
}
/************
スマートフォンのみ電話リンク有効化
*************/
@media screen and (min-width: 641px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
}
.parent {
	max-width: 1100px;
	margin: auto;
	display: grid;
	grid-template-columns: repeat(5, 1fr);
	grid-template-rows: repeat(5, 1fr);
	gap: 8px;
}
.div2 {
	grid-row-start: 2;
}
.div3 {
	grid-row-start: 3;
}
.div4 {
	grid-row-start: 4;
}
.div5 {
	grid-row-start: 5;
}
.product-info span, .event_detail span{
	font-size: inherit !important;
}
.customize-support .has-large-font-size{
	line-height:1.4;
}
.customize-support .has-x-large-font-size{
	line-height:1.4;
}
@media screen and (max-width: 768px) {
	.customize-support .has-small-font-size{
		font-size:1.2rem !important;
	}
	.customize-support .has-medium-font-size{
		font-size:1.8rem !important;
	}
	.customize-support .has-large-font-size{
		font-size:2.5rem !important;
	}
	.customize-support .has-x-large-font-size{
		font-size:2.8rem !important;
	}
}