@charset "UTF-8";

/*!
Theme Name: Cocoon Child-VQ
Template:   cocoon-master
Version:    1.1.3
*/


/************************************
** 子テーマ用のスタイル
************************************/



/*コンテンツ全体*/


body,
body a{
	font-family: "游ゴシック",YuGothic,"ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,Osaka,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}

body a{
	cursor: pointer;
}

h1,h2,h3,h4{
	font-family:"游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}



img{
	vertical-align: middle;
}

.content {
    max-width: 1000px;
    margin: 0 auto;
}


.page-template-0front-page .content {
	max-width:100%;
}

.main{
	padding:0;
	
}

.wrap {
    width: 100%;
    margin: 0 auto;
}
ul{
	padding:0;
}
li{
	list-style:none;
}

.page-template-0front-page .header {
    color: #000;
    z-index: 1;
    height: auto;

}
.page-template-0front-page .header a{
color:#333;
}
.logo-image {
    padding: 10px 0;
}
.logo-image span, .logo-image a {
    display: inline-block;
    max-width: 75px;
	font-size:1px;
}

.logo-text {
    padding:0;
}


.page-template-0front-page .header  .tagline{
	margin:0;
}


#header-container-in{
    width: 100%;
    z-index: 1;
	padding:10px 40px;
	position:relative;
	display:flex;
	align-items:center;
	justify-content: space-between;
}


.page-template-0front-page .navi {
	background:none;
	width:100%;
}

.navi-in > ul {
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    justify-content: right;
    text-align: center;
}

.navi-in > ul li{
	display: block;
    width: auto;
    height: auto;
    line-height: 55px;
    position: relative;
}

.navi-in a{
    color: #333;
    font-weight: 400;
	padding:0 20px;
	font-family:"游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
.navi-in a:hover{
	
}

.is-header-fixed .header-container{
	    background: rgba(255,255,255,0.8);
}



.slider-logo-image{
	position: absolute;
    z-index: 1;
    width: 390px;
    top: 30vh;
    left: 15vw;
}

.insta{
	position:absolute;
	width:20px;
	top:50%;
	right:20px;
	z-index:1;
}

.slider-contact-button{
	font-weight: 300;
    font-family: 'Montserrat', sans-serif;
    position: absolute;
    top: 5%;
    right: 20px;
    color: #fff;
    border: 1px solid #fff;
    padding: 10px 50px;
    border-radius: 60px;
    text-decoration: none;
    display: inline-block;
    z-index: 1;
	transition:0.5s;
	z-index:2;
}

.slider-contact-button:hover{
	background:#333;
	color:#fff;
	border-color:#333;
}


.original-page h2{
	font-family: YuMincho,'Yu Mincho',serif;
    font-weight: 300;
    font-size: 32px;
	line-height: 115%;
	margin-bottom:20px;
	position:relative;
}

.original-page h2 span{
font-size: 50%;
    line-height: 100%;
    display: block;
    font-weight: 600;
    color: #000;
    margin-bottom: 7px;
	margin-top:5px;

}


.sec1000{
	max-width:1000px;
	margin:0 auto;
}

/*ボタンデザイン*/
.button007{
		text-align:center;
}
.button007 a {
	background: rgb(0,113,188);
    border: 2px solid rgb(0,113,188);
    position: relative;
    display: inline-block;
    margin: 0 auto;
    max-width: 100%;
    padding: 7px 70px;
    color: #fff;
    transition: 0.3s ease-in-out;
    font-weight: 500;
    text-decoration: none;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 16px;
    border-radius: 11px;
}

.button007 a:hover {
    background: #fff;
    color: rgb(0,113,188);
}



/*ボタンデザイン　ここまで*/







/*トップページ*/


/*vegasスライダー*/
#vegas-backer{
	width:100%;
	overflow:hidden;
}
#vegas-outer{
position: relative;
    margin: 0 auto;
    padding-top: 0;
    padding-left: 0;
border-radius: 0 0 50% 50%;
    overflow: hidden;
    width: 150%;
    margin-left: -25%;
}




#vegas-inner{
	margin-left:0;
	position:relative;
}


#vegas{
    width: 100%;
    height: 88vh;
    min-height: 740px;
}
/*
#vegas-outer:before{
content: "";
    width: 100%;
    height: 91vh;
    position: absolute;
    background: #56a6f7;
    top: 0;
    left: 0;
}
*/



.vegas-slide-inner{
	background-position:center right!important;
}



.slider-catch{
    font-size: 137px;
    position: absolute;
    top: 30px;
    left: 18%;
    z-index: 2;
    font-weight: 900;
    color: #fff;
    line-height: 88%;
    font-family: メイリオ;
}


.slider-text{
    font-size: 40px;
    font-weight: normal;
    color: #fff;
    line-height: 88%;
    font-family: メイリオ;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    position: absolute;
    top: 25%;
    right: 53vw;
    color: #fff;
    font-family: YuMincho,'Yu Mincho',serif;
    text-shadow: 3px 3px 5px #333;
    z-index: 1;
}


.delay-time-slidertext{
	animation-delay: 0.8s;
	
}
/*vegasスライダー　ここまで*/




/*フロントページ　mv*/

.mv{
	    display: flex;
    justify-content: end;
	position:relative;
}
.mv-in{
background: url(/wp-content/uploads/2023/12/mv-scaled.jpg);
    background-size: cover;
    background-position: center;
    height: 650px;
	width:100%;
	/*max-width:1200px;*/
}


