/******************
テンプレート全体[共通]
******************/
.wp-block-image{
	width:100%;
	margin:0 0 20px 0;
}
.wp-block-column:not(:first-child){
	margin:0!important;
}
.wp-block-column:not(:first-child){
	margin:0!important;
}
.wp-block-column:nth-child(2n){
	margin:0!important;
}
.picLeft , .picRight{
	width:100%;
	display:block!important;
	margin:30px auto 20px auto!important;
	overflow:hidden;
}
.picLeft .wp-block-media-text__media{
	float:left;
	display:block!important;
	width:44%;
}
.picLeft .wp-block-media-text__content{
	float:right;
	display:block!important;
	width:50%;
	padding:0!important;
}
.picRight .wp-block-media-text__media{
	float:right;
	display:block!important;
	width:44%;
}
.picRight .wp-block-media-text__content{
	float:left;
	display:block!important;
	width:50%;
	padding:0!important;
}
.infoGallrey{
	display:block!important;
	width:100%;
	margin:0 auto!important;
	overflow:hidden;
}
.infoGallrey .wp-block-image{
	float:left;
	width:32%!important;
	margin:0 2% 2% 0!important;
}
.infoGallrey .wp-block-image:nth-child(3n){
	float:right;
	margin:0 0 2% 0!important;
}
.infoGallrey .wp-block-image:nth-child(3n+1){
	clear:both;
}
.infoGallrey .wp-block-image img{
	max-width:100%;
	width:100%;
	margin:0 auto;
	object-fit:cover!important;
	height:330px!important;
	flex: unset!important;
}
.blocks-gallery-grid .blocks-gallery-item,  .wp-block-gallery .blocks-gallery-item {
    flex-grow: initial!important;
}
li.blocks-gallery-item {
    height: 210px;
}
.blocks-gallery-grid .blocks-gallery-image, .blocks-gallery-grid .blocks-gallery-item, .wp-block-gallery .blocks-gallery-image, .wp-block-gallery .blocks-gallery-item {
    flex-grow: initial!important;
}
.spTxt{
	display:none;
}
ul.arrowIcon{
	width:100%;
	overflow:hidden;
	position:relative;
	margin:15px auto;
}
ul.arrowIcon li{
	padding:2px 0 2px 20px;
	position:relative;
}
ul.arrowIcon li::before{
	font-family: 'Material Icons';
  	content:'\e5df';
  	transition: 0.3s;
  	position: absolute;
  	left: 0.1px;
  	top: 3px;
  	color:var(--themecolor);
	transition:.3s;
	font-weight:400;
	font-size:2.2rem;
}
.point{
	display:inline-block;
	background:var(--themecolor);
	color:#fff;
	line-height:1;
	padding:7px 10px;
	text-align:center;
	width:25%;
	max-width:80px;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	font-weight:600;
	margin:0 0 10px 0;
}
.pointTtl{
	font-weight:600;
	font-size:2rem;
	margin:0 auto 15px auto;
	overflow:hidden;
}
@media screen and (max-width: 1260px) {
.infoGallrey .wp-block-image img{
	height:230px!important;
}
}
@media screen and (min-width: 751px) and (max-width: 1140px) {
li.blocks-gallery-item {
    height: 184px;
}
}
@media screen and (max-width: 850px) {
.spTxt{
	display:block;
	font-size:85%;
	padding:0 0 10px 0;
}
}
@media screen and (max-width: 770px) {
.picLeft .wp-block-media-text__media{
	float:none;
	width:100%;
	margin:0 auto 25px auto!important;
}
.picLeft .wp-block-media-text__content{
	float:none;
	width:100%;
}
.picRight .wp-block-media-text__media{
	float:none;
	width:100%;
	margin:0 auto 25px auto!important;
}
.picRight .wp-block-media-text__content{
	float:none;
	width:100%;
}
li.blocks-gallery-item {
    height: 160px;
}
.infoGallrey .wp-block-image{
	width:49%!important;
	margin:0 0 2% 0!important;
}
.infoGallrey .wp-block-image:nth-child(2n){
	float:right;
	margin:0 0 2% 0!important;
}
.infoGallrey .wp-block-image:nth-child(3n){
	float:left;
}
.infoGallrey .wp-block-image:nth-child(6n){
	float:right;
}
.infoGallrey .wp-block-image:nth-child(2n+1){
	clear:both;
}
.infoGallrey .wp-block-image:nth-child(3n+1){
	clear:inherit;
}
.infoGallrey .wp-block-image img{
	height:220px!important;
}
.point{
	width:25%;
	max-width:100px;
	margin:0 0 5px 0;
}
.pointTtl{
	font-size:1.8rem;
	margin:0 auto 10px auto;
}
}
@media screen and (max-width: 540px) {
.infoGallrey .wp-block-image img{
	height:160px!important;
}
}
@media screen and (max-width: 420px) {
.infoGallrey .wp-block-image img{
	height:130px!important;
}
}

* html .commonBox {
	height: 1%;
}

img.aligncenter{
	display: block;
	margin:0 auto;
	float:none;
}

img.alignright{
	margin:0 0 0 auto;
	display:block;
	float:none;
}

img.alignleft{
	text-align: left;
	float:none;
}
.maruTxt{
	text-indent: -0.6em;
	padding-left: 12px;
}

/******************
中ページ共通項目[共通]
******************/

