
/* other size */

.hamburger-menu,
.sp_headerlogo{
	display: none;
}

.pc_header{
	display: block;
	width: 100%;
}

.upper_pc_header{
	border-bottom: 5px solid #33ad9d;
}

.inner_upper_pc_header{
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: end;
	-ms-flex-align: end;
	padding: 10px 0 5px;
	width: 100vw;
	max-width: 1200px;
	margin: 0 auto;
	align-items: center;
	justify-content: space-between; /* 横方向の中央揃えも追加 */
}

.heder_massage{
	font-size: 15px;
	font-weight: 600;
	width: 100%;
	margin: 2% 0;
}

.logo{
	margin-right: 0;
	margin-left: 0;
	width: 60%;
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 1%;
}

.logo_title{
	display: block;
	font-family :
	YuMincho,    /* Mac用 */
	'Yu Mincho', /* Windows用 */
	serif;
	font-weight: 600;
	font-size: 27px;
	margin-left: 2%;
}

.logo_sphone,
.estimate img,
.tel_img,
.mail_image img {
	display: block;
	margin: 0 auto;
}

.logo_sphone{
	width: 140px;
	margin: 1.5% 0 2% 0%;
}

.tel_number{
	display: flex;
	justify-content: top;
	align-items: top;
	width: 35%;
}

.tel_img{
	width: 227px;
	margin-top: 4%;
}
.mail_image img{
	width: 165px;
}

.under_pc_header{
	display: flex;
	width: 100%;
	z-index: 999;
	background-color: #ffffff;
}
.under_pc_header.fixed {
	position: fixed;
	top: 0;
}

.under_pc_header ul{
	display: flex;
	width: 90vw;
	max-width: 1030px;
	margin: 0 auto;
	-webkit-box-align: end;
	-ms-flex-align: end;
	align-items: flex-end;
	padding-top: 14px;

}

.under_pc_header ul li{
	-webkit-box-flex: 1;
	-ms-flex-positive: 1;
	flex-grow: 1;
	position: relative;
	font-weight: 400;
}

.under_pc_header ul li a {
	font-size: 16px;
	line-height: 1.4;
	font-weight: bold;
	display: block;
	text-align: center;
	border-left: 2px solid #c6c5c5;
	padding: 1px 0 0 2px;
}
.under_pc_header ul li:last-child a {
	border-right: 2px solid #c6c5c5;
}
.menu_list {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}
	
	
.menu_list li a {
	text-decoration: none;
	color: #333;
	padding-bottom: 10px;
	transition: border-bottom-color 0.4s ease;
	border-bottom: 8px solid transparent;
}

.menu_list li a:hover {
	border-bottom-color: #33ad9d;
}

/* breadcrumbs */
.breadcrumbs{
	width: 1005px;
	margin: 0 auto;
	padding: 1% 0 0 3%;
}

.breadcrumbs span{
	font-size: 16px;
}

.breadcrumbs a {
    color: #069292;
    font-weight: bold;
}

.iconarrow_right:before {
    content: '>';
    color: #069292;
}


/* footer */
.sp_footer{
	display: none;
}

.pc_footer{
	display: block;
}
.empty_pos{
	height: 100px;
}

.upper_footer{
	margin-top: 5%;
	background-color: #059392;
	margin-bottom: 0;
}
.footer_massege{
	color: #ffffff;
	padding: 2% 1% 1% 1%;
	text-align: center;
	font-size: 20px;
}

.foot_info_menu{
	width: 34%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 1% auto 2% auto;
}

.info_menu_two{
	width: 48%;
}

.info_menu_two img{
	width: 100%;
}

.footer_menu{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 33%;
	margin: 0% auto 4% auto;
}

.footer_menu_ather{
	padding: 0% 0;
}

.footer_menu_etc{
	width: 20%;
	font-size: 16px;
	line-height: 1rem;
	color: #ffffff;
}

.footer_under_speace{
	background-color: #ffffff;
}

.copyright_logo img{
	height: 50%;
	width: 5%;
}

.copyright_logo{
	display: flex;
	margin: 0 auto 0.5% auto;
	align-items: center;
	justify-content: center;
}

