@charset "UTF-8";
/* CSS Document */
/***************
ここから
基本設定
***************/
html{
	-ms-touch-action: manipulation;
	touch-action: manipulation;
	font-size: 100%;
}
a{
	transition: all .3s linear;
}
a:hover{
	opacity:0.7;
	filter: alpha(opacity=70);        /* ie lt 8 */
	-ms-filter: "alpha(opacity=70)";  /* ie 8 */
	-moz-opacity:0.7;                 /* FF lt 1.5, Netscape */
	-khtml-opacity: 0.7;              /* Safari 1.x */
	zoom:1;
}
body, html, main{
	width: 100%;
}
main{
/*	padding-top: 43px;*/
padding-top: 50px;
}
section{
	/*margin-top: -120px;
	padding-top: 120px;*/
}
.lp_width960{
	margin-left: auto;
	margin-right: auto;
	max-width: 960px;
}
/***************
ここまで
基本設定
***************/

/***************
ここから
ヘッダー関連
***************/
header{
	top: 0;
	position: fixed;
}
.lp_hm_sp{
	display: none;
}
header .hrm_header__title{
	display: none;
}
.hrm_menu--fixed #lp_header{
	background: none;
	border: 0;
}
#lp_header{
	padding-left: 0;
	width: auto;
	background: none;
	display: inline-block;
	float: right;
	position: fixed;
	right: 90px;
	border-bottom: 0;
}
#lp_header ul{
	margin: 10px 0 0 0;
	position: relative;
	float: right;
	display: block;
}
#lp_header ul:first-of-type li{
	right: auto;
	text-align: left;
}
#lp_header ul:last-of-type li:first-child a, #lp_header ul:last-of-type li a{
	padding: 10px;
	width: auto;
	height: auto;
	display: block;
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-transition: background-color .2s ease-out;
	transition: background-color .2s ease-out;
	background: none;
	color: #333;
}
#lp_header ul:last-of-type li a:hover {
    color: #3b3eaa;
    /* text-decoration: underline; */
    /* text-underline-offset: 0.5em; */
    opacity: 1;
}
#lp_header ul:first-of-type li, #lp_header ul:first-of-type li, #lp_header ul:last-of-type li{
	margin-right: 25px;
	width: auto;
	position: relative;
	border: none;  /*  人的のみ記述  */
}
#lp_header ul li a:before, #lp_header ul:first-of-type li:last-child a:after{
	display: none;
}
#lp_header ul:first-of-type li:last-child{
	font-size: 1em;
	right: auto;
	top: auto;
}
.lp_nav_sphrmmenu{
	display: none;
}
.lp_nav_inquiry {
	border: 1px solid #333;
}
.lp_nav_submenu{
	position: relative;
}
.lp_nav_submenu_arrow{
	content: '';
	margin: 0;
	width: 6px;
	height: 6px;
	display: block;
	border: 1px solid #333;
	border-color: transparent #333 #333 transparent;
	transform: rotate(
	45deg);
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(
	45deg);
	position: absolute;
	top: calc( 50% - 5px );
	right: -3px;
	transition: all .2s linear;
	background: none;
	border-radius: 0;
}
#lp_header .lp_nav_submenulist{
	padding: 0;
	width: 15em;
	height: auto;
	position: absolute;
	background: #ffffff;
	left: 0;
	bottom: auto;
	float: none;
	display: none;
	top: 100%;
	right: auto;
}
#lp_header .lp_nav_submenulist li{
	float: none;
}
header{
	width: 100%;
	top: 0;
}
/* header.fixed{
	position: fixed;
	top: 0;
	background: rgba(255,255,255,0.82);
	transition: all 1.5s ease-in-out;
}
header.fixed, #lp_header.fixed{
	position: fixed;
	top: 0;
	transition: all 1.5s ease-in-out; /*ヘッダースピード
} */
header.hidden{
	top: -100%;
	transition: all 1.5s ease-in-out; /*ヘッダースピード*/
}
header.temp_header {
	padding-left: 0;
	border-bottom: none;
}
header.temp_header .hp_pdleft {
	padding-left: 2rem;
}
header > div a {
	display: table;
    padding: 17px 0 16px;
    -webkit-transition: opacity .2s ease-out;
    transition: opacity .2s ease-out;
    letter-spacing: .02em;
    color: #222;
}

header > div .hrm_pc--hidden a {
	padding: 0;
}
main:after{
	transition: all .7s linear;
}
.hrm_menu--opened header .lp_nav_submenu_arrow,.hrm_menu--opened header.temp_header .breadcrumbs_ul li span{
	opacity: 1;
}
.hrm_menu--opened nav{
	position: absolute;
}
.js_logo{
	margin: 30px 0;
	width: 150px;
}
nav .hrm_menu.hrm_pc--hidden li a{
	font-weight: bold;
	font-size: 12px;
}
nav div > ul:last-of-type a{
	padding: 0 2rem;
	width: auto;
}
/***************
ここまで
ヘッダー関連
***************/