input , textarea , select{
	font-size:1.1rem;
	border: 1px solid #cccccc;
	outline: none;
}
.bread{
	clear:both;
	margin: 0 auto;
	width:100%;
	padding:60px 0 0 0;
}
.bread p {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
	font-size:clamp(0.8rem, 0.782rem + 0.09vw, 0.85rem);
}
.bread a{
  	text-decoration: underline;
  	transition-duration: .4s;
	color:#666;
}
.bread .breadBar{
	background: var(--themecolor);
  	width:10px;
	height:1px;
}
.bread .lastBread{
	color:var(--themecolor);
}
.bread a:hover{
	color:var(--hovercolor);
}
.bread a br{
	display:none;
}
.h20{
	clear:both;
	height:40px;
}
@media screen and (max-width: 1000px) {
.bread{
	padding:50px 0 0 0;
}
.p70s30{
	height:50px!important;
}
}
@media screen and (max-width: 781px) {
.p70s30{
	height:40px!important;
}
}
@media screen and (max-width: 540px) {
.p70s30{
	height:30px!important;
}
}
@media screen and (max-width: 480px) {
.bread{
	padding:40px 0 0 0;
}
.bread p {
    flex-wrap:wrap;
}
}

.h2Main{
	border-bottom:1px solid #ebebeb;
	padding:50px 0;
	margin:0 auto 50px auto;
}
h2{
	display: flex;
	align-items:baseline;
	gap:40px;
	color: var(--basecolor);
  	position: relative;
  	font-weight: 500;
	font-size:clamp(1.05rem, 0.995rem + 0.27vw, 1.2rem);
}
.h2En{
	display:block;
  	font-size:clamp(2.2rem, 1rem + 6vw, 5.5rem);
	font-family: var(--enLg);
	color: var(--basecolor);
  	font-weight: 600;
	letter-spacing: 0.1rem;
}
h3{
	font-size:clamp(1.4rem, 1.255rem + 0.73vw, 1.8rem);
	color:var(--basecolor);
	padding:0 0 15px 0;
	margin:0 auto 25px auto;
	position:relative;
	font-weight:400;
}
h3::before{
	content:"";
	position:absolute;
	left:0;
	bottom:0;
	width:80px;
	height:3px;
	background:var(--themecolor);
}
h3::after{
	content:"";
	position:absolute;
	left:80px;
	bottom:1px;
	width:calc(100% - 80px);
	height:1px;
	background:#fff;
}
h4{
	background:linear-gradient(
		90deg,
		var(--themecolor) 0,
		var(--themecolor) 5px,
		transparent 5px
	);
	padding:5px 15px 8px 15px;
	font-size:clamp(1.2rem, 1.091rem + 0.55vw, 1.5rem);
	color:var(--basecolor);
	font-weight:400;
	line-height:1;
	margin:0 auto 25px auto;
}
h5{
	position:relative;
	padding:0 0 0 15px;
	font-size:clamp(1.1rem, 1.027rem + 0.36vw, 1.3rem);
	color:var(--basecolor);
	font-weight:400;
	margin:0 auto 20px auto;
}
h5::before{
	content:"";
	position:absolute;
	left:0;
	top:50%;
	width:8px;
	height:8px;
	background:var(--themecolor);
	transform:translateY(-50%) rotate(45deg);
}
h6{
	color:var(--themecolor);
	margin:0 auto 15px auto;
	font-size:clamp(1rem, 0.964rem + 0.18vw, 1.1rem);
}
@media screen and (max-width: 1400px) {
.h2Main{
	padding:30px 0;
	margin:0 auto 30px auto;
}
}
@media screen and (max-width: 1100px) {
.h2Main{
	padding:0 0 20px 0;
}
}
@media screen and (max-width: 800px) {
.h2Main {
    padding:20px 0 30px 0;
	margin:0 auto 20px auto;
}
h2{
	display: block;
	gap:unset;
	line-height:1.4;
}
h3 {
    padding: 0 0 10px 0;
    margin: 0 auto 20px auto;
}
}


.editPostLink{
	clear:both;
	width:12%;
	margin:35px 0 0 0;
}
.editPostLink a{
	width:100%;
	display:block;
	padding:3px 0;
	text-align:center;
	background-color:#333;
	color:#fff;
	transition:.3s;
	line-height:2;
	display: inline-flex;
  	align-items: center;
  	justify-content: center;
}
.editPostLink a .material-symbols-outlined{
	font-size:1.7rem;
	padding:0 5px 0 0;
}
.editPostLink a:hover{
	background-color:var(--themecolor);
	text-decoration:none;
}

@media screen and (max-width: 770px) {
.editPostLink{
	float:none;
	display:block;
	width:100%;
}
}

.Pagination {
  	display: flex;
  	align-items: center;
	margin:30px auto;
	overflow:hidden;
}
.Pagination-Item-Link {
  	width: 30px;
  	height: 30px;
  	display: flex;
  	justify-content: center;
  	align-items: center;
  	flex-wrap: wrap;
  	overflow: hidden;
  	background: #fff;
  	border: solid 1px var(--themecolor);
  	font-size: 0.9rem;
  	color: var(--themecolor);
  	font-weight: 400;
  	transition: all 0.15s linear;
	line-height:1;
}
.Pagination-Item-Link-Icon {
  	width: 18px;
}
.Pagination-Item-Link.isActive {
  	background: var(--themecolor);
  	color: #fff;
  	pointer-events: none;
}
.Pagination-Item-Link:not(.isActive):hover {
  	background: var(--themecolor);
  	color: #fff;
	text-decoration:none;
}
.Pagination > * + * {
  	margin-left: 8px;
}

/************
事業内容
************/
.business{
	width:100%;
	margin:0 auto 60px auto;
	justify-content:space-between;
	background:rgba(255,255,255,.85);
	padding:3%;
	box-sizing:border-box;
	backdrop-filter: blur(8px);
  	-webkit-backdrop-filter: blur(8px);
  	box-shadow: 0 5px 20px rgba(0,0,0,.2);
}
.bsLast{
	margin:0 auto;
}
.business h3::after {
  background: var(--hovercolor);
}
.business .wp-block-column {
    flex-basis: unset!important;
    flex-grow: unset!important;
  }