.copyright_massege{
	text-align: center;
	font-size: 22px;
	width: 100%;
}

.copyright_line{
	width: 100%;
	display: block;
	background-color: #33ad9d;
	height: 2px;
}

.copyright_logo_title{
	font-size: 19px;
	padding-left: 1%;
	font-weight: 600;
	letter-spacing: 3px;
}

.copyright_massege{
	color: #333;
	font-size: 14px;
	font-weight: 600;
	padding: 0.2% 0 0 0;
}

.lower_footer {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	padding: 5px 0;
	position: fixed;
	bottom: 0;
	left: 0;
	background-color: #ffffff;
	border-top: 5px solid #059392;
	border-bottom: 5px solid #059392;
	z-index: 999;
}

.inner_lower_footer {
	width: 90vw;
	max-width: 1005px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	gap: 5px; /* 要素間の間隔を設定 */
	padding-top: 0.5%;
}



.footer_logo {
	margin-right: 20px; 
}

.footer_tel_number{
	margin-left: 20%;
}

.footer_tel_number img {
	width: 300px;
}

.footer_mail_image{
	margin-left: 2%;
}

.footer_mail_image img,
.footer_line_image img {
	width: 148px;
}

@media (max-width:1500px){

	.footer_menu_etc{
		font-size: 16px;
	}

}

@media (max-width:1200px) {

	.upper_pc_header,.inner_upper_pc_header
	{
		width: 100%;
	}

	.inner_upper_pc_header{
		max-width: 1000px;
	}

	/* header */

	.mail_img{
		width: 90%;
	}

	.tell_img{
		width: 180px;
	}

	.logo_sphone{
		margin-left: 0%;
	}
	
	/* footer */

	.foot_info_menu{
		width: 70%;
	}

	.footer_menu{
		width: 80%;
	}
}


@media (max-width:960px) {

	.breadcrumbs
	{
		max-width: 720px;
	}
	/* ヘッダー */
	.pc_header{
		display: none;
	}

	.hamburger-menu{
		display: flex;
		align-items: center;
		width: 100%;
		padding-top: 1%;
		padding-bottom: 1%;
		position: fixed;
		background-color: white;
		z-index: 999;
		top:0;
		left:0;
	}

	.logo{
		margin-left: 5%;
		width: 80%;
	}

	.logo_sphone{
		max-width: 390px;
	}

	.tel_number p{
		font-family: '小塚ゴシック Pro','Kozuka Gothic Pro',serif,sans-serif;
		color: #059392;
		font-size:3.47VW;
	}

	.menu-btn {
		right: 4.16VW;
		display: flex;
		height: 40px;
		width: 40px;
		justify-content: center;
		align-items: center;
		z-index: 90;
		background-color: rgba(71, 171, 165, 0.8);
		position: fixed;

	}
	.menu-btn span,
	.menu-btn span:before,
	.menu-btn span:after {
		content: '';
		display: block;
		height: 2px;
		width: 19.5px;
		border-radius: 3px;
		background-color: #ffffff;
		position: absolute;
	}
	.menu-btn span:before {
		bottom: 7.88px;
	}
	.menu-btn span:after {
		top: 7.88px;
	}
	#menu-btn-check:checked ~ .menu-btn span {
		background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
	}
	#menu-btn-check:checked ~ .menu-btn span::before {
		bottom: 0;
		transform: rotate(45deg);
	}
	#menu-btn-check:checked ~ .menu-btn span::after {
		top: 0;
		transform: rotate(-45deg);
	}
	#menu-btn-check {
		display: none;
	}

	.menu-content {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 100%;/*leftの値を変更してメニューを画面外へ*/
		z-index: 80;
		background-color: rgba(71, 171, 165, 0.9);
		transition: all 0.5s;/*アニメーション設定*/
	}
	.menu-content ul {
		padding: 70px 10px 0;
	}
	.menu-content ul li {
		border-bottom: solid 1px #ffffff;
		list-style: none;
	}
	.menu-content ul li a {
		display: block;
		width: 100%;
		font-size: 15px;
		box-sizing: border-box;
		color:#ffffff;
		text-decoration: none;
		padding: 9px 15px 10px 0;
		position: relative;
	}
	.menu-content ul li a::before {
		content: "";
		width: 7px;
		height: 7px;
		border-top: solid 2px #ffffff;
		border-right: solid 2px #ffffff;
		transform: rotate(45deg);
		position: absolute;
		right: 11px;
		top: 16px;
	}

	#menu-btn-check:checked ~ .menu-content {
		left: 0;/*メニューを画面内へ*/
	}


	/* breadcrumbs */
	.breadcrumbs{
		width: 100%;
	}

	.breadcrumbs span {
		font-size: 14px;
	}

	/* footer */


}

