/******************
テンプレート全体[共通]
******************/
.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.5rem;
	border: 1px solid #cccccc;
	outline: none;
}
.bread{
	clear:both;
	margin: 0 auto;
	font-size:1.2rem;
	line-height:165%;
	width:96%;
	padding:130px 0 0 0;
}
.breadBusiness{
	width:100%;
	padding:80px 0 0 0;
}
.bread p {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    padding: 0;
}
.bread a{
  	text-decoration: underline;
  	transition-duration: .4s;
	color:#666;
}
.bread .breadBar{
	background: #333;
  	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;
}
.bg-circleCont {
  	width: clamp(300px, 65vw, 900px);
  	aspect-ratio: 1 / 1;
  	position: absolute;
	right:-300px;
	top:-300px;
	z-index:-2;
}
.bg-circleCont svg {
  	width: 100%;
  	height: 100%;
  	display: block;
}
.bg-circleCont2 {
  	width: clamp(340px, 65vw, 960px);
  	aspect-ratio: 1 / 1;
  	position: absolute;
	left:-400px;
	top:15%;
	z-index:-2;
}
.bg-circleCont2 svg {
  	width: 100%;
  	height: 100%;
  	display: block;
}
.bg-circleCont3 {
  	width: clamp(340px, 65vw, 960px);
  	aspect-ratio: 1 / 1;
  	position: absolute;
	right:-500px;
	top:45%;
	z-index:-2;
}
.bg-circleCont3 svg {
  	width: 100%;
  	height: 100%;
  	display: block;
}
.bg-circleCont4 {
  	width: clamp(240px, 65vw, 720px);
  	aspect-ratio: 1 / 1;
  	position: absolute;
	left:-120px;
	bottom:-80px;
	z-index:-2;
}
.bg-circleCont4 svg {
  	width: 100%;
  	height: 100%;
  	display: block;
}
@media screen and (max-width: 1000px) {
.bread{
	padding:110px 0 0 0;
}
.breadBusiness{
	padding:50px 0 0 0;
}
.p70s30{
	height:70px!important;
}
.voiceMain .p70s30{
	height:30px!important;
}
.bg-circleCont {
	right:-200px;
	top:-200px;
}
.bg-circleCont2 {
	left:-300px;
}
.bg-circleCont3 {
	right:-350px;
}
.bg-circleCont4 {
	left:-200px;
	bottom:0px;
}
}
@media screen and (max-width: 781px) {
.p70s30{
	height:50px!important;
}
.s10{
	height:10px!important;
}
.bread{
	padding:80px 0 0 0;
}
.bread a{
  	padding: 2px 0 2px 10px;
}
.bread .breadLast {
  	padding: 2px 10px;
}
.bg-circleCont {
	right:-150px;
	top:-150px;
}
.bg-circleCont2 {
	left:-200px;
}
.bg-circleCont3 {
	right:-250px;
}
}
@media screen and (max-width: 640px) {
.bg-circleCont {
	right:-100px;
	top:-50px;
}
.bg-circleCont2 {
	left:-150px;
}
.bg-circleCont3 {
	right:-200px;
}
}
@media screen and (max-width: 540px) {
.p70s30{
	height:40px!important;
}
.voiceMain .p70s30{
	height:20px!important;
}
}
@media screen and (max-width: 480px) {
.bread{
	padding:80px 0 0 0;
}
.bread p {
    flex-wrap:wrap;
}
.breadBusiness{
	padding:30px 0 0 0;
}
.breadBusiness p , .breadNews p{
    flex-wrap: wrap;
    row-gap: 6px;
}
.breadBusiness span , .breadNews span{
    white-space: nowrap;
}
.breadBusiness a , .breadNews a{
    padding: 2px 0;
}
.bg-circleCont {
	right:-80px;
	top:-50px;
}
.bg-circleCont2 {
	left:-180px;
}
.bg-circleCont3 {
	right:-190px;
}
.bg-circleCont4 {
    left: -100px;
}
}


