/*
Theme Name:sato-landsurvey-2026-07
Theme URI: none
Description:sato-landsurvey-2026-07 のテーマ
Author: truefeels.
Author URI: https://truefeels.jp
Template:
Version: 01
.
テーマ用CSS
.
*/
/***********************************************************************
※注意事項
テーマファイルを編集する際は、必ずメモ帳等にコピー＆ペースト、またはバックアップを行ったうえで作業して下さい
「ファイルを更新」すると編集内容が反映されます
*/
/***********************************************************************/

 /*reset
-------------------------------------------------------------------- */
html,body,header,section, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6,
pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
-webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
         -o-box-sizing: border-box;
        -ms-box-sizing: border-box;
            box-sizing: border-box;}
li { list-style: none; }
td{vertical-align: top;}

 /* link
-------------------------------------------------------------------- */
a {text-decoration: none;transition: .3s;color:#454445;}
a:hover { opacity:0.5;}
a:active { opacity:0.5;}

.link{
	background-color: #0089bc;
    color: #fff;
    padding: 10px;
    display: block;
    width: fit-content;
    margin-left: auto;
}
 /* font
-------------------------------------------------------------------- */

body{
	 font-family: "M PLUS Rounded 1c", sans-serif;
  font-weight: 400;
  font-style: normal;
	color:#000;
	width: 100%;
	opacity:0;
	transition:0.5s;
	padding-top:100px;
}

h1,h2{
	font-family: "Rajdhani", sans-serif;
  font-weight: bold;
  font-style: normal;
	text-align:center;

}

h1{
		font-size: 40px;
    margin-bottom: 30px;
}

h2{ 
	font-size:40px;

}

h3{
	font-size:30px;
	margin-bottom:10px;
}



@media screen and (max-width:812px) {
	h1{
		font-size:9vw;
	}
	h2{
	font-size:8vw;
}

}
/* body
-------------------------------------------------------------------- */
html, body {
  margin: 0;
  display: flex;
  flex-direction: column; /* 要素を縦並びにする */
  min-height: 100vh;

}


main{
	margin-top:80px;
	flex: 1;
}


section{
width: 100%;
	padding:30px 0;
}

.inner {
	width: 1000px;
	margin:0 auto ;
	padding:20px 0;
	text-align:left;
	position:relative;
}

@media screen and (max-width:812px) {
	main{
	margin-top:60px;
	
}
	
	.inner {
	width: 100%;
		padding:20px;

}
}

/* header
--------------------------- */
header{
	width:100%;
	height:80px;
	z-index:10;
	color:#000;
	position:fixed;
	top:0;left:0;
	background-color:#fff;
}
header .inner{
	padding:10px 0;
}
.description{
	font-weight:normal;
	font-size:12px;
}

.logo_contact{
	display:flex;
	justify-content:space-between;
	align-items:center;
}
.header_logo{
	    background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/08/header_logo.png);
    display: inline-block;
    height: 45px;
    width: 530px;
    background-size: contain;
    background-repeat: no-repeat;
}


.header_logo h1{
	display:none;
}




@media screen and (max-width:812px) {
header{
	height:60px;
}

	header .inner{
	padding:10px;
		text-align:left;
}

	.header_logo{
	background-size:contain;
	background-repeat:no-repeat;
	display:inline-block;
		vertical-align:top;
         width: 300px;
        height: 25px;
        margin-top: 5px;

}
.description{
    height: 15px;
	}
}
/*menu
------------------------- */
header nav{
			width:690px;
	height:70px;
	display:inline-block;
	text-align:center;
	font-weight:bold;
}

.navi{
	background:rgba(0,0,0,0.8);
	position:fixed;
	top:0;
right:-400px;
	z-index:10;
	transition:1s;
	width:400px;
	height:100vh;
	opacity:0;
			 display: flex;
  align-items: center;
  justify-content: center;
	overflow-y:scroll;
	padding:10px;
}

.navi .inner{
	text-align:left;
	width:100%;
}
.navi.active{
right:0;
	opacity:1;
}


.menu{
display:flex;
	justify-content: space-around;
	 align-items: center;
	height:100%;
	margin:auto;
}



