@charset "utf-8";
/*
Theme Name: leciel
Theme URI:
Description:
Author:atGunGun
Author URI:https://at-gungun.com/
Version:7.7
*/
/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

body {
	width: 100% !important;
	color: #000;
	line-height: 1.6;
	font-size: 1.6rem;
	font-weight: 400;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
	font-family: "Noto Sans JP", sans-serif;
	background: #494949;
}

.fade{
	transition: 2s;
	transform: translate(0px, 60px);
	opacity: 0;
}

.active.fade,
.active .fade{
	    transform: translate(0px, 0px);
    opacity: 1;
}

.inter{
	font-family: "Inter", sans-serif!important;
}

.mon{
	font-family: "Montserrat", sans-serif!important;
}

/* color */
.white{
	color: #ffffff!important;
}
.blue{
	color: blue;
}
.red{
	color: red;
}
.green{
	color: green;
}
.yellow{
	color: yellow;
}
.black{
	color: #000;
}

.bgwh{
	background: #ffffff;
}
.bgblu{
	background: linear-gradient(to right, #165888 , #172D6B);
}
.bgbla{
	background: #494949;
}
.bgred{
	background: red;
}
.bggre{
	background: green;
}
.bgyel{
	background: yellow;
}
.bggray1{
	background: #A4A4A4;
}
.bggray2{
	background: #D9D9D9;
}

/*リンク表示方法*/

a {
	text-decoration: none;
}

a:link {
	color: #000;
}

a:visited {
	color: #000;
}

a:active {
	color: #000;
}

a:hover {
	opacity: 0.7;
}

a:hover img {
	opacity: 1;
}

.hLogo a:hover{
	opacity: 1;
}

:has( > .lista){
	position: relative;
}

.lista{
	position: absolute;
	left: 0;
	top:0;
	width:100%;
	height:100%;
	z-index: 1;
}

a[href*="tel:"] {
	pointer-events: none;
	cursor: default;
	text-decoration: none;
	}
/*-----------------------------------------------------------
PCサイズ
-----------------------------------------------------------*/

.pc,.pc2 {
	display: block;
}

.sp,.sp2, .spTel {
	display: none;
}

.pcTel {
	display: inline;
}


.main_content{
	width: 81.25%;
	position: relative;
	max-width: 1560px;
	margin-right: auto;
}

/*-----------------------------------------------------------
header
-----------------------------------------------------------*/

header {
	padding: 0;
	position: fixed;
	right: 0;
	z-index: 9999;
	text-align: center;
	top: 12%;
	mix-blend-mode: exclusion;
	width: 18.75%;
	margin: 0 auto;
}


.hLogo{max-width: 155px;margin: 0 auto 53px;}


.logo a:hover img {
	opacity: 1;
}

.headerTel {
	margin: 0 0 0 0;
	padding: 0px 0 0;
	font-weight: 900;
}

.off_img{
	display:block;
}

.on_img{
	display:none;
}

.headerScroll .off_img{
	display:none;
}

.headerScroll .on_img{
	display:block;
}

/*-----------------------------------------------------------
テーブル共通
-----------------------------------------------------------*/

table {
	border-collapse: separate;
}

/*-----------------------------------------------------------
 nav
-----------------------------------------------------------*/

.pc_nav{display: flex;align-items: center;justify-content: center;flex-direction: column;}

.nav_list1{margin: 0 auto 54px;max-width: 157px;width: 100%;}

.nav_list1 li {
	margin-top: 25px;
}

.nav_list1 li:first-child{
	margin:0;
}

.nav_list1 a {
	display: flex;
	text-decoration: none;
	font-size: clamp(1.4rem,1.5vw,1.6rem);
	color: #ffffff;
	line-height: 1.3125;
	align-items: center;
}

.nav_list1 a img{
	margin-left:8px;
}

.hd_link{
	width:100%;
}


.btn1{
	display:flex;
	align-items:center;
	justify-content: flex-start;
	color:#000000!important;
	font-size:1.4rem;
	width: 100%;
	position: relative;
	line-height: 1.28;
	padding-bottom: 13px;
	max-width: 121px;
}

.btn1.white{
	color:#fff!important;
}


.btn1:hover{
	opacity:1;
}

.btn1 .arrow{
	position:absolute;
	right:5px;
	top:0;
	bottom:0;
	margin:auto;
	transition:.4s;
	font-family: "Inter", sans-serif!important;
	font-size: 2rem;
}

.btn1:hover .arrow{
	right:0px;
}

.hd_link .btn1{
	font-size:1.8rem;
	max-width: 157px;
	line-height: 1.444;
	padding-bottom: 14px;
	padding-right:47px;
	font-size: clamp(1.4rem,1.6vw,1.8rem);
	margin: 0 auto;
}

.hd_link .btn1 .arrow{
	margin-left:24px;
}

.btn1:before{
    content: '';
    width: 100%;
    height: 1px;
    background: #000000;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: 0.2s;
}

.btn1.white:before{
    background: #fff;
}

.btn1:hover:before{
	animation-name: line_move;
    animation-duration: 0.5s;
}

@keyframes line_move {
30% {
    left: 100%;
    width: 0;
}

40% {
    width: 0;
    left: 0;
}

100% {
    left: 0;
    width: 100%;
}
}

/*-----------------------------------------------------------
#slide
-----------------------------------------------------------*/

#modal {
	display: none;
}

/*-----------------------------------------------------------
#cover
-----------------------------------------------------------*/

#cover {
	width: 100%;
	position: relative;
	max-height:800px;
	height: 42vw;
}

#cover .img1{
	max-width:960px;
	width: 63%;
	position:absolute;
	right: 0;
	top: 0;
}

#cover .img2{
	max-width:359px;
	width: 24%;
	position: absolute;
	left: 0;
	top: 25%;
}

#cover .img2.fade{
	opacity:0.01;
}

#cover .img2.fade.active{
	opacity:1;
}

#cover .text_area1{
	position: absolute;
	left: 27.18%;
	top: 24%;
}

#cover .text_area1 .text{
	font-size: clamp(1.2rem,1.3vw,2.2rem);
	letter-spacing: 0.28em;
	color: #fff;
	font-weight: 400;
	line-height: 1.5;
}

#cover .text_area1 .text span{
	display:block;
}

#cover .text_area1 .text span:nth-child(2){
	transition-delay:.5s;
}

#cover .text_area1 .text span:nth-child(3){
	transition-delay:1s;

}

.ver{
	-ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
}

#cover .scroll{
	position:absolute;
	right: 2%;
	color:#fff;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-size: clamp(1.2rem,1.3vw,1.6rem);
	letter-spacing:0.1em;
	line-height:1.25;
	top: 84%;
}

#cover .scroll span{
	position:relative;
	display:block;
	padding-left:13px;
	padding-bottom: 81px;
}

#cover .scroll span:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -4.5px;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background:#fff;
  animation:
    circlemove 1.6s ease-in-out infinite,
    cirlemovehide 1.6s ease-out infinite;
}

@keyframes circlemove{
  0%{bottom:160px;}
  100%{bottom:0px;}
}

@keyframes cirlemovehide{
  0%{opacity:0}
  50%{opacity:1;}
  80%{opacity:0.9;}
  100%{opacity:0;}
}

#cover .scroll span:after{
  content:"";
  position: absolute;
  top: 0;
  left:0;
  width: 1px;
  height: 100%;
  background:#fff;
}



.ma1920{
	max-width:1920px;
	width:100%;
	margin:0 auto;
}

.content_flex{
	display:flex;
	justify-content:space-between;
	max-width: 1920px;
	width: 100%;
	margin: 0 auto;
	flex-direction: row-reverse;
	/* overflow-x: clip; */
}

/*-----------------------------------------------------------
 #main
-----------------------------------------------------------*/

#main {
	width: 100%;
	margin: 0px auto 0;
}

.flex{
	display: flex;
	justify-content: space-between;
}

.inner{
	width: 90%;
	max-width: 1200px;
	margin-left: auto;
}

.mainTit{
	line-height: 1;
	font-weight:400;
	font-size: clamp(4rem,5vw,7rem);
	letter-spacing:0.02em;
	max-width: max-content;
	color: #494949;
}

.mainTit .en_tit{
	font-style:italic;
	font-weight: 200;
	display:block;
}

.mainTit .subtit{
	font-size:1.4rem;
	display:block;
	text-align:right;
	letter-spacing:0.1em;
	margin-bottom:20px;
	position:relative;
}

.mainTit .subtit:before{
	position:absolute;
	content:"";
	width:70%;
	height:1px;
	background: #494949;
	top:0;
	bottom:0;
	left:0;
	margin:auto;
}

.content01 .mainTit .subtit:before{
	background: #fff;
}

.mainTit2{
	line-height: 1.46428;
	font-weight: 400;
	font-size: clamp(2rem,3vw,2.8rem);
	letter-spacing: 0.1em;
}

.mainTit2 span{

}