h2{
	display: block;
	color: var(--basecolor);
  	font-size: 1.9rem;
  	letter-spacing: 0.2rem;
  	line-height: 4.5rem;
  	position: relative;
  	font-weight: 500;
  	position: relative;
  	margin: 0 auto 60px auto;
	text-align:center;
}
h2 span{
	display:block;
  	font-size: 5rem;
	font-family: var(--enLg);
	color: var(--themecolor);
  	font-weight: 600;
}
h2 br{
	display:none;
}
h3 {
	clear: both;
    font-size: 3rem;
    line-height: 160%;
    letter-spacing: 1px;
    position: relative;
	font-weight:600;
	margin:0 auto 20px auto;
	padding:15px 20px;
	color: var(--basecolor);
	width:100%;
	box-sizing:border-box;
}
h3::before{
	content: "";
  	position: absolute;
  	top: 0;
  	bottom: 0;
  	left: 0;
  	margin: auto 0;
  	width: 4px;
  	height: 50%;
  	background-image: linear-gradient(#c92343 50%, #231815 50%);
	background-size: 5px 100%;
  	background-repeat: no-repeat;
}
.columnMain h3{
	margin:0 auto 40px auto;
}
h4{
	clear: both;
	margin: 10px auto 20px auto;
	font-size:2.5rem;
	font-weight: 600;
	position: relative;
	letter-spacing: 1px;
	color:var(--basecolor);
	position:relative;
	padding:0 0 10px 20px;
}
h4::before{
  	position: absolute;
  	content: "";
  	display: block;
  	left: 0.1px;
	top: 40%;
  	transform: translateY(-40%);
	-moz-transform: translateY(-40%);
	-webkit-transform: translateY(-40%);
  	width:12px;
	height:12px;
	border-radius:50%;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	background:var(--themecolor);
}
h4::after{
	border-bottom: 1px solid var(--themecolor);;
  	bottom: 0;
  	content: "";
  	display: block;
  	left: 0;
  	position: absolute;
  	right: 0;
}
h5{
	clear: both;
	margin: 10px auto 20px auto;
	font-size:2.3rem;
	font-weight: 500;
	position: relative;
	letter-spacing: 1px;
	color:var(--themecolor);
}
h6{
	clear:both;
	font-size:2rem;
	color:var(--basecolor);
	font-weight:500;
	margin:15px 0 ;
	letter-spacing:1px;
}
@media screen and (max-width: 1200px) {
h2{
  	letter-spacing: 0.1rem;
  	line-height: 4.3rem;
  	margin: 0 auto 50px auto;
}
h2 span{
  	font-size: 4.6rem;
}
}
@media screen and (max-width: 1000px) {
h2{
  	font-size: 1.8rem;
  	margin: 0 auto 40px auto;
}
h2 span{
  	font-size: 4.2rem;
}
h3 {
    font-size: 2.5rem;
}
h4{
	font-size:2.2rem;

}
h5{
	font-size:2rem;
}
h6{
	font-size:1.8rem;
}
}
@media only screen and (max-width:800px) {
h2 br{
	display:block;
}
}
@media only screen and (max-width:640px) {
h2{
  	font-size: 1.7rem;
  	margin: 0 auto 30px auto;
	line-height: 2.7rem;
}
h2 span{
  	font-size: 3.8rem;
	line-height: 4rem;
}
h3 {
    font-size: 2.3rem;
	padding:10px 15px;
	margin: 0 auto 20px auto;
}
.columnMain h3{
	margin:0 auto 20px auto;
}
h4 {
    font-size: 2.1rem;
	margin: 15px auto;
}
h5 {
    font-size: 1.9rem;
}
}
@media only screen and (max-width:480px) {
h2{
  	font-size: 1.5rem;
}
h2 span{
  	font-size: 3.4rem;
	font-weight: 600;
}
}
@media only screen and (max-width:400px) {
h2{
  	font-size: 1.5rem;
}
h2 span{
  	font-size: 3.2rem;
}
}
@media only screen and (max-width:340px) {
h2 span{
  	font-size: 2.8rem;
}
}

.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;
	font-size:1.4rem;
	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:0 auto 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: 1.4rem;
  	color: var(--themecolor);
  	font-weight: 500;
  	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;
}