.menu li a{
	position:relative;
	color:#0089bc;
	font-size: 15px;
	font-family: "Rajdhani", sans-serif;
}
.menu li a:after{
    position: absolute;
    bottom: 0;
    left: 0;
	right:0;
	margin:auto;
    content: '';
    width: 0;
    height: 1px;
    background-color: #0089bc;
    transition: .3s;
}
.menu li a:hover:after{
	width:50px;
}


.menu li .sub_menu{
	display:none;
	position:relative;
	top:-50px;
	transition:0.5s;
}

.menu li .sub_menu li:last-child{
border:none;
}

.menu li .sub_menu.active{
	top:0;
}





/* pc menu
--------------------------------------------------------------------------------- */
.header_contact{
	display:inline-block;
	
}


.pc_menu{
	background:#ededed;
}
.pc_menu ul li a{
	display:inline-block;
	line-height:50px;
	font-size:20px;
}

@media screen and (max-width:812px) {
	.header_contact{
	display:none;
	
}
	.pc_menu{
	display:none;
}
}
/* mobile menu
--------------------------------------------------------------------------------- */
#menu-mobile_menu.menu {
	width: 100%;
	height:auto;
	overflow:visible;
	text-align:center;

}

#menu-mobile_menu.menu li{
	display:block;
	width:100%;
	height:auto;
	font-weight:bold;
}


.front{
	background:rgba(0,0,0,0.2);
	cursor:pointer;
	color:#fff;
	font-size:22px;
}
.back{
	font-size:12px;
}
#menu-mobile_menu.menu.menu a {
	display:block;
	position: static;
	background:rgba(0,0,0,0.5);
	color:#fff;
}


#menu-mobile_menu.menu li .front,
#menu-mobile_menu.menu li a {
	transition: opacity .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
	backface-visibility: hidden;
}
#menu-mobile_menu.menu li:hover .front{
	transform: rotateX(0deg);
}


#menu-mobile_menu.menu li:not(:hover) a {
	transform: rotateX(0deg);
}
/*menu_button
------------------------------------- */
#my-parts-icon {
display:none;
	
}
#my-parts-checkbox{
	display:none;
}
@media screen and (max-width:812px) {

#my-parts-icon {
  display: inline-block;
  cursor: pointer;
  height: 30px;
position:absolute;
	top:17px;
	right:10px;
  width: 30px;
	z-index:9999;
	
}

#my-parts-icon span {
   background: rgb(0, 0, 0);
  display: block;
  height: 2px;
  left: 50%;
  margin: -7% 0 0 -42%;
  position: absolute;
  top: 50%;
  transition: all 0.3s ease-in-out;
  width: 84%;
}

#my-parts-icon span::before,
#my-parts-icon span::after {
  -webkit-transform: rotate(0);
  background: rgb(0, 0, 0);
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  margin: -8% 0 0 -50%;
  position: absolute;
  top: 50%;
  transform: rotate(0);
  transition: all 0.3s ease-in-out;
  width: 100%;
}

#my-parts-icon span::before {
  margin-top: 6.5px;
}

#my-parts-icon span::after {
  margin-top: -8px;
}

#my-parts-checkbox:checked ~ #my-parts-icon span {
  background: rgba(51, 51, 51, 0);
}

#my-parts-checkbox:checked ~ #my-parts-icon span::before,
#my-parts-checkbox:checked ~ #my-parts-icon span::after {
  content: "";
  display: block;
  height: 100%;
  left: 50%;
  margin: -8% 0 0 -42%;
  position: absolute;
  top: 50%;
  width: 100%;
}

#my-parts-checkbox:checked ~ #my-parts-icon span::before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

#my-parts-checkbox:checked ~ #my-parts-icon span::after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.wp-block-embed iframe{
	width:100%!important;
	height:auto;
}
}
/*sidebar
-------------------------------------------------------------------- */
#sidebar{
	background-color:rgba(69,68,69,0.9);
	width:100%;
	height:100vh;
	padding:10px;
	text-align:center;
		position:fixed;
	top:60px;
left:-100%;
	z-index:100;
	transition:0.3s;
	color:#fff;
	    overflow: hidden;
}

#sidebar .inner{
  height: calc(100vh - 200px)!important;
	padding-bottom:50px!important;
}
#sidebar.active{
	left:0;
}
#sidebar nav{
	width:100%;
	margin:0;
}