/*半透明グラデーション
.mv-in:after{
	content:"";
	width:50%;
	height:100%;
	display:block;
	position:absolute;
	top:0;
  background: linear-gradient(to right, #fff, rgba(255,255,255,.0));
	z-index:0;
}
*/


.mv-in-text{
	width: 100%;
    max-width: 1120px;
    z-index: 1;
    position: absolute;
	padding-left:3%;
    top: 50%;
    left: 0;
    transform: translate(0%, -50%);
    /* -webkit-transform: translate(-50%, -50%); */
    -ms-transform: translate(-50%, -50%);
	/*
	width: 100%;
    max-width: 1120px;
    z-index: 1;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	*/
}

.phrase{
display: inline-block;
    float: right;
    margin-top: -66px;
    color: #fff;
    position: relative;
    z-index: 0;
    font-weight: bold;
    text-shadow: 0 0 2px #666;
	font-size:18px;
}



/*フロントページ　mv ここまで*/

/*sec1*/
.sec1{
	padding:100px 0;
}

.sec1-text{

}
.sec1-text ul{
	margin-bottom:50px;
}
.sec1-text ul li{
    list-style: none;
    padding: 6px 0;
    margin: 6px 0;
    border-bottom: 1px solid #efefef;
	display:flex;
}

.sec1-text ul li a{
	color:#333;
	text-decoration:none;
	margin-left:50px;
	padding-left:30px;
	border-left:1px solid #ddd;
	    display: inline-flex;
    width: 100%;
	cursor: pointer;
	transition:0.5s;
	position:relative;
	}
.sec1-text ul li a:hover{
	color:#529be7;
}