.businessL{
	width:48%;
}
.businessR{
	width:45%;
}
.businessR .wp-block-image {
  	margin: 0!important;
}
ul.businessList{
	width:100%;
	max-width:615px;
	overflow:hidden;
	position:relative;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
}
ul.businessList li{
	width:46%;
	position:relative;
	padding:0 0 3px 13px;
	text-align:left;
}
ul.businessList li::before{
	position:absolute;
	content:'';
	width:8px;
	height:8px;
	background:var(--themecolor);
	left:0.1px;
	top:13px;
	border-radius:50%;
}
#electrical , #air-conditioner , #antenna , #security-camera , #equipment , #ev{
	scroll-margin-top:120px;
}
@media screen and (max-width: 1000px) {
.business{
	display:block!important;
	margin:0 auto 50px auto!important;
	padding:4%;
}
.businessL{
	width:100%;
	margin:0 auto 30px auto!important;
}
.businessR{
	width:100%;
	margin:0 auto!important;
}
ul.businessList {
    max-width: 100%;
}
.businessR .wp-block-image img {
    width:100%;
}
}
@media screen and (max-width: 700px) {
ul.businessList{
	display:block;
}
ul.businessList li{
	width:100%;
	padding:0 0 3px 13px;
}
}
@media screen and (max-width: 640px) {
.business{
	margin:0 auto 40px auto!important;
	padding:6%;
}
.bsLast{
	margin:0 auto!important;	
}
.businessL{
	margin:0 auto 20px auto!important;
}
}


/************
施工事例
************/
.workBox{
	width:100%;
	margin:0 auto;
	display:flex;
	gap:30px;
	flex-wrap:wrap;
	justify-content:flex-start;
}
.workBoxOne{
	width: calc((100% - 60px) / 3);
	margin:0 0 10px 0;
	justify-content:flex-start;
	background:rgba(255,255,255,.9);
	padding:1.5%;
	box-sizing:border-box;
	backdrop-filter: blur(8px);
  	-webkit-backdrop-filter: blur(8px);
  	box-shadow: 0 5px 20px rgba(0,0,0,.2);
}
.workBoxImg{
	position:relative;
	overflow:hidden;
	margin:0 auto 15px auto;
}
.workBoxImg img{
	width:100%;
	height:280px;
	object-fit:cover;
	display:block;
	transition:transform .3s ease;
}
.workBoxImg::after{
	content:"";
	position:absolute;
	inset:0;
	background:rgba(0,0,0,0);
	transition:.3s ease;
	z-index:2;
	pointer-events:none;
}
.workBoxImg:hover img{
	transform:scale(1.05);
}
.workBoxImg:hover::after{
	background:rgba(0,0,0,.4);
}
.workBoxDate{
	font-size:clamp(0.85rem, 0.832rem + 0.09vw, 0.9rem);
	line-height:1.3;
}
.workBoxTitle{
	font-size:clamp(1.15rem, 1.132rem + 0.09vw, 1.2rem);
	margin:0 auto 10px auto;
	font-weight:600;
}
.workBoxContent{
	width:100%;
}
.workBoxContent table{
	width:100%;
	border-collapse:collapse;
	margin:10px auto 0 auto;
}
.workBoxContent table tr{
	width:100%;
	border-bottom:1px dotted var(--themecolor);
}
.workBoxContent table tr:first-child{
	border-top:1px dotted var(--themecolor);
}
.workBoxContent table th{
	display:block;
	border:none!important;
	background:transparent!important;
	padding:2% 0 1% 0!important;
	font-weight:500;
	text-align:left;
	vertical-align:top!important;
	font-size:0.85rem;
	color:var(--hovercolor);
	line-height:1.3;
}
.workBoxContent table td{
	display:block;
	border:none!important;
	padding:0 0 2% 0!important;
	background:transparent!important;
	line-height:1.7;
}
@media screen and (max-width: 1000px) {
.workBox{
	gap:20px;
}
.workBoxOne{
	width: calc((100% - 40px) / 2);
	padding:2%;
}
.workBoxImg img {
    height: 240px;
}
}
@media screen and (max-width: 700px) {
.workBox{
	display:block;
	gap:unset;
	margin:25px auto 0 auto;
}
.workBoxOne{
	width: 100%;
	margin:0 auto 30px auto;
	padding:4%;
}
.workBoxOne:last-child{
	margin:0 auto;
}
.workBoxImg img {
    height: auto;
}
.workBoxContent table th{
	padding:4% 0 1% 0!important;
}
.workBoxContent table td{
	padding:0 0 3% 0!important;
}
.workBoxTitle{
	margin:0 auto 5px auto;
}
}
@media screen and (max-width: 480px) {
.workBoxOne{
	padding:5%;
}
	
}