.subTit{
	font-size: 2.4rem;
	line-height:1.2;
	font-weight:700;
	font-size: clamp(2rem,4vw,2.4rem);
}

.content01{
	color: #fff;
	padding: 107px 0 120px;
}

.content01 .flex{
	position:relative;
}

.content01 .left{
	max-width:600px;
	width: 67%;
}

.content01 p{
    font-size: 1.6rem;
    line-height: 2.5;
    font-weight: 400;
    margin-bottom: 55px;
}

.content01 .left .btn1{
	margin-left:auto;
}

.content01 .right{
	position:absolute;
	right:7px;
	bottom:0;
}

.content01 .right .mainTit{
	color:#fff;
}

.gray_bef{
	position:relative;
	z-index: 0;
}

.gray_bef:before{
	position:absolute;
	right:0;
	content:"";
	height:100%;
	background: #D9D9D9;
	top:0;
	width: 94.4278vw;
	z-index: 0;
	right: 0;
}

.gray_bef2{
	position:relative;
	z-index: 0;
}

.gray_bef2:before{
	position:absolute;
	left:0;
	content:"";
	height:100%;
	background: url(./img/service1/bg2.jpg);
	background-size:cover;
	top:0;
	width: 81.25vw;
	z-index: 0;
	right: 0;
}

.gray_bef3{
	position:relative;
	z-index: 0;
}

.gray_bef3:before{
	position:absolute;
	left:0;
	content:"";
	height:100%;
	background: #A4A4A4;
	top:0;
	width: 94.4278vw;
	z-index: 0;
	right: 0;
}

.content02{
	padding: 100px 0;
}

.co2_div1{
	position:relative;
	width:100%;
	height: 50vw;
	max-height: 881px;
}

.co2_div1 .img_area{position: absolute;left: 0;width: 86%;max-width: 1328px;padding-bottom: 14.229%;}

.co2_div1 .img_area .img1{
	display:flex;
	padding-right: 30px;
	position:relative;
	max-width: 990px;
	width: 75%;
}

.co2_div1 .img_area .img1 .img_cont{
	max-width:960px;
}

.co2_div1 .img_area .img1 p{
	position:absolute;
	right:0;
	top:0;
}

.co2_div1 .img_area .img2{
max-width: 443px;
width: 34%;
position: absolute;
right: 0;
bottom: 0;
}

.co2_div1 .text_area{
	max-width: 343px;
	width: 34%;
	position: absolute;
	right: 0;
}

.content02 .text{
	font-size:1.6rem;
	line-height:2;
	margin: 5.835% 0 23.326%;
}

.content02 .btn1{
	margin-left:auto;
}

.co2_div1 .title_area{
position: absolute;
bottom: 0;
left: 16.8165%;
}

.co2_div2{
	margin: 180px 0 0px auto;
	max-width: 1400px;
	width: 90%;
	position: relative;
}

.co2_div2 .text_area{
	max-width: 343px;
	width: 26%;
	padding-top: 9%;
}

.co2_div2 .img1{
	max-width:1000px;
	width: 72%;
	display:flex;
	padding-left:40px;
	position:relative;
}

.co2_div2 .img1 p{
	position:absolute;
	left:0;
	top:0;
}


.co2_div2 .img2{
	margin-top:32px;
	margin-left:auto;
	max-width:451px;
	width:50%;
}

.content03{
	padding: 80px 0 150px;
}


.co3_div{
	max-width:879px;
	margin-left:auto;
	width:100%;
	margin-top:47.5px;
}

.news_list li{
	display:flex;
	align-items:center;
	padding: 25px 0;
	border-bottom: 1px solid;
	position: relative;
}

.news_list li .date{
	font-size: clamp(1.4rem,1.3vw,1.8rem);
	font-weight:400;
	line-height:1.667;
	margin-right: 3%;
}

.news_list li .cate{
	font-size: clamp(1.3rem,1.3vw,1.6rem);
	font-weight:400;
	line-height:1.875;
	padding: 0px 9px;
	background:#494949;
	color:#fff;
	margin-right: 9%;
	min-width: 108px;
	text-align: center;
}

.news_list li .title{
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 1;
	overflow: hidden;
	font-size:1.6rem;
	font-weight:400;
	line-height:1.875;
	width: 55%;
}

.news_list li:last-child{
	border-bottom:none;
}

.co3_div .news_list{
	margin-bottom:62px;
}

.co3_div .btn1{
	margin-left:auto;
}

.content04{
	position:relative;
	padding:93px 0 200px;
}

.bg_contact{
	position:relative;
	z-index: 1;
}

.bg_contact:before{
	position:absolute;
	content:"";
	width: 74%;
	height:100%;
	left:0;
	top:0;
	background:url(./img/top/bg3.jpg)no-repeat left top;
	z-index: -1;
	background-size: cover;
}

.content04 .mainTit{
	margin-left:auto;
	margin-bottom:71px;
}

.co04_div{
	background:#494949;
	display:flex;
	justify-content:space-between;
	padding: 37px 8.334% 45px 10%;
	align-items: center;
	width: 100%;
}

.co04_div .left{
	max-width: 375px;
	width:48%;
}

.co04_div .right{
	max-width:400px;
	width:50%;
}

.tel_btn{
	color:#fff!important;
	font-size: clamp(2.4rem,3vw,4.5rem);
	letter-spacing:0.05em;
	line-height:1.4222;
	margin-bottom: 7px;
	display: flex;
	align-items: baseline;
}

.tel_btn span{
	font-size: clamp(1.6rem,2vw,2.2rem);
	margin-right: 3.734%;
}

.tel_text{
	color:#fff;
	font-size: clamp(1.1rem,1.3vw,1.6rem);
	line-height:1.5625;
}

.btn2{
	display:flex;
	align-items:center;
	justify-content:center;
	color:#FBF8F8!important;
	background:#000000;
	position:relative;
	max-width:400px;
	width:100%;
	height:80px;
	font-size: clamp(1.8rem,1.3vw,2.2rem);
	font-weight:400;
	transition:.4s;
}

.btn2:hover{
	background: #181818;
	opacity: 0.7;
}

.btn2 .arrow{
	position:absolute;
	right:18px;
	transition:.4s;
	top:0;
	bottom:0;
	margin:auto;
	display:flex;
	align-items: center;
}


.btn2:hover .arrow{
	right:10px;
}

/*-----------------------------------------------------------
 footer
-----------------------------------------------------------*/

footer {
	padding:64px 0 0;
}

footer .logo {
	width: 100%;
	max-width:200px;
	margin-bottom:30px;
}

footer .inner {margin: 0 auto;padding-bottom: 56px;width: 95%;}

footer .left{
	max-width: 286px;
	width: 26%;
	color: #fff;
	line-height: 1.5625;
}

footer .left .addp{
	margin-bottom: 24px;
}

footer .left .img{
	max-width:95px;
}

footer .right{
	max-width:822px;
	width: 72%;
}

.tel_area{
	margin-bottom:27px;
}

footer .right .top{
	margin-bottom:110px;
}

.ft_list1{
	display:flex;
	max-width:691px;
	flex-wrap: wrap;
}

.ft_list1 li{
	margin-bottom:19px;
}

.ft_list1 li,
.ft_list2 li{
	margin-right:auto;
}

.ft_list1 li:last-child,
.ft_list2 li:last-child{
	margin-right:0;
}

.ft_list1 li a{
	color:#fff;
	font-size: clamp(1.5rem,2vw,1.8rem);
	font-weight:400;
	display:flex;
	align-items:center;
}

.ft_list1 li a img{
	margin-left:8px;
}

.ft_list2 li a{
	color:#fff;
	font-size: clamp(1.2rem,1.2vw,1.4rem);
	font-weight:400;
	display:flex;
	align-items:center;
}

.ft_list2{
	display:flex;
	flex-wrap: wrap;
}

.copyright {
	color: #fff;
	text-align: center;
	padding: 0 0 29px;
	font-size: 1.3rem;
	border-bottom: 20px solid #000000;
}

/* 全ページ共通クラス
----------------------------------------------------------- */

/*--- パンくず ---*/

.pankuzu {
    margin: 0 auto 17px;
    font-size: 1.2rem;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
}

.pankuzu li:first-child{
    padding-left: 0px;
}

.pankuzu li:first-child:before{
	display:none;
}

.pankuzu li {
    position: relative;
    padding-left: 38px;
    color: #fff;
}

.pankuzu li:first-child {
    margin: 0;
}

.pankuzu li a {
    color: #fff;
}

.pankuzu li:before{
	position:absolute;
	content:"";
	width:15px;
	height:1px;
	background:#fff;
	left:13px;
	bottom: 0px;
	top: 3px;
	margin: auto;
}

/*--- ページトップ ---*/
#pageTop {
	position: fixed;
	bottom: 200px;
	right: 25px;
	z-index: 9999;
}


/* -- お問い合わせ -- */

input {
	vertical-align: middle;
}

.btnBox1 {
	text-align: center;
}

.contact_cf .clearForm,.contact_cf .clearForm2 {
	padding: 10px 5px;
}