/************
私たちの想い
************/
.thoughtsUp{
	width:90%;
	max-width:1000px;
	margin:0 auto 80px auto;
	justify-content:space-between;
	text-align:center;
}
.thoughtsUpMidashi{
	font-size:2.4rem;
	font-weight:600;
	margin:0 auto 5px auto;
}
.thoughtsUpMidashi span{
	color:var(--themecolor);
}
.thoughtsUpMidashi br{
	display:none;
}
ul.iconList{
	width:100%;
	max-width:615px;
	overflow:hidden;
	position:relative;
	margin:0 auto;
}
ul.iconList li{
	width:97%;
	position:relative;
	padding:0 0 3px 13px;
	text-align:left;
}
ul.iconList li::before{
	position:absolute;
	content:'';
	width:8px;
	height:8px;
	background:var(--themecolor);
	left:0.1px;
	top:13px;
	border-radius:50%;
}
.slickWrapper {
    overflow: hidden;
	margin:0 auto 20px auto;
}
.slickWrapper .slick-list, 
.slickWrapper .slick-track, 
.slickWrapper .slick-slider {
    height: 305px !important;
    overflow: hidden;
}
.carousel .slider.odd img {
    transform: translateY(50px);
	-webkit-transform: translateY(50px);
	-moz-transform: translateY(50px);
}
.carousel .slider {
    max-width: 340px;
    margin: 0 15px;
	height: 255px;
}
.carousel .slider img {
    width: 100%;
    height: auto;
    display: block;
	object-fit:cover;
	height: 255px;
	border-radius:15px;
	-moz-border-radius:15px;
	-webkit-border-radius:15px;
}
.h3SubThoughts{
	width:100%;
	margin:0 auto 40px auto;
	overflow:hidden;
}
.h3SubThoughts h3{
	clear: both;
  	font-size: 4.3rem;
  	line-height: 1.3;
  	letter-spacing: 3px;
	margin:0 auto;
  	position: relative;
  	font-weight: 600;
	text-align:center;
	font-family:var(--enLg);
  	padding: 0;
  	color: var(--themecolor);
  	background-color:transparent;
  	border-radius:none;
  	-moz-border-radius:none;
  	-webkit-border-radius:none;
}
.h3SubThoughts h3::before {
  	display:none;
}
.h3SubThoughtsTxt{
	text-align:center;
	font-weight:600;
	font-size:1.75rem;
	line-height:1.4;
}
.visionTxt{
	text-align:center;
}
.culture{
	width:100%;
	max-width:1100px;
	margin:0 auto;
	justify-content:space-between;
	gap:0!important;
}
.cultureOne{
	width:50%;
	box-sizing:border-box;
	padding:3%;
	background:var(--themecolor);
	position: relative;
}
.cultureOne:nth-child(2){
	background:var(--hovercolor);
}
.cultureTtl{
	position: absolute;
	top: -40px;
	left: 50%;
	transform: translateX(-50%);
	z-index: 2;
	text-align:center;
	color:#fff;
	font-size:2.2rem;
	font-weight:600;
	margin:0 auto;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:15px;
}
.cultureTtl::before{
	content:"";
	display:block;
	width:80px;
	height:120px;
	background:url(./images/common/to-do.png) no-repeat center / contain;
}
.cultureOne:last-child .cultureTtl{
	flex-direction: row-reverse;
}
.cultureOne:last-child .cultureTtl::before{
	background:url(./images/common/to-not-do.png) no-repeat center / contain;
}
.cultureTtlTxt{
	position: relative;
	top: 20px;
}
.cultureOne .cultureNaiyo:first-of-type{
	margin-top: 46px;
}
.cultureNaiyo{
	width:100%;
	margin:0 auto 15px auto;
}
.cnLast{
	margin:0 auto;
}
.cultureNaiyo .wp-block-group__inner-container{
	width:100%;
	background:#fff;
	padding:5%;
	box-sizing:border-box;
	border-radius:5px;
	-moz-border-radius:5px;
	-webkit-border-radius:5px;
	overflow: hidden;
	min-height:182px;
	display: flex;
	flex-direction: column;
	justify-content: center;
	text-align:center;
}
.cultureNaiyoTtl{
	color:var(--themecolor);
	font-weight:600;
	margin:0 auto 5px auto;
	font-size:1.75rem;
}
.cultureOne:nth-child(2) .cultureNaiyoTtl{
	color:var(--hovercolor);
}
.logoOrigin{
	margin:40px auto 0 auto!important;
	overflow:hidden;
	width:90%;
	max-width:320px;
}
.logoOrigin img{
	margin:0 auto;
	width:100%;
	max-width:100%;
	display:block;
}
@media screen and (max-width: 1200px) {
.thoughtsUp{
	margin:0 auto 70px auto;
}
.thoughtsUpSpacer{
	height:25px!important;
}
}
@media screen and (max-width: 1100px) {
.cultureTtl{
	top: -44px;
	gap:10px;
	width:100%;
}
}
@media screen and (max-width: 1000px) {
.h3SubThoughts{
	margin:0 auto 25px auto;
}
.h3SubThoughts h3{
  	font-size: 4rem;
  	letter-spacing: 2px;
	line-height: 1.2;
}
.cultureTtl{
	top: -47px;
}
.cultureNaiyo .wp-block-group__inner-container{
	text-align:left;
}
.cultureNaiyo .wp-block-group__inner-container br{
	display:none;
}
}
@media screen and (max-width: 900px) {
.thoughtsUp{
	display:block!important;
}
.thoughtsUpL{
	width:100%;
	margin:0 auto 25px auto!important;
}
.thoughtsUpR{
	width:100%;
	margin:0 auto!important;
}
.slickWrapper {
	margin:0 auto 10px auto;
}
.slickWrapper .slick-list, 
.slickWrapper .slick-track, 
.slickWrapper .slick-slider {
    height: 235px !important;
}
.carousel .slider.odd img {
    transform: translateY(25px);
	-webkit-transform: translateY(25px);
	-moz-transform: translateY(25px);
}
.carousel .slider {
    max-width: 280px;
    margin: 0 5px;
	height: 210px;
}
.carousel .slider img {
	height: 210px;
}
}
@media screen and (max-width: 800px) {
.visionTxt {
    text-align: left;
}
.visionTxt br{
    display:none;
}
.culture{
	max-width:100%;
	display:block!important;
	margin:80px auto 0 auto;
}
.culture .wp-block-column:nth-child(2n){
	margin:60px auto 0 auto!important;
}
.cultureTtl {
    top: -37px;
}
.cultureOne{
	width:100%;
	padding:5%;
}
.cultureNaiyo .wp-block-group__inner-container{
	min-height:auto;
}
.cultureTtl {
    font-size: 2rem;
    margin: 0 auto 20px auto;
}
ul.iconList{
	max-width:100%;
}
}
@media screen and (max-width: 640px) {
.thoughtsUp{
	width:86%;
	max-width:86%;
	margin:0 auto 50px auto;
	text-align:left;
}
.thoughtsUpMidashi{
	line-height:1.6;
}
.thoughtsUpMidashi br{
	display:block;
}
.thoughtsUpTxt br{
	display:none;
}
.slickWrapper {
	margin:0 auto 30px auto;
}
.h3SubThoughts h3{
  	font-size: 3.5rem;
}
.h3SubThoughtsTxt{
	font-size:1.5rem;
}
.cultureOne{
	padding:7%;
}
.cultureNaiyo .wp-block-group__inner-container{
	padding:7%;
}
.logoOrigin{
	margin:20px auto 0 auto!important;
	max-width:90%x;
}
}
@media screen and (max-width: 540px) {
.culture{
	margin:70px auto 0 auto;
}
.cultureTtl {
    top: -42px;
}
}
@media screen and (max-width: 480px) {
.slickWrapper .slick-list, 
.slickWrapper .slick-track, 
.slickWrapper .slick-slider {
    height: 205px !important;
}
.carousel .slider {
    max-width: 240px;
    margin: 0 5px;
	height: 180px;
}
.carousel .slider img {
	height: 180px;
}
.cultureTtl {
    top: -44px;
}
.thoughtsUpSpacer {
    height: 15px !important;
}
}
@media screen and (max-width: 440px) {
.cultureTtl {
    top: -46px;
}
}
@media screen and (max-width: 400px) {
.cultureTtl {
    top: -50px;
}
}
@media screen and (max-width: 340px) {
.cultureTtl {
    top: -52px;
}
}