/************
採用情報
************/
.recruitMain{
	width:100%;
	margin:0 auto;
	z-index:100;
	position:relative;
	padding:76px 0 0 0;
}
.recruitMainL{
	width:40%;
	top:50%;
	transform:translateY(-50%);
	left:5%;
	position:absolute;
	z-index:2;
}
.recrutiH2{
	display:block;
	color:#fff;
}
.recrutiH2 .h2En{
	line-height:1;
	color:#fff;
}
.recruitMainR{
	width:100%;
	position:relative;
	z-index:1;
}
.recruitMainR img{
	width: 100%;
  	display: block;
}
.recruitMainRImgSp{
	display:none;
}
.recruitH3{
	text-align:center;
	padding:0;
	line-height:1.5;
}
.recruitH3::before , .recruitH3::after{
  display:none;
}
.recCenTxt{
	text-align:center;
}
.recruitH3 span{
	font-family:var(--enLg);
	display:block;
	font-size:clamp(1rem, 0.964rem + 0.18vw, 1.1rem);
	font-weight:600;
}
ul.recruitList{
	width:100%;
	display:flex;
	justify-content:flex-start;
	flex-wrap:wrap;
}
ul.recruitList li{
	width:30%;
	position:relative;
	padding:0 0 3px 13px;
}
ul.recruitList li::before{
	position:absolute;
	content:'';
	width:8px;
	height:8px;
	background:var(--themecolor);
	left:0.1px;
	top:13px;
	border-radius:50%;
}
.voiceWrapper{
	width:100%;
	margin:20px auto 0 auto;
}
.voiceWrapper .voice{
	align-items:center!important;
	justify-content:space-between;
	margin:0 auto 50px auto!important;
}
.voiceWrapper .voice:nth-child(even){
	flex-direction: row-reverse;
}
.voiceWrapper .voice:last-child{
	margin:0 auto!important;
}
.voiceWrapper .wp-block-column {
        flex-basis: unset!important;
        flex-grow: unset!important;
}
.voiceL{
	width:50%;
}
.voiceR{
	width:44%;
}
.voiceYear{
	font-size:clamp(1.1rem, 1.064rem + 0.18vw, 1.2rem);
	font-weight:600;
	line-height:1.4;
}
.voiceAge{
	font-size:clamp(1.1rem, 1.064rem + 0.18vw, 1.2rem);
	font-weight:600;
	margin:0 auto 20px auto;
}
.benefitWrapper{
	width:100%;
}
.benefitWrapper .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	gap:30px;
}
.benefitWrapper .wp-block-columns{
	align-items:center!important;
}
.benefit{
	width:calc((100% - 30px) / 2);
	background: rgba(255, 255, 255, .85);
    padding: 3%;
    box-sizing: border-box;
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    box-shadow: 0 5px 20px rgba(0, 0, 0, .2);
	align-items:center!important;
}
.benefit .wp-block-column {
        flex-basis: unset!important;
        flex-grow: unset!important;
}
.benefitL{
	width:25%;
}
.benefitR{
	width:70%;
}
.BenefitTtl{
	font-size:clamp(1.1rem, 1.064rem + 0.18vw, 1.2rem);
	font-weight:600;
	margin:0 auto 10px auto;
}
.toEntry{
	width:100%;
	max-width:700px;
	margin:0 auto;
	position:relative;
	z-index:1000;
}
.toEntry a{
	display:block;
	width:100%;
	box-sizing:border-box;
	background:var(--themecolor);
	color:#fff;
	padding:50px 7%;
	transition:.3s;
	position:relative;
	overflow:hidden;
}
.toEntry a::before{
	content:"";
	position:absolute;
	top:0;
	left:-120%;
	width:60%;
	height:100%;
	background:linear-gradient(
		90deg,
		rgba(255,255,255,0),
		rgba(255,255,255,.45),
		rgba(255,255,255,0)
	);
	transform:skewX(-25deg);
	transition:.7s ease;
}
.toEntry a:hover{
	transform:translateY(-3px);
	box-shadow:0 10px 30px rgba(0,0,0,.2);
	border-color:#fff;
	text-decoration:none;
	background:rgba(0,0,0,.7);
	transform:translateY(-3px);
	box-shadow:0 8px 20px rgba(0,0,0,.25);
}
.toEntry a:hover::before{
	left:160%;
}
.toEntryTtl{
	font-size:clamp(1.6rem, 1.455rem + 0.73vw, 2rem);
	font-weight:700;
	font-family:var(--enLg);
	letter-spacing:0.2rem;
	display:block;
}
.toEntryTxt{
	font-size:clamp(1rem, 0.964rem + 0.18vw, 1.1rem);
	display:block;
}

@media screen and (max-width: 1200px) {
ul.recruitList li{
	width:46%;
}
.voiceAge{
	margin:0 auto 10px auto;
}
}
@media screen and (max-width: 1100px) {
.recruitMain{
	padding:60px 0 0 0;
}
.voiceWrapper .voice {
    align-items: flex-start !important;
}
.voiceL{
	width:46%;
}
.voiceR{
	width:48%;
}
}
@media screen and (max-width: 1000px) {
.recCenTxt{
	text-align:left;
}
.recruitGallery .wp-block-image{
	width:49%!important;
}
}
@media screen and (max-width: 800px) {
.recruitMainRImg{
	display:none;
}
.recruitMainRImgSp{
	display:block;
	width:100%;
	position:relative;
	z-index:1;
}
.recruitMainRImgSp img{
	width: 100%;
  	display: block;
}
ul.recruitList{
	display:block;
}
ul.recruitList li{
	width:97%;
}
.voiceWrapper .voice {
    display:block;
}
.voiceL{
	width:100%;
	margin:0 auto 30px auto!important;
}
.voiceR{
	width:100%;
	margin:0 auto;
}
.benefitWrapper {
    margin:0 auto 30px auto;
}
.benefitWrapper .wp-block-group__inner-container{
	display:block;
}
.benefitWrapper .wp-block-columns {
    justify-content: space-between !important;
}
.benefit{
	width:100%;
    padding: 4%;
	margin:0 auto 20px auto;
}
.benefit:last-child{
	margin:0 auto;
}
.benefitL{
	width:12%;
}
.benefitR{
	width:82%;
}
}
@media screen and (max-width:781px) {
.benefitWrapper .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column{
	flex-basis: unset !important;	
}
}
@media screen and (max-width: 640px) {
.benefitWrapper .wp-block-columns {
    display:block!important;
}
.benefit {
    padding: 7%;
}
.benefitL{
	width:30%;
	margin:0 auto 15px auto!important;
}
.benefitR{
	width:100%;
	margin:0 auto!important;
}
.benefitL .wp-block-image {
    margin:0 auto!important;
	text-align:center;
}
.toEntryTtl {
    line-height:1.5;
}
.toEntry a {
    padding: 30px 7%;
}
}
@media screen and (max-width: 480px) {
.recruitGallery .wp-block-image {
        width: 48% !important;
}
}

