@import url(font.css);

html{font-size: 62.5%;overflow-x: hidden;}
input[type="submit"] {
  -webkit-appearance: none;
  border-radius: 0;
}
a{text-decoration: none;}
a:link, a:visited:link, a:visited{color:#000;text-decoration:none;}
a:hover,a:visited:hover{text-decoration:none;}
figure {margin: 0;}
img{width: 100%;}



/*----common----*/
body{color: #000;font-weight: 400;font-style: normal;font-size: 1.6rem;font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3',游ゴシック, "Yu Gothic", Meiryo, メイリオ, Osaka, 'MS PGothic', arial, helvetica, sans-serif;
}
section{padding: 60px 0;    min-width: 980px;}
.sp{display: none;}
.inner {width: 980px; margin: 0 auto;}
.inner.typeMin {width: 700px;}
.title{text-align: center;margin-bottom: 2em;}
.inner h2,.inner h3 {font-size: 2.8rem;line-height: 4rem; font-weight: bold; text-align: center;}
.inner h2{margin-bottom: 60px;}
.title p {font-size: 24px;}
.btn{background: #f15055;color: #fff;}
.bg_g{background: #f4f5f7;}
.under{background: linear-gradient(transparent 90%, #f15055 90%);}

/*----header----*/
#sp_header{display: none;}
header {
	position: fixed;
	width: 100%;
	top: 0;
	left: 0;
	background: #fff;
	z-index: 100;
}
header .hd_top {background: #000;}
header .hd_top p {width: 980px; margin: 0 auto;font-size: 1.4rem; font-weight: bold; color: #fff;}
header .inner{
	display: flex;
	margin: 1em auto;
}
header h1{
	display: inline-block;
	width: 140px;
	flex-shrink: 0;
	margin-right: 2em;
}
header h1 img{width: 100%;}
header nav {display: flex;width: 100%;}
header nav .menu{margin: auto 0 auto auto;}
header nav .menu li{
	display: inline-block;
	margin-right: 1em;
	font-weight: bold;
}
header nav .btn {
	display: inline-block;
	padding: 0.5em 1.5em;
	margin-left: 2em;
	color: #fff;
	font-weight: bold;

}
header nav .btn:hover{cursor: pointer;position:relative;background: #e23b40;}

/*----main----*/
#mainV{
	/*height: 450px;*/
	padding: 0;
	margin: 6em auto 0;
	/* background: url(../img/mv_bg.jpg) no-repeat;
	background-size: cover;
	background-position: top center; */
}

#mainV .inner_wrap {background: #f4f5f7;}
.text_box01 .emb{
	width: 10%;
    position: absolute;
    bottom: 0;
    left: 1em;
}
.main_box_wrap {
	width: 36%;
}
.slider-wrapper {
	width: 64%;
}
.siteBox_wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	width: 100%;
}

.siteBox_wrap p {
	background: #e23b40;
	color: #fff;
	padding: 0.3em;
	width: 48%;
	font-size: 1.8rem;
	text-align: center;
}

.top_text01 {
	color: #000;
	font-size: 2.9rem;
	font-weight: bold;
	text-align: justify;
	line-height: 1;
	margin: 0.5em 0 0.7em;
}

.top_text02 {
	color: #e23b40;
	font-size: 2rem;
	letter-spacing: 0.01em;
	font-weight: 600;
	line-height: 1.5;
	text-align: justify;
}
.top_text02 span {font-size: 3rem;font-weight: 700;}
.top_text02.no2 {letter-spacing: -1px;}
h2.top_text02 {margin-bottom: 0.25em;}

.top_text03 {
	font-weight: 900;
	font-size: 6.4rem;
	line-height: 1;
	margin: 0.3em 0 0.2em;
}


/* top_slider */
#mainV .inner {
	position: relative;
	width: 980px;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

@keyframes progress {
0%{
	width:0;
}
100% {
	width:100%;
}
}

/*TOP企業ロゴ*/
#top_logo {background: #fff;padding: 16px 0;}
#top_logo ul{width: 100%;max-width:1480px;min-width:980px;}
#top_logo li {margin:0 16px;}
#top_logo li img{height: 100px;width: auto;margin: 0 auto;}
.logo_slide{display:none;}
.logo_slide.slick-initialized{display:block;}
#top_logo figure{
list-style-type:none;
width: 100%;
height: auto;
position: relative;
}

#top_logo figure:before {
content: "";
display: block;
padding-top: 100%; 
}

#top_logo figure span{
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
text-align: center;
box-sizing: border-box;
-moz-box-sizing: border-box;
-webkit-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
}

#top_logo figure span:before{
content: "";
height: 100%;
vertical-align: middle;
width: 0px;
display: inline-block;
}

#top_logo figure span > *{
vertical-align: middle;
display: inline-block;
}

#top_logo span img{
max-width: 100%;
height: auto;
max-height: 100%;
object-fit: contain;
}