.sec1-text ul li a:after{
content: "";
    position: absolute;
    right: 10px;
    top: 8px;
    width: 10px;
    height: 10px;
    border-top: 2px solid #bbb;
    border-right: 2px solid #bbb;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}
.sec1-text .button007{
	text-align:center;
}
.sec1-text .button007 a{
	border:1px solid #333;
	color:#333;
	background:#fff;
}
.sec1-text .button007 a:hover{
	background:#333;
	color:#fff;
}


.sec1-text .button007 a:before,
.sec1-text .button007 a:after{
	display:none;
}

.sec1-text h2{
	position:relative;
	z-index:1;
}

.sec1-text h2:after{
content: "";
    position: absolute;
    top: -18px;
    left: -17px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    display: inline-block;
    background: #f3f3f3;
    z-index: -1;
}

/*sec1 ここまで*/



/*sec2*/

.sec2{
background: url(/wp-content/uploads/2023/12/sec4-back.jpg);
    background-position: 50% 65%;
	background-size: cover;
    text-align: center;
}

.sec2-in{
	padding: 170px 0;
	background:rgba(0,0,0,.5);
	color:#fff;
}

.sec2-content{
	    max-width: 450px;
    border: 1px solid #fff;
    padding: 50px;
    color: #fff;
    margin: 0 auto;
}


.sec2-in p{
	margin-bottom:40px;
}

.sec2 h2{
	text-align:center;
	color:#fff;
}

.sec2-in .button007 a{
	text-align:center;
	border-color:#fff;
	color:#333;
	background:#fff;
}
.sec2-in .button007 a:hover{
	color:#fff;
	background:none;
}

/*sec2　ここまで*/

/*sec3*/

.sec3{
	padding:120px 0;
	text-align:center;
	background:#f9f9f9;
}
.sec3-in h2{
	text-align:center;
	display:inline-block;
	width:auto;
}


.sec3-in h2:after{
content: "";
    position: absolute;
    top: 0;
    left: 29%;
    width: 63px;
    height: 63px;
    border-radius: 50%;
    display: inline-block;
    background: #d1e9ff;
    z-index: -1;
}

.sec3-in ul{
	display:flex;
	width:100%;
	justify-content: center;
    align-items: center;
	padding:0;
	max-width:1350px;
	margin:50px auto;
	

}

.sec3-in ul li{
list-style: none;
    margin: 0.5%;
    background: #fff;
    border-radius: 18px;
    padding: 28px;
    min-height: 279px;
    width: 33%;
}

.sec3-in ul li h3{
	margin-top:15px;
		text-align:left;
	font-weight:normal;
	font-size:110%;
}

.sec3-in ul li img{
height: auto;
    width: 146px;
    margin-bottom: 20px;
    object-fit: cover;
}

.sec3-in ul li p{
    text-align: left;
    line-height: 145%;
}


/*sec3 ここまで*/

/*sec4*/
.sec4-in{
	display:flex;
	align-items:center;
	justify-content:center;
	padding:70px 10px;
}

.sec4-text{
	width:100%;
}
.sec4-text .button007{
	display:inline-block;
	margin-top:25px;
}

.sec4-text .button007 a{
	background:#999;
	border-color:#999;
}

.sec4-text .button007 a:hover{
	background:#fff;
	color:#999;
}


.sec4-in img{
	width:50%;
}
.sec4-text{
	padding:25px;
	padding-left: 45px;
}
.sec4-text h2{
	position:relative;
	z-index:1;
	color:rgb(0,113,188);
}
.sec4-text h2 span{
	color:rgb(0,113,188);
}

.sec4-text h2:after{
    content: "";
    position: absolute;
    top: 0;
    left: -17px;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    display: inline-block;
    background: #f3f3f3;
    z-index: -1;
}


/*sec4ここまで*/


/*sec5*/

.sec5-in{
	padding:20px 10px 0;
}
.sec5-in h2{
	font-weight:bold;
	font-family:メイリオ;
	text-align:center;
	font-size:25px;
}

.sec5-in h2:after{
	content:"";
	width:55px;
	height:1px;
	background:#000;
	display:block;
	margin:20px auto 40px;
}


.sec5-in table tbody tr,
.sec5-in table tbody td{
	background:none;
}

.sec5-in table tbody th{
	background:rgba(206,224,227,.92);
	width:20%;
	padding:19px 8px; 
}

.sec5-in table tbody td{
	padding: 19px;
}
.sec5-in table tbody th,
.sec5-in table tbody td{
	border:none;
	border:3px solid #fff;
}

.sec5-in .button007{
	margin-top:70px;
}

/*sec5ここまで*/












/*順番にふわっと*/

.delay-time02{
animation-delay: 0.2s;
}

.delay-time04{
animation-delay: 0.4s;
}

/*==================================================
スタート時は要素自体を透過0にするためのopacity:0;を指定する
===================================*/

.box{
	opacity: 0;
}

/*==================================================
動き自体の指定：今回は「ふわっ」
===================================*/
.fadeUp {
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}

/*順番にふわっと ここまで*/

/*sec3ここまで*/



/* sec4 */


/*sec4 ここまで*/

/*sec5*/




/*sec5 ここまで*/


/*sec6*/

.sec6-in{
	max-width:1350px;
	margin:0 auto;
}

.sec6-in ul{
	display:flex;
}

ul.sec6-list1{
	margin-bottom:50px;
}


.sec6-in ul.sec6-list1 li{
	width:100%;
	text-align:center;
	height:auto;
}


.sec6-in ul.sec6-list1 li:first-child{
	margin-right:15px;
	background:url(/wp-content/uploads/2023/0/sec6-1.jpg);
	background-size: cover;
    background-position: center;
}

.sec6-in ul.sec6-list1 li:nth-child(2){
	background:url(/wp-content/uploads/2023/07/sec6-2.jpg);
	background-size: cover;
    background-position: center;
}

.sec6-in ul.sec6-list1 li:nth-child(3){
	background:url(/wp-content/uploads/2023/07/sec6-3.jpg);
	background-size: cover;
    background-position: center;
	margin-left:15px;
}

.sec6-in ul.sec6-list1 li a{
    padding: 66px 15px;
    width: 100%;
    display: inline-block;
    background: rgba(0,0,0,.3);
    color: #fff;
    transition: 0.4s;
    text-decoration: none;
    font-weight: bold;
    font-size: 30px;
	text-shadow:0 0 5px #333;
}

.sec6-in ul.sec6-list1 li a:hover{
	background:rgba(255,255,255,.2);
}

.sec6-in ul.sec6-list1 li a span{
	font-size: 70%;
    display: block;
    line-height: 90%;
}



.salon-info{
	display:flex;
	background:#f1f1f1;
	justify-content: center;
    align-items: center;
	padding: 50px 80px;
}

.salon-info img{
	width:150px;
	margin-bottom:8px;
}


.salon-info-text{
	width:50%;
	padding:80px;
	text-align:center;
}
.salon-info-image{
	width:50%;
	height:300px;
}
.salon-info-image img{
	object-fit:cover;
	width:100%;
	height:100%;
	margin:0;
	
}


/* sec4 ここまで*/



/*トップページ　ここまで*/


/*下層ページ共通*/
.page-template-1ori-page .content,
.page-template-2ori-page .content,
.page-template-3ori-page .content,
.page-template-4ori-page .content{
	max-width:100%;
}

.page-header{
	height:400px;
	display:flex;
	background:#ddd;
	align-items:center;
	position:relative;
}
.page-header-back{
	width:100%;
	height:100%;
	display:block;
	position:absolute;
	top:0;
	left:0;
	background:linear-gradient(to bottom right, rgb(0 0 0 / 70%), rgba(0,160,188,.4));
}

.page-header h1{
	width: 100%;
	max-width:1000px;
	margin:0 auto;
	text-align:left;
	font-size:50px;
	line-height:100%;
	z-index:2;
	color:#fff;
	margin-top:10px;
}
.page-header h1 span{
	display:block;
	font-size:18px;
}





/*下層ページ共通　ここまで*/


/*会社概要*/


.page-template-1ori-page .page-header{
	background:url(/wp-content/uploads/2023/12/sec4-back.jpg);
	background-position:center;
	background-size:cover;
}
	
.about-sec2{
	    padding: 80px 0;
    text-align: center;
}

.about-sec2 h2{
	margin-bottom:40px;
}

.vision-catch{
	font-size:25px;
	color:#0071bc;
	font-weight:bold;
	margin-bottom:30px;
	padding-bottom:;
}

.about-sec1{
	padding-bottom:150px;
}
.about-sec1:before{
    right: 0;
    content: "";
    width: 80%;
    height: 900px;
    background: #f9f9f9;
    display: block;
    position: absolute;
}

.about-sec1-headline{
	text-align:center;
	height:300px;
	display:flex;
	align-items:center;
	background:url(/wp-content/uploads/2023/12/about-mv.jpg);
	background-position:center;
	background-size:cover;
	position:relative;
	color:#fff;
}
.about-sec1-headline:after{
	content:"";
	width:100%;
	height:100%;
	background:rgba(0,0,0,.4);
	display:block;
	position:absolute;
}
.about-sec1-headline h2{
	z-index:2;
	position:relative;
	display:block;
	width:100%;
	margin-bottom:0;
}
.about-sec1-headline h2 span{
	color:#fff;
}

.about-sec1-in{
	margin-top: -50px;
    z-index: 5;
    position: relative;
    background: #fff;
    padding: 60px;
}

.about-sec1-in li{
	display:flex;
	padding-bottom:30px;
	margin-top:30px;
}
.about-sec1-in li img{
	width:25%;
	margin-left:25px;
}

.about-sec1-in li:first-child{
	border-bottom:1px solid #aaa;
	margin-top:0;
}


.about-sec1-in li h3{
font-size: 23px;
    color: #0071bc;
    margin-bottom: 12px;
}

.about-sec3-in{
	padding:30px 0;
	max-width:900px;
}
.about-sec3-in h2{
	text-align:center;
	font-weight:bold;
	font-family:メイリオ;
	margin-bottom:50px;
}

.about-sec3-in table{
	margin-bottom:60px;
}
.about-sec3-in table tr,
.about-sec3-in table th,
.about-sec3-in table td{
	background:none;
	border:none;
}

.about-sec3-in table th{
	width:20%;
}
.about-sec3-in table th,
.about-sec3-in table td{
	padding:30px 20px;
	border-top:1px solid #f3f3f3;
	border-bottom:1px solid #f3f3f3;
	text-align:left;
}

/*会社概要　ここまで*/



/*事業内容*/



.page-template-2ori-page .page-header{
	background:url(/wp-content/uploads/2023/12/business-mv2-scaled.jpg);
	background-position:center;
	background-size:cover;
}

.business-content-in ul{
	margin-bottom:110px;
}
.business-box{
	overflow:hidden;
	min-height:310px;
	position:relative;
	margin:80px 0;
}
.business-box-in img{
	position: absolute;
    width: 50%;
    z-index: -1;
	border-radius:20px 0 0 0;
}

.business-box-text{
    background: #fff;
    padding: 30px;
    right: 0;
    position: absolute;
    bottom: 0;
	width: 55%;
}

.business-box2 img{
	right:0;
}

.business-box2 .business-box-text{
	right:0;
	right:auto;
}

.business-headline{
	margin-bottom:15px;
}
.business-box-text h2{
	position: relative;
    font-size: 23px;
    margin: 0;
    line-height: 100%;
    color: #0071bc;
    display: inline-block;
	font-weight:bold;
}

.business-box-text .business-headline:before{
    content: "01";
    border-right: 1px solid #666;
    font-family: メイリオ;
    padding-right: 10px;
    margin-right: 10px;
    display: inline-block;
    line-height: 40px;
    font-size: 40px;
    color: #666;
    top: -6px;
    position: relative;
}

.business-box-text .no02:before{
    content: "02";
}

.business-box-text .no03:before{
    content: "03";
}

.business-box-text h2 span{
	display: block;
    font-size: 13px;
    font-family: メイリオ;
    font-weight: normal;
    color: #666;
    margin: 0 0 5px;
}



/*事業内容　ここまで*/

/*トピックス一覧*/

.page-template-4ori-page .page-header{
		background:url(/wp-content/uploads/2023/12/topics-mv.jpg);
	background-position:center;
	background-size:cover;
}

.topics{
	margin:80px auto;
}

.topics li{
	margin-bottom:25px;
}

.topics li a{
	text-decoration:none;
	color:#000;
	transition:0.4s;
	display:flex;
	margin-bottom:45px;
}

.topics li a:hover{
	color:#000;
}

.topics li a .thumbnail-box{
	width:60%;
}

.topics li a .thumbnail-box img{
    height: 100%;
    width: 100%;
    object-fit: cover;
}



.topics li a .list-text-box{
	padding:10px 20px 10px 25px;
	transition:0.4s;
}

.topics li a:hover .list-text-box{
	background:#f3f3f3;
}

.list-text-box .post-date{
	font-size:15px;
}

.list-text-box .label{
	font-size:13px;
	background:#333;
	color:#fff;
	padding:2px 10px 1px;
	border-radius:4px;
}

.list-text-box p{
	font-family:メイリオ;
	font-size:15px;
}

.list-text-box h3{
    font-size: 20px;
    margin-bottom: 5px;
}

.pagenation{
	max-width: 1000px;
    margin: 0 auto;
}

.page-numbers{
	display:flex;
	border:none;
	
}

.page-numbers li .page-numbers{
	justify-content:center;
	border:1px solid #ddd;
}

.page-numbers li .next,
.page-numbers li .prev{
	border:none;
}
.page-numbers li a{
	transition:0.4s;
}
.page-numbers li a:hover{
	background:#0071bc;
	color:#fff;
}

/*トピックス一覧　ここまで*/



/*採用情報*/

.page-template-3ori-page .page-header{
	background:url(/wp-content/uploads/2023/12/recruit-mv.jpg);
	background-position:center;
	background-size:cover;
}

.recruit-sec1{
	position:relative;
}
.recruit-sec1-in{
	padding:85px 0;
	margin-top:100px;
	margin-bottom:85px;
	position:relative;
	
}

.recruit-sec1:before{
    content: "";
    position: absolute;
    width: 48%;
    height: 100%;
    display: block;
    background: #f5f5f5;
    z-index: -1;
    top: 0;
    right: 0;
}

.recruit-sec1-in img{
max-width: 560px;
    width: 100%;
}

.recruit-sec1-in h2{
    display: inline-block;
    width: 100%;
    text-align: right;
    font-size: 40px;
	font-weight:bold;
}

.recruit-sec1-in h2 span{
	color:#0071bc;
}
	
.recruit-sec1-text{
width: 60%;
    margin-left: 40%;
    margin-top: -300px;
    background: #fff;
    padding: 40px 70px;
    position: relative;
}


.recruit-sec2 h2{
	font-size:40px;
	color:#0071bc;
}

.recruit-sec2 h2 span{
	font-weight:normal;
	font-size:15px;
}
	
.recruit-sec3{
	background:#0071bc;
	margin-top:100px;
}

.recruit-sec3-in{
	padding:65px 0;
}

.recruit-sec3-in h2{
    color: #fff;
    font-weight: bold;
    text-align: center;
    font-size: 40px;
    font-family: メイリオ;
}
.recruit-sec3-in h2 span{
	color:#fff;
	margin-top:13px;
}

.page-template-3ori-page .common-rec{
	display:none;
}
.page-template-3ori-page .common-area{
	margin-top:0;
}
.page-template-3ori-page .common-contact{
	margin-left:0;
	
}
.page-template-3ori-page .common-contact a{
	font-size:45px;
}

.page-template-3ori-page .common-contact a:before{
	font-size:36px;
}

	
/*採用情報　ここまで*/

/*投稿ページ*/

.article h2,
.article h3{
	font-family:メイリオ;
	
}

.article h2{
    background: none;
    border-left: 7px solid #0071bc;
    border-bottom: 1px solid #0071bc;
    padding: 9px 15px;
    line-height: 100%;
    font-size: 27px;
    margin-bottom: 20px;
}

.article h3{
    border: none;
    border-bottom: 2px dotted #999;
    padding: 0 0 7px;
    margin: 15px 0;
    font-size: 20px;
    color: #0071bc;
	line-height:100%;
	display: flex;
    align-items: center;
}
.article h3:before{
	content:"";
	width:4px;
	height:23px;
	display:inline-block;
	border-radius:8px;
	background:#0071bc;
	margin-right:10px;
}


/*投稿ページ　ここまで*/

/*common*/
.common-area{
    padding: 85px 0;
    background: #f9f9f9;
    margin-top: 70px;
}

.common-area-in{
	max-width:1000px;
	margin:0 auto;
	display:flex;
	align-items:center;
	justify-content:center;
}

.common-box{
		padding: 15px;
	height:245px;
	width:100%;
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	border-radius:8px;
	overflow:hiden;
}

.common-box:before{
	content:"";
	background:rgba(0,0,0,.5);
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
}

.common-box-in{
	color:#fff;
	display:flex;
	flex-flow: column;
	align-items:center;
	justify-content:center;
	position:relative;
	z-index:3;
	margin-top:10px;
}

.common-box-in h2{
	margin-bottom:0;
	font-family:メイリオ;
	font-weight:bold;
	letter-spacing: 0.09em;
	font-size:27px;
}


.common-rec{
	background:url(/wp-content/uploads/2023/12/common-rec.jpg);
	background-size:cover;
	background-position:center;
	margin-right:20px;
}
.common-rec a{
    background: #fff;
    padding: 5px 35px;
    border-radius: 6px;
    display: inline-block;
    margin-top: 10px;
    color: #0071bc;
    font-weight: bold;
    text-decoration: none;
	transition:0.5s;
}

.common-rec a:hover{
	background:#0071bc;
	color:#fff;
}

.common-contact{
	background:url(/wp-content/uploads/2023/12/common-contact.jpg);
	background-size:cover;
	background-position:center;
	margin-left:20px;
}

.common-contact a{
	font-size:30px;
	font-weight:bold;
	color:#fff;
	text-decoration:none;
	transition:0.5s;
}

.common-contact a:hover{
	color:#0071bc;
}

.common-contact a:before{
    content: "\f0e0";
    display: inline-block;
    font-family: "Font Awesome 5 Free";
    font-size: 26px;
    margin-right: 9px;
}



/*common ここまで*/

/* フォーム*/
/*ーーーーーーーーーーーーーーーー*/
/*　　MW WP Formカスタマイズ　　*/
/*ーーーーーーーーーーーーーーーー*/



.mw_wp_form input[type="email"],
.mw_wp_form input[type="tel"],
.mw_wp_form input[type="text"],
.mw_wp_form textarea {
    padding: 1em;
  width: 100%;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
    font-size: 15px;
    border: 1px solid #ccc;
}

.mw_wp_form select {
    display: block;
    position: relative;
    width: 80%;
    height: 38px;
    font-size: 14px;
    font-size: 0.9rem;
    border: 1px solid #ccc;
    -webkit-border-radius: 4px;
    -moz-border-radius: 4px;
    -ms-border-radius: 4px;
    border-radius: 4px;
    overflow: hidden;
    padding: 0 10px;
}

.mw_wp_form selectt:after {
    position: absolute;
    display: block;
    content: '';
    width: 0;
    height: 0;
    border-top: 5px solid transparent;
    border-left: 5px solid transparent;
    border-bottom: 5px solid transparent;
    border-right: 5px solid transparent;
    border-top: 5px solid #333;
    top: 50%;
    right: 10px;
    margin-top: -3px;
    pointer-events: none;
}


/*――――「表」デザイン――――*/

.cform th {
	font-size: 15px;
	width: 25%; 
	border-bottom: solid 1px #d6d6d6;
	padding: 10px 0px 10px 15px;
	font-weight: bolder;
}


.cform td {
	font-size: 15px;
	line-height: 200%;
	border-bottom: solid 1px #d6d6d6;
	padding: 10px 10px;
}


/*―――――表示―――――*/

.cform {
	width: 100%;
	margin: auto;
}


.cform option,
.cform textarea,
.cform input[type=text],
.cform input[type=email],
.cform input[type=search],
.cform input[type=url] {
	width: 100%;
}



@media only screen and (max-width:834px) {
	.cform th,
	.cform td {
		width: 97%;
  border: 1px solid #999;
  padding: .5em 1em;
		display: block;
		border-top: none;
	}
}

/*――「送信ボタン」デザイン――*/

.submit-btn input {
background-color:#56a6f7;
border:0;
color:#ffffff;
font-size:1.3em;
font-weight:bolder;
margin:0 auto;
padding: 10px 35px;
border-radius: 3px;
cursor: pointer;
text-align:center;
	transition: 0.6s;
}

.submit-btn {
text-align: center;
    cursor: pointer;
    max-width: 400px;
    margin: 20px auto;
}

.submit-btn input:hover {
	background: #3e77b1;
	color: #FFFFFF;
　cursor: pointer;
}


/*―――「必須」デザイン―――*/
.required-srt {
font-size:0.7em;
padding: 4px;
border-radius: 5px;
margin-right: 10px;
background: #ebbbbb;
color: #ffffff;
}

/*ーーーーーーーーーーーーーーーー*/


.demodesu{
	display: block;
    text-align: center;
    margin: 70px;
}

/* フォーム　ここまで*/



/*　フッター　*/

.footer{
	background:#666;
	margin-top:0;
}

.footer-in{
	max-width:1350px;
	margin:0 auto;
	padding:50px 10px 0;
}
.navi-footer-in > .menu-footer{
	justify-content:center;
}



.navi-footer{
margin-bottom:70px;
}

.footer-bottom.fdt-left-and-right .footer-bottom-content{
	display:block;
}

.navi-footer-in > .menu-footer{
display: flex;
    margin-top: 27px;
}
.footer-bottom.fnm-text-width .menu-footer li{
	border:none;
	position:relative;
}

.footer-bottom.fnm-text-width .menu-footer li a{
color: #fff;
    padding: 5px 20px;
    border: none;
    transition: 0.8s;
    text-align: left;
}

.footer-bottom.fnm-text-width .menu-footer li a:before{
    content:'';
	background:url(/wp-content/uploads/2023/07/arrow-white.png);
	width:13px;
	height:13px;
	background-size:cover;
	background-position:center;
    position: absolute;
    left: 0;
    top: 10px;
}




.footer-bottom.fnm-text-width .menu-footer li a:hover{
	background:none;
	text-decoration:underline;
}


.footer-bottom-logo{
	position:relative;
	float: none;
}

.logo-image span, .logo-image a{
	max-width: 100%;
    width: 350px;
}

.footer-bottom-logo img{
	height:auto;
	width:140px;
}

.footer-bottom-logo .logo-text{
	padding: 0;
    text-align: left;
}

.footer-bottom-content {
    float: none;
    text-align: left;
}

.footer-bottom-logo .logo-image{
	    padding: 0;
}


.copyright{
color:#fff;
	text-align:center;
	font-size:11px;
}


	.pc-display{
		display:inline-block;
	}
	.sp-display{
		display:none;
	}



/*　フッター　ここまで*/

/************************************
** レスポンシブデザイン用のメディアクエリ
************************************/
/*1023px以下*/
@media screen and (max-width: 1023px){
	
	html:has(.mblt-header-mobile-buttons, .mblt-header-and-footer-mobile-buttons){
		margin-top:50px!important;
	}
	main.main, div.sidebar{
		padding:0;
	}
	

}



/*834px以下　スマホ*/
@media screen and (max-width: 834px){
	.pc-display{
		display:none;
	}
	.sp-display{
		display:inline-block;
	}
	
	body{
		margin-top:0;
	}
	.mv-in{
		height:350px;
	}
	
	.mv-in-text{
		padding:0 20px;
		    text-align: center;
	}
	
	.phrase {
    float: none;
    margin-top: 0;
    font-size: 13px;
		text-align:center;
		font-weight:normal;
}
	
	
	
	
	
	
	
	main.main, div.sidebar{
		padding:0;
	}
	
	.header .tagline{
		margin:0;
	}
	
	#header-container{
		display:none;
	}
	
	.mobile-menu-buttons {
    display: block;
	}
	
	
	.mobile-header-menu-buttons{
		background:#fff;
	}
	.logo-menu-button{
		position:absolute!important;
		left: 50%;
		top:23px;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
	}
	
	.navi-menu-button{
	position: absolute;
    top: 11px;
    left: 0;
	}
	.logo-menu-button img {
    max-height: 35px
	}
	
	.has-logo-button .menu-button{
		width:50px;
	}
	
	.fa-bars:before, .fa-navicon:before {
    color: #333;
}
	
	.mobile-menu-buttons {
    align-items: center;
}
	.mobile-menu-buttons .menu-caption{
		display:none;
	}
	
	.mobile-menu-buttons > li{
		padding-top:0;
	}
	
	.search-menu-button{
		display:none;
	}
	
	.logo-image {
    padding: 5px 0 10px;
}
	
	h2{
		font-size:40px;
	}
	.page-template-0front-page #header-container-in{
		position:relative;
		background:#333;
	}
	html {
    margin-top: 0;
	}
	
	
	
	
		.menu-content{
		overflow:visible;
	}
	
	.menu-close-button {
    display: inline-block;
    position: absolute;
	right:0;
    width: 55px;
    background: #fff;
	}
	
	.menu-content .menu-drawer {
    padding: 1em 12px;
}
	
	.menu-drawer a {
    padding: 9px;
    font-size: 16px;
    border-bottom: 1px solid #eee;
}
	
	
	.menu-drawer a:hover{
	background:none;
	}
	
	
	
	
	
	
	
	/*vegas スライダー*/
	#vegas{
	    height: 60vh;
	}
	
	
	#vegas-outer{
		width:200%;
		margin-left:-50%;
	}
	
	.slider-catch {
    font-size: 22vw;
		left: 26%;
	}
	
	.slider-text {
    writing-mode: horizontal-tb;
		width:100%;
		left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
		top: 78vw;
		    text-align: center;
    max-width: 800px;
		font-size: 25px;
	}
	
	
	
	
	