/******************
募集要項
******************/
.youkouNaiyo {
	width:100%;
	margin:0 auto 90px auto;
}
.youkouNaiyo table{
	width:100%;
	border-collapse:collapse;
}
.youkouNaiyo table tr{
	display:flex;
	justify-content:space-between;
	width:100%;
	border-bottom:2px dotted var(--themecolor);
	overflow:hidden;
}
.youkouNaiyo table tr:last-child{
	border-bottom:none;
}
.youkouNaiyo table th{
	border:none!important;
	padding:3% 1%!important;
	font-weight:400;
	text-align:left;
	vertical-align:top;
	background:transparent!important;
	width:20%;
}
.youkouNaiyo table td{
	border:none!important;
	padding:3% 2%!important;
	background:transparent!important;
	width:74%;
}
.noBosyu{
	padding:60px 0;
	text-align:center;
		font-size:1.2rem;
	font-weight:600;
}
@media screen and (max-width: 800px) {
.youkouNaiyo {
	margin:0 auto 50px auto;
}
.youkouNaiyo table tr {
    display: block;
}
.youkouNaiyo table th{
	display:block;
	width:100%;
	padding:4% 0 0 0!important;
	font-weight:600;
}
.youkouNaiyo table td{
	display:block;
	width:100%;
	padding:0 0 4% 0!important;
}
}
@media screen and (max-width: 480px) {
.youkouNaiyo table th{
	padding:5% 0 0 0!important;
}
.youkouNaiyo table td{
	padding:0 0 6% 0!important;
}
}

/******************
お問い合わせ
******************/
.contactPageTelWrapper{
	width:100%;
	max-width:1100px;
	margin:0 auto;	
	overflow:hidden;
}
.contactPageTelWrapper .wp-block-group__inner-container{
	width:92%;
	max-width:92%;
	padding:3%;
	box-shadow: 0px 0px 10px -3px rgba(0,0,0,.3);
  	-moz-box-shadow: 0px 0px 10px -3px rgba(0,0,0,.3);
  	-webkit-box-shadow: 0px 0px 10px -3px rgba(0,0,0,.3);
  	border-radius: 5px;
  	-moz-border-radius: 5px;
  	-webkit-border-radius: 5px;
	margin:10px auto;
}
.contactPageTel{
	justify-content:space-around;
	margin:0 auto 25px auto!important;
}
.contactPageTelOne{
	width:45%;
}
.contactNakaTxt{
	text-align:center;
	margin:0 auto 10px auto;
}
.contactNakaTel{
  	font-size: 3.4rem;
  	font-weight: 600;
  	font-family: var(--enLg);
	text-align:center;
}
.contactNakaTel a{
	color: var(--themecolor);
	pointer-events:none;
}
.contactNakaFax{
	color: var(--themecolor);
	font-size: 3.4rem;
  	font-weight: 600;
  	font-family: var(--enLg);
	text-align:center;
}
.contactNakaSubTxt{
	text-align:center;
	font-size:1.5rem;
}
.contactNakaSubTxt br{
	display:none;
}
.contactWaku{
	width:100%;
	max-width:1100px;
	margin:0 auto;	
	overflow:hidden;
}
.contactWrapper{
	width:100%;
	max-width:100%;
	margin:0 auto;	
	overflow:hidden;
}
.contact_wrapper{
	width:65%;
	margin:0 auto;
	overflow:hidden;
}
.asutaHissu{
	font-size:85%;
	position:relative;
	padding:0 0 0 15px;
}
.asutaHissu::before{
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #d14423;
  border-radius: 50%;
  position: absolute;
  top: calc(50% - 3px);
	left:0.5px;
}
#contactForm{
	margin:0 auto;
	width:100%;
	max-width:900px;
}
.goiraiUp{
	margin:0 auto 50px auto;
}
#contactForm input,
#contactForm select{
	/*-webkit-appearance: none;*/
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	-moz-box-shadow: inset 1px 2px 5px -6px rgba(0,0,0,0.5);
	-webkit-box-shadow: inset 1px 2px 5px -6px rgba(0, 0, 0, 0.5);
	box-shadow: inset 1px 2px 5px -6px rgba(0,0,0,0.5);
	color: #323232;
	background-color:#fff;
	position:relative;
	font-family:Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	padding: 20px 2% 17px 2%;
  	max-width: 95%;
	margin:2px 0 2px 0.2%;
	box-sizing:border-box;
}
#contactForm input{
	width:98%;
}
#contactForm .seinen input{
	width:13%;
}
#contactForm .seinen .seinenFirst input{
	width:20%;
}
.zipCode input{
	width:16%!important;
}
.wpcf7-radio input{
	width:4%!important;
}
.todoufuken select{
	width:20%!important;
	max-width: 20%!important;
	font-size:95%;
}	
.jyoukyou select{
	width:30%!important;
	max-width: 30%!important;
	font-size:95%;
}	
#contactForm textarea{
	overflow: auto;
	height:140px;
	padding: 5px 1% 5px;
	line-height:1.1em;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border-radius: 3px;
	color: #323232;
	width:93%;
	font-family:Helvetica, Arial, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif;
	overflow: auto;
  	border: 1px solid #e2e2e2;
}
input:focus, textarea:focus {
	outline:none;
}
input[type=checkbox]:focus{
	outline:none;
}
input[type=radio]:focus{
	outline:none;
	color:#111;
}
#contactForm table{
	width:100%;
}
#contactForm tr{
	clear:both;
	border-bottom:1px solid #f7f7f7;
	padding: 4% 0 5% 0;
	display:block;
}
#contactForm tr:first-child{
	padding: 2% 0 5% 0;
}
#contactForm th{
	position: relative;
	display:block;
  	width: 100%;
  	text-align: left;
  	font-weight: 500;
	padding:0 0 2% 0;
}
#contactForm td{
	display:block;
  	width: 100%;
	overflow:hidden;
}
span.required{
  display:inline-block;
  color: #fff;
	background:#d45353;
  position: relative;
  font-size: 0.85rem;
	line-height:1.2rem;
  text-align: center;
	padding:2px 1% 4px 1%;
	box-sizing:border-box;
	letter-spacing:0.1rem;
	margin:0 0 0 15px;
	font-weight:400;
}
span.anyed{
  display:inline-block;
  color: #fff;
	background:#7c7c7c;
  position: relative;
   font-size: 0.85rem;
	line-height:1.2rem;
  text-align: center;
	padding:2px 1% 4px 1%;
	box-sizing:border-box;
	letter-spacing:0.1rem;
	margin:0 0 0 15px;
	font-weight:400;
}
#sendingBox{
	width:100%;
	max-width:900px;
	border-bottom:none;
	margin:auto;
	text-align:center;
	padding:40px 0;
	margin:0 auto;
}
#sendingTxt{
	font-size:90%;
	margin:0 auto 20px auto;
	overflow:hidden;
	line-height:175%;
}
#sendingTxt i{
	padding:0 0 0 3px;
}
#sendingTxt a{
	text-decoration:underline;
}
#sendingCheck{
	font-size:110%;
	margin:0 auto 30px auto;
}
input[type="checkbox"] {
  	position: relative;
  	width: 25px;
  	height: 25px;
  	border: 1px solid #e2e2e2;
	background:#fff!important;
  	vertical-align: -5px;
  	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
	transition:.3s;
}
input[type="checkbox"]:checked{
	background:var(--themecolor)!important;
	border: 1px solid var(--themecolor);
	transition:.3s;
}
input[type="checkbox"]:checked:before {
  	position: absolute;
  	top: 4px;
  	left: 7px;
  	transform: rotate(50deg);
	-moz-transform: rotate(50deg);
	-webkit-transform: rotate(50deg);
  	width: 6px;
  	height: 10px;
  	border-right: 2px solid #fff;
  	border-bottom: 2px solid #fff;
  	content: '';
	transition:.3s;
}
#sendingCheck .wpcf7-list-item-label{
	margin:2px 0 0 7px;
}
#caveat{
	font-size:80%;
	color:#ff0000;
	text-align:center;
}
#formBtnBox{
	max-width:440px;
	width:100%;
	margin:10px auto 0;
	display:flex;
	justify-content: space-between;
}
.returnBtn{
	width:200px;
}
.kakuninBtn{
	width:240px;
}
.kakuninBtn input{
	width:200px;
	cursor:pointer;
	outline:none;
	background-color:var(--themecolor);
	color:white;
	border:none;
	letter-spacing:0.1rem;
	transition:.3s;
	font-weight:500;
	font-size:1.1rem;
	padding:10px 20px;
}
.kakuninBtn input:hover{
	background-color:var(--hovercolor);
}
.returnBtn input{
	padding:10px 20px;
	outline:none;
	border:none;
	background-color:#7c7c7c;
	border:1px solid #7c7c7c;
	transition:.3s;
	font-weight:500;
	font-size:1.1rem;
	color:#fff;
}
.returnBtn input:hover{
	background-color: #515151;
	border:1px solid #515151;
}
.confirmForm span.required , .confirmForm span.anyed{
	display:none;
}
#contactForm select{
	-webkit-appearance: checkbox;
}
.sent #formBox{
	display: none;
}
.sentout_message{
	display: none;
}
.sent .sentout_message{
	display: block;
}
.wpcf7-radio .wpcf7-list-item {
  	display:block;
  	margin:2px 0 2px 2px;
  	width: 45%;
	float:left;
}
.wpcf7-radio label{
	width:100%;
}
.wpcf7-radio label input:checked{
	border:none;
}