.top_news {background: #f4f5f7;position:relative;min-width: 980px;}
.top_news .tag {
	top: -1px;
	position: relative;
	display: inline-block;
	height: 2rem;
	line-height: 2.2rem;
	box-sizing: border-box;
	margin-right: 1em;
	background: #000;
	color: #fff;
	font-size: 1.2rem;
    padding: 0 1.4em;
}
.top_news .tag:before {
	position: absolute;
	content: "";
	top: 0;
	right: -1rem;
	width: 0;
	height: 0;
	border-left: 1rem solid #000;
	border-top: 1rem solid transparent;
	border-bottom: 1rem solid transparent;
}
.top_news .tag span{display: block;margin: -1px 0 0 0;}
.top_news time{margin-right: 1em;}
.top_news ul {display: inline-block;  margin: 0 auto;padding: 0.5em 0;}
.top_news ul li{display:flex;}
.top_news p{display: inline-block;width: 740px;height: 2rem; white-space: nowrap;text-overflow: ellipsis;overflow: hidden;}


/*----sample----*/
#sample h2 {
	font-size: 2.8rem;
	line-height: 4rem;
	font-weight: bold;
	text-align: center;
	padding: 0 0 60px 0;
}
#sample h3 {margin: 0.5em 0;}
#sample h3 span{font-size:1.8rem;display: block;}
#sample h5 {font-size: 1.4rem;text-align: left;margin-top: 1em;}
#sample h5 b{background: #000;color:#fff;padding: 0.25em 0.6em 0.25em 0.4em;margin-right: 0.5em;}
.tab-area {
	display: flex;
	border: 2px solid #464748;
	cursor: pointer;
	width: 25%;
	margin: 0 auto;
}
.tab {
	width: 50%;
	padding: 5px;
	text-align: center;
	background-color: #f4f5f7;
	color: #b2b2b3;
}
.tab:first-child {
	border-right: 2px solid #464748;
}
.tab.active {
	background-color: #fff;
	color: #464748;
}
.panel {
	display: none;
	text-align: center;
}
.panel.active {
	display: block;
}


/*----about----*/
#about {padding-bottom: 0;position:relative;}
#about h2{margin-bottom: 0.5em;text-align:center;}
#about h5{font-size:1.4rem;text-align:left;margin-bottom: 3em;}
#about .title {margin-bottom: 5em;}
#about ul.inst_list{
	display: flex;
	margin-bottom: 5em;
	justify-content: space-between;
	flex-wrap: wrap;
}
#about ul.inst_list li{width: 80px;}
#about .bg_g .inner {padding:80px 0 ;}
#about .inner>h3 {padding: 0 0 80px 0;}
#about ul.use_list {display: flex; flex-wrap: wrap;}
#about ul.use_list li {
	width: 100%;
	display: flex;
	padding: 1em;
	margin-bottom: 2em;
	box-sizing: border-box;
	border-radius: 24px;
	background: #fff;
}
#about ul.use_list li.borderGreen {
	border: 6px solid #04c755;
}
#about ul.use_list figure {
	flex-basis: 253px;
	margin: 1em 3em 1em 2em;
	flex-shrink:0;
}
#about ul.use_list div{margin: auto 1em auto 0;text-align: left;}
#about ul.use_list div h3{margin-bottom: 0.5em;text-align: left;}
#about ul.use_list li.typeMin{
	width: 30%;
	flex-wrap: wrap;
	padding: 1em 2em 2em;
	margin: 1em;
	justify-content: center;
}
#about ul.use_list li.typeMin figure{flex-basis: 60%;margin: 0;}
#about ul.use_list li.typeMin p{font-size: 1.4rem;font-weight: bold;}
#about .uselist2{display:flex;}
#about .uselist2 {
display: flex;
width: 100%;
margin: 2em auto 2em;
}
#about .uselist2 li {display: flex; flex-direction: column; padding: 0 3em; text-align: center;}
#about .uselist2 li div {margin-top: auto;}
#about .uselist2 li img {width: 40%; margin: 0 auto 2em;}
#about .uselist2 li .red {color: #f15055;font-weight: bold;}
#about .uselist2 li:not(:last-child) {border-right: 1px solid #bbbcbe;}
#about .uselist2 li:first-child .red {font-size: 2.6rem;}
#about .uselist2 li .red span {font-size: 4.6rem;}

#about .smallText {
	font-size: 80%;
	padding-left: 1em;
	text-indent: -1em;
	margin-top: 0.5em;
}