/***************
ここから
パンくず
***************/
header.temp_header .breadcrumbs_ul {
	position: unset;
	font-weight: normal;
}
header.temp_header .breadcrumbs_ul li {
	float: none;
	position: unset;
	width: auto;
}
header.temp_header .breadcrumbs_ul li:first-child a {
	width: auto;
	padding: 0;
	background: none;
}
header.temp_header .breadcrumbs_ul li:first-child a:before {
	width: auto;
	height: auto;
	margin-bottom: 0;
	background: none;
}
header.temp_header .breadcrumbs_ul a {
	background: none;
}
header.temp_header .breadcrumbs_ul a:hover {
	background: none;
}
header.temp_header .breadcrumbs_ul li span {
    width: auto;
    height: auto;
    margin: 0;
    -webkit-transition: opacity .2s ease-out;
    transition: opacity .2s ease-out;
    border: none;
    border-radius: 0;
    background: none;
}
#breadcrumbs{
	background: transparent;
	transition: all 1.5s ease-in-out;
	position: relative;
}
#breadcrumbs ul li a, #breadcrumbs ul li span{
	color: #333;
}
#breadcrumbs ul li a::after {
	content: "";
	background-image: url(../img/icon_breadcrumbs.png);
	background-size: 4px 8px;
	background-repeat: no-repeat;
	background-position: center top;
	width: 4px;
	height: 8px;
	display: block;
	position: absolute;
	top: 11px;
	right: 0;
}
#breadcrumbs.fixed /*, .hrm_menu--opened #breadcrumbs*/{
	position: fixed;
	/*top: 65px;*/
	transition: all 1.5s ease-in-out;
	z-index: 10;
}
#breadcrumbs.hidden{
	top: -110%;
	transition: all 1.5s ease-in-out;
	position: fixed;
	z-index: 10;
}
/***************
ここまで
パンくず
***************/
/***************
ここから
スライダー関連
***************/
.slick-dots{
	bottom: -55px;
	position: absolute;
	left: 50%;
	transform: translate( -50%, 0);
	-webkit-transform: translate( -50%, 0);
	-ms-transform: translate( -50%, 0);
}
.slick-dots li{
	width: 20px;
}
.slick-dots li button:before{
	content: '';
	width: 10px;
	height: 10px;
	border-radius: 50%;
	background: #ffffff;
	border: 2px solid #a0a0a0;
	opacity: 1;
}
.slick-dots li.slick-active button:before{
	background: #a0a0a0;
	opacity: 1;
}
.lp_slider_wrap{
	margin-bottom: 105px;
}
.lp_slidetile{
	margin: 10px;
	position: relative;
}
#lp_slidetile_belt{
	margin: 0 auto 40px auto;
}
.lp_widthhalf_wrap{
	margin-bottom: 40px;
	width: 100%;
	overflow: hidden;
	display: block;
}
.lp_widthhalf_right{
	margin-right: 0;
	padding-bottom: 80px;
	max-width: 90%;
	float: right;
}
#lp_slidetile_big .lp_slidetile{
	margin: 10px 20px;
}
.lp_tiledes{
	max-width: 100%;
	position: absolute;
	top: 0;
	left: 20px;
	color: #ff0000;
}
#slick-main .slick-slide {
	opacity: 1 !important;
}
/* 効果をかけるためのスタイル設定 */
#lp_slider02 .lp_slider figure.image{
	background-size: contain;
	background-repeat: no-repeat;
	background-position: 0 0;
	width: 100%;
	height: 100%;
	position: absolute;
	z-index: 10;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
}
#lp_slider02 .lp_slider p.text{
	font-size: 20px;
	line-height: 1.5em;
	width: 10.0em;
	height: 3.0em;
	margin: auto;
	position: absolute;
	z-index: 20;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	color: #fff;
	font-weight: bold;
	text-align: center;
	overflow: hidden;
}
#lp_slider02 .lp_slider{
	transition: 0s;
}
#lp_slider02 .slick-active .lp_slider{
	opacity: 1;
	transition: ease 5.0s;
}
#lp_slider02 .slick-continue .lp_slider{
	opacity: 0;
	transition: ease 5.0s;
}
#lp_slider02 figure.image{
	transform: scale(1.2, 1.2);
	transition: 0s;
	margin: 0;
}
#lp_slider02 .slick-active figure.image{
	transform: scale(1.0, 1.0);
	transition: ease 7.0s, filter 1.5s ease-out;
}
#lp_slider02 .slick-continue figure.image{
	transform: scale(1.4, 1.4);
	transition: ease 7.0s, filter 1.5s ease-out;
	transition-delay: 500ms;
	transition-property: transform;
}
#lp_slider02 p.text{
	opacity: 0;
	transition: 0s;
}
#lp_slider02 .slick-active p.text{
	opacity: 1;
	transition: ease 1.0s; 
	transition-delay: 1.0s;
}
#lp_slider02 .slick-continue p.text{
	opacity: 0;
	transition: ease 1.0s; 
}
#lp_slider02 .lp_slider{
	padding-top: 20%;
	position: relative;
	z-index: 10;
	overflow: hidden;
	vertical-align: bottom;
	display: inline-block;
}
#lp_slider02 .slick-track{
	overflow: hidden;
}
.slick-prev, .slick-next{
	margin: 0;
	background: #ffffff;
	top: auto;
	bottom: -46%;
	border: 1px solid #333;
	height: 34px;
	border-radius: 50%;
}
.slick-prev:before, .slick-next:before{
	display: none;
}
.slick-prev:after, .slick-next:after {
	margin-top: 0;
	width: 8px;
	height: 8px;
	border-color: #333;
	top: calc( 50% - 17%);
}
.slick-prev:after{
	left: 12px;
}
.slick-next:after{
	left: 9px;
}
.slick-prev{
	left: auto;
	right: 50%;
	transform: translate( 470%, -50%);
	-ms-transform: translate( 470%, -50%);
	-webkit-transform: translate( 470%, -50%);
	bottom: -74px;
}
.slick-next{
	right: 50%;
	transform: translate( 620%, -50%);
	-ms-transform: translate( 620%, -50%);
	-webkit-transform: translate( 620%, -50%);
	bottom: -74px;
}

/***************
ここまで
スライダー関連
***************/