.clearForm,
.clearForm2,
.toHome {
	cursor: pointer;
	outline: 0;
	border: none;
	font-weight: bold;
	transition: .2s;
	-moz-transition: .2s;
	-webkit-transition: .2s;
	width:100%;
	margin:0!important;
	height:100%;
	border-radius:59px;
	background:transparent;
	color: #fff;
	font-size: clamp(1.4rem,2vw,1.6rem);
}


.toHome {
	margin: 50px auto 0 !important;
	text-decoration: none;
	display: block;
	text-align: center;
}

.short_input1{
	max-width:196px;
}

.short_input2 {
	max-width:303px;
}


textarea {
	padding: 10px 5px;
	height: 291px;
	width: 100%;
}

.check_flex .wpcf7-form-control.wpcf7-checkbox{
	display:flex;
	flex-direction:column;
}

.check_flex label{
	margin-bottom:17px;
}

.check_flex label:last-child{
	margin-bottom:0px;
}

.check_flex input{
	width: 25px;
	height: 25px;
	margin-right: 4%;

}

input,
textarea,
button,
select,
option {
	outline: none;
}

input[type="text"],
input[type="email"],
input[type="tel"],
select{
	height: 50px;
	padding: 5px;
	width: 100%;
}

input[type="text"],
input[type="email"],
input[type="tel"],
textarea,
select,
option {
	border: 1px solid #EBDFCA;
}

button {
	border: none;
	outline: none;
	background: none;
}

.form_notice1 {
	font-size: 85.714%;
	display: block;
	margin: 5px 0 0;
}

.form_notice2 {
	font-size: 87.5%;
}

.modification_wrap {
	overflow: hidden;
}

.modification {
	width: 221px;
	float: left;
	margin: 0 0 0 246px;
}

.send_bt {
	width: 221px;
	float: right;
	margin: 0 245px 0 0;
}

.error_style {
	color: #FF0000;
	display: block;
	margin: 8px 0 0;
}

.contact01_div2{
	background:#FFF7EA;
	border-radius:12px;
	padding: 27px 0 70px;
}


.contact_tb th, .contact_tb td {
	padding: 20px 0;
	font-size: 1.6rem;
	position: relative;
	line-height: 2.1875;
	font-weight: 400;
}


.contact_tb {
	width: 100%;
	margin: auto;
	max-width: 933px;
}


.contact_tb th {
	width: 32.3%;
	text-align: left;
}

.contact_tb th label{
	display:flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
}

.contact_tb th.ver_tb{
	vertical-align:top;
}

.contact_tb td {width: 67.7%;}

.contact_tb td .text{
	font-size:1.4rem;
}

.noth{padding: 0!important;}

.tb_flex{
	display:flex;
	justify-content:space-between;
}


.tb_flex > span{
width: 49%;
max-width: 303px;
}


em {
	color: #fff;
	font-size: 1.3rem;
	font-weight: 400;
	background: #6C1212;
	padding: 4.5px 0;
	margin-right: 13.56%;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 50px;
	line-height: 1;
}

.contact01_div3{
	margin-top:80px;
}


.pri_div{
	width: 100%;
	padding: 0px 3.5% 0;
	height: 171px;
	overflow-y:scroll;
	margin: 0px auto 18px;
	background: #fff;
}


.pri_div .text1{
	font-size:1.4rem;
	line-height: 1.7857;
	margin-bottom:24px;
}

.pri_div .title{
	font-size: clamp(1.6rem,1.4vw,2rem);
	font-weight:700;
	line-height: 3;
	letter-spacing: 0.01em;
}

.pri_div dt{
	font-size:1.4rem;
	line-height: 1.7857;
	text-indent: -1em;
	padding-left: 1em;
}

.pri_div dd{
	font-size:1.4rem;
	line-height: 1.7857;
	margin-bottom:24px;
	padding-left:12px;
}

.pri_div dd p{
	text-indent: -1em;
	padding-left: 1em;
}

.pri_div dd p.matop{
	margin-top:24px;
}

.privacy_area{
	display:flex;
	align-items:center;
	margin-bottom: 11px;
}

.privacy_area .wpcf7-form-control-wrap .wpcf7-list-item{
	width:100%;
}

.wpcf7-spinner{
	position:absolute;
	bottom:-30px;
	left:0;
	right:0;
	margin:auto;
}

.privacy_area label{
	display:flex;
	align-items: center;
	font-size: clamp(1.3rem,1.4vw,1.6rem);
	font-weight: 400;
	line-height: 1.6;
	width: 100%;
}

.privacy_area label span{
	width:92%;
}

.privacy_area input{
	width: 24px;
	height: 24px;
	border: 1px solid #ccc;
	border-radius: 0;
	accent-color: #ccc;
	margin-right: 10px;
}


/*-- 送信前ダイアログ --*/

.ui-dialog {
    margin: auto;
    position: absolute;
    left: 0 !important;
    right: 0 !important;
}

.ui-corner-all.ui-button-text-only:focus {
	color: #737373;
    background: #fff;
    outline: none;
    border-color: #ccc;
}

.ui-corner-all.ui-button-text-only:hover {
    color: #fff;
    background: #555;
    outline: none;
    border-color: #ccc;
    transition: .3s;
}

.ui-widget-header {
    background: #555 !important;
    border-color: #555 !important;
}

.ui-dialog .ui-dialog-content,
.ui-button-text-only .ui-button-text {
	font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", sans-serif !important;
}


/* TOP
----------------------------------------------------------- */

/*-- メインヴィジュアル スライダー --*/

.bx-wrapper {
	margin: 0 0 20px !important;
	position: relative;
}

.bx-controls-direction {
	width: 100%;
	position: absolute;
	top: 50%;
}

.bx-controls-direction a {
	width: 32px;
	height: 32px;
	margin: -16px 0 0;
	position: absolute;
	top: 50%;
	z-index: 9999;
	outline: 0;
	text-indent: -9999px;
}

.bx-prev {
	left: 1% !important;
	background: url(././img/prev.png) no-repeat 0 0;
	background-size: contain;
}

.bx-next {
	right: 1% !important;
	background: url(././img/next.png) no-repeat 100% 0;
	background-size: contain;
}


/*-- スクロールバーデザイン --*/

.scroll-pane {
	width: 100% !important;
	height: 300px; /*箱の高さ*/
	margin: 40px auto 0;
	overflow-y: auto;
}

.scroll-pane:focus {
	outline: none;
}

.jspContainer {
	width: 100% !important;
	overflow: hidden;
	position: relative;
}

.jspPane {
	width: 100% !important;
	position: absolute;
}

.jspVerticalBar {
	width: 20px;
	position: absolute;
	top: 0;
	right: -5px;
}

.jspArrowUp, .jspArrowDown {
	margin : 0;
	padding: 0;
	display: block;
	cursor : pointer;
	/* background: url(./img/scroll_top.png) no-repeat center; */
}

.jspArrowDown {
	background: url(./img/scroll_bottom.png) no-repeat center;
}

.jspTrack {
	/* background: url(././img/scroll_bg1.png) repeat-y; */
	position: relative;
	background-position: center;
}

.jspDrag {
	width: 4px;
	margin: 0 auto;
	background: #6b6b6b;
	position: relative;
	cursor: pointer;
	border-radius: 8px;
	-moz-border-radius: 8px;
	-webkit-border-radius: 8px;
}

.jspArrow.jspDisabled {
	cursor: default;
}

.jspVerticalBar .jspArrow {
	height: 20px;
}

.jspVerticalBar .jspArrow:focus {
	outline: none;
}




/*-----------------------------------------------------------
 中ページ
-----------------------------------------------------------*/

.leadTxt {
	margin: 30px auto 0;
	padding: 20px;
	background: #ccc;
}



/* プライバシーポリシー
----------------------------------------------------------- */

.privacy dl {
	margin: 30px 0 0;
}

.privacy dt {
	margin: 20px 0 0;
	padding: 0 5px;
	display: inline-block;
	font-weight: bold;
	border-bottom: 2px solid #ccc;
}

.privacy dt:first-child {
	margin: 0;
}

.privacy dd {
	font-size: 14px;
	margin: 10px 10px 0;
}


/* 会社概要
----------------------------------------------------------- */

.company table {
	width: 1000px;
	margin: 30px auto 0;
}

.company th {
	width: 170px;
	padding: 10px 10px 10px 20px;
	border-bottom: 1px solid #fff;
}

.company td {
	width: 470px;
	padding: 10px 10px 10px 20px;
	border-bottom: 1px solid #fff;
}

.company iframe {
	width: 1000px;
	height: 280px;
	margin: 30px auto 0;
}


/* wordpress 記事 */
.detail_area img{
	margin-bottom:24px;
}

.detail_area p:has(img){
	margin:0;
}


.aligncenter{
	margin:0 auto 24px;
	display:block;
}

.detail_area {
	padding-bottom:74px;
	border-bottom: 1px solid #000000;
	margin-bottom: 6.5%;
}

