/*	
theme Name: gh-showa20250801
Author: wave
Description: original theme	
*/

* { box-sizing: border-box; }

html,body {
	height: 100%;
	margin: 0 auto;
	padding: 0;
	font-feature-settings: 'palt' 1;
	text-align: justify;
	letter-spacing: 0.075em;
}

body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	font-size: 16px;
	line-height: 1.5;
	color: #333;
	font-family: "Gothic Medium BBB","メイリオ"; 
}

body{
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

img {
	max-width: 100%;
	height:auto;
	display:block;
	margin: 0;
	padding: 0;
	border: none;
	object-fit: cover;
}

ul,table,p { box-sizing : border-box; }

a[href^="tel:"] { cursor: default; }

a,
a:hover,
a:visited,
a:active {
	color: inherit;
	text-decoration: none;
}

li { list-style: none; }

h1,h2,h3,h4,h5,h6 {
	line-height: 1.4;
	font-family: "Shin Maru Go Bold","メイリオ";
}

.morisawa__bold,
.main__heading span.house,
.main__heading span { font-family: "Shin Maru Go Bold","メイリオ"; }

.morisawa__medium { font-family: "Shin Maru Go Medium","メイリオ"; }

.morisawa__light { font-family: "Shin Maru Go Light","メイリオ"; }

.inquiry__form-items p,
.footer__address p { font-family: "Gothic Medium BBB","メイリオ"; }

.inquiry__form-items label {
        width: 100%;
	margin: 0 0 20px;
        display: block;
        border: none;
}

header {
	height: 90px;
	width: 100%;
	padding: 20px 20px 0;
	display: flex;
	justify-content: space-between;
	background: #fff;
	position: fixed;
	z-index: 999;
}

.header__nav h1 {
	width: 200px;
}

.header__nav-menu ul li,
.footer__block-nav { font-size: 13px; }

main {
	width: 100%;
	margin: 120px auto 30px;
}

.main__heading span {
	font-size: 30px;
	font-weight: bold;
	color: #e45513;
}

.main__heading span.house,
.main__heading { font-size: 24px; }
	
.main__heading {
	margin: 0 auto 20px !important;
	font-weight: normal;
	color: #ff903d;
	text-align: center;
	letter-spacing: 0.25em;
	align-items: center;
}


.home__catchphrase,
.grouphome__desc-movein,
.grouphome__desc,
.home__recruit,
footer,
main.page {
	width: 90%;
}

.home__catchphrase,
.home__recruit,
.home__flower { margin: 0 auto 30px !important; }

.home__catchphrase-intro { font-size: 18px; }

.home__catchphrase-title { padding: 0 0 10px; }

.home__catchphrase-desc { line-height: 1.7; }

.grouphome {
	width: 100%;
	margin: 0 auto 30px !important;
	padding: 30px 0;
	background: #f5f1ed;
}

.grouphome__desc-movein,
.grouphome__desc,
footer { margin: 0 auto !important; }

.grouphome__desc-heading {
	width: 220px;
	padding: 10px 20px;
	background: url(images/home/cloud@2x.png) no-repeat;
	background-position: top -5px left;
	background-size: 220px;
}

.grouphome__desc {
	height: 550px;
	margin: 0 auto 20px !important;
	background: url(images/home/about-back@2x.webp) no-repeat;
	background-position: top 210px right;
	background-size: 170%;
	position: relative;
}

.cloud {
	width: 220px;
	top: -3px;
	left: -20px;
	position: absolute;
}

.grouphome__desc h2 {
	top: 10px;
	position: absolute;
}

.grouphome__desc-maintext { margin: 50px 0 0 !important; }

.home__recruit-heading {
	height: 60px;
	width: 100%;
	padding: 10px 20px;
	background: url(images/home/headign-back@2x.png) no-repeat;
	background-position: center center;
	background-size: 100%;
	justify-content: center;
}

.home__recruit-heading h3.morisawa__bold-fontcolor-mix {
	margin: 0 auto !important;
	padding: 5px 0 0;
	color: #e55513;
}

.home__recruit-heading h3.morisawa__bold-fontcolor-mix span {
	color: #ff903d;
}

.home__recruit-gallery { gap: 20px; }

.home__recruit-gallery figure img { border-radius: 12px; }

.button { margin: 20px 0 0 !important; }

.company__overview table tr td:first-of-type { width: 140px; }

.wp-block-contact-form-7-contact-form-selector { width: 100%; }

.inquiry__form-items label {
        width: 100%;
	margin: 0 0 20px;
        display: block;
        border: none;
}

.inquiry__form-items label span.item__name {
        width: 100%;
        margin: 0 0 15px;
        padding: 10px 0 10px 10px;
        display: flex;
        align-items: center;
        background: #f5f1ed;
        border-top: solid 1px #a5a5a5;
}

.wpcf7-form-control-wrap {
        line-height: 1;
        padding: 0;
        width: 100%;
        display: block;
}

.inquiry__form-items label input,
.wpcf7-form-control.wpcf7-textarea {
	width: 100%;
	padding: 10px;
	border: solid 1px #d8d8d8;
	border-radius: 12px;
}

.wpcf7-form-control.wpcf7-textarea {
	width: 100%;
	padding: 10px;
	border: solid 1px #d8d8d8;
	border-radius: 12px;
}

 #inquiry__form-submit input {
        width: 150px;
	margin: 20px 0 0;
        line-height: 50px;
	background: #3f0101;
	color: #fff;
	font-weight: bold;
	font-size: 18px;
	display: flex;
	justify-content: center;
	border-radius: 12px;
	cursor: pointer;
}