/***************
ここから
動画背景
***************/
.lp_video, .lp_video video{
	width: 100%;
	position: relative;
}
.lp_video_h1{
	clip-path: inset(0 100% 0 0);
	position: absolute;
	top: 60px;
	left: 40px;
	max-width: 55%;
	color: #ffffff;
	font-size: 1.3rem;
	transition: .5s cubic-bezier(0.37, 0, 0.63, 1);
	transition-property: clip-path;
	display: inline-block;
}
.lp_video_h1.is-animated{
	clip-path: inset(0);
}
/***************
ここまで
動画背景
***************/

/***************
ここから
モーダル
***************/
.lp_video_banner{
	margin: 0 auto 40px auto;
	position: relative;
}
.lp_video_button{
	padding: 10px;
	position: absolute;
	display: block;
	right: 20px;
	bottom: 20px;
	duisplay: inline-block;
	border: 5px solid #ff0;
	background: #ffffff;
	color: #000000;
}
#lp_modaloverlay{
	margin: 0;
	padding: 0;
	width: 100%;
	height: 100%;
	display: none;
	background: #000000;
	opacity: 0.7;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100001;
}
.lp_modal{
	margin: 0;
	padding: 0;
	display: block;
	z-index: 100002;
	position: fixed;
}
.lp_modal.show{
	top: 50%;
	transform: translate( -50%,-50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	left: 50%;
}
.lp_modalblock{
	display: none;
}
.lp_modalblock.show{
	display: block;
	max-width: 960px;
	width: 100%;
}
.lp_modalblock.show video{
	width: 100%;
}
.lp_modalclose{
	display: none;
}
.lp_modal.show .lp_modalclose{
	padding: 5px 3px;
	width: 35px;
	height: 35px;
	position: absolute;
	top: -20px;
	right: -20px;
	background: #ffffff;
	display: block;
	z-index: 2;
}
.lp_modalclose span{
	width: 30px;
	height: 2px;
	background: #000000;
	display: block;
}
.lp_modalclose span:first-of-type{
	margin-top: 12px;
	transform: rotate( 45deg);
}
.lp_modalclose span:last-of-type{
	margin-top: -2px;
	transform: rotate( -45deg);
}
.lp_modal.show .lp_modalclose:hover{
	cursor: pointer;
}
.lp_modalbg{
	padding: 30px;
	background: #ffffff;
}
.lp_modalclosebutton{
	margin: 20px auto 0 auto;
	text-align: center;
	display: block;
}
.lp_modalclosebutton span{
	padding: 7px 70px;
	border-radius: 25px;
	border: 1px solid #333;
	display: inline-block;
}
.lp_modalclosebutton span:hover{
	cursor: pointer;
}
/***************
ここまで
モーダル
***************/

/***************
ここから
3カラムモーダル
***************/
.lp_3clm_wrap{
	margin: 0 auto 40px auto;
	overflow: hidden;
	display: inline-flex;
}
.lp_3clm{
	margin: 0 20px 20px 0;
	padding: 20px 20px 40px 20px;
	background: #efefef;
	display:flex;
	flex-direction:row;
	flex-wrap: wrap;
	flex:3;
	justify-content: center;
}
.lp_3clm:nth-of-type(3n){
	margin-right: 0;
}
.lp_modaltextbutton{
	margin: -20px 0 20px 0;
	padding: 7px 0;
	width: 100%;
	text-align: center;
	border-radius: 25px;
	background: #ffffff;
	display: block;
	color: #333333;
}
.lp_textintro{
	width: 100%;
	height: 100%;
	display: block;
}
/***************
ここまで
3カラムモーダル
***************/

/***************
ここから
フローティングバナー
***************/
.hrm_column_site-bnr {
	padding: 0;
	width: 261px;
	height: auto;
	border-radius: 10px;
	position: fixed;
	right: 3.125vw;
	z-index: 9;
	display: block;
	animation: flowing 3s forwards;
	box-shadow: 16px 13px 25px -15px rgb(0 0 0 / 20%), 0 0 10px 0 rgb(0 0 0 / 10%);
	transform: translate( 0, -50px );
	-ms-transform: translate( 0, -50px );
	-webkit-transform: translate( 0, -50px );
}
.hrm_column_site-bnr_close {
	width: 30px;
	height: 30px;
	background: #666666;
	border-radius: 50%;
	box-sizing: border-box;
	position: absolute;
	right: -8px;
	top: -10px;
	z-index: 10000;
}
.hrm_column_site-bnr_close:before {
	content: "";
	display: block;
	width: 20px;
	height: 3px;
	background: #fff;
	transform: translate(-50%,-50%) rotate(45deg);
	-ms-transform: translate(-50%,-50%) rotate(45deg);
	-webkit-transform: translate(-50%,-50%) rotate(45deg);
	top: 50%;
	left: 50%;
	z-index: inherit;
	position: absolute;
}
.hrm_column_site-bnr_close:after {
	content: "";
	display: block;
	width: 20px;
	height: 3px;
	background: #fff;
	top: 50%;
	left: 18%;
	transform: translate(0,-50%) rotate(-45deg);
	-ms-transform: translate(0,-50%) rotate(-45deg);
	-webkit-transform: translate(0,-50%) rotate(-45deg);
	z-index: inherit;
	position: absolute;
}
.site-bnr_inner_flex {
	padding:  15px 26px 20px 26px;
	background: #ffffff;
	border-radius: 10px;
	overflow: hidden;
}
.hrm_column_site-bnr figure {
	margin: 0 0 20px 0;
}
.hrm_column_site-bnr figure img {
	width: 100%;
	max-width: 207px;
}
.site-bnr_inner_flex p {
	margin: 0 0 10px 0;
	font-size: 13px;
	font-weight: 500;
	line-height: 1.6em;
	text-align: center;
}
.lp_floatingdl {
	text-align: center;
	display: block;
}
.lp_floatingdl a {
	padding: 10px 0;
	color: #333;
	transition: all .2s linear;
	display: block;
	font-size: 14px;
	font-weight: 500;
	background: #ffffff;
	border: 1px solid #333;
}
.lp_floatingdl a span {
	position: relative;
}
.hrm_column_site-bnr.is-fixed {
	margin-bottom: 100%;
	position: absolute;
	flex-direction: column;
	justify-content: center;
	bottom: auto;
}
/***************
ここまで
フローティングバナー
***************/

/***************
ここから
Q&A
***************/
.lp_qanda_wrap{
	margin-bottom: 40px;
	padding: 20px 20px 0 20px;
	display: block;
	border: 1px solid #333;
}
.lp_qanda_wrap p{
	margin-bottom: 20px;
	padding-left: 2em;
	position: relative;
}
.lp_qanda_q p:before{
	content: 'Q';
	display: block;
	color: #333;
	position: absolute;
	left: 0;
	top: 0;
	font-size: 22px;
	font-weight: 500;
	line-height: 1em;
}
.lp_qanda_a p:before{
	content: 'A';
	display: block;
	color: #333;
	position: absolute;
	left: 0;
	top: 0;
	font-size: 22px;
	font-weight: 500;
	line-height: 1em;
}
.lp_qanda_q, .lp_qanda_a{
	padding-right: 40px;
	position: relative;
}
.lp_qanda_a{
	display: none;
}
.lp_qanda_btnp{
	display: block;
	width: 30px;
	height: 30px;
	position: absolute;
	top: -5px;
	right: 0;
}
.lp_qanda_btnp:hover{
	cursor: pointer;
}
.lp_qanda_btnp:before{
	content: '';
	width: 20px;
	height: 1px;
	background: #333;
	display: block;
	position: absolute;
	top: 50%;
	right: 6px;
	transition: all 0.4s ease-out;
}
.lp_qanda_btnp:after{
	content: '';
	width: 20px;
	height: 1px;
	background: #333;
	display: block;
	position: absolute;
	top: 15px;
	right: 6px;
	transition: all 0.4s ease-out;
	transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	-webkit-transform: rotate(90deg);
}
.show .lp_qanda_btnp:before{
	transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
}
.show .lp_qanda_btnp:after{
	transform: rotate(-180deg);
	-ms-transform: rotate(-180deg);
	-webkit-transform: rotate(-180deg);
}
/***************
ここまで
Q&A
***************/

/***************
ここから
フッター
***************/
footer#footer{
	margin-top: 0;
	border-top: none;
}
/***************
ここまで
フッター
***************/