.detail_area p{
	margin-bottom:24px;
	font-size: clamp(1.6rem,2.3vw,2rem);
	line-height: 2.35;
	font-weight: 400;
}

.detail_area h2{
	margin-bottom:24px;
	font-size: clamp(2.4rem,3vw,3.4rem);
	line-height:2.35;
}

.detail_area h3{
	margin-bottom:24px;
	font-size: clamp(1.8rem,2.3vw,2.6rem);
	line-height:2.35;
}

.detail_area h4{
	margin-bottom:24px;
	font-size: clamp(2.2rem,2.3vw,2.2rem);
	line-height:2.35;
}

/* news */

#cover2{
	color: #fff;
	padding-bottom: 10.674%;
}

#cover2 .cov_img{
	height:30vw;
	max-height:365px;
}

.news #cover2 .cov_img{
	background:url(./img/news/mv.jpg)no-repeat left top;
	background-size:cover;
}

.service1 #cover2 .cov_img{
	background:url(./img/service1/mv.jpg)no-repeat left top;
	background-size:cover;
}

.service2 #cover2 .cov_img{
	background:url(./img/service2/mv.jpg)no-repeat left top;
	background-size:cover;
}

.contact #cover2 .cov_img{
	background:url(./img/contact/mv.jpg)no-repeat center top;
	background-size:cover;
}

.about #cover2 .cov_img{
	background:url(./img/about/mv.jpg)no-repeat center top;
	background-size:cover;
}

.ec #cover2 .cov_img{
	background:url(./img/ec/mv.jpg)no-repeat left top;
	background-size:cover;
}


.cov2_div{
	margin-left: 23.2%;
	margin-top: 52px;
}

.cov2_div .title{
	font-style:italic;
	font-weight: 200;
	font-size: clamp(5rem,13vw,10rem);
	line-height: 1.41;
	letter-spacing: 0.2em;
}


.news01{
	padding:73px 0 93px;
}

.cate_list{
	display:flex;
	margin:62px 0 95px;
	flex-wrap: wrap;
}

.cate_list li{
	margin-right: 7.334%;
	padding-left:28px;
	position:relative;
	font-size:1.6rem;
	font-weight:400;
}

.cate_list li:before{
	position:absolute;
	content:"";
	width:23px;
	height:1px;
	background:#000000;
	left:0;
	top:0;
	bottom:0;
	margin:auto;
}

.news01 .news_list{
	margin:0 auto 63px;
}

.news01 .news_list li:first-child{
	border-top:1px solid;
}

.news01 .news_list li:last-child{
	border-bottom:1px solid;
}

.news01 .news_list li{
	padding-left: 6.5%;
}

.pagination-list{
	display:flex;
	margin:0 auto 0;
	justify-content: center;
	width: 100%;
}

.pagination-list .page-numbers{
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.8rem;
	margin: 0 1.8%;
	transition:.4s;
	font-weight: 500;
	text-decoration: none;
	color:#000000;
	position:relative;
	width:19px;
}

.pagination-list .page-numbers.prev{
	margin: 0px 1.8% 0 0;
	position:relative;
}

.pagination-list .page-numbers.next{
	margin: 0px 0% 0 1.8%;
	position:relative;
}

.pagination-list .page-numbers:hover{
	opacity:1;
}

.pagination-list .page-numbers:before{
	position:absolute;
	content:"";
	width:0%;
	height:1px;
	background:#000000;
	left:0;
	right:0;
	bottom:0;
	margin:auto;
	transition:.4s;
}

.pagination-list .page-numbers.current:before,
.pagination-list .page-numbers:hover:before{
	width:100%;
}

.news01 .title_area{
	margin-top:48px;
	padding-bottom: 5.5%;
	border-bottom: 1px solid #000000;
	margin-bottom: 8.17%;
}

.news01 .title_area .cate{
background: #000000;
max-width: fit-content;
color: #fff;
font-size: 1.4rem;
line-height: 1;
padding: 11.5px 13px;
}

.news01 .title_area .title{
	font-weight:700;
	font-size: clamp(1.8rem,3vw,2.2rem);
	position:relative;
	padding-left:40px;
	margin:7px auto;
}

.news01 .title_area .title:before{
	position:absolute;
	content:"";
	width:24px;
	height:1px;
	background:#000000;
	left:0;
	top:0;
	bottom:0;
	margin:auto;
}

.news01 .title_area .date{
	font-size:1.6rem;
	font-weight:400;
}

.news01 .btn_area{
	display:flex;
	justify-content:center;
	max-width:633px;
	width:100%;
	margin:0 auto;
	align-items:center;
}

.news01 .btn_area .btn2{
	margin:0 auto;
	max-width: 190px;
	height: 38px;
	font-size: clamp(1.2rem,3vw,1.4rem);
	width:33%;
}

.news01 .btn_area .btn2 .arrow{
	    position: absolute;
    transition: .4s;
    top: 0;
    bottom: 0;
    margin: auto;
    display: flex;
    align-items: center;
	right:5px;
	font-size: clamp(1.6rem,3vw,2rem);
}


.news01 .btn_area .btn2:hover .arrow{
	right: 0px;
}


.btn3{
	display:flex;
	align-items:center;
	justify-content:space-between;
	max-width:121px;
	width:33%;
	font-size: clamp(1.2rem,3vw,1.4rem);
	font-weight:400;
	padding-bottom: 10px;
	position:relative
}

.btn3 span{
	transition:.2s;
}

.btn3:hover span{
	margin-right:-5px;
}

.btn3.prev:hover span{
	margin-right:initial;
	margin-left:-5px;
}

.btn3:before{
    content: '';
    width: 100%;
    height: 1px;
    background: #000000;
    position: absolute;
    bottom: 0;
    left: 0;
    transition: 0.2s;
}


.btn3:hover:before{
	animation-name: line_move;
    animation-duration: 0.5s;
}

/* service */
.service01{
	padding: 8.667% 0 12.353%;
	position:relative;
}

.sertit1{
	color:#494949;
	font-size: clamp(3rem,4vw,7rem);
	font-weight: 300;
	font-style:italic;
}

.service01 .sertit1{
	position:absolute;
	right:0;
	line-height:0.7;
}

.sertit2{
	font-size: clamp(2.4rem,3vw,3.6rem);
	font-weight: 700;
	background:#727272;
	color:#fff;
	border-radius:35px;
	text-align:center;
	padding: 6.21px;
	width:100%;
}

.ser01_div1{
	max-width: 889px;
    width: 100%;
    margin-bottom: 7.74%;
}

.ser01_div{
	width:100%;
}

.ser01_div .sertit2{
	max-width:879px;
}

.ser01_div .text{
	font-size:1.6rem;
	font-weight:400;
	line-height:2.5;
	margin-top:48px;
}

.ser_list1{

}

.ser_list1.rev li,
.ser_list1 li:nth-child(2n){
	flex-direction:row-reverse;
}

.ser_list1.rev li:nth-child(2n){
	flex-direction:initial;
}

.ser_list1 li:last-child{
	margin-bottom: 0!important;
}

.ser_list1 li{
	display:flex;
	justify-content:space-between;
	align-items:center;
	margin-bottom: 13.193%;
}

.ser_list1 li .img{
	max-width:670px;
	width: 59%;
}

/*
.ser_list1 li:nth-child(2n+1) .img img{
	filter: grayscale(1);
}
*/

.ser_list1.rev_mono li:nth-child(2n+1) .img img{
	filter: none;
}

.ser_list1.rev_mono li:nth-child(2n+2) .img img{
	filter: grayscale(1);
}

.ser_list1 li .text_area{
	max-width:401px;
	width: 36%;
}

.ser_in{
	max-width:1137px;
	margin-right:auto;
	width: 95%;
}

.ser_list1 li .text_area .num{
	color:#494949;
	font-size: clamp(3rem,4vw,7rem);
	font-weight: 300;
	font-style:italic;
	margin-bottom:15px;
	letter-spacing: 0.02em;
	line-height: 1.4857;
}

.ser_list1 li .text_area .title{
	font-size: clamp(2rem,2.1vw,2.8rem);
	font-weight: 700;
	line-height:2.14;
	margin-bottom:9px;
}

.ser_list1 li .text_area .text{
	font-size:1.6rem;
	font-weight:400;
	line-height:2.1875;
}

.ser_list1.rev li{
	margin-bottom: 8.796%;
}

.ser_list1.rev li .img{
	max-width:570px;
	width: 51%;
}

.ser_list1.rev li .text_area{
	max-width:400px;
	width: 47%;
}

.service02{
	margin-top: 298px;
}

.service02 .inner{
	position: relative;
	padding: 6.468% 0;
}

.service02 .sertit1{
	position:absolute;
	left: -4.25%;
	top: -178px;
	line-height: 0.7;
	top: -15.3%;
}

.service02 .sertit2{
	position:absolute;
	top: -121px;
	right:0;
	max-width:879px;
	top: -10.432%;
	width: 80%;
}


.pabo{
	padding-bottom: 200px;
}