#sidebar .menu{
	display:block;
}
#sidebar .menu li{
	display:block;
	margin:20px 0;

}
#sidebar .menu li a{
	padding:10px 0;
	color:#fff;
	font-size:25px;
}
#sidebar .copyright{
	margin-top:20px;
}
.widget-container{
	margin-bottom:20px;
}
.widget-container h3{
	font-weight:normal;
	font-size:15px;
}
.widget-container .menu li{
	display:block;
	width:100%;
	border-top:#999 1px solid;
	padding:10px 0;
	margin:0;
}
.widget-container .menu li:last-child{
	border-bottom:#999 1px solid;
}


/* footer
--------------------------- */
footer{
    background: #c8f0ff;
	width:100%;
	height:150px;
	padding:10px 0;
	color:#454445;
}

footer .inner{
	padding:20px 0 0;
}


.footer_logo{
	    background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/07/logo.png);
    display: inline-block;
    height: 35px;
    width: 500px;
    background-size: contain;
    background-repeat: no-repeat;
}
.kisyo{
	    background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/07/kisyo.png);
  width: 40px;
    height: 35px;
    background-size: contain;
    background-repeat: no-repeat;
	display:inline-block;
	margin-left:10px;
}

.cosmo{
	    background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/07/cosmo.png);
  width: 40px;
    height: 35px;
    background-size: contain;
    background-repeat: no-repeat;
	display:inline-block;
	margin-left:10px;
}

footer .tel{
	font-weight:bold;
	font-size:20px;
}
.footer_menu{
	display:inline-block;
	vertical-align:top;
	width:500px;
	text-align:right;

}
.footer_menu .menu,.footer_menu nav{
	display:flex;
    justify-content: right;
}

.footer_menu nav{
	margin:0 0 10px 0;
}
.footer_menu li{
	width:auto;
}
.footer_menu nav .menu li{
	line-height:15px;
	padding:0 10px 0 5px;
	margin:0;
}
.footer_menu nav .menu li:not(:last-child){
border-right:1px solid #454445;
	padding:0 15px 0 10px;
}

.footer_menu li a{
	font-size:10px;
	font-weight:normal;
}

.footer_link{
	margin:0 0 20px 0;
	font-weight:normal;
}


.footer_link a{
	margin:0 10px;
	    font-size: 10px;
}


.copyright{
	text-align:right;
	font-size:14px;
}

@media screen and (max-width:812px) {
footer{
height:auto;
}
footer .inner{
	padding:20px 10px 0;
	font-size:12px;
}

	.footer_logo{
    display: block;
    height: 4vh;
    width: 100%;
}
	
.footer_info{
	display:block;
	width:100%;
	text-align:center;
}
.footer_info h1{
		text-align:center;
	font-size:20px;
}

	.kadokawa_footer {
    margin: 0 auto 20px;
}

.footer_menu{
	width:100%;
	text-align:center;
	    height: auto;
}

.footer_menu .menu, .footer_menu nav {
    display: flex;
    justify-content: center;
}

.footer_menu .menu,.footer_menu nav{
	text-align:center;
}
.footer_menu li{
	width:auto;
}
.footer_menu li a{
	font-size:7px;
}

.footer_link{
	margin:0;
}

	.footer_link a{
	    font-size: 8px;
		display:inline-block;
}
 .copyright{
	position:static;
	width:100%;
	height:auto;
	text-align:center;
	font-size:10px;
	 margin-top:20px;
}


}

/* home.php (トップページ。直接タグを編集する場合はテーマファイルにて)
---------------------------------------------------------------------- */


h2.sec_title{
	position:relative;
	letter-spacing: 3px;
	text-align:center;
	margin-bottom:30px;
    background: linear-gradient(to bottom, transparent 90%, #0284c7 100%);
    display: inline-block;
    padding: 5px;
}

/*home.php
---------------------------------------------------------------------- */
#top{
	position:relative;
	height:80vh;
}
.slider{
	z-index:-1;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	
}

.slider li{
	width:100%;
		height:80vh;
	background-repeat:no-repeat;
	background-size:cover;
}

.slider .slider1{
	background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/07/top.jpg);
	background-position: 50% 20%;
}

.slider .slider2{
	background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/08/DSC_5498_1-scaled.jpg);
	background-position: 50% 20%;
}

.slider .slider3{
	background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/08/DSC_5901-scaled.jpg);
	background-position: 50% 30%;
}

#top .inner{
		position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}