@media all and (max-width: 812px){
	.lp_width960{
		width: 90%;
	}
	.lp_hm_sp{
		display : block;
		position: fixed;
		z-index : 100003;
		right : 13px;
		top   : 7px;
		width : 42px;
		height: 42px;
		cursor: pointer;
		text-align: center;
		-webkit-transition: 0.5s all;
		-moz-transition   : 0.5s all;
		transition        : 0.5s all;
	}
	#lp_header .lp_hm_sp span{
		margin: 0;
		display : block;
		position: absolute;
		width   : 30px;
		height  : 2px ;
		left    : 6px;
		background : #555;
		-webkit-transition: 0.3s ease-in-out;
		-moz-transition   : 0.3s ease-in-out;
		transition        : 0.3s ease-in-out;
	}
	.lp_hm_sp span:nth-child(1) {
		top: 10px;
	}
	.lp_hm_sp span:nth-child(2) {
		top: 20px;
	}
	.lp_hm_sp span:nth-child(3) {
		top: 30px;
	}
	video{
		width: 100%;
	}
	header.temp_header .hp_pdleft {
		padding-left: 20px;
	}
	header > a{
		padding-top: 1rem;
		padding-bottom: 1rem;
	}
	header > div a img {
		width: auto;
	}
	#lp_header .lp_hm_sp.active span:nth-child(1) {
		top : 16px;
		left: 6px;
		background : #333;
		-webkit-transform: rotate(-45deg);
		-moz-transform   : rotate(-45deg);
		transform        : rotate(-45deg);
	}
	#lp_header .lp_hm_sp.active span:nth-child(2),#lp_header .lp_hm_sp.active span:nth-child(3) {
		top: 16px;
		background : #333;
		-webkit-transform: rotate(45deg);
		-moz-transform   : rotate(45deg);
		transform        : rotate(45deg);
	}
	#lp_header_nav{
		margin: 0;
		padding: 7px 20px 20px 20px;
		width: 100%;
		height: 100%;
		position: fixed;
		top  : 0;
		right : 0;
		color: #333;
		background: #ffffff;
		text-align: center;
		opacity: 0;
		transition: opacity .6s ease, visibility .6s ease;
		z-index: -1;
		overflow: hidden;
		visibility:hidden;
		font-weight: 400;
	}
	#lp_header_nav.active {
		opacity: 100;
		z-index: 100002;
		right : 0;
		transition: .4s all;
		visibility: visible;
	}
	#lp_header #lp_header_nav.active ul{
		margin-bottom: 10px;
		display: block;
	}
	#lp_header ul{
		float: none;
		display: none;
	}
	#lp_header  li{
		margin-right: 0;
		width: 100%;
	}
	#lp_header ul:last-of-type li:first-child a, #lp_header ul:last-of-type li a{
		padding: 10px 0;
		width: 100%;
		font-size: 0.8rem;
		display: block;
		text-align: center;
	}
	#lp_header #lp_header_nav.active .lp_nav_submenulist{
		display: none;
	}
	#lp_header .lp_nav_submenulist{
		width: 100%;
		display: block;
		position: relative;
		background: none;
		border: 1px solid #333;
		opacity: 1;
	}
	header{
		padding-left: 20px;
		background: none;
		position: fixed;
		top: 0;
	}
	.lp_nav_submenu_arrow{
		width: 1vh;
		height: 1vh;
		top: 1.8vh;
		right: 23vw;
		border-color: transparent #333 #333 transparent;
		pointer-events: inherit;
	}
	 #lp_header ul:last-of-type .lp_nav_submenu .lp_nav_submenulist a{
		font-size: 0.8rem;
	}
	.lp_nav_inquiry {
		margin-top: 10px;
		border: 0;
		background: #ffffff;
		border-width: 1px;
		border-style: solid;
		border-color: #333;
	}
	#lp_header ul:first-of-type li, #lp_header ul:first-of-type li, #lp_header ul:last-of-type li{
		margin-right: 0;
	}
	#lp_header ul:last-of-type .lp_nav_inquiry{
		margin-left: auto;
		margin-right: auto;
		width: 10rem;
	}
	#lp_header ul:last-of-type li.lp_nav_inquiry a{
		color: #333;
	}
	.lp_nav_sphrmmenu{
		margin-top: 20px;
		display: block;
		background-color: #f7f7f4;
	}
	header .lp_nav_hrmplus{
		margin: 0 auto;
		background: none;
		height: 1.8rem;
	}
	.lp_nav_sphrmmenu a .lp_nav_hrmplus:before{
		position: absolute;
		margin-left: 0.35rem;
		top: 3rem;
		width: 1.3rem;
		height: .2rem;
		content: '';
		-webkit-transition: opacity .4s ease-out, -webkit-transform .2s linear;
		transition: opacity .4s ease-out, -webkit-transform .2s linear;
		transition: opacity .4s ease-out, transform .2s linear;
		transition: opacity .4s ease-out, transform .2s linear, -webkit-transform .2s linear;
		background-color: #222;
		display: block;
	}
	.lp_nav_sphrmmenu a .lp_nav_hrmplus:after{
		top: 2.5rem;
		width: .2rem;
		height: 1.3rem;
		margin-top: 0;
		margin-left: 0.9rem;
		content: '';
		-webkit-transition: -webkit-transform .2s linear;
		transition: -webkit-transform .2s linear;
		transition: transform .2s linear;
		transition: transform .2s linear, -webkit-transform .2s linear;
		background: #222;
		position: absolute;
		display: block;
	}
	
	.lp_nav_sphrmmenu.js_accord a .lp_nav_hrmplus:before, .lp_nav_sphrmmenu.js_accord a .lp_nav_hrmplus:after{
		-webkit-transform: rotate(-90deg);
		transform: rotate(-90deg);
	}
	.lp_nav_sphrmmenu.js_accord a .lp_nav_hrmplus:before{
		opacity: 0;
	}
	.js_logo{
		margin: 10px 0;
		width: 5.5rem;
	}
	nav form{
		display: none;
	}
	nav div:first-of-type{
		padding-top: 0;
		padding-bottom: 500px;
		top: 348px;
		pointer-events: none;
	}
	nav div:first-of-type a{
		pointer-events: none;
	}
	nav div:first-of-type > ul:first-of-type a{
		pointer-events: none;
	}
	.hrm_menu--opened nav div:first-of-type > ul:first-of-type a, .hrm_menu--opened nav div:first-of-type a, .hrm_menu--opened nav div:first-of-type{
		pointer-events: auto;
	}
	nav div:first-of-type > ul:first-of-type{
		font-size: 0.8125rem;
		line-height: 3rem;
	}
	nav .hrm_menu {
		line-height: 2.8rem;
	}
	nav div:first-of-type > ul:first-of-type .hrm_dropdown:after{
		top: 1.2rem;
	}
	nav div:first-of-type > ul:first-of-type .hrm_dropdown:before{
		height: .15rem;
		top: 1.55rem;
	}
	nav div:first-of-type > ul:first-of-type li:nth-child(2) .hrm_dropdown--opened + .hrm_menu {
		height: 34rem;
	}
	nav div:first-of-type > ul:first-of-type li:nth-child(3) .hrm_dropdown--opened + .hrm_menu {
		height: 47.9rem;
	}
	nav div:first-of-type > ul:first-of-type li:nth-child(4) .hrm_dropdown--opened + .hrm_menu {
		height: 22.6rem;
	}
	nav div:first-of-type, nav form{
		margin-left: 20px;
		margin-right: auto;
		width: calc( 100% - 40px);
	}
	body > nav{
		z-index: 22;
	}
	.sp_nav_blue_bt a, nav div > ul:last-of-type li{
		font-size: 1rem;
	}
	nav div > ul:last-of-type li{
		margin-bottom: 10px;
		line-height: 3rem;
	}
	header #hrm_header_pc li{
		display: none;
	}
	.hrm_menu--opened header span{
		opacity: 1;
	}
	.slick-prev{
		transform: translate( 310%, -50%);
		-ms-transform: translate( 310%, -50%);
		-webkit-transform: translate( 310%, -50%);
		bottom: -55px;
	}
	.slick-next{
		transform: translate( 430%, -50%);
		-ms-transform: translate( 430%, -50%);
		-webkit-transform: translate( 430%, -50%);
		bottom: -55px;
	}
	.lp_3clm_wrap{
		display: block;
	}
	.lp_3clm{
		margin-right: 0;
		margin-bottom: 20px;
		padding-bottom: 20px;
		width: 100%;
		display: block;
	}
	.lp_modaltextbutton{
		margin-top: 20px;
		margin-bottom: 0;
	}
	.lp_3clm_wrap{
		padding-bottom: 20px;
	}
	.lp_modalbg{
		padding: 20px;
	}
	.slick-dots li button:before{
		width: 6px;
		height: 6px;
	}
	.slick-dots li, .slick-dots li button{
		width: 10px;
		height: 10px;
	}
	.slick-dots{
		bottom: -25px;
	}
	.hrm_column_site-bnr {
		margin-left: auto;
		margin-right: auto;
		width: 90%;
		position: fixed;
		bottom: 10px;
		left: 2.5%;
		right: 2.5%;
		z-index: 20;
		flex-direction: row;
		box-shadow: 0 5px 10px 1px rgb(0 0 0 / 30%);
		transform: translate( 0,0);
		-ms-transform: translate( 0,0);
		-webkit-transform: translate( 0,0);
	}
	.site-bnr_inner_flex{
		padding: 10px;
	}
	.site-bnr_inner_flex p {
		margin: 0 0 10px 10px;
		width: calc( 100% - 20% - 10px );
		font-size: 13px;
		font-weight: 500;
		line-height: 1.6em;
		display: block;
		float: right;
		text-align: left;
	}
	.hrm_column_site-bnr figure{
		margin-bottom: 10px;
		width: 20%;
	}
	.hrm_column_site-bnr_close {
		width: 28px;
		height: 28px;
		right: 0;
		top: -20px;
	}
	.hrm_column_site-bnr_close:after {
		left: 13%;
	}
	.lp_qanda_q p:before, .lp_qanda_a p:before{
		font-size: 22px;
	}
	.lp_qanda_q, .lp_qanda_a{
		padding-right: 30px;
	}
	.lp_qanda_wrap{
		padding: 10px 10px 0 10px;
	}
	.lp_modal.show {
		width: 85%;
	}
	.lp_video_h1{
		width: calc( 100% - 20px );
		max-width: 100%;
		top: 10px;
		left: 10px;
		font-size: 3vw;
	}
}
@media print, screen and (min-width: 813px){
	nav div:first-of-type{
		top: 66px;
		right: -100%;
		overflow-y: auto;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		height: 100%;
		padding: 0;
		background-color: #f7f7f4;
		-webkit-overflow-scrolling: touch;
		position: fixed;
		z-index: 1000;
		opacity: 1;
		transition: all .5s linear;
	}
	.hrm_pc--hidden{
		display: block;
	}
	.sp_nav_blue_bt{
		width: 30%;
		float: left;
	}
	.sp_nav_blue_bt a{
		margin: 0 10px 25px 0;
		width: 100%;
		font-size: 1rem;
	}
	nav div > ul:last-of-type li{
		font-size: 1rem;
		line-height: 3rem;
	}
	header ul:first-of-type li:last-child a:before {
		top: 1rem;
	}
	header ul:first-of-type li:last-child a:after {
		bottom: 3rem;
	}
	header ul:first-of-type li:first-child a{
		display: none;
	}
	header > div a img {
		display: block;
	    width: 110px;
	}
	#hrm_header_sp, #hrm_header_else1{
		display: none;
	}
	nav form{
		display: none;
	}
	.hrm_menu--opened nav form{
		margin-top: 15px;
		display: block;
	}
	header ul:first-of-type li{
		z-index: 99999;
	}
	header ul:first-of-type li:last-child a{
		height: 5rem;
	}
	nav div:first-of-type > ul:first-of-type{
		height: auto;
		overflow-x: hidden;
		overflow-y: auto;
	}
	nav div:first-of-type > ul:first-of-type a{
		margin: 8px 0;
		padding-left: 1em;
		padding-right: 0;
		display: inline-block;
	}
	nav div:first-of-type > ul:first-of-type a:after, nav div:first-of-type > ul:first-of-type .hrm_dropdown:after{
		width: 4px;
		height: 180%;
		top: -40%;
		bottom: auto;
		right: auto;
		left: 0;
	}
	nav div:first-of-type > ul:first-of-type{
		margin-right: 0;
		margin-bottom: 40px;
		height: auto;
		text-align: left;
	}
	nav div:first-of-type {
		padding: 0 40px 100px 40px;
		width: 85%;
		max-width: 960px;
		height: 100%;
		opacity: 1;
		position: fixed;
		top: 66px;
		clear: both;
	}
	.hrm_menu--opened nav div:first-of-type {
		right: 0;
		-ms-overflow-style: none;    /* IE, Edge 対応 */
		scrollbar-width: none;   
		overflow-y: scroll;
	}
	.hrm_menu--opened nav div:first-of-type::-webkit-scrollbar {  /* Chrome, Safari 対応 */
		display:none;
	}
	header ul:first-of-type li:last-child a:before {
		top: 1.3rem;
	}
	header ul:first-of-type li:last-child a:after {
		bottom: 2.8rem;
	}
	.hrm_menu--opened header ul:first-of-type li:last-child a:before {
		top: 1.9rem;
	}
	.hrm_menu--opened header ul:first-of-type li:last-child a:after {
		bottom: 2.9rem;
	}
	header ul:first-of-type li:last-child a:before, header ul:first-of-type li:last-child a:after{
		margin-left: -1.25rem;
	}
	nav div:first-of-type > ul:first-of-type li{
		line-height: 1em;
		font-size: 14px;
	}
	nav div > ul:last-of-type{
		display: block;
	}
	nav .hrm_menu{
		position: relative;
		opacity: 1;
	}
	nav div:first-of-type > ul:first-of-type li{
		margin-bottom: 0;
		margin-left: 0;
		opacity: 1;
		text-align: left;
		float: left;
	}
	nav div:first-of-type > ul:first-of-type li ul li{
		margin-left: 20px;
	}
	nav div:first-of-type > ul:first-of-type > li ul li  a:after{
		display: none;
	}
	nav .hrm_menu:last-of-type a{
		background: none;
	}
	nav .hrm_menu:last-of-type a:before{
		display: none;
	}
	nav .hrm_menu{
		padding: 0;
		pointer-events: auto;
	}
	nav .hrm_menu.hrm_sp--hidden{
		pointer-events: none;
		display: none;
	}
	nav div:first-of-type > ul:first-of-type li:nth-child(4) .hrm_dropdown--opened + .hrm_menu, nav div:first-of-type > ul:first-of-type li:nth-child(3) .hrm_dropdown--opened + .hrm_menu, nav div:first-of-type > ul:first-of-type li:nth-child(2) .hrm_dropdown--opened + .hrm_menu, nav div:first-of-type > ul:first-of-type li:nth-child(1) .hrm_dropdown--opened + .hrm_menu,.hrm_menu--opened nav div:first-of-type > ul:first-of-type li:nth-child(2) .hrm_dropdown--opened + .hrm_menu, .hrm_menu--opened nav div:first-of-type > ul:first-of-type li:nth-child(3) .hrm_dropdown--opened + .hrm_menu, .hrm_menu--opened nav div:first-of-type > ul:first-of-type li:nth-child(4) .hrm_dropdown--opened + .hrm_menu, .hrm_menu--fixed.hrm_menu--opened nav div:first-of-type > ul:first-of-type li:nth-child(2) .hrm_dropdown--opened + .hrm_menu, .hrm_menu--fixed.hrm_menu--opened nav div:first-of-type > ul:first-of-type li:nth-child(3) .hrm_dropdown--opened + .hrm_menu--fixed.hrm_menu, .hrm_menu--opened nav div:first-of-type > ul:first-of-type li:nth-child(4) .hrm_dropdown--opened + .hrm_menu{
		height: auto;
		display: inline-block;
		top: auto;
		right: -100%;
	}
	nav div:first-of-type > ul:first-of-type > li:nth-child(2) .hrm_dropdown--opened, nav div:first-of-type > ul:first-of-type > li:nth-child(2) .hrm_nav__link--current, nav div:first-of-type > ul:first-of-type > li:nth-child(3) .hrm_dropdown--opened, nav div:first-of-type > ul:first-of-type > li:nth-child(3) .hrm_nav__link--current,nav div:first-of-type > ul:first-of-type > li:nth-child(4) .hrm_dropdown--opened, nav div:first-of-type > ul:first-of-type > li:nth-child(4) .hrm_nav__link--current{
		color: inherit;
		pointer-events: none;
	}
	nav div:first-of-type > ul:first-of-type li:nth-of-type(5), nav div:first-of-type > ul:first-of-type li:nth-of-type(6), nav div:first-of-type > ul:first-of-type li:nth-of-type(7), nav div:first-of-type > ul:first-of-type li:nth-of-type(8), nav div:first-of-type > ul:first-of-type li:nth-of-type(9){
		width: calc( (100% - 100px ) / 5 );
	}
	nav div:first-of-type > ul:first-of-type .hrm_menu li:nth-of-type(5), nav div:first-of-type > ul:first-of-type .hrm_menu li:nth-of-type(6), nav div:first-of-type > ul:first-of-type .hrm_menu li:nth-of-type(7), nav div:first-of-type > ul:first-of-type .hrm_menu li:nth-of-type(8), nav div:first-of-type > ul:first-of-type .hrm_menu li:nth-of-type(9){
		width: calc( 100% / 3 - 40px );
	}
	nav div:first-of-type > ul:first-of-type > li:nth-child(2) a:after {
		background-color: #F5B46C;
	}
	nav div:first-of-type > ul:first-of-type li + li, nav .hrm_menu li{
		margin-left: 0;
		margin-right: 20px;
	}
	.hrm_menu--opened nav .hrm_menu li, nav .hrm_menu li{
		width: calc( 100% / 3 - 40px );
	}
	.hrm_menu--fixed.hrm_menu--opened nav .hrm_menu{
		top: 0;
	}
	.hrm_menu--opened.hrm_menu--fixed nav div:first-of-type > ul:first-of-type li + li{
		margin-left: 10px;
	}
}