/* tokusho */
#cover3{
	padding: 77px 0 128px;
}

.arttit{
	font-size: clamp(2.2rem,4vw,3.2rem);
	font-weight: 700;
	line-height:1.4375;
}

.tokusho01 .tokusho_list{
	margin: 127px auto 80px;
}

.tokusho_list li{
	display: flex;
	align-items: center;
	border-top: 1px solid #fff;
	padding: 15px 0;
	position: relative;
}

.tokusho_list li:last-child{
	border-bottom: 1px solid #fff;
}

.tokusho_list li > .left{
	max-width: 310px;
	width: 26%;
	font-size: clamp(1.6rem,2vw,1.8rem);
	font-weight: 700;
	padding: 0 3.334%;
	line-height: 1.444;
}

.tokusho_list li > .right{
	max-width: 890px;
	width: 74%;
	font-size: clamp(1.5rem,2vw,1.6rem);
	font-weight: 400;
	padding: 0 3.75%;
	position:relative;
	word-break: break-all;
	line-height: 1.4375;
}

.tokusho_list li:before{
	position:absolute;
	content:"";
	width:1px;
	height: 47%;
	background:#fff;
	left:26%;
	top:0;
	bottom:0;
	margin:auto;
}

.tokusho_list li > .right a{
	color:#fff;
}

.tokusho_list2 li{
	margin-top:60px;
}

.tokusho_list2 li .title{
	font-size: 1.8rem;
	font-weight: 700;
	position:relative;
	padding-left:40px;
	margin-bottom:20px;
}

.tokusho_list2 li .title:before{
	position:absolute;
	content:"";
	width:26px;
	height:1px;
	background:#fff;
	left:0;
	top:0;
	bottom:0;
	margin:auto;
}

.tokusho_list2 li .text{
	font-size: 1.6rem;
	font-weight: 400;
	line-height: 1.4375;
}

.tokusho01{
	padding: 0 0 13.906%;
}

.thanks01{
padding: 6.468% 0 23%;
}

.thanks01 .mainTit2{
	font-weight:700;
	text-align:center;
	margin-bottom:46px;
}

.thanks01 .text{
font-weight: 400;
font-size: 1.6rem;
line-height: 2.125;
text-align: center;
}

.contact01{
	padding: 120px 0;
}

.send_btn.btn2{height: 46px;max-width: 230px;font-size: 2rem;}

/* about */

.ab_inner{
	max-width:1288px;
	position:relative;
	z-index: 1;
}

.about01 .sertit1,
.about03 .sertit1{
	position:absolute;
	left:0;
	top:0;
	z-index: 1;
}

.about02 .sertit1,
.about04 .sertit1{
	position:absolute;
	right:0;
	top:0;
}

.about01{
	color:#fff;
	padding: 0 0 11.642%;
}

.about01 .inner{
	padding-left: 6.468%;
}


.about04 .inner,
.about03 .inner{
	padding-left: 6.468%;
	padding-right: 6.468%;
}

.about01 .sertit1,
.about03 .sertit1{
	color: #ffffff4d;
}

.about01_div{
	margin-left: 14.9%;
}

.about01 .text{
	font-size: clamp(1.4rem,1.9vw,1.6rem);
	font-weight:400;
	line-height:3.125;
	margin-top:29px;
}

.about02{
	padding: 8.408% 0;
}

.about02 .inner{
	padding-left:5%;
}

.about02 .flex .text_area{
	max-width:522px;
	width: 47%;
}

.about02 .text{
	font-size: clamp(1.4rem,1.9vw,1.6rem);
	font-weight:400;
	line-height:2.1875;
	margin-top: 8.43%;
}

.about02 .text2{
	font-size:2rem;
	font-weight:400;
	line-height:1.75;
	margin-top: 6.323%;
}

.about02 .flex .img_area{
	max-width:611px;
	width: 51%;
}

.about02 .flex .img_area .img1{
	max-width:460px;
	margin-right:auto;
	width: 76%;
}

.about02 .flex .img_area .img2{
	max-width: 407px;
	margin-left:auto;
	margin-top: 11.457%;
	width: 67%;
}

.about03{
	padding: 13.2% 0 11%;
	color:#fff;
}

.about03_div .mainTit2{
	text-align:center;
	margin-bottom:57px;
}

.about_list li{
	display:flex;
	padding: 20px 0;
	border-top: 1px solid;
	font-size: clamp(1.4rem,1.9vw,1.6rem);
	font-weight: 400;
	line-height: 1.5625;
}

.about_list li .left{
	width: 25.398%;
	padding-left: 2.223%;
}


.about_list li .right{
	width: 74.602%;
}

.about_list li .text.matop{
	margin-top:8px;
}

.about_list li .text2{
	font-size:1.3rem;
	line-height:1.923;
	font-weight:400;
	margin:11px 0 38px;
}

.about_list li:last-child{
	border-bottom:1px solid;
}

.about_list li .btn1{
	max-width:195px;
	margin-bottom: 36px;
}

.about03_div > .btn1{
	max-width:195px;
	margin:66px auto 0;
}

.about03_div > .btn1 img{
	width:11px;
	margin:0 5px 0 11px;
}

.about04{
	padding: 6.47% 0 10.155%;
}

.about03_div,
.about04_div{
	margin-left: auto;
	max-width: 700px;
	margin-right: 14.797%;
	width: 85.203%;
}

.about04_div .mainTit2{
	text-align:center;
	margin-bottom:57px;
}

select{
	-webkit-appearance: none;
	appearance: none;
	background: #fff;
	color: #000;
}

.select_arrow{
	max-width: 303px;
	position: relative;
	width: 100%;
}

.select_arrow:before{
	position:absolute;
	content:"";
	width: 13px;
	height: 6px;
	right: 15px;
	top:0;
	bottom: 0;
	margin: auto;
	pointer-events:none;
	background:url(./img/common/Vector.svg)no-repeat;
	background-size:contain;
	z-index: 1;
}

/*-- 固定ここまで --*/


/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1440px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.ser_list1 li .img,
.ser_list1.rev li .img{
	width: 55%;
}

.ser_list1 li .text_area,
.ser_list1.rev li .text_area{
	width: 46%;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1440px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1300px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.co2_div1 .img_area{padding-bottom: 20%;width: 83%;}


.cov2_div{
	margin-left: 10%;
}

.about03_div,
.about04_div{
	margin: 0 auto;
	width: 90%;
}



.about01_div{
	margin-left: 4%;
}

.service01{padding: 15% 0;}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1300px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */





/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 1000px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/*-----------------------------------------------------------
全体スタイル
-----------------------------------------------------------*/

img {
	width: auto;
	max-width: 100%;
	height: auto;
}



/*-----------------------------------------------------------
header
-----------------------------------------------------------*/

header {margin: 0 1%;width: 16.75%;}


.headerAdd {
	width: 45%;
	margin: 0 0 0 1%;
	font-size: 90%;
}

.headerTel {
	height: auto;
	margin: 0 0 0 0%;
}






/* 全ページ共通クラス
----------------------------------------------------------- */


/* トップページ
----------------------------------------------------------- */



/* 中ページ
----------------------------------------------------------- */


.listUl {
	width: 100%;
	margin: 30px auto 0;
}

.listUl li {
	width: 31.3%;
	margin: 0 1%;
}


/*-- お問い合わせ --*/


/*-- エラーチェック --*/

.formError {
	top: 20px !important;
	left: 10% !important;
}

.zip2formError {
	left: 54% !important;
}

.prefformError, .cityformError, .addformError {
	top: 30px !important;
	left: 10% !important;
}

.ui-dialog {
	width: 80% !important;
}

.nav_list1 li {
	margin-top: 16px;
}

.nav_list1{margin: 0 auto 30px;}

.hd_link .btn1{
	padding-right: 0;
	justify-content: flex-start;
}

.mainTit .subtit:before{
	width:50%;
}


.co2_div1 .img_area .img2{right: -14%;bottom: -25%;}



.co2_div2 .text_area{
	width: 33%;
}

.co2_div2 .img1{
	width: 65%;
	padding-left: 28px;
}

.news_list li .cate{
	margin-right: 2%;
}

.news_list li .title{
	width: 64%;
}


.co04_div{
	padding: 24px 4%;
}

footer .left{
	width: 40%;
}

footer .right{
	width: 58%;
}

.ft_list1 li{
	width:32%;
}

.ft_list2 li{
	width:100%!important;
}

#cover .img1{
	width: 56%;
}

#cover .text_area1 .text{
	font-size: clamp(1.8rem,2vw,2.2rem);
}





.service02{
	margin-top: 200px;
}

.tokusho_list li > .left{
	width: 26%;
	padding: 0 1%;
}

.tokusho_list li > .right{
	padding: 0 3%;
}