.sec1 {
    padding: 60px 15px;
}

	.sec1-text h2:after{
		left:0;
	}
	.sec1-text ul li{
		font-size:15px;
	}
	
	.sec1-text ul li{
		display:block;
	}
	.sec1-text ul li span{
    font-size: 80%;
    font-weight: bold;
    background: #adadad;
    color: #fff;
    padding: 3px 12px;
		display:inline-block;
		margin-bottom:8px;
}
	
	.sec1-text ul li a{
		    margin: 0;
    padding: 0;
    border: none;
	}
	
	
	.sec2-in {
    padding: 15px;
	}
	
	
	.button007 a {
    max-width: 85%;
    padding: 7px;
    width: 100%;
	}
	
	.sec2-in p {
    margin-bottom: 15px;
}
	
	.sec2-content {
    border: 1px solid rgba(255,255,255,.5);
	}	
	
	
	.sec3{
		padding:100px 0;
	}
	
	
	
	
	.sec3-in ul {
    display: block;
	}
	
	.sec3-in ul li h3 {
    margin-top: 10px;
	}
	
	.sec3-in ul li{
width: 90%;
    margin: 15px 5%;
	}
	
	.sec4 {
    padding-bottom: 60px;
}
	
		.sec4-in {
    display: block;
		padding:0;
	}
	
	.sec4-in img {
    width: 100%;
}
	
	.sec4-left {
    width: 90%;
    margin: 0 auto;
    min-width: 0;
}
	
	.sec4-right {
    margin: 0;
    margin-top: 30px;
}
	.sec4-right p{
		font-size:15px;
	}
	.sec4-right h2{
	    font-size: 30px;
    font-weight: bold;
    text-align: center;
}
	
	.sec4-text .button007 {
    width: 100%;
}
	
	.sec5 {
    padding-bottom: 0;
}
	
	.sec5-in {
    padding: 0 15px;
	}
	.sec5-in ul {
    padding: 0;
    display: block;
}
	
	.sec5-in ul li{	
	margin-bottom: 60px;
	}
	
	.sec5-in ul li:nth-child(2){
	margin:0;
}
	
	
	
	
	.sec6-in {
    padding: 0 15px;
}
	
	.sec6-in ul {
    display: block;
		margin:0;
}
	
	.sec6-in ul li{
		margin-bottom:20px;
	}
	
	.sec6-in ul.sec6-list1 li:nth-child(3){
		margin-left:0;
	}
	
	
	.common-area {
    padding: 45px 0;
    margin-top: 40px;
}
	.common-area-in {
    display: block;
	}
	.common-rec{
		width:90%;
		margin:5%;
	}
	.common-contact{
		width:90%;
		margin:5%;
}
	

	
	#menu-nav-1{
		overflow:hidden;
	}
	
		.navi-footer-in > .menu-footer li.menu-item {
    display: inline-block;
    width: 50%;
    float: left;
    margin: 0;
}
	
	/*事業内容　business*/
	.page-header h1{
    text-align: center;
    font-size: 37px;
	}
	
	.business-box {
    position: relative;
    margin: 44px 0;
}
	
	.business-box-in img {
    position: relative;
    width: 100%;
		border-radius:0;
	}
	
	.business-box-text {
    position: relative;
    width: 100%;
}
	
	.business-content-in ul {
    margin-bottom: 0;
}
		.business-content-in ul li{
			margin:0 0 15px;
	}	
	
	
	/*事業内容　business ここまで*/
	
	/*会社概要　about*/
	.about-sec2 {
    padding: 60px 15px;
    text-align: center;
}
	.vision-catch {
    font-size: 19px;
    margin-bottom: 15px;
	}
	
	.about-sec1-in li {
    display: block;
	}
	
	.about-sec1-in li img {
    width: 250px;
    display: block;
    margin: 15px auto 0;
}
	
	.about-sec1-in {
    margin-top: 0;
    padding: 35px 15px;
}
	
	.about-sec1 {
    padding-bottom: 0;
}
	.about-sec3-in table th{
		width:27%;
	}
	
	.about-sec3-in table th, .about-sec3-in table td {
    padding: 30px 15px;
	}
	
	
	/*会社概要　about　ここまで*/
	
	
	/*トピックス一覧*/
	
	.topics li a{
		display:block;
	}
	.topics li a .thumbnail-box {
    width: 100%;
}
	
	.page-numbers li .next, .page-numbers li .prev{
		font-size:13px;
	}
	
	.page-numbers {
    width: 40px;
	}
	
	/*トピックス一覧　ここまで*/
	
	
	/*投稿ページ*/
	
	.article{
		padding:15px;
	}
	
	.article h2{
		margin-top:30px;
		font-size:21px;
	}

	.under-entry-content{
		padding:0 15px;
	}

	/*投稿ページ　ここまで*/

	
	/*採用情報*/
	
	.recruit-sec1:before｛
	width:70%;
}
.recruit-sec1-in{
	padding:0;
}