/* ============================
   202308 ハンバーガー内メニュー更新
   ============================ */
.sp_nav_orange_bt a{
    background: #FB9614;
    color: #fff;
    border-radius: 50px;
    display: block;
    padding: 12px 5px;
    width: 70%;
    margin: 25px auto;
    text-align: center;
    font-size: 1.5rem;
    font-weight: bold;
}

.hrmNav_body {
	position: relative !important;
	top: 0 !important;
	margin: 0 !important;
    padding: 0 !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    background-color: transparent !important;
    overflow-y: inherit !important;
}

.hrmNav_link>li {
	margin: 0 !important;
	float: none !important;
	text-align: left;
	line-height: 1 !important;
}

.hrmNav_link>li>a {
	margin: 0 !important;
	padding: 0 !important;
	background-color: transparent !important;
}
.hrmNav_link::after,
.hrmNav_link>li>a::before,
.hrmNav_link>li>a::after {
	display: none !important;
}

@media (max-width: 812px){
	.hrmNav {
		padding-bottom: 500px !important;
	}
	.hrmNav_item>li:last-child {
		border-bottom: none !important;
	}
	.hrmNav_head {
		position: relative !important;
		width: auto !important;
		margin-left: 0 !important;
		padding: 0 0 0 1.4rem !important;
		top: 0 !important;
		font-weight: normal !important;
		font-size: 0.8125rem !important;
    	line-height: 3rem !important;
		text-align: left !important;
	}
	.hrmNav_head::before,
	.hrmNav_head::after {
		position: absolute !important;
		display: block !important;
		content: '' !important;
	    margin-top: 0 !important;
	    background-color: #222 !important;
	    opacity: 1 !important;
	    transition: opacity .4s ease-out, transform .2s linear, -webkit-transform .2s linear;
	}
	.hrmNav_head::before {
		top: 1.55rem !important;
		right: 1.5rem !important;
		width: 0.8rem !important;
	    height: 0.15rem !important;
	}
	.hrmNav_head::after {
		top: 1.2rem !important;
		right: 1.8rem !important;
		width: 0.15rem !important;
	    height: 0.8rem !important;
	}
	.hrmNav_head.hrm_dropdown.hrm_dropdown--opened::before,
	.hrmNav_head.hrm_dropdown.hrm_dropdown--opened::after {
		transform: rotate(-90deg);
	}
	.hrmNav_head.hrm_dropdown.hrm_dropdown--opened::before {
		opacity: 0 !important;
	}	
	.hrmNav_head.hrm_dropdown {
		cursor: pointer;
	}
	.hrmNav_body {
		height: 0 !important;
		visibility: hidden !important;
	    opacity: 0 !important;
	    overflow: hidden;
	    transition: opacity .6s ease-out, visibility .6s ease-out, height .6s ease-out;
	}
	.hrmNav_head.hrm_dropdown.hrm_dropdown--opened + .hrmNav_body {
		height: auto !important;
		visibility: visible !important;
	    opacity: 1 !important;
	}
	.hrmNav_link>li {
		display: block !important;
	}
	.hrmNav_link>li>a {
		padding: 0 0 0 1.4rem !important;
		font-weight: bold;
		font-size: 0.8125rem !important;
		line-height: 3rem !important;
	}
	.hrmNav_link.hrm_menu {
		height: auto !important;
		opacity: 1 !important;
	}
	.hrmNav_list {
		display: block !important;
		margin-bottom: 0 !important;
	}
	.hrmNav_btmlist>li {
		display: block !important;
		margin: 0 !important;
	}
	.hrmNav_btmlist>li>a {
		background-color: transparent !important;
	}
	.hrmNav_btmlist>li>a::before,
	.hrmNav_btmlist>li>a::after {
		display: none !important;
	}
	.hrmNav_subHead,
	.hrmNav_sublist_head {
		padding-left: 1.4rem !important;
		font-size: 0.8125rem !important;
		text-align: left;
	}
	.sp_nav_orange_bt a {
		font-size: 1rem;
	}
	.sp_nav_blue_bt+.sp_nav_orange_bt {
		padding-bottom: 4rem;
	}
}