.news01 .news_list li{
	padding-left: 2%;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 1000px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 768px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc {
	display: none;
}

.sp {
	display: block;
}

nav li a {
	color: #fff!important;
	font-size: 1.5rem;
}

.contact_tb th{
	padding: 3.48% 0 0;
	font-size: clamp(1.8rem,4vw,2.8rem);
}

.contact_tb td{
	padding: 3.48% 0;
	font-size: clamp(1.6rem,4vw,2.542rem);
}

.contact_tb th, .contact_tb td {
	line-height: 1;
}

a[href*="tel:"] {
	pointer-events: initial;
	cursor: pointer;
	text-decoration: none;
	}

/* ヘッダー
----------------------------------------------------------- */


.telBtn {
	width: 35%;
	line-height: 1;
	margin: 3px 11% 0 0;
	font-size: 4rem;
}

.headerUl{
	display: flex;
	justify-content: flex-end;
}

.menuBtn {
	/* width: 35%; */
	display: flex;
	align-items: center;
	justify-content: center;
}


/*--- modal ---*/

.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 90px;
  height: 65px;
  z-index: 9999;
}
.menu-trigger span {
  position: absolute;
  right: 0;
  width: 100%;
  height: 2px;
  background-color: #fff;
  border-radius: 4px;
}
.menu-trigger span:nth-of-type(1) {
  width: 90px;
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 31px;
  width: 60px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
  width: 40px;
}

.menu-trigger.active span,
.headerScroll .menu-trigger span{
}

.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-52px) rotate(45deg);
  width: 90px;
}

/*gnav*/
.gnav{
    background: #292929;
    display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 999;
    transition: 1s;
    left: 0;
    top: 0;
}

.gnav.active{
	display: block;
}

.gnav__menu{
    display: block;
    width: 100%;
    height: 100%;
    padding: 60px 0 60px;
    margin-bottom: 10px;
}

.gnav__wrap{
    align-items:center;
    display: flex;
    height: 100%;
    justify-content: center;
    position: fixed;
    width: 100%;
	top: 0px;
    overflow: scroll;
}

nav .gnav__menu__item{
    margin: 0px auto 5.6%;
    width: 95%;
}

.gnav__menu__item a{
    font-size: clamp(1.6rem,3.6vw,2.7rem);
    font-weight: 400;
    padding: 0;
    text-decoration: none;
    transition: .5s;
    background: none;
    width: 100%;
    display: flex;
    align-items:center;
    justify-content:center;
}

.gnav__menu__item a img{
	margin-left:10px;
	max-width: 26px;
	width: 4%;
}

.gnav__menu__item1{max-width: 311px;margin: 0 auto 12%;width: 50%;padding-right: 6.8%;padding-top: 3%;}

.gnav__menu__item2{
	width: 95%;
	margin: 12% auto 0;
	padding-bottom: 60px;
}

.gnav__menu__item2 .btn1{
	width: 50%;
	max-width: 268px;
	margin: 0 auto;
	font-size: clamp(1.6rem,5vw,3.09rem);
}

.pc_nav{
	display:none;
}

.hLogo{
	display:none;
}


.main_content{
	width: 100%;
}

.inner{
	width: 92%;
	margin: 0 auto;
}

header {margin: 0;width: 100%;left: 0;top: 0;padding: 51px 31px;}

.open header{
	mix-blend-mode: initial;
}

.cov_div{
	display:flex;
	margin-bottom: 11.47%;
}

#cover .title{
	max-width:271px;
	margin: 12% 0 10% 4%;
	width: 50%;
}

#cover .img1{
	width: 79.254%;
	position:initial;
	margin-left: auto;
}

#cover .img2{
	position:initial;
	width:50%;
	margin-right: 8.8%;
}

#cover .text_area1{
	position:initial;
}

#cover .text_area1 .text{
	font-size: clamp(2rem,4vw,3.5rem);
}


#cover {
	max-height:initial;
	height: auto;
}

#cover .scroll{
	display:none;
}

.content01{
	padding: 23% 0 27%;
}

.content01 .flex{
	flex-direction:column-reverse;
}

.content01 .left{
	max-width:initial;
	width: 100%;
}

.content01 p{
	font-size: clamp(1.6rem,4vw,2.8rem);
	line-height: 2.14;
	margin-bottom: 25%;
}

.content01 .right{
	position:initial;
	margin-left:auto;
	margin-bottom: 12.76%;
}

.mainTit{
	font-size: clamp(5rem,13vw,10rem);
}

.mainTit .subtit{
	font-size: clamp(1.6rem,4vw,2.8rem);
	margin-bottom: 6%;
}

.mainTit .subtit:before{
	width: 62%;
}

.btn1{
	font-size: clamp(1.6rem,4vw,2.8rem);
	line-height: 1.42;
	padding-bottom: 5%;
	max-width: 316px;
	font-weight:400;
	width:50%;
}


.btn1 .arrow{
	font-size: clamp(3rem,4vw,5.2rem);
	top: -4px;
	bottom: auto;
}

.co2_div1{
	height:auto;
	max-height: initial;
	margin: 0 auto 16%;
}

.co2_div1 .img_area{
	width: 96%;
	position: relative;
	padding-bottom: 13.335%;
}

.co2_div1 .text_area {
    max-width: 620px;
    width: 83%;
    position: initial;
    margin: 0 3.665% 18.667% 13.335%;
}

.co2_div1 .title_area {
    position: initial;
    max-width: 620px;
    width: 83%;
    margin: 0 3.665% 18.667% 13.335%;
}

.co2_div1 .img_area .img1{
	padding-right: 6.39%;
	width: 100%;
}

.co2_div1 .img_area .img1 .img_cont{
	max-width:960px;
}

.co2_div1 .img_area .img1 p{
	font-size: clamp(1.6rem,5vw,2.4rem);
	line-height: 1.2;
}

.co2_div1 .img_area .img2{width: 61.5%;position: relative;margin-left: auto;margin-top: -5%;z-index: 1;right: initial;bottom: initial;}


.content02{
	padding: 18.667% 0 27%;
}


.co2_div2{
	margin: 0px 0 0px auto;
	width: 100%;
}

.co2_div2 .flex{
	flex-direction:column;
}

.co2_div2 .text_area{
    max-width: 620px;
    width: 83%;
    position: initial;
    margin: 0 3.665% 0% 13.335%;
    padding-top: 18.668%;
}

.co2_div2 .img1{
	padding-right: 6.39%;
	width: 96%;
	padding-left: 0;
	padding-bottom: 41%;
}

.co2_div2 .img1 p{
	left: auto;
	right: 0;
	font-size: clamp(1.6rem,5vw,2.4rem);
	line-height: 1.2;
}


.co2_div2 .img2{
	margin-top: 0;
	max-width: 360px;
	width: 48%;
	position: absolute;
	top: 35.7%;
	right: 4%;
}

.content02 .text{
	font-size: clamp(1.6rem,4vw,2.8rem);
	line-height: 2.14;
	margin: 6.614% 0 7.905%;
}


.mainTit2{
	line-height: 1.458;
	font-size: clamp(2.8rem,5vw,4.8rem);
	letter-spacing:0.01em;
}


.news_list li{
	padding: 6% 0 28px;
	flex-wrap:wrap;
}

.news_list li .date{
	font-size: clamp(1.6rem,3vw,2.4rem);
	line-height:2;
	margin-right: 3%;
}

.news_list li .cate{
	font-size: clamp(1.6rem,2vw,2.4rem);
	line-height:2;
	margin-right: 0%;
}

.news_list li .title{
	-webkit-line-clamp: 2;
	font-size: clamp(1.8rem,4vw,2.8rem);
	line-height: 1.7857;
	width: 100%;
	margin-top: 3.3%;
}


.btn1:before{
    height: 2px;
}


.co3_div{
	margin-top: 14.494%;
}

.content03{
	padding: 18.667% 0 26.667%;
}


.bg_contact:before{
	width: 78%;
}

.content04 .mainTit{
	margin-bottom: 20.29%;
	font-size: 8.6rem;
	font-size: clamp(5rem,13vw,8.6rem);
}

.content04{
	padding: 18.667% 0 27%;
}


.co04_div{
	padding: 9.567% 2% 13.334%;
	flex-direction:column;
}

.co04_div .left{
	max-width: initial;
	width:100%;
}

.co04_div .right{
	max-width:initial;
	width:100%;
	margin: 9% auto 0;
}

.tel_btn{
	font-size: clamp(3rem,10vw,6.6rem);
	line-height: 1.5454;
	justify-content: center;
}

.tel_btn span{
	font-size: clamp(2.4rem,5vw,3.537rem);
	margin-right: 2.85%;
}

.tel_text{
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 1.228;
	text-align: center;
	font-feature-settings: "palt";
}

.btn2{
	max-width:initial;
	width:100%;
	height: 100px;
	font-size: clamp(2rem,5vw,3rem);
	max-width: 570px;
	margin: 0 auto;
}

footer .flex{
	flex-direction:column;
}

footer .left{
	max-width: initial;
	width: 100%;
	margin-bottom: 14.495%;
}

footer .right{
	width: 100%;
	max-width: initial;
}


footer {
	padding: 19% 0 0;
}


footer .left .addp{
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 1.964;
	margin-bottom:30px;
}