/*送信成功*/
div.wpcf7 form.sent .wpcf7-response-output{
	background:#d5edda;
	color:#185626;
	border:1px solid #c4e5cc !important;
	padding:10px 10px 10px 20px !important;
}
/*送信NG・失敗*/
div.wpcf7 form.failed .wpcf7-response-output,
div.wpcf7 form.aborted .wpcf7-response-output,
div.wpcf7 form.invalid .wpcf7-response-output,
div.wpcf7 form.unaccepted .wpcf7-response-output,
div.wpcf7 form.payment-required .wpcf7-response-output{
	background:#f7d7da;
	color:#711d26;
	border:1px solid #f4c6cb !important;
	padding:10px 10px 10px 20px !important;
} 
/*スパムなどで送信ブロックされた場合*/
div.wpcf7 form.spam .wpcf7-response-output{
	background:#fff2cf;
	color:#846314;
	border:1px solid #feedbd !important;
	padding:10px 10px 10px 20px !important;
}
#contactForm .wpcf7-not-valid {
	background: #ffebef !important;
}
.wpcf7-not-valid-tip{
	display:inline-block!important;
}
.wpcf7 .wpcf7-submit:disabled{
	background-color:rgba(0,0,0,0.9);
}
.hosoku-txt,.hosoku-txt1{
	color:#575757;
	font-size:85%;
	line-height:1.4em;
}
.hosoku-txt{
	margin-left:8px;
}
.hosoku-txt1{
	margin-top:10px;
	padding-left: 14px;
	text-indent: -14px;
}
.hosoku-txt2{
	margin-top:3px;
	color:#ff0000;
	font-size:85%;
	line-height:1.4em;
}
.messe-end{
	clear:both;
	text-align:center;
}
.messeEndTxt{
	font-size:120%;
}
::placeholder{
	font-size:1.1rem;
}
.formOnamae{
	margin:0 auto;
	font-size:90%;
	display:block;
}
.formOnamaeKoumoku{
	font-size:90%;
	display:block;
}
.formFrigana{
	margin:0 auto;
	font-size:90%;
	display:block;
}

.privacy-box {
  margin: 20px 0;
}
.privacy-scroll {
  max-height: 200px;
  overflow-y: auto;
  padding: 4%;
  border: 1px solid #ccc;
  font-size: 1rem;
  background-color: #f2f2f2;
  line-height: 1.8;
	text-align:left;
}
.privacyBoxTtl{
	text-align:center;
	font-weight:600;
	margin:0 auto 20px auto;
	font-size:1.2rem;
}
.privacyBoxMidashi{
	font-weight:600;	
	font-size:1.2rem;
}
.pbTxt{
	text-indent: -1.4rem;
  	padding: 0px 0 0 15px;
}