#top .inner p{
line-height:70vh;
	color:#fff;
	font-size: clamp(1.5rem, 4vw + 0.5rem, 4rem);
	    text-align: center;
	z-index:0;
}

#top .inner p span{
	display:inline-block;
	line-height:120%;
	background-color:rgb(0 137 188 / 50%);
}
#top .inner p span:nth-child(1){
	transform:translateY(-37px);
}
#top .inner p span:nth-child(2){
	transform:translateY(37px);
}
@media screen and (max-width:812px) {
	#top .inner p{
	line-height:85vh ;
	color:#fff;
	font-size: clamp(1.5rem, 4vw + 0.5rem, 4rem);
	    text-align: center;
}
	
.slider .slider1{
	background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/07/top.jpg);
	background-position: 10% 50%;
}

.slider .slider2{
	background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/08/DSC_5498_1-scaled.jpg);
	background-position: 20% 20%;
}

.slider .slider3{
	background-image: url(https://sato-landsurvey.com/wp-content/uploads/2026/08/DSC_5914-scaled.jpg);
	background-position: 50% 30%;
}
	
	
	#top .inner p span{
	font-size: 7vw;
}
	
}

/*INFORMATION
---------------------------------------------------------------------- */
#information h2{
    letter-spacing: 3px;
    margin-bottom: 30px;
    background: #0284c7;
	color:#fff;
    display: inline-block;
    padding: 5px;
}
.info_list {
	margin-bottom:20px;
}

.info_list li{
	border-bottom:#008cbd 1px dotted;
	margin:10px 0;
}

.info_list li a {
	display:flex;
	color:#008cbd;
}


.info_list li a h3{
	font-weight:normal;
	font-size:16px;
	margin-bottom:0;
	margin-left:10px;
}

@media screen and (max-width:812px) {
	.info_list li a {
	display:block;

}
}
/*CONTACT
---------------------------------------------------------------------- */
#contact{
	position: relative;
    z-index: 1;
}

#contact::before {
    content: "";
    position: absolute;
    top: 0; left: 0; width: 100%; height: 100%;
    
   	background-image:url(https://sato-landsurvey.com/wp-content/uploads/2026/07/top.jpg);
    background-size: cover;
	background-position-y:center;
    opacity: 0.2; 
	z-index: -1;
}

#contact .inner{
	text-align:center;
	font-size:20px;
}
.contact_list{
	display: flex;
    justify-content: center;
	margin:20px auto;
}
.contact_list .link{
	display: flex;
    flex-direction: column;   /* 中の要素を縦並びベースにする */
    justify-content: center;
	vertical-align:top;
	width:400px;
	height:200px;
	color:#fff;
	border-radius:10px;
	text-align: center;
	margin:0 10px;
	font-size:1.3vw;
	font-weight:bold;
	padding:0;
}

@media screen and (max-width:812px) {
	#contact .inner{
	font-size:18px;
}
	
	.contact_list{
	display: block;
}
	
	.contact_list .link{
	width:100%;
	height:100px;
	font-size:5vw;
		margin:20px 0;
	
}
}
/* 下層ページ
---------------------------------------------------------------------- */
#page .page_title{
	    letter-spacing: 3px;
	line-height:300px;
	  position: relative;
  z-index: 0; 
}

#page .page_title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1; 
	background-size: cover;
	background-repeat:no-repeat;
	background-position-x:center;
  opacity: 0.3; 
}

#page .page_title.office::before{
background-image:url(https://sato-landsurvey.com/wp-content/uploads/2026/07/top.jpg);
	 background-position-y: 50%;
}

#page .page_title.service::before{
background-image:url(https://sato-landsurvey.com/wp-content/uploads/2026/08/DSC_5927-scaled.jpg);
	  background-position-y: 35%;
}

#page .page_title.price::before{
background-image:url(https://sato-landsurvey.com/wp-content/uploads/2026/08/DSC_5498_1-scaled.jpg);
	 background-position-y: 15%;
}

#page .page_title.contact::before{
background-image:url(https://sato-landsurvey.com/wp-content/uploads/2026/08/DSC_5901-1-scaled.jpg);
	background-position-y: 35%;
}

#page h2{
	font-size:30px;
	margin-top:20px;
margin-bottom:10px;
}

#page .date{
	text-align:center;
	font-size:15px;
}

.content{
	margin-top:20px;
}