footer .logo {
	width: 65%;
	margin: 0 auto 12%;
	max-width: 363px;
	padding-right: 8.506%;
}

footer .inner {padding-bottom: 0;width: 92%;}

footer .left .img{
	max-width:193px;
	min-width: 95px;
	width: 27%;
}



.tel_area{
	margin-bottom: 5.799%;
}

.tel_area .tel_btn{
	justify-content:flex-start;
}

.tel_area .tel_text{
	text-align:left;
}

footer .right .top{
	margin-bottom: 12.76%;
}

.ft_list1{
	display:flex;
	max-width:691px;
	flex-wrap: wrap;
}

.ft_list1 li,
.ft_list2 li{
	margin-right:auto;
	width: 100%;
	margin-bottom: 6%;
}

.ft_list1 li:last-child,
.ft_list2 li:last-child{
	margin-right:0;
}

.ft_list1 li a{
	font-size: clamp(1.6rem,4vw,2.7rem);
}

.ft_list1 li a img{
	margin-left:8px;
}

.ft_list2 li a{
	font-size: clamp(1.4rem,3vw,2rem);
}

.ft_list2{margin-top: 4%;}

.copyright {
	padding: 9.8% 0 5.5%;
	font-size: clamp(1.5rem,4vw,2.4rem);
	border-bottom: 30px solid #000000;
}

footer .btn2{
	margin:0;
	max-width:460px;
	font-size: clamp(2rem,5vw,2.6rem);
}

.gray_bef.sp_gray_bef:before{
width: 100%;
}

.cate_list{
	margin: 10.145% 0 4.06%;
	justify-content: space-between;
}

.cate_list li{
	margin-right: 0;
	padding-left: 0;
	font-size: clamp(1.8rem,4vw,2.8rem);
	border:1px solid #000;
	width:49%;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	margin-bottom: 3.19%;
}

.cate_list li:before{
display:none;
}


.news01 .news_list li:first-child{
	border-top:none;
}

.news01{
	padding: 9.334% 0 26.667%;
}

.news01.news02{
	padding: 9.334% 0 20%;
}

.pagination-list .page-numbers{
	font-size: clamp(1.8rem,4vw,3.167rem);
	margin: 0 3.8%;
	width:30px;
}

.pagination-list .page-numbers.prev{
	margin: 0px 3.8% 0 0;
}

.pagination-list .page-numbers.next{
	margin: 0px 0% 0 3.8%;
}

#cover2{
	padding-bottom: 16%;
}

#cover2 .cov_img{
	height: 48vw;
	width: 80%;
}

.news #cover2 .cov_img{
	background:url(./img/news/mv_sp.jpg)no-repeat left top;
	background-size:cover;
}


.service1 #cover2 .cov_img{
	background:url(./img/service1/mv_sp.jpg)no-repeat left top;
	background-size:cover;
}

.service2 #cover2 .cov_img{
	background:url(./img/service2/mv_sp.jpg)no-repeat left top;
	background-size:cover;
}

.contact #cover2 .cov_img{
	background:url(./img/contact/mv_sp.jpg)no-repeat center top;
	background-size:cover;
}

.about #cover2 .cov_img{
	background:url(./img/about/mv_sp.jpg)no-repeat center top;
	background-size:cover;
}

.ec #cover2 .cov_img{
	background:url(./img/ec/mv_sp.jpg)no-repeat left top;
	background-size:cover;
}

.cov2_div{
	margin-left: 4%;
	margin-top: 50px;
}

.cov2_div .title{
	font-size: clamp(5rem,14vw,10rem);
}

.pankuzu {
	font-size: clamp(1.6rem,4vw,2.8rem);
}

.pankuzu li{
    padding-left: 36px;
}

.pankuzu li:before{
	left:13px;
	bottom:auto;
	top: 24px;
}

.news01 .title_area{
	margin-top: 10.87%;
	padding-bottom: 14.495%;
	margin-bottom: 11.595%;
}

.news01 .title_area .cate{background: #494949;font-size: clamp(1.8rem,5vw,2.8rem);padding: 10px 30px;}

.news01 .title_area .title{
	font-weight:400;
	font-size: clamp(2rem,5vw,3.6rem);
	padding-left:38px;
}

.news01 .title_area .title:before{
	top:30px;
	bottom:auto;
}

.news01 .title_area .date{
	font-size: clamp(1.6rem,3vw,2.4rem);
}


.detail_area p{
	font-size: clamp(1.8rem,3vw,2.8rem);
}

.detail_area h2{
	font-size: clamp(3.4rem,3vw,4.4rem);
}

.detail_area h3{
	font-size: clamp(2.6rem,3vw,3.6rem);
}

.detail_area h4{
	font-size: clamp(2.2rem,3vw,3.2rem);
}

.detail_area {
	padding-bottom: 56px;
	margin-bottom: 13.5%;
}

.news01 .btn_area{
	flex-wrap:wrap;
	justify-content:space-between;
	max-width: initial;
}

.btn_area .prev{
	order:1;
	width: 48%;
}

.btn_area .next{
	order:2;
}

.news01 .btn_area .btn3{
	max-width:316px;
	width: 48%;
	padding-bottom: 3.914%;
	font-size: clamp(1.6rem,5vw,2.8rem);
}

.news01 .btn_area .btn3 span{
	font-size: clamp(3rem,5vw,4rem);
}

.news01 .btn_area .btn2{
	margin: 60px auto 0;
	max-width: 460px;
	height: 100px;
	font-size: clamp(2rem,5vw,3rem);
	width:100%;
	order:3;
	font-weight: 400;
}


.news01 .btn_area .btn2 .arrow{
	right: 6%;
	font-size: clamp(2rem,5vw,3rem);
}

.news01 .btn_area .btn2:hover .arrow{
	right:3%;
}

.ser_in{
	width: 90.29%;
	margin-right: 0;
	margin-left: auto;
}

.service02 .ser_in{
	margin-left: 0;
	margin-right: auto;
	width: 90.58%;
}

.gray_bef:before{
	width: 93.334vw;
}

.ser01_div1{
	display:flex;
	flex-direction:row-reverse;
	justify-content: space-between;
	margin-bottom: 16.053%;
}

.sertit1 {
    font-size: clamp(4rem,11vw,8rem);
}

.service01 .sertit1 {
    position: initial;
    line-height: 0.9;
}

.ser01_div {width: 85%;max-width: 510px;}

.sertit2{
	font-size: clamp(2.4rem,6.4vw,4.8rem);
	padding: 0;
	border-radius: 60px;
	line-height: 2.5;
}

.ser01_div .text{
	font-size: clamp(1.6rem,4vw,2.8rem);
	line-height:2.142;
	margin-top: 11.767%;
}

.ser_list1 li{
	flex-direction: column!important;
	margin-bottom: 20.708%;
}

.ser_list1 li .img,
.ser_list1.rev li .img{
	width: 100%;
	max-width: initial;
}

.ser_list1 li .text_area{
	width: 100%;
	max-width:555px;
	margin: 9.6333% auto 0 0;
}

.ser_list1.rev li .text_area{
	width: 100%;
	max-width:555px;
	margin:44px auto 0 0;
}

.ser_list1 li .text_area .num{
	font-size: clamp(4rem,11vw,8rem);
	margin-bottom: 5.406%;
	line-height: 1;
}

.ser_list1 li .text_area .title{
	font-size: clamp(2rem,5vw,3.6rem);
	line-height: 1.667;
	margin-bottom: 5.406%;
}

.ser_list1 li .text_area .text{
	font-size: clamp(1.6rem,4vw,2.8rem);
	line-height:2.142;
}

.service01{
	padding: 19.867% 0 18.667%;
}


.service02{
	margin-top: 53.334%;
}


.service02 .sertit1{
	left: 0%;
	line-height: 0.7;
	top: -9.7%;
}

.service02 .sertit2{
	top: -10.1%;
	width: 80%;
	padding: 15px 0;
	border-radius: 75px;
	max-width: 580px;
	letter-spacing: 0.1em;
	line-height: 1.25;
}

.service02 .inner{
	padding: 18.667% 0 16%;
}

.gray_bef2:before{
	width: 95.734vw;
}

.ser_list1.rev li{
	margin-bottom: 22.4%;
}

.pabo{
	padding-bottom: 26.667%;
}


.tokusho_list li > .left{
	width: 31.16%;
	padding: 0 2.9%;
	font-size: clamp(1.5rem,4vw,2.8rem);
}

.tokusho_list li > .right{
	padding: 0 0% 0 3%;
	width: 56%;
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 1.462;
}


.tokusho_list li:before{
	left: 31.16%;
}

#cover3{
	padding: 41px 0 100px;
}


.tokusho01 .tokusho_list{
	margin: 16.523% auto 9.4223%;
}

.tokusho_list2 li{
	margin-top: 9.422%;
}

.tokusho_list2 li .title{
	font-size: clamp(1.6rem,4vw,2.8rem);
	padding-left:40px;
	margin-bottom: 4.35%;
	line-height: 1.4642;
}