::placeholder { color: #c6c6c6; }

footer {
	margin-top: auto !important;
	padding: 0 0 10px;
}

footer,
.footer__contact,
.footer__block { gap: 0; }

.footer__logo {
	width: 240px;
	padding: 0 0 10px;
}

.footer__contact {
	padding: 0 0 10px;
}

.footer__address {
	margin: 0 0 0.5em !important;
	padding: 0 0 0.5em;
	border-bottom: solid 1px;
	gap: 0;
}

.wpcf7-turnstile.cf-turnstile {
    display: none;
}




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

.header__nav h1 { width: 300px; }

.header__nav-menu ul {
	border-left: solid 1px;
	display: flex;
}

.header__nav-menu ul li {
	border-right: solid 1px;
	padding: 0 10px;
}

.home__catchphrase {
    text-align: center;
    align-items: center !important;
}

.main__heading span.house,
.main__heading { font-size: 42px; }

.main__heading span {
	font-size: 50px;
	font-weight: bold;
	color: #e45513;
}

.home__catchphrase-title,
.grouphome__desc-movein-heading,
.home__recruit-heading,
.home__recruit-wanted-heading { font-size: 26px !important; }

.home__catchphrase-desc { font-size: 18px; }

.home__catchphrase-intro,
.home__catchphrase-title,
.morisawa__bold-fontcolor-mix,
.home__recruit-wanted-heading { letter-spacing: 0.25em; }

.grouphome__desc {
    height: 400px;
    margin: 0 auto !important;
    background-position: top 40px right;
    background-size: 690px;
}

.grouphome__desc-maintext {width: 310px; }

.home__recruit-heading {
    height: 90px;
    padding: 0;
    background-size: 670px;
}

.home__recruit-heading h3.morisawa__bold-fontcolor-mix { padding: 10px 0 0; }

.home__recruit-gallery {
	margin: 0 0 30px !important;
	display: grid !important;
	grid-template-columns: repeat(3, 1fr);
	grid-template-rows: repeat(2, 1fr);
	gap: 10px;
}

.home__recruit-gallery figure:first-of-type { grid-area: 1 / 1 / 3 / 2; }
.home__recruit-gallery figure:nth-of-type(2) { grid-area: 1 / 2 / 2 / 3; }
.home__recruit-gallery figure:nth-of-type(3) { grid-area: 2 / 2 / 3 / 3; }
.home__recruit-gallery figure:nth-of-type(4) { grid-area: 1 / 3 / 2 / 4; }
.home__recruit-gallery p { grid-area: 2 / 3 / 3 / 4; }

.home__recruit-gallery figure:first-of-type img { height: 330px; }

.home__recruit-gallery figure:nth-of-type(2) img,
.home__recruit-gallery figure:nth-of-type(3) img,
.home__recruit-gallery figure:nth-of-type(4) img,
.home__recruit-gallery p { height: 160px; }

.home__recruit-gallery p {
	padding: 0 0 0 15px;
	display: flex;
	align-items: center;
}

.home__recruit-wanted-heading { margin: 0 auto !important; }

.button { margin: 20px auto 0 !important; }

.company__overview table tr td:first-of-type { width: 200px; }

.inquiry__form-items {
    border-top: solid 1px #a5a5a5;
}

.inquiry__form-items label span.item__name {
	width: 250px;
	margin: 0;
	padding: 0 20px 0;
	border: none;
}


.wpcf7-form-control-wrap {
    width: 100%;
    line-height: 1;
    padding: 30px;
}

.inquiry__form-items label {
    width: 100%;
    margin: 0;
    display: flex;
    border-bottom: solid 1px #a5a5a5;
}

footer {
	padding: 0 0 10px;
	flex-direction: initial !important;
	align-items: center !important;
	gap: 40px !important;
}

.footer__logo { width: 280px; }

.footer__contact { padding: 0; }




}