/************
事業紹介・一覧
************/
.businessListWrapper{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}
.businessList{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}
.businessItem{
	width:100%;
	display:flex;
	justify-content:space-between;
	margin:0 auto 100px auto;
	flex-wrap:wrap;
	align-items:center;
}
.businessItem:nth-child(even){
	flex-direction:row-reverse
}
.businessItem:last-child{
	margin:0 auto;
}
.businessListL{
	width:48%;
}
.businessListR{
	width:45%;
}
.businessListR img{
	margin: 0 auto;
  	border-radius: 15px;
  	-moz-border-radius: 15px;
  	-webkit-border-radius: 15px;
}
.businessTtl{
	font-size:2.4rem;
	font-weight:600;
	margin:0 auto 20px auto;
	color:var(--basecolor);
}
.businessLinkBtn{
	width:100%;
	max-width:400px;
	margin:40px auto 0 auto;
}
.businessLinkBtn a{
	display:block;
	width:100%;
	box-sizing:border-box;
	padding:10px 5%;
	text-align:center;
	position:relative;
	border:1px solid var(--themecolor);
	background:#fff;
	color:var(--themecolor);
	transition.3s;
}
.businessLinkBtn a::before{
	font-family: 'Material Icons';
  	content:'\eac9';
  	transition: 0.3s;
  	position: absolute;
  	right: 3%;
  	top: 10px;
  	color:var(--themecolor);
	transition:.3s;
	font-weight:300;
}
.businessLinkBtn a:hover{
	text-decoration:none;
	border:1px solid var(--themecolor);
	background:var(--themecolor);
	color:#fff;
}
.businessLinkBtn a:hover::before{
  	right: 2%;
  	color:#fff;
}

@media screen and (max-width: 1000px) {
.businessItem{
	display:block;
	margin:0 auto 60px auto;
}
.businessListL{
	width:100%;
	margin:0 auto 40px auto;
}
.businessListR{
	width:100%;
	margin:0 auto;
}
.businessLinkBtn{
	margin:30px auto 0 auto;
	max-width:100%;
}
.businessTtl{
	font-size:2rem;
	margin:0 auto 15px auto;
}
}
@media screen and (max-width: 640px) {
.businessItem{
	border-top:1px dashed var(--themecolor);
	padding:30px 0 0 0;
	margin:0 auto 40px auto;
}
.businessItem:first-child{
	border-top:none;
	padding:0;
}
.businessItem:last-child{
	border-bottom:1px dashed var(--themecolor);
	padding:30px 0 20px 0;
}
.businessTtl{
	font-size:1.9rem;
	margin:0 auto 5px auto;
	font-weight:600;
}
}