/*----price----*/
#price .price_list{display:flex;align-items:stretch;    justify-content: space-between;flex-wrap: wrap;}
#price .price_list>dl.inithial {display: ;flex-wrap:wrap; width: 25%; margin-bottom: 1em; border: 1px solid #000;}
#price .price_list>dl.inithial dt{height: 82px;display:flex;justify-content: center;align-items: center;}
#price .price_list>dl.running {display:flex;flex-wrap:wrap; width: 70%; margin-bottom: 1em; border: 1px solid #000;}
#price .price_list>dl.running >dt{width: 100%;}
#price .price_list>dl.running >dl{width: 50%;}
#price .price_list>dl.running >dl:last-child >dd{border-left:1px dotted #999;}
#price .inner >h2{margin-bottom: 0.75em;}
#price .inner >h3{font-size:2.8rem;}
#price .inner >p{font-size:1.4rem;margin-bottom: 2em;color:red;}

#price dl{display:flex;flex-wrap:wrap;justify-content:space-between;;width: 100%;margin-bottom: 2em;}
#price dl dt:nth-child(1) {width: 32%;border-bottom:3px solid #000;text-align:center;font-size:2rem;background: #000;color:#fff;padding: 0.5em 0;}
#price dl dt:nth-child(2) {width: 64%;border-bottom:3px solid #000;text-align:center;font-size:2rem;background: #000;color:#fff;padding: 0.5em 0;}
#price dl dd:nth-child(3) {width: 32%;padding: 1em 0;text-align: center;    background: #fff;}
#price dl dd:nth-child(4) {width: 64%;padding: 1em 0;    background: #fff;}
#price dl dd:nth-child(4) > ul{display:flex;flex-wrap:wrap;width: 100%;justify-content:center;}
#price dl dd:nth-child(4) > ul > li:nth-child(1) {width: ;position:relative;padding-right: 4rem;;}
#price dl dd:nth-child(4) > ul > li:nth-child(1):after{display:block;content:"＋";position:absolute;right:0;top:0;bottom:0;margin: auto;font-size:4rem;}
#price dl dd:nth-child(4) > ul > li:nth-child(2) {width: 50%;}
#price dl dd:nth-child(4) > ul > li:nth-child(2) >ol{display:flex;flex-wrap:wrap;width: 100%;margin: 0;align-items:center;}
#price dl dd:nth-child(4) > ul > li:nth-child(2) >ol li:nth-child(1){width: 25%;}
#price dl dd:nth-child(4) > ul > li:nth-child(2) >ol li:nth-child(2){width: 75%;}
#price dl dd:nth-child(4) > ul > li:nth-child(2) >ol li span{font-size:1.1rem;line-height:1.4;    display: inherit;}
#price b{font-size:4rem;}


#price p{text-align: center;font-size: 1.2rem;}
#price a{color:#2285d1}
#price a{font-size: 1.2rem;border-bottom:1px solid #2285d1;}
#price p.atn{text-align: right;width: 100%;}

#price .notes{margin: 0 auto 1em;}
#price .notes h3{font-size:1.8rem;margin-bottom: 1em;}
#price .notes li{text-align:left;font-size:1.5rem;line-height:1.5;margin-bottom: 0.85em;;}
#price .notes b{font-size:1.6rem;}

/*----news----*/
#news ul{display: block;margin: 0 auto;height: 50em;overflow: scroll;}
#news ul li{display: flex; margin-bottom: 1em;padding-bottom: 1em; border-bottom: 1px solid #bbbcbe;}
#news ul li a{display: flex;}
#news ul li:last-child{border-bottom: none;}
#news ul li time {margin-right: 2em;}
#news ul li p {}



/*----form----*/
#contact form{width: 90%; margin: 0 auto;}
#contact form>div {
	display: flex;
	margin-bottom: 1.5em;
}
#contact form>div:last-child{display: block;text-align: center;}
#contact form>div label{
	flex-basis: 260px;
	flex-shrink: 0;
	margin-bottom: 0.5em;
    display: block;
}
#contact form>div>span {flex-grow:1;}
#contact form>div label .must{
	color: #b70000;
}
#contact form>div input,
#contact form>div textarea{
	width: 100%;
	padding: 5px;
	border: none;
	box-sizing: border-box;
}
#contact form div select{padding: 0.5em;border-radius:5px;}
#contact input.btn{
	display: inline-block;
	width: 40%;
	padding: 1.5em 0;
	margin-top: 2em;
	color: #fff;
	margin: 0 auto;
	background: #f15055;border-radius: 10px;
}
#contact input.btn:hover{cursor: pointer;position:relative;background: #e23b40;}
#contact p{margin-bottom: 4em;}
.page #contact input:not(.btn),
.page #contact textarea
{background: #f3f3f3;}
.page #contact div.sumit_btn{padding-top: 7em;}
.page #contact div input.return{background: #ccc;}
.check #contact .sumit_btn{justify-content:center;}
.check #contact input.btn{margin:0 1em}
.thanks #contact p{margin: 0;}
.thanks #contact .inner >div{}
.thanks #contact .btn{display: block;
    width: 40%;
    padding: 1.5em 0;
    margin-top: 3em;
    color: #fff;
    margin: 4em auto 0;
    background: #f15055;
    border-radius: 10px;
    text-align: center;}
    