@media screen and (max-width:812px) {
	#page h2{
	font-size:25px;

}
}


/* COMPANY
---------------------------------------------------------------------- */
.greeting p{
	margin-bottom:10px;
}
.representative{
	display:flex;
	 justify-content:space-between;
	flex-direction: row-reverse;
	
}

.representative img{
	width:300px;
	height:auto;
	
}
.access{
		display:flex;
	 justify-content:space-between;
	margin-top:30px;
}

.map{
	width:500px;
}

@media screen and (max-width:812px) {
	.representative{
	display:block;
	
}

.representative img{
	width:100%;
	height:auto;
	
}
.access{
		display:block;
}

.map{
	width:100%;
}
}
/* SERVICE
---------------------------------------------------------------------- */
.service_menu img{
	width:300px;
	height:auto;
}

/* PRICE
---------------------------------------------------------------------- */
.price table{
	width: 100%;
  border-collapse: collapse;
	table-layout: fixed;
	margin-top:20px;
}

.price table th,
.price table td {
  padding: 10px;
	border: 1px solid #ccc;
}

.price table th:nth-child(1),
.price table td:nth-child(1) {
  width: 300px; 
 
}

.price table tr:first-child {
  background-color: #0284c7; /* 背景色（例: 青） */
  font-weight: bold;         /* 太字（お好みで） */
	color:#fff;
}

@media screen and (max-width:812px) {
	.price table th:nth-child(1),
.price table td:nth-child(1) {
  width: auto; 
 
}
}

/* CONTACT
---------------------------------------------------------------------- */

.mailform span{
	color:#930000;
}



.contact td{vertical-align:middle;}
.td100{width:150px;background:#333;color:#fff;}
input[type="text"],input[type="email"],.wpcf7-textarea{
	width: 100%;
	padding:10px;
	border:#999 1px solid;
	background:#fff;
	-webkit-appearance: none;
	border-radius: 5px;
}
.wpcf7-select{
	width: 100%;
	padding:9px 10px;
	border:#999 1px solid;
	background:#fff;
	-webkit-appearance: none;
	border-radius: 5px;
	margin:0;
}
select {
    -webkit-appearance: button;
    appearance: button;
}

.submit{
	text-align:center;
}
.wpcf7-submit,.reset{
	display:inline-block;
    background: #0089bc;
	width:200px;
	line-height:50px;
	color:#fff;
	font-size:20px;
	border:0;
	padding:5px 0;
	margin:10px auto;
	-webkit-appearance: none;
	border-radius: 0;
	cursor:pointer;
	transition:0.3s;
}

.wpcf7-select,.wpcf7-textarea,.wpcf7-submit,.reset{
	-webkit-appearance: none;

}
.wpcf7 textarea[name="your-message"] {
        height: 130px !important;margin-bottom:-6px !important;
}


div.wpcf7-mail-sent-ok{
	    border: 2px solid #ff0066!important;
}
	.note{
		margin:20px 0;
}

.wpcf7-form p{
	margin-top:10px;
}
.wpcf7-text{
	width:100%;
	height:30px;
border:#999 1px solid;
border-radius:5px;
}
.wpcf7 textarea{
	width:100%;
	height:100px;
border:#999 1px solid;
border-radius:5px;
}

.wpcf7-submit:hover{
	cursor:pointer;
	opacity:0.5;
}

.wpcf7-spinner{
	display:none!important;
}

.contact_page .tel{
	font-weight:bold;
	font-size:25px;
	text-align:center;
}

@media screen and (max-width:812px) {
	.mailform{
	width:100%;
	margin:20px 0;
}

	.mailform h3{
		font-size:20px;
	}
.wpcf7-submit{
	margin:0 auto;
}
	.note{
	font-size:10px;
		line-height:110%;
		margin:20px 0;
}
	.contact_page h2{
		font^size:20px!important;
	}
	.contact_page .tel{
	font-weight:bold;
	font-size:20px;
}
	
}


/* ページャー
--------------------------------------------------------------------------------- */
.wp-pagenavi {
    text-align: center;
    margin-top: 20px;
}




/* Parts
--------------------------------------------------------------------------------- */
.clear{
	clear:both;
}
.aligncenter{
	margin:0 auto;
}





@media screen and (max-width:812px) {
	.list_more{
	width:100%;
}
}