/************
事業紹介・詳細
************/
.businessSyosaiUp{
	width:100%;
	padding:130px 0 0 0;
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.businessSyosaiUpL{
	width:45%;
}
.businessSyosaiUpR{
	width:55%;
}
.businessImg img{
	margin:0 auto;
	border-radius:15px 0 0 15px;
	-moz-border-radius:15px 0 0 15px;
	-webkit-border-radius:15px 0 0 15px;
}
.businessSyosaiUpLNaka{
	width:70%;
	margin:0 auto;
}
.businessSyosaiUpLNaka h2{
	margin:0 auto 30px auto;
	font-size: 3.5rem;
	text-align:left;
	opacity: 0;
  	animation: fadeInLeft 0.9s ease-out forwards;
	animation-delay: 0.4s;
}
.businessSyosaiUpLNaka h2 br{
	display:block;
}
.businessUpTxt {
	opacity: 0;
  	animation: fadeInLeft 0.9s ease-out forwards;
  	animation-delay: 0.6s;
}
@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.businessMainTtl{
	font-size:2.5rem;
	font-weight:500;
	margin:0 auto 30px auto;
	color:var(--themecolor);
}
ul.jigyoNaiyoList{
	width:100%;
	margin:0 auto;
	position:relative;
}
ul.jigyoNaiyoList li{
	width:97%;
	padding:0 0 0 15px;
	position:relative;
}
ul.jigyoNaiyoList li::before{
	content:'';
	position:absolute;
	width:10px;
	height:10px;
	background:var(--themecolor);
	border-radius:50%;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	left:0.1px;
	top:12px;
}
.businessNaiyo{
	width:100%;
	justify-content:space-between;
}
.businessNaiyo .wp-block-column {
    flex-basis: unset!important;
    flex-grow:unset!important;
}
.businessNaiyoL{
	width:48%;
}
.businessNaiyoR{
	width:46%;
}
.businessNaiyoR img{
	margin:0 auto;
	border-radius:15px;
	-moz-border-radius:15px;
	-webkit-border-radius:15px;
}
.lineup , lineup2{
	width:100%;
	justify-content:space-between;
}
.lineup .wp-block-column , .lineup2 .wp-block-column{
    flex-basis: unset!important;
    flex-grow:unset!important;
}
.lineupOne{
	width:47%;
	margin:0 auto 20px auto;
}
.lineup 2.lineupOne{
	width:32%;
	margin:0 auto 20px auto;
}
.lineupTtl{
	font-size:2rem;
	font-weight:500;
	margin:0 auto 10px auto;
}
.lineupOne img{
	margin:0 auto;
	border-radius:15px;
	-moz-border-radius:15px;
	-webkit-border-radius:15px;
}
@media screen and (max-width: 1500px) {
.businessSyosaiUpLNaka{
	width:80%;
	margin:50px auto 0 auto;
}
}
@media screen and (max-width: 1200px) {
.businessSyosaiUpLNaka{
	margin:30px auto 0 auto;
}
.businessSyosaiUpLNaka h2{
	font-size: 3.2rem;
}
}
@media screen and (max-width: 1060px) {
.businessSyosaiUp{
	display:block;
	padding:90px 0 0 0;
}
.businessSyosaiUpL{
	width:100%;
	margin:0 auto 40px auto;
}
.businessSyosaiUpR{
	width:100%;
	margin:0 auto;
}
.businessImg img{
	border-radius:0;
	-moz-border-radius:0;
	-webkit-border-radius:0;
}
.businessSyosaiUpLNaka{
	width:90%;
	margin:30px auto 0 auto;
}
.businessSyosaiUpLNaka h2 {
    margin: 0 auto 15px auto;
    font-size: 3rem;
}
.businessMainTtl {
    font-size: 2.2rem;
    margin: 0 auto 20px auto;
}
}
@media screen and (max-width: 800px) {
.businessSyosaiUp{
	padding:70px 0 0 0;
}
.businessNaiyo{
	display:block!important;
}
.businessNaiyoL{
	width:100%;
	margin:0 auto 25px auto!important;
}
.businessNaiyoR{
	width:100%;
	margin:0 auto!important;
}
.lineup{
	display:block!important;
}
.lineupOne{
	width:100%;
	margin:0 auto 25px auto!important;
	border-bottom:1px dashed var(--themecolor);
	padding:0 0 20px 0;
}
.lineupOne:last-child{
	margin:0 auto!important;
}
ul.jigyoNaiyoList li::before{
	top:11px;
}
}
@media screen and (max-width: 640px) {
.businessSyosaiUpLNaka h2 {
	line-height: 4rem;
	font-size: 2.5rem;
}
.businessMainTtl {
    font-size: 2rem;
    margin: 0 auto 10px auto;
}
.lineupTtl{
	font-size:1.9rem;
	margin:0 auto 5px auto;
}
}
@media screen and (max-width: 480px) {
.businessSyosaiUp{
	padding:50px 0 0 0;
}
}

/************
品質・環境
************/
.hinshitsuUpMidashi{
	font-size:2.4rem;
	font-weight:600;
	margin:0 auto 20px auto;
	text-align:center;
	color:var(--themecolor);
}
.quality{
	width:100%;
	margin:0 auto 50px auto;
	overflow:hidden;
}
.quality .wp-block-group__inner-container{
	width:100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
	align-items:strech;
}
.qualityOne{
	width:47%;
	margin:0 0 70px 0;
}
.qualityOne .wp-block-group__inner-container{
	width:100%;
	display:block;
}
.qualityTtl{
	font-size:2rem;
	font-weight:600;
	margin:0 auto 10px auto;
	color:var(--themecolor);
}
.qualityOne .wp-block-image {
  	margin: 0 auto 20px auto;
}
.qualityOne .wp-block-image img{
  	margin: 0 auto;
	border-radius:15px;
	-moz-border-radius:15px;
	-webkit-border-radius:15px;
}
.flowWrapper{
	width:100%;
	max-width:1100px;
	margin:0 auto;
	overflow:hidden;
}
.serviceFlowTtl{
  	display: flex;
  	align-items: center;
  	justify-content: center;
  	gap: 30px;
  	text-align: center;
	font-size:2.2rem;
	margin:15px auto 30px auto;
}
.serviceFlowTtl::before,
.serviceFlowTtl::after{
  	content: "";
  	width: 60px;
  	height: 2px;
  	background:var(--themecolor);
  	flex-shrink: 0;
}
.serviceFlowTtl::before{
  	position:relative;
}
.flow{
	width:100%;
	max-width:840px;
	margin:20px auto 40px auto!important;
	overflow:hidden;
}
.flowSp{
	display:none;
}
@media screen and (max-width: 1000px) {
.hinshitsuUpMidashi{
	font-size:2.1rem;
}
.qualityTtl{
	font-size:1.8rem;
	margin:0 auto 5px auto;
}
}
@media screen and (max-width: 800px) {
.hinshitsuUpMidashi{
	text-align:left;
	margin:0 auto 15px auto;
}
.quality .wp-block-group__inner-container{
	display:block;
}
.qualityOne{
	width:100%;
	margin:0 auto 30px auto;
	border-bottom:1px dashed var(--themecolor);
	padding:0 0 30px 0;
}
.qualityOne:last-child{
	margin:0 auto;
}
}
@media screen and (max-width: 640px) {
.hinshitsuUpMidashi{
	font-size:2rem;
	margin: 0 auto 10px auto;
}
.flow{
	display:none;
}
.flowSp{
	display:block;
	width:100%;
	max-width:100%;
	margin:0 auto 30px auto!important;
}
.serviceFlowTtl{
  	gap: 20px;
	font-size:1.85rem;
	margin:0 auto 20px auto;
}
}

/************
会社情報・レイアウト
************/
.companyWrapper{
	display:flex;
	justify-content:space-between;
	align-items: flex-start;
}
.companyMain{
	width:100%;
	max-width:1050px;
}
.companySide{
	width: calc(100% - 1100px);
  	margin: 0 50px 0 0;
  	position: sticky;
  	top:100px;
}
.companySide ul li{
	width:100%;
	position:relative;
}
.companySide ul li a{
	width:95%;
	padding:9px 2% 9px 35px;
	font-size:1.7rem;
	position:relative;
	transition:.3s;
	box-sizing:border-box;
	display: inline-block;
	color:#b2b2b2;
}
.companySide ul li a:hover{
	text-decoration:none;
}
.companySide li.current > a{
  	color: var(--basecolor);
  	font-weight: 600;
	transition:.3s;
}
.companySide li.current > a::before{
	content: "";
    position: absolute;
    left: 0.1px;
    top: 50%;
    transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
    width: 24px; 
    height: 20px;
    background-image: url('./images/common/company-menu.png');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    transition: 0.3s;
}
@media screen and (max-width: 1400px) {
.companyMain{
	max-width:82%;
}
.companySide{
	width: calc(100% - 85%);
  	margin: 0 3% 0 0;
}
}
@media screen and (max-width: 1100px) {
.companyMain{
	max-width:77%;
}
.companySide{
	width: calc(100% - 80%);
  	margin: 0 3% 0 0;
}
}
@media screen and (max-width: 900px) {
.companyWrapper{
	display:block;
	width:100%;
}
.companyMain{
	width:100%;
	max-width:100%;
	margin: 0 auto ;
}
.companySide{
	display:none;
}
}

/************
会社情報
************/
.daihyoPic{
	margin:0 auto 40px auto!important;
}
.greetingMidashi{
	font-size:2.3rem;
	font-weight:600;
}
.greetingSubMidashi{
	font-size:1.55rem;
	color:var(--themecolor);
	font-family:var(--enLg);
	margin:0 auto 20px auto;
	font-weight:600;
}
.daihyo{
	font-family: "Yuji Mai", serif;
  	font-size: 2.1rem;
  	margin: 30px 0 0 0;
  	text-align: right;
}
.daihyo span {
  font-size: 1.6rem;
  padding: 0 20px 0 0;
}
.gaiyo{
	width:100%;
	margin:0 auto;
	overflow:hidden;
}
.gaiyo table{
	width:100%;
	border-collapse:collapse;
}
.gaiyo table tr{
	width:100%;
	border-bottom:1px solid #d8d8d8;
	overflow:hidden;
	display:block;
	padding:2% 0 2.5% 0;
}
.gaiyo table tr:first-child{
	padding:0 0 2.5% 0;
}
.gaiyo table th{
	width:96%;
	padding:0 2%;
	vertical-align:top;
	text-align:left;
	display:block;
	color:var(--themecolor);
	font-size:1.5rem;
}
.gaiyo table td{
	display:block;
	width:96%;
	padding:0 2%;
}
.access{
	width:100%;
	margin:0 auto 30px auto;
	overflow:hidden;
	justify-content:space-between;
}
.accessL{
	width:40%;
}
.accessL .wp-block-column{
	flex-basis: unset!important;
	flex-grow:unset!important;
}
.accessTel a{
	pointer-events:none;
}
.accessR{
	width:55%;
}
ul.accessKeiro{
	width:100%;
	margin:0 auto;
	overflow:hidden;
	position:relative;
}
ul.accessKeiro li{
	width:97%;
	padding:0 0 3px 15px;
	position:relative;
}
ul.accessKeiro li::before{
	position:absolute;
	content:'';
	width:8px;
	height:8px;
	background:var(--themecolor);
	border-radius:50%;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	left:0.1px;
	top:13px;
}
.gm{
	position: relative;
    padding-bottom: 46%;
    height: 0;
    overflow: hidden;
}
.gm iframe, .gm object, .gm embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.gm2{
	position: relative;
    padding-bottom: 62%;
    height: 0;
    overflow: hidden;
}
.gm2 iframe, .gm2 object, .gm2 embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.accessShisyo{
	justify-content:space-between;
	width:100%;
	margin:0 auto 60px auto;
	overflow:hidden;
}
.asB0{
	margin:0 auto;
}
.accessShisyo .wp-block-column {
    flex-basis: unset!important;
    flex-grow: unset!important;
}
.accessShisyoOne{
	width:45%;
}
.fs-small{
	font-size:1.5rem;
}
@media screen and (max-width: 1500px) {
.greetingMidashi{
	font-size:2.1rem;
}
}
@media screen and (max-width: 1100px) {
.accessShisyo{
	display:block!important;
	margin:0 auto 10px auto;
}
.accessShisyoOne{
	width:100%;
	margin:0 auto 30px auto!important;
}
}
@media screen and (max-width: 1000px) {
.daihyoPic{
	margin:0 auto 30px auto!important;
}
.daihyo {
    font-size: 1.9rem;
    margin: 20px 0 0 0;
}
.daihyo span{
    font-size: 1.5rem;
}
.access{
	margin:0 auto 10px auto;
	display:block!important;
}
.accessL{
	width:100%;
	margin:0 auto 20px auto!important;
}
.accessR{
	width:100%;
	margin:0 auto!important;
}
.gm{
    padding-bottom: 62%;
}
}
@media screen and (max-width: 800px) {
.greetingMidashi{
	font-size:1.85rem;
	font-weight:600;
}
.greetingSubMidashi{
	font-size:1.45rem;
}
.gaiyo table tr{
	padding:3% 0 3.5% 0;
}
.gaiyo table tr:first-child{
	padding:0 0 3.5% 0;
}
.accessTxt a{
	pointer-events:inherit;
}
.gm{
    padding-bottom: 68%;
}
}
@media screen and (max-width: 480px) {
.gaiyo table tr{
	padding:5% 0 5.5% 0;
}
.gaiyo table tr:first-child{
	padding:0 0 5.5% 0;
}
.gm{
    padding-bottom: 76%;
}
}


/******************
お問い合わせ
******************/
.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: 15px 2% 12px 2%;
  	max-width: 95%;
	margin:2px 0 2px 0.2%;
	box-sizing:border-box;
}
#contactForm input{
	width:98%;
}
.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 #ccc;
	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: 1.25rem;
	line-height:1.6rem;
  text-align: center;
	padding:2px 2% 4px 2%;
	box-sizing:border-box;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
	letter-spacing:4px;
	margin:0 0 0 15px;
	font-weight:400;
}
span.anyed{
  display:inline-block;
  color: #fff;
	background:#7c7c7c;
  position: relative;
  font-size: 1.25rem;
	line-height:1.6rem;
  text-align: center;
	padding:2px 2% 4px 2%;
	box-sizing:border-box;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
	letter-spacing:4px;
	margin:0 0 0 15px;
	font-weight:400;
}
#sendingBox{
	width:96%;
	border-bottom:none;
	margin:auto;
	text-align:center;
	padding:30px 0;
}
#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:320px;
	width:100%;
	margin:10px auto 0;
	display:flex;
	justify-content: space-between;
}
.kakuninBtn{
	width:200px;
}
.kakuninBtn input{
	width:200px;
	height:40px;
	cursor:pointer;
	outline:none;
	background-color:var(--themecolor);
	color:white;
	border:none;
	letter-spacing:1px;
	transition:.3s;
	font-weight:500;
	font-size:1.5rem;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
}
.kakuninBtn input:hover{
	background-color:var(--hovercolor);
}
.returnBtn input{
	height:40px;
	outline:none;
	border:none;
	padding:5px 20px;
	background-color:#7c7c7c;
	border:1px solid #7c7c7c;
	transition:.3s;
	font-weight:500;
	font-size:1.5rem;
	border-radius:30px;
	-moz-border-radius:30px;
	-webkit-border-radius:30px;
	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 .wpcf7-submit:disabled{
	background-color:rgba(201,35,67,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.5rem;
}
.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: 2%;
  border: 1px solid #ccc;
  font-size: 1.4rem;
  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.7rem;
}
.privacyBoxMidashi{
	font-weight:600;	
	font-size: 1.5rem;
}
.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{
	float:left;
	width:50%;
	margin:0 auto ;
	overflow:hidden;
}
.sitemap ul li{
	width:97%;
		position: relative;
	padding:0 0 60px 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;
	font-size:1.7rem;
	font-weight:400;
	transition:.3s;
}
.sitemap li a:hover{
	color:var(--themecolor);
	text-decoration:underline;
}
.sitemap ul li a .material-symbols-outlined{
	font-weight:300;
	font-size:1.6rem;
	padding:0 0 0 5px;
}
.sitemap ul li a:hover.smNoLink{
	pointer-events:none;
	text-decoration:none;
}
.sitemap ul li ul li{
	width:95%;
	position: relative;
	padding:8px 0 8px 16px;
}
.sitemap ul li ul li::before {
  display: block;
  content: '';
  position: absolute;
  top: 24px;
  left: 2.5px;
  width: 10px;
  height: 1px;
  background-color:var(--basecolor);
  border-radius: unset;
}
.sitemap ul li ul li a{
	width:100%;
	display:block;
	color:var(--basecolor);
	text-decoration:none;
	font-weight:400;
	font-size:1.5rem;
}

@media screen and (max-width: 781px) {
.sitemap{
	float:none;
	width:100%;
}
.sitemap ul li{
	float:none;
	width:95%;
	padding:0 0 40px 15px;
}
.sitemap ul li::before {
  top: 12px;
}
}



/******************
404
******************/
.txt404{
	padding:0 0 3% 0;
}
.txt404 p{
	clear:both;
	text-align:center;
}
.btn404{
	width:35%;
	margin:60px auto 20px auto;
}
.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(--themecolor);
	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 #ccc;
	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 .infoImg{
	width:180px;
	display:block;
	overflow: hidden;
	transition:.3s;
}
#infoBox ul li a .infoImg{
	width:180px;
	display:block;
	overflow: hidden;
	transition:.3s;
}
#infoBox ul li .infoNakaR{
	width:calc(100% - 220px);
	margin:0 0 0 40px;
	display:block;
}
#infoBox ul li .infoDate{
	display:block;
	font-size:1.5rem;
	font-weight:500;
	color:var(--besecolor);
	margin:0;
}
#infoBox ul li .infoTitle{
	display:block;
	line-height:1.5;
}	
#infoBox ul li a:hover .infoImg img{
	transform: scale(1.1);
	-moz-transform: scale(1.1);
	-webkit-transform: scale(1.1);
}
.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%;
}
.toColumnTtl{
	display:block;
	width:100%;
	box-sizing:border-box;
	margin:50px auto 0 auto;
	overflow:hidden;
	position:relative;
	padding:0 0 0 25px;
	font-size:1.7rem;
}
.toColumnTtl::before {
  font-family: 'Material Icons';
  content: '\ea50';
  transition: 0.3s;
  position: absolute;
  left: 0.1px;
  top: 1px;
  color: var(--themecolor);
  transition: .3s;
  font-weight: 300;
  font-size: 2.2rem;
}
.koushinTime{
	width:100%;
	display:flex;
	margin:0 auto 10px;
	gap:20px;
	color:#666;
	font-size:1.3rem;
}
@media screen and (max-width: 640px) {
#infoBox ul li .infoImg{
	width:120px;
}
#infoBox ul li a .infoImg{
	width:120px;
}
#infoBox ul li .infoNakaR{
	width:calc(100% - 140px);
	margin:0 0 0 20px;
}
.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;
}
}
@media screen and (max-width: 440px) {
.koushinTime{
	display:block;
	gap:unset;
}
.koushinTime time{
	display:block;
	width:100%;
	line-height:1.7;
}
#infoBox li{
	width:90%;
}
}

/******************
コラム・一覧
******************/
.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;
}
}