/*----footer----*/
footer{
	    min-width: 980px;
	padding: 2em 0 1em;
	text-align: center;
	font-size: 14px;
	background-color: #000;
}
footer .logo{display: inline-block; width: 140px;margin-bottom: 2em;}
footer ul {
	display: flex;
	margin-bottom: 2em;
	justify-content: center;
}
footer ul li {margin:0 10px;}
footer ul li a{ color: #fff!important; }
footer p{color: #fff;font-size:1rem;}




/*----page----*/
.pages section{margin-top: 5em;}
.pages section .entry-title{padding: 1em 0 ; font-size: 2.8rem; line-height: 4rem;font-weight: bold;text-align: ;margin-bottom: 1em;}
.pages section p,.pages section li,.pages section ,.pages section td,.pages section th{font-size: 1.4rem;line-height:1.8;}

.company h2{margin: 2em 0;}
.company h4{margin-bottom: 1em;}
.company table{margin-bottom: 2em;width: 100%;}
.company table th{background: #e6e6e6;padding: 0.75em;border:1px solid #ccc;}
.company table td,#law table th{padding: 0.75em;border:1px solid #ccc;font-size:1.4rem;}
.company table td a{color:#f15055;text-decoration:none;}
.company table td a:hover{text-decoration:underline;}
.company table td a:after{content: "\e90a";font-family: 'sb';margin-left: 0.25em;}
.law h2{margin: 2em 0;}
.law h4{margin-bottom: 1em;}
.law table{margin-bottom: 2em;width: 100%;}
.law table th{background: #e6e6e6;padding: 0.75em;border:1px solid #ccc;}
.law table td,#law table th{padding: 0.75em;border:1px solid #ccc;font-size:1.4rem;}
.law table td a{color:#f15055;text-decoration:none;}
.law table td a:hover{text-decoration:underline;}

.treaty p{margin-bottom: 1em;}
.treaty h2{margin: 2em 0;text-align:left;font-size: 2.2rem;border-bottom: 1px solid #ccc;;}
.treaty h3{margin: 1em 0;text-align:left;font-size: 1.6rem;}
.treaty ul{}
.treaty ul li{margin-bottom: 0.5em;}
.treaty dl{margin-left: 2em;}
.treaty dl dd{margin-bottom: 0.5em;}

.privacy p{margin-bottom: 1em;}
.privacy h2{margin: 2em 0;text-align:left;font-size: 2.2rem;border-bottom: 1px solid #ccc;;}
.privacy h3{margin: 1em 0;text-align:left;font-size: 1.6rem;}
.privacy ul{}
.privacy ul li{margin-bottom: 0.5em;}
.privacy dl{margin-left: 2em;}
.privacy dl dd{margin-bottom: 0.5em;}

.faq p{margin-bottom: 3em;}
.faq h2{margin: 2em 0;text-align:left;font-size: 2.2rem;border-bottom: 1px solid #ccc;;}
.faq h3{margin: 1em 0;text-align:left;font-size: 1.6rem;border-bottom: 1px solid #efefef;}

.recruit h2{margin: 2em 0;}
.recruit h4{margin-bottom: 1em;}
.recruit table{margin-bottom: 2em;width: 100%;}
.recruit table th{background: #e6e6e6;padding: 0.75em;border:1px solid #ccc;}
.recruit table td,#law table th{padding: 0.75em;border:1px solid #ccc;font-size:1.4rem;}
.recruit table td a{color:#f15055;text-decoration:none;}
.recruit table td a:hover{text-decoration:underline;}

.error404{}
.single-news{}
.error404 figure,
.single-news figure{width: 30%;margin:0 auto;margin-bottom: 2em;}
.error404 h2,
.single-news h2{font-size:5rem;margin-bottom: 0.5em;}
.error404 p,
.single-news p{text-align:center;}
.error404 main,
.single-news main{padding:5rem 0 0;}

/*----管理バー調整----*/
html{margin:0 !important;}
#wpadminbar + .wrapper > header{top:32px;}
#wpadminbar + .wrapper > main{top:32px;position:relative;}
#wpadminbar + .wrapper > footer{position:relative;}

/*LINE*/
#line{background: ;margin: 0;padding: 0;position:relative;}
#line a{background:#04c755;display:block;font-weight:bold;color:#fff;padding: 0.5em;text-align:center;}
#line a:hover{background:#05ad4a;}
.lineicon{width: 100px;    text-align: center;margin: 0 auto 1em;}

section#xp_fadelayer_feed_sample{margin: 0;}

/*フローティング*/
.widget{margin:0;padding: 0;min-width: max-content;}
.widget-title{display:none;}
#floating{position:fixed;bottom:0;z-index: 100;width: 100%;text-align:center;}
#floating >div{position:relative;display:inline-block;}
#floating >div .close{
	border-radius:50%;
	padding: 0.2em;
	width: 1.4em;
	height: 1.4em;
	line-height: 1em;
	margin: 0;
	position: absolute;
	top: -10px;
	right: -10px;
	cursor: pointer;
	z-index: 10;
	background: #fff;
}
#floating img {
	max-width: 800px!important;
}
.floating_pc{display:block;}
.floating_sp{display:none;}


/*レスポンシブ*********************************************************************************************************************************************************************************************************************************************************************************************************************************/
@media screen and (max-width: 768px){
html {overflow-x: hidden!important;}
body{font-size: 14px;overflow-x: hidden!important;}
section {padding: 10vw 0;    min-width: auto;}
.pc{display: none;}
.sp{display: block;}
.inner {width: 100%;padding: 0 5%;box-sizing: border-box;}
.inner.typeMin{width: 100%;}
.inner h2{margin-bottom: 10vw;}
.inner h2,.inner h3{font-size: 2rem;line-height: 3rem;}
.inner h2{font-size:5.7vw;line-height:1.5em;}
.inner h3{font-size:4.7vw;line-height:1.5em;}
.title h2 {height: 75px;}
.title p {font-size: 18px;}
#mainV{ width:100%;}
#mainV img{ width:100%;}

/*----header----*/
header{display: none;}
#sp_header{display: block;}
#sp_header a:hover{text-decoration: none;}
#sp_header h1{
	position: relative;
	width: 100%;
	padding-top: 0.5em;
	text-align: center;
	background: #fff;
	 z-index: 3;
}
#sp_header h1 a{
	display: inline-block;
	width: 40%;
	margin: 0 auto;
}
#sp_header h1 img{width: 70%;
    padding: 0.3em 0 0 0;}
#mainV{
	    padding-top: 42px;
    background: none;
    background-position: calc(50% + 160px) -70px;
    background-size: auto 80%;
}
/*.drawer-hamburger {
	margin-top: 0.5em;
}*/
#sp_header .drawer-nav{	background: #000;width: 100%;    z-index: 4;padding: 10%;}
.drawer--left .drawer-nav{left: -100%;}
.drawer-overlay{ background: rgba(0,0,0,0.5)!important;}
.drawer--left.drawer-open .drawer-hamburger{left: 85vw;top: 1.5em;z-index: 4;}
#sp_header .drawer-hamburger {padding: 1em; width: 2.5rem;z-index: 5;}
#sp_header .drawer-hamburger-icon, 
#sp_header .drawer-hamburger-icon::after, 
#sp_header .drawer-hamburger-icon::before
{background-color: #000;}

#sp_header .drawer-hamburger-icon::before{top: -5px;}
#sp_header .drawer-hamburger-icon::after{top: 5px;}


.drawer-open #sp_header .drawer-hamburger-icon{background: transparent;}
.drawer-open #sp_header .drawer-hamburger-icon::after, 
.drawer-open #sp_header .drawer-hamburger-icon::before
{background-color: #fff;}
.drawer-open #sp_header .drawer-hamburger-icon::before{
	top: -4px;
}
.drawer-open #sp_header .drawer-hamburger-icon::after{
	top: -4px;
}
.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before{height: 1px;}

/*#sp_header .drawer-menu{padding-top: 2em;}*/
#sp_header .drawer-menu-item.logo img{width: 50%;}
#sp_header .drawer-menu li:first-child {padding-top: 1em;}
#sp_header .drawer-menu-item{
	font-size:1.4rem;
	padding: 0.75em 0;
	border-bottom: 1px solid #404040;
	color: #fff;
}
#sp_header li:first-child .drawer-menu-item{
	border-bottom: none;
}
#sp_header .drawer-menu-item.sns{
	width: 20px;
	margin-top: 1em;
	border: none;
}
#sp_header .drawer-menu-item.sns img{
	width: 100%;
	vertical-align: bottom;
}

.top_news {padding: 2.5vw 0 2vw 0;}
.top_news p{ width: 100%; white-space: normal; overflow: visible;}


/*----mainV----*/
#mainV {margin: 0;}
#mainV .inner {width: 100%;}
#mainV .main_box{padding: 0;width: 100%;background: none;}
#mainV .main_box div.text {padding: 2vw 0 0; margin-bottom: 1em; text-align: center;}
#mainV .main_box div.text p{font-size: 4.5vw;margin-bottom: 0.5em;}
#mainV h2{font-size:6.7vw;line-height: 1.2;
    margin-bottom: 3vw;}
#mainV .main_box div.text div p{font-size: 1.8rem;}
#mainV .btn{font-size: 1.8rem;}
#mainV .main_box div.img{flex-basis: 80vw;margin: 0 auto;}
#mainV .main_box div.img::before{right: -5vw;top: 0;width: 35vw;height: 35vw;}
#mainV .main_box div.img video{width: 65.5vw;left: 7vw;top: 21vw;}

.text_box01 .emb{
	width: 18%;
	bottom: auto;
	left: auto;
	right: 1em;
	top: 3.5em;
}

/*----mainV slider追加----*/
#mainV .inner {
	width: 100%;
	padding-bottom: 31.5em;
	overflow: visible;
}
#mainV .inner_wrap {
	padding-bottom: 2vh;
}
div.slider_wrap {
	right: 0;
	padding: 16em 0 0;
}
#mainV .main_box div.text p {
	padding-bottom: 0;
}
#mainV h2.first {
	font-size: 5.5vw;
	margin-bottom: 0.5vw;
}
.slider .slick-dots {
	top: 38em;
	left: 0;
	width: 100%;
	padding: 0 5%;
	display: none!important;
}
ul.slider li div {
	width: auto!important;
}