@media (max-width:768px){


	.upper_footer{
		margin-top: 2%;
		background-color: #059392;
		margin-bottom: 0;
	}

	.upper_footer p{
		padding: 1% 1%;
		text-align: center;
		font-size: 15px;
		width: 95%;
		margin: 0 auto;
	}

	.empty_pos {
		height: 70px;
	}

	.lower_footer{
		display: flex;
		width: 100%;
		height: 73px;
		position: fixed;
		bottom: 0;
		left: 0;
		padding: 0;
		background-color: #ffffff;
		border-top: 5px solid #059392;
		border-bottom: 5px solid #059392;
		z-index: 999;
	}

	.inner_lower_footer{
		width: 95VW;
		padding: 1% 0;
	}

	.footer_logo{
		margin-left: 3%;
		margin-right: auto;
		width: 30%;
	}

	.footer_logo img {
		width: 120px;
		padding-top:5%;
	}

	.footer_tel_number{
		padding: 1.5% 2% 0 0;
		align-self: flex-end;
	}
	.footer_tel_number img {
		width: 220px;
		margin:0;

	}

	.footer_under_speace img{
		width: 14%;
	}

}

@media (max-width:568px) {
		/* Mobile */
	/* ヘッダー */
	.hamburger-menu{
		padding-top: 3%;
	}

	.heder_massage,
	.logo_sphone,
	.logo_title{
		display: none;
	}

	.logo{
		margin-top: 2%;
	}

	.sp_headerlogo{
		display: block;
		width: 90%;
	}

	.menu-btn {
		height: 10VW;
		width: 10VW;
	}
	.menu-btn span,
	.menu-btn span:before,
	.menu-btn span:after {
		height: 0.27VW;
		width: 3.47VW;
	}
	.menu-btn span:before {
		bottom: 1.38VW;
	}
	.menu-btn span:after {
		top: 1.38VW;
	}
	
	/* breadcrumbs */

	.breadcrumbs {
		display: none;
	}

	/* footer */

	.pc_footer{
		display: none;
	}
	.sp_footer{
		display: block;
		width: 100VW;
	}
	.empty_pos {
		height: 60px;
	}

	.lower_footer{
		height: 65px;
	}

	.inner_lower_footer{
		padding: 2% 0 0 0;
	}

	.footer_logo img {
		width: 93px;
		margin-top: 0;
	}

	.footer_tel_number{
		padding-top:1%;
		margin-left: 0;
	}
	.footer_tel_number img {
		width: 200px;
	}

	.footer_menu_etc{
		font-size: 15px;
	}

	.footer_under_speace img{
		width: 25%;
		margin-left: 1rem;
	}

	.foot_info_menu{
		padding: 4% 0 ;
	}

	.info_menu_two img{
		margin: 4% 0 0 0;
	}

	.footer_menu{
		padding: 3% 0;
	}

	.foot_info_menu_sp{
		width: 88%;
		display: flex;
   	 	flex-wrap: wrap;
    	justify-content: space-between;
    	margin: 1% auto 2% auto;
	}

	.foot_info_menu_sp img{
		width: 100%;
	}
	
	.info_menu_two{
		margin: 4% 0 0 0;
		width: 48%;
	}

	.upper_footer{
		padding: 4% 0 0 0;
	}

}

@media (max-width:390px) {

	.footer_menu{
		width: 92%;
	}

}