@media screen and  (min-width: 1024px) {

.text__center {
	margin: 0 auto !important;
	text-align: center;
}

main { margin: 170px auto 30px; }

main.page { margin: 170px auto 80px; }

.main__heading { margin: 0 auto 20px !important; }

.home__catchphrase-intro { font-size: 22px; }

.home__catchphrase-title,
.grouphome__desc-movein-heading,
.home__recruit-heading,
.home__recruit-wanted-heading { font-size: 30px !important; }

.home__catchphrase-desc { font-size: 20px; }

.grouphome {
	margin: 0 auto 60px !important;
	padding: 60px 0;
}

.grouphome__desc {
        height: 480px;
        background-position: top right;
        background-size: 930px;
}

.grouphome__desc-maintext {
        width: 380px;
	line-height: 1.7;
	letter-spacing: 0.125em;
}

.home__catchphrase,
.home__recruit,
.home__flower { margin: 0 auto 60px !important; }

.home__recruit-heading { margin: 0 auto 30px !important; }

.grouphome__desc-movein-txt,
.home__recruit-gallery-txt,
.home__recruit-wanted-txt {
	line-height: 1.7;
	font-size: 18px;
}

.home__recruit-wanted-txt {
	margin: 0 auto !important;
	text-align: center;
}

.company__overview table tr td { padding: 1em; }

footer {
	padding: 0 0 30px;
	gap: 30px !important;
}

.footer__logo {
        width: 240px;
	padding: 0;
	align-items: center !important;
}

.footer__info { gap: 0; }

.footer__address {
	margin: 0 !important;
	padding: 0 !important;
	border: none;
}

.footer__contact,
.footer__block,
.footer__address { gap: 10px; }

.footer__contact,
.footer__block,
.footer__address {
	align-items: center !important;
	flex-direction: initial !important;
}

.footer__block-nav {
	border-left: solid 1px;
	padding: 0 0 0 10px;
}





}


@media screen and  (min-width: 1180px) {

main.page,
.grouphome__desc,
.grouphome__desc-movein,
.home__recruit,
footer { width: 1000px; }

.main__heading span { font-size: 60px; }

.main__heading span.house,
.main__heading { font-size: 52px; }

.home__catchphrase-title { font-size: 38px !important; }

.home__catchphrase-intro { font-size: 24px; }

.footer__phone { font-size: 30px !important; }

.grouphome__desc h2,
.footer__contact-address { font-size: 22px !important; }

.footer__block-nav { font-size: 16px; }

.grouphome__desc {
        height: 530px;
        background-size: 1000px;
}

.cloud {
	width: 270px;
	top: 15px;
	left: -30px;
}

.grouphome,
.home__recruit { margin: 0 auto 80px !important; }

.grouphome { padding: 80px 0; }

.grouphome__desc h2 { top: 32px; }

.grouphome__desc-maintext {
	width: 430px;
	margin: 80px 0 0 !important;
}

.grouphome__desc-movein-txt,
.home__recruit-gallery-txt,
.home__recruit-wanted-txt { font-size: 20px; }

.home__recruit-gallery { margin: 0 0 50px !important; }


.home__recruit-gallery figure:first-of-type img { height: 430px; }

.home__recruit-gallery figure:nth-of-type(2) img,
.home__recruit-gallery figure:nth-of-type(3) img,
.home__recruit-gallery figure:nth-of-type(4) img,
.home__recruit-gallery p { height: 210px; }

footer {
	justify-content: space-between;
	gap: 0 !important;
}
    
.footer__logo { width: 300px; }

.footer__block-nav {
	padding: 0 10px;
	border-right: solid 1px;
}



}