ul.slider li.slick-slide {
	width: auto!important;
	margin: 0 -15px;
}
.slick-track {
	left: 0!important;
}
.text_box01 {
	display: block;
	padding: 1.3em 0 0;
	line-height: 1.35;
	text-align: center;
}
.text_box01 p {
	width: 100%;
	font-size: 4vw;
	letter-spacing: 0;
	text-align: center;
}
#mainV .main_box h1.logo {
	width: 55vw;
	margin: 0 auto;
}
.text_box02 .mv_item {
	font-size: 5.6vw;
	line-height: 1.1;
	border: 3px solid #e23b40;
    padding: 0% 0% 2%;
	border-radius: 5px;
}
.text_box02 .mv_item span {
	font-size: 3vw;
}
.text_box02 .mv_list {
	display: block!important;
	height: auto!important;
}
.slider02 .slick-track {
    padding-bottom: 0!important;
    display: block!important;
    flex-wrap: nowrap!important;
	padding: 0.5em 0;
}
.text_box02 .mv_item:first-child {
	margin-left: 0;
}
.text_box02 .mv_item:nth-child(2) {
	margin-left: 2%;
}
.text_box02 .mv_item:nth-child(3) {
	line-height: 0.7;
	padding: 4% 0 3%;
}
.text_box02 .mv_item:last-child {
	margin-right: 0;
	margin-left: 2%;
}
.slider.slick-slider {
	padding-top: 1em;
}
.slider video {
	height: 500px;
}