@media screen and (max-width: 1400px) {
.contactWaku{
	max-width:900px;
}
.zipCode input{
	width:20%!important;
}
.todoufuken select{
	width:22%!important;
	max-width: 23%!important;
}	
}
@media screen and (max-width: 1160px) {

}
@media screen and (max-width: 1000px) {
.goiraiUp{
	margin:0 auto 30px auto;
}
#contactForm th{
	width:100%;
	display:block;
	padding:2% 0 0 0;
}
#contactForm td{
	width:100%;
	display:block;
	padding:1% 0 2% 0;
}
#contactForm input.wpcf7-text, #contactForm input.wpcf7-email, #contactForm input.wpcf7-textarea {
	width:93%;
	max-width:93%;
}
#contactForm input.p-postal-code{
	max-width:100%;
	width:auto;
}
span.required , span.anyed{
	display:inline-block;
	margin:0 0 0 2%;
}
.hosoku-txt{
	margin-top:10px;
}
.formOnamae{
	margin:0 auto 5px auto;
}
.formFrigana{
	margin:0 auto 5px auto;
}
#sendingTxt{
	text-align:left!important;
}
}
@media screen and (max-width: 781px) {
.contactUpTxt{
	text-align:left;
}
.zipCode input{
	width:93%!important;
}
.todoufuken select{
	width:95%!important;
	max-width: 97%!important;
}
.wpcf7-radio .wpcf7-list-item {
  	width: 97%;
	float:none;
}
.wpcf7-radio label {
  width: 100%;
	display:block;
	margin:0 0 2px 0;
}
.contactPageTelWrapper .wp-block-group__inner-container{
	width:86%;
	max-width:86%;
	padding:5%;
}
.contactPageTel {
    gap: 1em!important;
}
.contactNakaTel a {
    pointer-events: inherit;
}
.contactNakaSubTxt{
	line-height:1.5;
}
.contactNakaSubTxt br{
	display:block;
}
.jyoukyou select{
	width:95%!important;
	max-width: 97%!important;
}	
}
@media screen and (max-width: 640px) {

#contactForm th{
	padding:5% 0 0 0;
}
#contactForm td{
	padding:1% 0 5% 0;
}
#contactForm input.wpcf7-text, #contactForm input.wpcf7-email {
	width:94%;
	max-width:94%;
	margin:0 auto;
}
#contactForm input.wpcf7-textarea {
	width:97%;
	max-width:97%;
	margin:0 auto;
}
.messe-end{
	text-align:left;
}
.contactNakaTel , .contactNakaFax{
    font-size: 3rem;
}
}
@media screen and (max-width:480px) {
#sendingCheck{
	font-size:95%;
}
input[type="checkbox"] {
  	width: 20px;
  	height: 20px;
}
input[type="checkbox"]:checked:before {
  	top: 2px;
  	left: 6px;
  	width: 4px;
  	height: 8px;
}
#sendingCheck .wpcf7-list-item-label {
    margin: 0 0 0 2px;
}
#caveat {
    text-align: left;
	line-height:160%;
}
.contactPageTelWrapper .wp-block-group__inner-container {
    width: 82%;
    max-width: 82%;
    padding: 7%;
}
}
@media screen and (max-width:340px) {
.contactNakaTel , .contactNakaFax{
    font-size: 2.8rem;
}
}

/******************
プライバシーポリシー
******************/
.ppTxt{
	margin:5px auto 8px auto;
	overflow:hidden;
	text-indent:-1em;
	padding:0 0 0 20px;
}
.pp-txt1{
    text-indent: -1em;
    padding-left: 15px;
	margin:10px 0 5px 0;
}

@media screen and (max-width: 1130px) {
.pp-txt{
	width:100%;
	margin-bottom:4px;
}

.pp-txt1{
	text-indent: -1em;
    padding-left: 15px;
}
}