@media (min-width: 813px){
	.hrmNav_item {
		margin-bottom: 50px !important;
	}
	.hrmNav_head {
		position: relative !important;
		top: 0 !important;
		margin: 4px 0px 24px 0 !important;
	    padding: 0px 0px 0px 14px !important;
	    display: block !important;
	    width: auto !important;
	    height: auto !important;
	    background-color: transparent !important;
	    font-size: 20px !important;
	    text-align: left !important;
	    visibility: visible !important;
	    overflow-y: inherit !important;
	    line-height: 1.25 !important;
	}
	.hrmNav_head::before {
		position: absolute !important;
		display: block !important;
		content: '' !important;
		width: 4px !important;
	    height: 100% !important;
	    top: 50% !important;
	    bottom: auto !important;
	    right: auto !important;
	    left: 0 !important;
	    margin-top: 0 !important;
	    background: #019BE3 !important;
	    opacity: 1 !important;
	    transform: translateY(-50%) rotate(0deg) !important;
	}
	.hrmNav_head::after {
		display: none;
	}
	.hrmNav_body {
		visibility: visible !important;
	    opacity: 1 !important;
	}
	.hrmNav_list {
		display: block !important;
		float: none !important;
		margin: 0 !important;
	}
	.hrmNav_link {
		display: flex !important;
		flex-wrap: wrap !important;
		gap: 8px !important;
	}
	.hrmNav_link>li {
		width: calc((100% - 16px)/3) !important;
	}
	.hrmNav_link>li>a {
		font-weight: normal !important;
		font-size: 16px !important;
		line-height: 1.25 !important;
	}
	.hrmNav_list+.hrmNav_list {
		margin-top: 40px !important;
	}
	.hrmNav_link+.hrmNav_subHead {
		margin-top: 24px;
	}
	.hrmNav_sublist+.hrmNav_sublist {
		margin-top: 1em;
	}
	.hrmNav_subHead {
		position: relative;
		margin-bottom: 1em;
		padding-left: 1em;
		font-weight: 500;
		font-size: 18px;
		line-height: 1;
	}
	.hrmNav_subHead::before {
		position: absolute;
		top: calc(50% - -2px);
		left: 0;
		content: '';
		display: block;
		width: 10px;
		height: 10px;
		background-color: #019BE3;
		transform: translateY(-50%);
	}
	.hrmNav_sublist_head {
		margin-bottom: 8px;
		font-weight: 500;
		font-size: 18px;
		line-height: 1 !important;
	}
	.hrmNav_btmlist {
		display: flex;
		gap: 0 30px;
	}
	.hrmNav_btmlist>li {
		width: auto !important;
		margin: 0 !important;
		float: none !important;
	}
	.hrmNav_btmlist .hrmNav_head {
		margin: 8px 0px !important;
	}
	.sp_nav_blue_bt+.sp_nav_orange_bt {
		margin-left: 30px;
	}
	.sp_nav_blue_bt,
	.sp_nav_orange_bt {
		width: 34.375%;
    	float: left;
	}
	.sp_nav_orange_bt a {
	    margin: 0 10px 25px 0;
	    width: 100%;
	    font-size: 1rem;
	}
}
.hrm_menu--opened #hrm_menu_parents.hrmNav {
	z-index: 1000;
}