/*--ボタン分離--*/
#mainV .btn{padding: 1em 0;border-radius:0;}
#mainV .main_box div.text div{position:fixed;bottom:0;left:0;width: 100%;}
#mainV .main_box div.text div p{font-size:1.2rem;position: absolute;left: 0;right: 0;width: 100%; margin: auto;top: 35px;color:#fff;z-index: 3;}
#mainV .main_box div.text div p:before, #mainV .main_box div.text div p:after{position:relative;    top: -5px; display: inline-block;    background-color: #fff; }
#mainV .main_box div.text div a{position:relative;}
#mainV .main_box div.text div a:before{content: "";display: block; position: absolute;left: 0.5em; bottom: 0.6em;background: url(../img/logo3w.svg);width: 45px;height: 43px; z-index: 3;}

/*----news----*/
.top_news{min-width:auto;}
.top_news time{display:none;}
.top_news .tag{font-size:1rem;}
.top_news .tag span{margin: 0;}
.top_news ul li{display:block;}

/*----concept----*/
#concept ul li {width: 48%;margin-bottom: 2%;}
#concept .inner>p{line-height: 1.4rem;}

/*----about----*/
.tab-area {
	width: 90%;
}
#about ul li {
	width: 100%;
	padding: 0.5em;
	margin-bottom: 5%;
}
#about ul li.tab {
	margin-bottom: 0;
}
#about ul.inst_list {margin-bottom: 5vw;}
#about ul.inst_list li{width: 45%;margin-bottom: 0;}
#about .bg_g .inner{padding: 10vw 5%;}
#about .inner>h3{padding-bottom: 10vw;}
#about ul.use_list li {flex-wrap: wrap;padding: 1.8em;margin-bottom: 1.5em;}
#about ul.use_list figure {flex-basis: 100%; margin: 0 0 1em;}
#about ul.use_list li.typeMin{width: 100%;margin: 0 0 1em;display:flex;    align-items: center;    padding: 0.5em 1em;}
#about ul.use_list li.typeMin figure{flex-basis: 25%;margin-right: 5%;}
#about ul.use_list li.typeMin figure img{display:block;}
#about ul.use_list li.typeMin p{font-weight:normal;flex-basis: 70%;}
#about ul.use_list div{margin-right: 0;}