/******************
サイトマップ
******************/
.sitemapWrap{
	width:100%;
	margin:0 auto;
	overflow:hidden;
	padding-top:10px;
}
.sitemap{
	width:100%;
	margin:0 auto ;
	overflow:hidden;
}
.sitemap ul{
	width:100%;
	margin:0 auto ;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
.sitemap ul li{
	width:46%;
		position: relative;
	padding:0 0 40px 15px;
}
.sitemap ul li::before {
  	display: block;
  	content: '';
  	position: absolute;
  	top: 13px;
  	left: 1px;
  	width: 8px;
  	height: 8px;
  	background-color:var(--themecolor);
  	border-radius: 100%;
}
.sitemap ul li a{
	width:100%;
	display:block;
	color:var(--basecolor);
	text-decoration:none;
	transition:.3s;
}
.sitemap li a:hover{
	color:var(--themecolor);
	text-decoration:underline;
}

@media screen and (max-width: 770px) {
.sitemap ul{
	display:block;
}
.sitemap ul li{
	width:96%;
	padding:0 0 30px 15px;
}
}



/******************
404
******************/
.txt404{
	padding:0 0 3% 0;
}
.main404{
	font-size:1.3rem;
	font-weight:500;
	margin:0 auto 20px auto;
}
.txt404 p{
	clear:both;
}
.btn404{
	width:35%;
	margin:40px auto 20px auto;
	position:relative;
	z-index:1000;
}
.btn404 a{
	display: block;
	border: 1px solid var(--themecolor);
	color:var(--themecolor);
	padding: 15px 0;
	text-align: center;
	position: relative;
	width: 100%;
	text-decoration: none;
	background:#fff;
	letter-spacing: 0.5px;
	border-radius:40px;
	-moz-border-radius:40px;
	-webkit-border-radius:40px;
	font-size:110%;
}
.btn404 a:hover{
	background:var(--hovercolor);
	color:#fff;
	transition: 0.3s;
}
@media screen and (max-width: 770px) {
.btn404{
	width:90%;
}
.btn404 a{
	padding: 15px 0;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
	font-size:95%;
}
.txt404 p{
	text-align:left;
}
}


/******************
お知らせ
******************/
#infoBox{
	margin:15px auto;
	width:100%;
	overflow:hidden;
}
#infoBox ul{
	clear:both;
	overflow:hidden;
	width:100%;
}
#infoBox ul li{
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:100%;
	padding:25px 0 20px 0;
	border-bottom:1px solid #f7f7f7;
	box-sizing:border-box;
}
#infoBox ul li a{
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:100%;
}
#infoBox ul li:first-child{
	padding:0 0 20px 0;
}
#infoBox ul li .infoDate{
	width:11%;
	font-weight:500;
	color:var(--basecolor);
	margin:0;
	padding:0 2%;
}
#infoBox ul li .infoTitle{
	width:85%;
}	
.informationPager {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  margin-top: 80px;
  padding-top: 40px;
  border-top: 1px solid #e5e5e5;
}
.pagerPrev {
  	text-align: left;
	position:relative;
}
.pagerNext {
  	text-align: right;
	position:relative;
}
.informationPager a {
  	color: #333;
  	text-decoration: none;
  	transition: color .3s ease, transform .3s ease;
}
.pagerPrev a , .pagerNext a{
  	display: inline-flex;
  	align-items: center;
  	vertical-align: middle;
	line-height: 1;
  	will-change: transform;
  	gap: 6px;
  	padding-bottom: 4px;
	font-size:1.5rem;
}
.pagerPrev .material-symbols-outlined , .pagerNext .material-symbols-outlined{
  	font-size: 1.1em;
  	line-height: 1;
}
.pagerPrev a:hover {
  	color: var(--themecolor);
  	transform: translateX(-4px);
}
.pagerNext a:hover {
  	color: var(--themecolor);
  	transform: translateX(4px);
}
.pagerArchive a {
  	display: inline-block;
  	padding: 5px 40px;
  	border: 1px solid var(--themecolor);
  	border-radius: 999px;
  	color: var(--themecolor);
  	font-weight: 400;
  	transition: all .3s ease;
	font-size:1.5rem;
	background:#fff;
}
.pagerArchive a:hover {
  	background: var(--themecolor);
  	color: #fff;
}
.pagerPrev a,
.pagerNext a {
  	position: relative;
}
.pagerPrev a::after,
.pagerNext a::after {
  	content: "";
  	position: absolute;
  	bottom: -4px;
  	width: 0;
  	height: 1px;
  	background: currentColor;
  	transition: width .3s ease;
}
.pagerPrev a::after {
  	right: 0;
}
.pagerNext a::after {
  	left: 0;
}
.pagerPrev a:hover::after,
.pagerNext a:hover::after {
  	width: 100%;
}
@media screen and (max-width: 900px) {
#infoBox ul li{
	display:block;
}
#infoBox ul li a{
	display:block;
}
#infoBox ul li .infoDate{
	width:100%;
	padding:0;
}
#infoBox ul li .infoTitle{
	width:100%;
}	
}
@media screen and (max-width: 640px) {
.informationPager {
    grid-template-columns: 1fr;
    gap: 20px;
    text-align: center;
	margin-top: 40px;
}
.pagerPrev {
  	text-align: center;
}
.pagerNext {
  	text-align: center;
}
.pagerPrev a,
.pagerNext a {
  	width:100%;
	box-sizing:border-box;
	border:1px solid var(--basecolor);
	padding:10px 5%;
	justify-content: center;
	background:#fff;
}
.pagerPrev a:hover,
.pagerNext a:hover {
    transform: none;
	border:1px solid var(--basecolor);
	background:var(--basecolor);
	color:#fff;
}
.pagerArchive a {
  	display:block;
	width:100%;
	box-sizing:border-box;
  	padding: 8px 5%;
}
.pagerPrev a::after,
.pagerNext a::after {
  	display:none;
}
}

/******************
コラム・一覧
******************/
.columnWrapper{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}
.columnInner{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}
.columnList{
	width:100%;
	margin:0 auto;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
.columnItem{
	width:30%;
	margin:0 0 5% 0;
}
.columnItem a{
	display:block;
	width:100%;
	position:relative;
	transition:.3s;
}
.columnPic{
	width:100%;
	overflow:hidden;
	margin:0 auto 10px auto;
	border-radius:15px;
	-moz-border-radius:15px;
	-webkit-border-radius:15px;
	background:var(--basecolor);
}
.columnPic img{
	max-width:100%;
	width:100%;
	border-radius:15px;
	-moz-border-radius:15px;
	-webkit-border-radius:15px;
}
.columnTtl{
	font-size:1.7rem;
	font-weight:500;
}
.columnItem a:hover{
	text-decoration:none;
}
.columnItem a:hover .columnPic img{
	transform: scale(1.1);
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
}
.column-hashtags {
	width:100%;
	display:flex;
	gap:10px;
	flex-wrap: wrap;
}
.column-hashtags .hashtag {
  	display: inline-block;
  	padding: 10px 15px;
	line-height:1;
  	font-size: 1.35rem;
  	background: #fcebef;
  	text-decoration: none;
	border-radius:10px;
	white-space: nowrap;
}
@media screen and (max-width: 900px) {
.columnItem{
	width:48%;
	margin:0 0 6% 0;
}
.columnTtl{
	font-size:1.65rem;
}
.column-hashtags {
  	margin:20px auto;	
}
}
@media screen and (max-width: 640px) {
.columnPic{
	margin:0 auto 5px auto;
}
.columnTtl{
	font-size:1.5rem;
	line-height:1.6;
}
.column-hashtags {
  	margin:10px auto 15px auto;	
}
.column-hashtags .hashtag {
  	font-size: 1.3rem;
}
}