.recruit-sec1-text {
    width: 95%;
    margin-left: 0;
	margin-top: -20px;
    padding: 30px 40px;
}
.sec5-in table tbody th {
    width: 25%;
}

.recruit-sec3{
	   margin-top: 50px;
}
	
.recruit-sec3-in {
    padding: 50px 15px 1px;
}

.page-template-3ori-page .common-contact {
    margin-left: auto;
}

.page-template-3ori-page .common-contact a {
    font-size: 30px;
}
.page-template-3ori-page .common-contact a:before {
    font-size: 26px;
}




	/*採用情報　ここまで*/
	
	
	.footer-in{
		padding:10px 10px 0;
	}

	.footer-bottom {
    margin-top: 35px;
}
	
	.navi-footer {
    margin-bottom: 30px;
}


	
	
}

/*480px以下*/
@media screen and (max-width: 480px){
  /*必要ならばここにコードを書く*/
		.page-numbers {
    width: 40px;
	}
	
}









/*アニメーションエフェクト関連*/

/*下からふわっ*/
.fadeUpTrigger{
	opacity:0;
}
.fadeUp {
animation-name:fadeUpAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity: 0;
}

@keyframes fadeUpAnime{
  from {
    opacity: 0;
	transform: translateY(100px);
  }

  to {
    opacity: 1;
	transform: translateY(0);
  }
}