#about .uselist2 {flex-wrap:wrap;    padding: 1em;}
#about .uselist2 li:not(:last-child){border-right:none;}
#about .uselist2 li{display:flex;padding: 0;flex-direction: inherit;justify-content:space-between;width: ;}
#about .uselist2 li img{width: 20%;margin: 0;height: intrinsic;}
#about .uselist2 li div{width: 70%;    text-align: left;}
#about .uselist2 li .red span{font-size:3rem;}

#about h2{margin-bottom: 1em;}
#about h2 span{    font-size: 1.4rem;display:block;margin-left: 0;line-height:1.4;margin-top: 0.5em;}
#about h5{font-size:1.2rem;line-height:1.8;}

/*----price----*/
#price .price_list>dl.inithial{width: 100%;display:block;}
#price .price_list>dl.inithial dt{height: auto;}
#price .price_list>dl.running{width: 100%;display:block;}
#price .price_list>dl.running >dl{width: 100%;}
#price .price_list>dl.running >dl:last-child >dd{border:none;}
#price .inner >h3{    font-size: 4.7vw;}
#price dl dt {display: block; width: 100%;padding: 0.5em 0;border-right: none; border-bottom: 1px solid #000;}
#price dl dd {display: block; width: 100%;height: auto;padding: 0.5em ;}
#price .price_list{flex-wrap:wrap;}
#price dl{width: 100%;}

#price dl dt:nth-child(1){width: 100%;order:1;font-size: 1.6rem;}
#price dl dt:nth-child(2){width: 100%;order:3;font-size: 1.6rem;}
#price dl dd:nth-child(3){width: 100%;order:2;}
#price dl dd:nth-child(4){width: 100%;order:4;}
#price b{font-size:2.5rem;}
#price dl dd:nth-child(4) > ul > li:nth-child(1){width: 100%;text-align: center;padding-right: 0;}
#price dl dd:nth-child(4) > ul > li:nth-child(1):after{    position: relative;}
#price dl dd:nth-child(4) > ul > li:nth-child(2){width: 100%;}
#price dl dd:nth-child(4) > ul > li:nth-child(2) >ol{justify-content: center;}
#price dl dd:nth-child(4) > ul > li:nth-child(2) >ol li:nth-child(2){width: auto;}
#price dl dd:nth-child(4) > ul > li:nth-child(1):after{font-size: 2rem;}
#price .notes h3{margin-bottom: 1em;}
#price .notes li{font-size:1.3rem;}
#price .notes b{font-size: 1.4rem;}

/*----news----*/
#news ul{height: 30em;}
#news ul li {flex-wrap: wrap;}
#news ul li a{flex-wrap: wrap;}
#news ul li time {margin-right: 0;    display: block;
    width: 100%;}

/*----contact----*/
#contact{}
#contact form{width: 100%;}
#contact form>div{display:block;}
#contact form>div input,#contact form>div textarea
 {width: 100%; box-sizing: border-box;}
#contact form input[type="submit"]{width: 80%;    display: block;}
.page #contact .inner{padding: 0;}

.page #contact div.sumit_btn{display: flex;flex-wrap: wrap;}
.check #contact form>div label{width: 100%;background: #efefef;padding: 0.25em;margin-bottom: 0.5em;;}
.check #contact input.btn{width: 100%;margin: 0 0 0.5em 0;}
.check #contact div input.return{order:2;}
.check #contact form>div label{    display: block;}

.thanks #contact .btn{width: 80%;}

/*----footer----*/
footer {font-size: 12px;    min-width: auto;}
footer ul {flex-wrap: wrap;}

/*----page----*/
.page{margin-bottom: 0;}
.pages section{margin-top: 2em;}
.pages section .entry-title{font-size: 2rem;}