.tokusho_list2 li .text{
	font-size: clamp(1.6rem,4vw,2.8rem);
	font-weight: 400;
	line-height: 1.7857;
	padding-bottom: 5px;
}

.tokusho01{
	padding: 0 0 27%;
}

.thanks01{padding: 15.468% 0 26.8%;}

.thanks01 .mainTit2{
	margin-bottom: 8.117%;
	font-size: clamp(2rem,5.1vw,3.8rem);
}

.thanks01 .text{line-height: 1.7857;font-size: clamp(1.6rem,4vw,2.8rem);}


em {
	margin-right: 5.656%;
	font-size: clamp(1.4rem,3vw,2.4rem);
	max-width: 79px;
	padding: 6.5px 0;
}

table {
	width: 100%;
}

th, td {
	width: 100% !important;
	display: block;
}

input[type="text"],
input[type="email"],
input[type="tel"],
select{
	height: 80px;
}

.tb_flex > span{
max-width: 337px;
}


.short_input1{
	max-width:337px;
}

.short_input2 {
	max-width:337px;
}

.select_arrow{
	max-width: 337px;
}

#city.short_input2 {
	max-width:initial;
}

.check_flex input{
	width: 39.72px;
	height: 39.72px;
	margin-right: 6%;
}

.contact01{
	padding: 10.134% 0 26.667%;
}


.pri_div{
	padding: 26px 6.088% 0 4.638%;
	height: 410px;
	margin: 3px auto 39px;
}

.pri_div .text1{
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 1.4285;
	margin-bottom:24px;
}

.pri_div .title{
	font-size: clamp(2rem,5vw,3.6rem);
	line-height: 1.25;
	letter-spacing: 0.1em;
	margin-bottom: 22px;
}

.pri_div dt{
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 1.4285;
	margin-bottom: 8px;
}

.pri_div dd{
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 1.4285;
	margin-bottom:24px;
	padding-left: 4.546%;
}


.privacy_area{
	margin-bottom: 9.132%;
}

.privacy_area label{
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 1.4285;
	letter-spacing: 0.1em;
}

.privacy_area input{
	width: 42px;
	height: 42px;
	margin-right: 23px;
}

.send_btn.btn2{height: 100px;max-width: 460px;font-size: 3rem;}

.clearForm,
.clearForm2,
.toHome {
	font-size: clamp(1.8rem,4vw,3rem);
}

textarea {
	height: 489px;
}

.about01 .inner{
	padding-left: 0%;
	display:flex;
}

.about04 .inner,
.about03 .inner{
	padding-left: 0%;
	padding-right: 0%;
}

.about01 .sertit1 {
    position: initial;
    line-height: 1;
}

.about01_div{
	margin-left: 9.42%;
}

.about01 .text{
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 2.1428;
	margin-top: 10.36%;
}


.about01{
	padding: 0 0 26.304%;
}

.about02 .sertit1, .about04 .sertit1 {
    position: initial;
    line-height: 1;
    margin-right: -1.8%;
}

.about02{
	padding: 18.3% 0 21.3%;
}

.about02 .inner{
	padding-left: 0;
}

.about02 .flex{
	flex-direction:column;
}

.about02 .flex .text_area{
	max-width:initial;
	width: 100%;
	display:flex;
	justify-content:space-between;
	flex-direction:row-reverse;
}

.about02 .text{
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 2.1428;
	margin-top: 10.36%;
}

.about02 .text2{
	font-size: clamp(1.7rem,4vw,3rem);
	line-height: 2.1428;
	margin-top: 5%;
}

.about02 .flex .img_area{
	max-width: initial;
	width: 100%;
	margin: 8.696% auto 0;
}

.about02 .flex .img_area .img1{
	max-width: initial;
	width: 100%;
}

.about02 .flex .img_area .img2{
	max-width: 380px;
	margin-top: 8.696%;
	width: 56%;
}

.about03 .sertit1{
	display:none;
}

.about03_div{
	margin: 0 auto;
	width: 100%;
}



.about04_div{
	margin: 0 auto 0 0;
	width: 83.334%;
}

.about04_div .about_list li{
	align-items:center;
}

.about03{
	padding: 17% 0 26%;
}

.about03_div .mainTit2{
	margin-bottom: 40px;
}

.about_list li{
	padding: 26px 0;
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 1.4285;
}

.about_list li .left{
	width: 24.06%;
	padding-left: 0;
}

.about_list li .right{
	width: 75.94%;
}

.about_list li .text.matop{
	margin-top: 28px;
}

.about_list li .text2{
	font-size: clamp(1.5rem,4vw,2.8rem);
	line-height: 1.4285;
	margin: 15px 0 12.216%;
}

.about_list li:last-child{
	border-bottom:1px solid;
}

.about_list li .btn1{
	max-width: 297px;
	margin-bottom: 38px;
	width: 70%;
}

.about03_div > .btn1{
	max-width: 383px;
	margin: 61px auto 0;
	width: 70%;
}

.about03_div > .btn1 img{
	width: 39px;
	margin: 0 6.3% 0 0px;
}

.about04 .inner{
	display:flex;
	flex-direction:row-reverse;
	justify-content:space-between;
}

.gray_bef3:before{
	width: 96vw;
}

.about04{
	padding: 16% 0 13.334%;
}

.news01 .news_list li{
	padding-left: 0%;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 768px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 591px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.pc2, .pcTel {
	display: none;
}

.sp2 {
	display: block;
}

.spTel  {
	display: inline;
}


/*-- テーブル --*/




/*-- ページトップ --*/

#pageTop {
	display: none !important;
}


/* フッター
----------------------------------------------------------- */

.sp nav {
	margin: 0 auto;
}


/* トップページ
----------------------------------------------------------- */

#main {
}



/* 中ページ
----------------------------------------------------------- */
.company iframe {
	width: 100%;
	margin: 30px auto 0;
	display: block;
}

.listUl li {
	width: 48%;
}

/*-- エラーチェック --*/

.zip1formError {
	left: 10% !important;
}

.zip2formError {
	left: 54% !important;
}

.prefformError, .cityformError, .addformError {
	top: 30px !important;
	left: 50% !important;
}

.detailBox > div {
	width: 100%;
	float: none;
}

.detailBox > .detailTxt {
	width: 98%;
	margin: 20px auto 0;
}

.formError {
	top: 20px !important;
	left: 10% !important;
}

.zip2formError {
	width: 42% !important;
	left: 50% !important;
}

.menu-trigger {
  position: relative;
  width: 40px;
  height: 30px;
  z-index: 9999;
}
.menu-trigger span:nth-of-type(1) {
  width: 40px;
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 14px;
  width: 20px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
  width: 10px;
}

.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(10px) rotate(-45deg);
  width: 40px;
}

.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-17px) rotate(45deg);
  width: 40px;
}

header {padding: 24px 16px;}


.mainTit .subtit:before{
	width: 55%;
}

.co2_div2 .img2{
	top: 33%;
}

.co2_div2 .img1{
	padding-bottom: 36%;
}

.btn2{
	height: 70px;
}

.pankuzu li:before{
	top: 13px;
}

.news01 .title_area .title:before{
	top:16px;
}

.news01 .btn_area .btn2{
	margin: 40px auto 0;
	height: 70px;
}


.tokusho_list li > .left{
	width: 33%;
	padding: 0 2%;
}

.tokusho_list li > .right{
	padding: 0 0% 0 2%;
	width: 65%;
	line-height: 1.462;
}


.tokusho_list li:before{
	left: 33%;
}

input[type="text"],
input[type="email"],
input[type="tel"],
select{
	height: 50px;
}


.check_flex input{
	width: 24px;
	height: 24px;
	margin-right: 3%;
}

em {
	margin-right: 3%;
	max-width: 55px;
}

.pri_div{
	height: 250px;
}

.privacy_area input{
	width: 24px;
	height: 24px;
	margin-right: 10px;
}

.send_btn.btn2{height: 70px;font-size: 2.4rem;}

textarea {
	height: 200px;
}


.short_input1{
	max-width:initial;
}

.short_input2 {
	max-width:initial;
}

.select_arrow{
	max-width:initial;
}
.about01_div{
	margin-left: 3%;
}

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 591px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 414px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

.ui-dialog.ui-widget.ui-widget-content.ui-corner-all.ui-front.ui-dialog-buttons {
    width: 94% !important;
    margin: 0 auto;
    position: absolute;
    left: 0;
    right: 0;
}


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 414px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */




/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */

@media screen and (max-width: 320px) {

/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */
/* ★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★ */


/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */

} /* max-width: 320px ここまで */

/* ☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆☆ */


/* Shopify BUYボタン部分 */

.shopify_conte{
	color:#fff;
	padding: 0 0 11.642%;
}

.shopify_conte_inner{
	width: 90%;
    max-width: 1200px;
    margin-left: auto;
    display: flex;
    flex-wrap: wrap;
    grid-gap:4rem 2rem;
}