/*左からふわっ*/
.fadeRightTrigger{
	opacity:0;
}

.fadeRight{
animation-name:fadeRightAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeRightAnime{
  from {
    opacity: 0;
  transform: translateX(100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}




/*==================================================
sec2 staff ふわっ
===================================*/

/* その場で */

.fadeInTrigger{
	opacity:0;
}
.fadeIn{
animation-name:fadeInAnime;
animation-duration:1s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeInAnime{
  from {
    opacity: 0;
  }

  to {
    opacity: 1;
  }
}


/*==================================================
sec2 staff ふわっ ここまで
===================================*/




/* 左から */

.fadeLeft{
animation-name:fadeLeftAnime;
animation-duration:0.5s;
animation-fill-mode:forwards;
opacity:0;
}

@keyframes fadeLeftAnime{
  from {
    opacity: 0;
  transform: translateX(-100px);
  }

  to {
    opacity: 1;
  transform: translateX(0);
  }
}

/* 左から　ここまで */



.delay-time01{animation-delay: 0.1s;}
.delay-time02{animation-delay: 0.2s;}
.delay-time03{animation-delay: 0.3s;}
.delay-time04{animation-delay: 0.4s;}
.delay-time05{animation-delay: 0.5s;}
.delay-time06{animation-delay: 0.6s;}
.delay-time07{animation-delay: 0.7s;}
.delay-time08{animation-delay: 0.8s;}
.delay-time09{animation-delay: 0.9s;}
.delay-time10{animation-delay: 1s;}
.delay-time11{animation-delay: 1.1s;}
.delay-time12{animation-delay: 1.2s;}
.delay-time13{animation-delay: 1.3s;}


/*アコーディオン*/
.accordion {
margin: 3em auto;
max-width: 100%;
}
.toggle {
display: none;
}
.option {
position: relative;
margin-bottom: 1em;
}
.title,
.content {
-webkit-backface-visibility: hidden;
backface-visibility: hidden;
transform: translateZ(0);
transition: all 0.3s;
}
.title {
border:none;
padding: 1.5em;
display: block;
color: #333;
	background:#fff;
font-weight: bold;
}
.title::after,
.title::before {
content: "";
position: absolute;
right: 1.25em;
top:2em;
width: 2px;
height: 0.75em;
background-color: #999;
transition: all 0.3s;
}
.title::after {
transform: rotate(90deg);
}
.ac-content {
max-height: 0;
overflow: hidden;
}
.ac-content p {
    margin: 0;
    padding: 1.5em;
    padding-top: 0;
    line-height: 1.5;
    margin-top: 0;
    font-size: 16px;
    color: #000;
    background: #fff;
}
.toggle:checked + .title + .ac-content {
max-height: 500px;
transition: all 1.5s;
}
.toggle:checked + .title::before {
transform: rotate(90deg) !important;
}