/*LINE*/
#line a{padding: 0.75em 0;}
#mainV #line{position:absolute;width: 100%;top:0}

#floating {
	bottom: 80px;
}
#floating img {
	max-width: 90vw!important;
}

.floating_pc{display:none;}
.floating_sp{display:block;}



}


@media (orientation: landscape) and (max-width: 768px){
/* デバイスが横向き、画面の横幅が 768px 以下の場合の記述 */
#mainV .main_box {
	display: flex;
	justify-content: space-around;
	align-items: center;
	width: 100%;
}
.text_box01 {
	margin: auto 0;
	margin-right: 4%;
}
.text_box01 p {
	font-size: 4vh;
}
#mainV .main_box h1.logo {
	width: 55vh;
}
.text_box02 .mv_item {
	font-size: 5.6vh;
	padding: 0% 0% 1%;
}
.text_box02 .mv_item:nth-child(3) {
	padding: 3% 0;
}
.text_box02 .mv_item span {
	font-size: 3vh;
}
div.slider_wrap {
	padding: 10em 0 0;
}
.top_news {
	margin-top: 7em;
}
}


.main_wrapper {
	width: 100%;
	overflow: hidden;
}
.video1{
  background-image: url("../mov/movie01_tmb.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  object-fit: cover;
  aspect-ratio: 1 / 2;
}
.video2{
  background-image: url("../mov/movie02_tmb.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.video3{
  background-image: url("../mov/movie03_tmb.png");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.slider{
	opacity: 0;
	transition: opacity 1s linear;
}
.slider.slick-initialized{
	opacity: 1;
}
.slider-box {
  text-align: center;
  padding: 0px 8px 56px 8px;
  width: auto;
  height: 444px;
  position: relative;
  z-index: 1;
}
.slider-box img,
.slider-box video {
  height: 100%;
  border-radius: 8px;
}
.slider-label {
  display: block;
  width: calc(100% - 22px);
  position: absolute;
  z-index: 1;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%) translateZ(0);
  font-size: 20px;
  font-weight: bold;
  color: #e23b40;
  background: #fff;
  border: 2px solid #e23b40;
  text-align: center;
  margin: 0;
  padding: 3px;
  border-radius: 6px;
}
.slick-current .slider-label {
  color: #fff;
  background: #e23b40;
}

@media screen and (max-width: 768px) {
	.siteBox_wrap {
		justify-content: center;
		width: 100%;
	}
	.siteBox_wrap p {
		width: auto;
		color: #e23b40;
		background: none;
		font-size: 6vw;
		font-weight: bold;
		padding: 0;
	}
	.text_box01 .top_text01 {
		color: #e23b40;
		font-size: 8vw;
		margin: 0;
		line-height: 1.2;
	}
	.text_box01 .top_text02 {
		font-size: 7vw;
		text-align: center;
		line-height: 1.3;
	}
	.text_box01 .top_text02 span {
		font-size: 7vw;
	}
	.text_box01 .top_text03 {
		font-size: 9vw;
		margin: 0.8em auto 0.2em;
	}
.slider-box {
	padding: 5px 5px 17px 5px;
	height: 412px;
}
.slider-label {
	width: 70%;
	font-size: 14px;
	z-index: 100;
}

#top_logo ul{min-width:100%;max-width:100%;width:100%}
#sample h2 {
	font-size: 4.7vw;
    line-height: 1.5em;
	padding-bottom: 10vw;
}
#sample h3 span {
	font-size: 1.4rem;
	display: block;
	margin-left: 0;
	line-height: 1.4;
	margin-top: 0.5em;
}
#sample h5 {
	font-size: 1.2rem;
	line-height: 1.8;
}
.main_box_wrap {
	width: 100%;
}
.slider-wrapper {
	width: 100%;
}
.slick-current .slider-label {
	/* transform: scale(1.3); */
	/* transform-origin: 215% 50%; */
	width: 100%;
	font-size: 25px;
	z-index: 100;
}
.slider-wrapper .slick-slide {
	padding-bottom: 1em;
}
.slider-box img, .slider-box video {
	position: relative;
	z-index: 1;
}
}

@media screen and (min-width: 769px) {
	.main_box_wrap {
		padding: 16px
	}
	.main_wrapper {
    width: 980px;
		margin-left: auto;
		margin-right: auto;
		padding-top: 1em;
		padding-bottom: 1em;
	}
	.main_inner {
		display: flex;
		align-items: center;
		margin-left: -16px;
		margin-right: -16px;
		position: relative;
	}
	.slider-wrapper{
		margin-left: auto;
		padding: 8px;
	}
	.slick-list {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
  .slider .slick-track {
    width: auto !important;
    transform: none !important;

  }

}