/*
Theme Name: ダイキョー 2023
*/

/*
  Made by Elly Loel - https://ellyloel.com/
*/
*{margin:0;padding:0;line-height:calc(0.25rem + 1em + 0.25rem)}*,::before,::after{box-sizing:border-box}*:where(:not(fieldset,progress,meter)){border-width:0;border-style:solid;background-origin:border-box;background-repeat:no-repeat}html{block-size:100%;-webkit-text-size-adjust:none}@media (prefers-reduced-motion:no-preference){html:focus-within{scroll-behavior:smooth}}body{-webkit-font-smoothing:antialiased;text-rendering:optimizeSpeed;min-block-size:100%}:where(img,svg,video,canvas,audio,iframe,embed,object){display:block}:where(img,svg,video){block-size:auto;max-inline-size:100%}:where(svg){stroke:none;fill:currentColor}:where(svg):where(:not([fill])){stroke:currentColor;fill:none;stroke-linecap:round;stroke-linejoin:round}:where(svg):where(:not([width])){inline-size:5rem}:where(input,button,textarea,select),:where(input[type="file"])::-webkit-file-upload-button{color:inherit;font:inherit;font-size:inherit;letter-spacing:inherit}:where(textarea){resize:vertical}@supports (resize:block){:where(textarea){resize:block}}:where(p,h1,h2,h3,h4,h5,h6){overflow-wrap:break-word}h1{font-size:2em}:where(ul,ol)[role="list"]{list-style:none}a:not([class]){text-decoration-skip-ink:auto}:where(a[href],area,button,input,label[for],select,summary,textarea,[tabindex]:not([tabindex*="-"])){cursor:pointer;touch-action:manipulation}:where(input[type="file"]){cursor:auto}:where(input[type="file"])::-webkit-file-upload-button,:where(input[type="file"])::file-selector-button{cursor:pointer}@media (prefers-reduced-motion:no-preference){:focus-visible{transition:outline-offset 145ms cubic-bezier(.25,0,.4,1)}:where(:not(:active)):focus-visible{transition-duration:0.25s}}:where(:not(:active)):focus-visible{outline-offset:5px}:where(button,button[type],input[type="button"],input[type="submit"],input[type="reset"]),:where(input[type="file"])::-webkit-file-upload-button,:where(input[type="file"])::file-selector-button{-webkit-tap-highlight-color:transparent;-webkit-touch-callout:none;user-select:none;text-align:center}:where(button,button[type],input[type="button"],input[type="submit"],input[type="reset"])[disabled]{cursor:not-allowed}

:root{
	--main-font-black:#3f3f3d;
}

:root{
	--main-theme-color:#0068b2;
}

:root{
	--main-theme-font-color:#0066a0;
}

:root{
	--sub-theme-color:#ffec00;
}

:root{
	--sub-theme-font-color:#f2e000;
}

:root{
	--advance-color:#de0097;
}


html{
	font-size:62.5%;
	scroll-padding-top: 116px;
}

body{
	font-family:'Noto Sans JP',sans-serif;
	src: url("assets/font/NotoSansJP-VariableFont_wght.ttf")format('ttf');
/*	letter-spacing:0.1em;*/
	letter-spacing: 0.04em;
	line-height: 2;
	color: var(--main-font-black);
/*	background: url("assets/images/body_bg.png");*/
	font-display: swap;
	padding-top: 116px;
}

@media(max-width:1196px) {
	body{
		padding-top: 135px;
	}
}

@media(max-width:1080px) {
	body{
		padding-top: 100px;
	}
}

@media(max-width:960px) {
	body{
		padding-top: 118px;
	}
}

@media(max-width:768px) {
	body{
		padding-top: 60px;
	}
}

.pc{
	display: block;
}
.sp{
	display: none;
}

@media screen and (max-width: 768px){
	.pc{
		display: none!important;
	}
	.sp{
		display: block!important;
	}
}

.law{
	padding-left: 10px;
	padding-right: 10px;
	margin-top:0;
	margin-right:auto;
	margin-left:auto;
	margin-bottom:0;
}

.law .law{
	padding-left: 0;
	padding-right: 0;
}

.flex{
	display: flex;
	justify-content: space-between;
}

nav ul li{
	list-style: none;
}

a{
	color: var(--main-theme-font-color);
}

a:hover{
	color: var(--sub-theme-font-color);
	transition: 0.3s;
}

.w630{
	width: min(650px, 100%);
}

.w720{
	width: min(740px, 100%);
}

.w980{
	width: min(1000px, 100%);
}

.w1080{
	width: min(1100px, 100%);
}

.bar_wrapper{
	background-color: #fff;
	width: min(250px, 100%);
}

@media(max-width:1080px) {
	.bar_wrapper{
		width: min(180px, 100%);
	}
}

@media(max-width:768px) {
	.bar_wrapper{
		width: 100%;
    	overflow: hidden;
	}
}


.header_menu_button{
	position: relative;/*ボタン内側の基点となるためrelativeを指定*/
	background: var(--sub-theme-color);
	cursor: pointer;
	width: 60px;
	height:60px;
	float: right;
}

/*ボタン内側*/
.header_menu_button span{
	display: inline-block;
	transition: all .4s;/*アニメーションの設定*/
	position: absolute;
	left: 15px;
	height: 3px;
	border-radius: 2px;
	background: #0068b2;
	width: 54%;
  }

.header_menu_button span:nth-of-type(1) {
/*	top:20px;*/
	top:12px;
}

.header_menu_button span:nth-of-type(2) {
/*	top:30px;*/
	top:22px;
}

.header_menu_button span:nth-of-type(3) {
/*	top:40px;*/
	top:32px;
}

/*activeクラスが付与されると線が回転して×に*/

.header_menu_button.active span:nth-of-type(1) {
	top: 17px;
	left: 18px;
	transform: translateY(6px) rotate(-45deg);
	width: 45%;
}

.header_menu_button.active span:nth-of-type(2) {
	opacity: 0;/*真ん中の線は透過*/
}

.header_menu_button.active span:nth-of-type(3){
	top: 30px;
	left: 18px;
	transform: translateY(-6px) rotate(45deg);
	width: 45%;
}

header{
	background-color: #fff;
	padding: 10px 10px 0;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: fixed;
    top: 0;
    width: 100%;
	z-index: 300;
}

@media(max-width:768px) {
	header{
		padding: 0;
		display: block;
/*		position: relative;*/
		z-index: 1000;
		position: fixed;
        top: 0;
		width: 100%;
	}
}

@media(max-width:768px) {
	.header_menu{
		width: 100%;
		position: absolute;
		top: 59px;
		background-color: #fff;
		display: flex;
		flex-direction: column-reverse;
		padding-bottom: 50px;
	}
}


.header_menu_wrapper{
	width: calc(100% - 250px);
}

/*SP時メニュー表示切替*/
@media(max-width:1080px) {
	.header_menu_wrapper{
		width: calc(100% - 180px);
	}
}

@media(max-width:768px) {
	.header_menu_wrapper{
		line-height: 0;
		opacity: 0;
		visibility: hidden;
		transition:
			line-height .3s ease-out,
			opacity     .1s linear,
			visibility  .1s linear;
		height: 0;
	}
	
	.header_menu_wrapper.open{
		line-height: 1.5;
		opacity: 1;
		visibility: visible;
		transition:
			line-height .3s ease-out,
			opacity     .1s linear .1s,
			visibility  .1s linear .1s;
		height: auto;
	}
}

.header_title{
	display: inline-block;
	width: min(250px, 100%);
}

@media(max-width:768px) {
	.header_title{
		width: min(170px, 100%);
		margin-left: 10px;
/*		margin-top: 10px;*/
		margin-top: 14px;
	}
}

.header_title img{
	width: 100%;
}

.header_info {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

@media(max-width:768px) {
	.header_info{
		flex-direction: column;
		margin-top: 30px;
	}
}

.searchform{
	border: 1px solid var(--main-font-black);
	display: inline-block;
	width: min(230px, 100%);
	border-radius: 25px;
	padding: 1em;
	position: relative;
}

.searchform input{
	font-size: 1.3rem;
	line-height: 1;
	width: 100%;
}

.searchform button{
	background-color: inherit!important;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 10px;
}

.searchform button img{
	width: 19px;
	height: 20px;
}

.header_tel{
	width: min(320px, 100%);
	margin-left: min(45px, 10%);
}

@media(max-width:1080px) {
	.header_tel{
		margin-left: min(20px, 10%);
	}
}

@media(max-width:768px) {
	.header_tel{
		margin-left: 0;
		margin-top: 30px;
	}
}

.header_tel a{
	pointer-events: none;
}

@media(max-width:599px) {
	.header_tel a{
		pointer-events: auto;
	}
}

.header_mitsumori{
	background-color: var(--sub-theme-color);
	display: inline-block;
	border-radius: 35px;
	width: min(190px, 100%);
	margin-left: min(45px, 10%);
}

@media(max-width:1080px) {
	.header_mitsumori{
		margin-left: min(20px, 10%);
		width: min(170px, 100%);
	}
}

@media(max-width:768px) {
	.header_mitsumori{
		margin-left: 0;
		width: min(320px, 100%);
		margin-top: 15px;
	}
}


.header_mitsumori a{
	color: var(--main-theme-font-color);
	text-decoration: none;
	font-size: 1.8rem;
	font-weight: 700;
	display: block;
	padding: 0.8em;
	text-align: center;
	position: relative;
	overflow: hidden;
}

@media(max-width:1080px) {
	.header_mitsumori a{
		font-size: 1.3rem;
	}
}

@media(max-width:768px) {
	.header_mitsumori a{
		font-size: 2rem;
		padding: 0.5em;
	}
}

/*キラッと光る*/
.header_mitsumori a::before {
	content: '';
	/*絶対配置でキラッと光るの位置を決める*/
	position: absolute;
	top: 0;
	left: -75%;
	/*キラッと光る形状*/
	width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.5) 100%);
	transform: skewX(-25deg);
}

/*hoverした際の移動のアニメーション*/
.header_mitsumori a:hover::before {
	animation: shine 0.7s;
}

@keyframes shine {
	100% {
		left: 125%;
	}
}

.header_mitsumori a span{
	transform: translateY(-30%);
    display: inline-block;
}

@media(max-width:768px) {
	.header_mitsumori a span{
		transform: translateY(-18%);
	}
}


.header_mitsumori a img{
	width: min(36px, 100%);
	display: inline-block;
	margin-left: 0.5em;
}

@media(max-width:1080px) {
	.header_mitsumori a img{
	width: min(30px, 100%);
	}
}


.header_nav ul{
/*	font-size: 1.6rem;*/
	font-size: 1.4rem;
	font-weight: 700;
	display: flex;
    justify-content: flex-end;
    align-items: center;
}

@media(max-width:1080px) {
	.header_nav ul{
		font-size: 1.4rem;
	}
}

@media(max-width:768px) {
	.header_nav ul{
		font-size: 1.8rem;
		flex-direction: column;
    	align-items: inherit;
		margin-top: 30px;
		padding: 0 10px;
	}
}

.header_nav li{
	display: block;
	margin-left: min(25px, 15%);
	text-align: center;
}

@media(max-width:1080px) {
	.header_nav li{
		margin-left: min(10px, 15%);
		font-size: 1.3rem;
	}
}

@media(max-width:768px) {
	.header_nav li{
		border-top: 1px solid var(--main-theme-color);
		margin-left: 0;
	}
	.header_nav li:last-of-type{
		border-bottom: 1px solid var(--main-theme-color);
	}
	
	
	.header_nav li{
		position: relative;
	}
	
	
	.header_nav li::after{
		content: '';
		position: absolute;
		top: 50%;
		transform: translateY(-50%);
		right: 10px;
		background-image: url("assets/img/example_next.png");
		aspect-ratio: 10 / 17;
		width: min(10px, 10%);
		background-size: contain;
	}
}

.header_nav li a{
	text-decoration: none;
	color: var(--main-font-black);
	padding: 0.8em 2px;
	display: block;
}

@media(max-width:768px) {
	.header_nav li a{
		padding: 1em 0.5em;
	}
}

.header_nav li a:hover{
/*	border-bottom: 5px solid var(--sub-theme-color);*/
	transition: .3s;
	background: linear-gradient(transparent 90%, var(--sub-theme-color) 10%);
}

@media(max-width:768px) {
	.header_nav li a:hover{
		background: none;
	}
}

.header_nav li.sp_menu{
	display: none;
}

@media(max-width:768px) {
	.header_nav li.sp_menu{
		display: block;
	}
}


/*サイド追従メニュー*/
.side_menu{
	position: fixed;
	right: 0;
	top: 22%;
	z-index: 100;
}

@media(max-width:768px) {
	.side_menu{
		position: inherit;
		right: inherit;
		top: inherit;
		z-index: inherit;
		margin: 0 auto;
	}
}

.side-blog{
	width: 74px;
}

@media(max-width:1080px) {
	.side-blog{
		display: none;
	}
}

.side-blog img{
	width: 100%;
}


@media(max-width:1080px) {
	.side-sns{
		display: none;
	}
}

@media(max-width:768px) {
	.side-sns{
		display: block;
		margin: 20px 0;
		transform: translateX(-10px);
	}
}

.side-sns a{
	display: block;
	width: 50px;
	aspect-ratio: 1 / 1;
	transform: translateX(15px);
	margin: 15px 0;
}

@media(max-width:768px) {
	.side-sns a{
		display: inline-block;
		margin-right: 10px;
	}
}


.button{
	width: min(350px, 100%);
	margin: 0 auto;
}

@media(max-width:768px) {
	.button{
		width: min(320px, 100%)!important;
	}
}

.button img{
	display: inline-block;
}

.button_wrapper{
	display: flex;
	justify-content: center;
}

@media(max-width:768px) {
	.button_wrapper{
		flex-direction: column;
	}
}

.button_wrapper .button{
	margin: 0 10px;
}

@media(max-width:768px) {
	.button_wrapper .button{
		margin: 10px auto;
	}
}

.button a,
input[type="submit"]{
	width: 100%;
	color: #fff;
	text-decoration: none;
	font-size: 1.7rem;
	text-align: center;
	display: block;
	padding: 1em;
	background-color: var(--main-theme-color);
	border-radius: 30px;
	font-weight: 700;
	transition: .3s;
}

@media(max-width:768px) {
	.button a,
	input[type="submit"]{
		font-size: 1.4rem;
	}
}

.button a:hover,
input[type="submit"]:hover{
	background-color: var(--sub-theme-color);
	color: var(--main-theme-font-color);
	font-weight: 700;
	transition: .3s;
}

.card{
	border: 2px solid var(--main-theme-font-color);
	border-radius: 10px;
	background-color: #fff;
	padding: 10px;
	margin-bottom: 10px;
}

.card a{
	color: var(--main-font-black);
	text-decoration: none;
}

.card a:hover{
	opacity: .7;
	transition: .3s;
}

.sep{
	display: flex;
	justify-content: space-between;
}

.latest_blog{
	font-size: 1.3rem;
}

.latest_blog p{
	margin-bottom: 0.5em;
	padding-right: 1em;
}

.latest_blog .date{
	font-size: 90%;
}

.date .new{
	font-weight: 700;
	display: inline-block;
	background-color: var(--advance-color);
	padding: 0.2em 0.5em;
	color: #fff;
	margin-left: 1em;
	transform: translateY(-2px);
}

.blog_title{
	font-size: 1.3em;
	font-weight: 700;
}

.latest_blog_img{
/*	width: min(142px, 100%);*/
	width: 100%;
	aspect-ratio: 4 / 3;
	object-fit: cover;
	position: relative;
	overflow: hidden;
}


/*画像表示時のアニメーション　ここから*/

.img_wrapper{
	position: relative;
	overflow: hidden;
}

.img_wrapper img{
	width: 100%;
	height: 100%;
	transform:translateX(-10%);
	object-fit: cover;
	transition: .8s;
}

@media(max-width:599px) {
	.img_wrapper img{
		transform:inherit;
	}
}

.example_img img{
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: .8s;
}

.img_wrapper.animated::before{
	animation: img-wrap .6s cubic-bezier(.4, 0, .2, 1) forwards;
	background: var(--main-theme-color);
	bottom: 0;
	content: '';
	left: 0;
	pointer-events: none;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
}

@media(max-width:599px) {
	.img_wrapper.animated::before{
		display: none;
	}
}


.example_content-first .img_wrapper.animated::after{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	background-color: rgba(0,0,0,0.1);
	width: 100%;
	height: 100%;
	transition: .3s;
}

a:hover .img_wrapper.animated::after{
	opacity: .7;
	transition: .3s;
}

@media(max-width:768px) {
	a:hover .img_wrapper.animated::after{
		opacity: 1;
	}
}

a:hover .img_wrapper img {
	transform:scale(1.05,1.05);
	transition: .3s;
}

@media(max-width:599px) {
	a:hover .img_wrapper img{
		transform:inherit;
	}
}

@keyframes img-wrap {
  100% {
    transform: translateX(100%);
  }
}

.img_wrapper.animated img{
	transform: translateX(0);
	transition: .8s;
}

/*画像表示時のアニメーション　ここまで*/


.wrighter{
	display: flex;
	justify-content: center;
	align-items: center;
	margin-top: 10px;
}

.latest_blog .wrighter p{
	padding-right: 0;
}

.writer_img{
	aspect-ratio: 1 / 1;
	width: 32px;
	object-fit: cover;
	border-radius: 50%;
	margin-right: 0.5em;
}


/*施工事例タグ・カテゴリーの共通スタイル*/
.cats{
	margin-bottom: 0.5em;
	margin-top: 0.5em;
}

.cats div{
	background: var(--main-theme-color);
	font-size: 1rem;
/*	font-weight: 700;*/
	display: inline-block;
/*	padding: 0.3em 1.2em;*/
	padding: 0.2em 0.8em;
	border-radius: 25px;
	margin-bottom: 0.1em;
	color: #fff;
	margin-right: 0.5em;
}

/*タームアーカイブにもしなった時用*/
.cats a,
.tags a{
	color: #fff;
	text-decoration: none;
	display: inline-block;
}

.cats a:hover,
.tags a:hover{
	color: var(--sub-theme-font-color);
}

.tags{
	margin-bottom: 0.5em;
	margin-top: 0.5em;
	line-height: 0.5;
}

.tags div{
	font-size: 1.1rem;
	display: inline-block;
	margin-right: 1em;
	margin-bottom: 0.1em;
}

@media(max-width:599px) {
	.tags div{
		font-size: 0.9rem;
	}
}

.tags div::before{
	content: '#';
}

.movies_wrapper{
	width: 100%;
	aspect-ratio: 16 / 9;
	margin-bottom: 10px;
	border-radius: 10px;
	overflow: hidden;
}

.movies_wrapper iframe {
	width: 100%;
	height: 100%;
}


footer{
	background-image: url("assets/img/footer_bg.webp");
	background-size: cover;
	background-position: center;
	padding-top: 20px;
	font-size: 1.5rem;
}

@media(max-width:768px) {
	footer{
		font-size: 1.4rem;
	}
}

footer .law{
	position: relative;
}

footer h4,
footer h3{
	color: var(--main-theme-font-color);
	font-weight: 700;
}

footer h5{
	color: var(--main-font-black);
	font-weight: 700;
	font-size: 1.6rem;
	margin: 0.2em 0;
}

footer h4{
	font-size: 2.7rem;
	margin-bottom: 0.5em;
}

@media(max-width:768px) {
	footer h4{
		font-size: 2rem;
	}
}


footer h3{
	font-size: 2.4rem;
	margin: 0.5em 0;
}

@media(max-width:599px) {
	footer h3{
		text-align: center;
	}
}

.area{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	margin-top: 20px;
}

@media(max-width:768px) {
	.area{
		flex-direction: column;
	}
}

.area > div{
	width: 40%;
}

@media(max-width:768px) {
	.area > div{
		width: 100%;
	}
}


.area_wrapper h5{
	border-bottom: 2px solid var(--sub-theme-font-color);
	padding: 0.5em 0;
	margin: 0.5em 0;
}

.area_wrapper{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

.area_wrapper ul{
	list-style: none;
}

.area_wrapper div{
	width: min(200px, 49%);
	margin-bottom: 20px;
}

@media(max-width:768px) {
	.area_wrapper div{
		width: min(200px, 47%);
		margin-bottom: 20px;
	}
}

.area > div.area_map{
	width: 60%;
	padding: 20px 0;
}

@media(max-width:768px) {
	.area > div.area_map{
		width: 100%;
	}
}


.area > div.area_map img{
	margin: 0 auto;
/*	height: min(205px, 100%);*/
	height: 205px;
	object-fit: contain;
}

.footermenu_wrapper{
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
/*	flex-wrap: wrap;*/
}

@media(max-width:599px) {
	.footermenu_wrapper{
		flex-wrap: wrap;
/*		margin-bottom: 50px;*/
		margin-bottom: 20px;
		margin-top: 10px;
	}
}

.footermenu_wrapper div{
	border-left: 2px solid var(--sub-theme-font-color);
	width: 33%;
	padding: 0.1em 1.5em 1em;
}

@media(max-width:768px) {
	.footermenu_wrapper div{
		border-left: none;
		width: 49%;
		padding: 0.1em 0 1em;
	}
}


.footermenu_wrapper div:last-of-type{
	border-right: 2px solid var(--sub-theme-font-color);
}

@media(max-width:768px) {
	.footermenu_wrapper div:last-of-type{
		border-right: none;
	}
}

.footerinfo_wrapper p{
	margin-bottom: 1em;
}

.footermenu_wrapper ul{
	list-style: none;
	font-weight: 700;
}

.footermenu_wrapper ul li{
/*	margin: 0.5em 0; */
}

.footermenu_wrapper ul li a{
	color: var(--main-font-black);
	text-decoration: none;
/*	padding: 0.6em 0;*/
	padding: 0.4em 0;
    display: block;
}

@media(max-width:820px) {
	.footermenu_wrapper ul li a{
		font-size: 1.3rem;
	}
}

.footermenu_wrapper ul li a:hover{
	color: var(--main-theme-font-color);
}

.footerinfo_wrapper > div.footer_title{
	width: min(300px, 100%);
}

@media(max-width:768px) {
	.footerinfo_wrapper > div.footer_title{
		width: min(270px, 100%);
	}
}

@media(max-width:599px) {
	.footerinfo_wrapper > div.footer_title{
		margin: 0 auto;
	}
	.footerinfo_wrapper > div.footer_title img{
		width: 200px;
	}
}

.footer_title img{
	width: 100%;
}

.footerinfo_wrapper{
	display: flex;
	justify-content: space-between;
	margin-top: 50px;
	margin-bottom: 40px;
}

@media(max-width:599px) {
	.footerinfo_wrapper{
		flex-direction: column;
		margin-top: 10px;
/*		margin-bottom: 90px;*/
		margin-bottom: 0;
	}
}


.footerinfo_wrapper > div{
	width: 33%;
	padding: 0.1em 1.5em 1em;
}

@media(max-width:1080px) {
	.footerinfo_wrapper > div{
		padding: 0.1em 0.8em 1.5em;
	}
}

@media(max-width:599px) {
	.footerinfo_wrapper > div{
		width: 100%;
		padding: 0.1em 0 1.5em;
		text-align: center;
	}
	.footerinfo_wrapper > div img{
		margin: 0 auto;
	}
}


.copyright{
	font-size: 1.3rem;
}

@media(max-width:1080px) {
	.copyright{
		text-align: center;
	}
}

.oldsite{
	width: min(340px, 35%);
	position: absolute;
	right: 0;
	bottom: 0;
}

@media(max-width:1080px) {
	.oldsite{
		display: none;
	}
}

.oldsite a{
	display: block;
	padding: 1em;
	background-color: var(--main-theme-color);
	color: #fff;
	text-decoration: none;
	text-align: center;
	font-weight: 700;
}

.oldsite a:hover{
	background-color: var(--sub-theme-color);
	color: var(--main-theme-font-color);
}

#page_top {
	cursor: pointer;
	position: fixed;
	right: 30px;
	bottom: 50px;
	z-index: 100;
	aspect-ratio: 112 / 175;
	width: min(112px, 20%);
	opacity: 0;
	visibility: hidden;
	transition: .3s;
}

@media(max-width:599px) {
	#page_top{
		right: 10px;
/*    	bottom: 10px;*/
		bottom: 89px;
	}
}

#page_top.activate{
	opacity: 1;
	visibility: visible;
	transition: .3s;
}

.breadcrumbs{
	font-size: 1.2rem;
	margin-bottom: 10px;
}

@media(max-width:768px) {
	.breadcrumbs{
		font-size: 1em;
	}
}

.breadcrumbs a{
	text-decoration: none;
	color: var(--main-font-black);
}

.breadcrumbs br{
	display: none;
}


/*施工事例（トップ・下層共通）*/


.example_content-first > a > div.example_img,
.example_content-other > a > div.example_img{
	width: 100%;
	aspect-ratio: 1 / 1;
	border-radius: 15px;
	overflow: hidden;
}

@media(max-width:768px) {
	.example_content-first > a > div.example_img{
		aspect-ratio: 16 / 9;
	}
}

.example_content-other.product_archive > a > div.example_img{
	aspect-ratio: 4 / 3;
	border-radius: 0;
	overflow: hidden;
}


.example_content-first > a:hover > .example_img img,
.example_content-other > a:hover > .example_img img{
	transform:scale(1.05,1.05);
	transition: .3s;
}

@media(max-width:599px) {
	.example_content-first > a:hover > .example_img img,
	.example_content-other > a:hover > .example_img img{
		transform: inherit;
	}
}


.example_content-first > a:hover > div.example_img::after{
	opacity: 0;
	transition: .3s;
}

.example_content-first .example_info{
	position: absolute;
	bottom: 0;
	left: 0;
	z-index: 20;
	color: #fff;
	padding: 1em;
	width: 100%;
}

@media(max-width:768px) {
	.example_content-first .example_info{
		padding: 10px 10px 0;
	}
}


.example_info h4{
	border-bottom: 1px solid #fff;
	padding-bottom: 0.5em;
}

.example_content-other > a:hover > .example_info h4{
	color: var(--main-theme-font-color);
}

.example_content-other{
	width: min(450px, 46%);
	display: flex;
    justify-content: space-around;
    flex-wrap: wrap;
	font-size: 1.5rem;
}

@media(max-width:768px) {
	.example_content-other{
		width: 100%;
	}
}

.example_content-other > a{
	display: block;
	width: 45%;
	text-decoration: none;
	color: var(--main-font-black);
	margin-bottom: 20px;
}

@media(max-width:768px) {
	.example_content-other > a{
		width: 32%;
	}
}

@media(max-width:599px) {
	.example_content-other > a{
		width: 48%;
	}
}

.example_content-other .example_info h4{
	border-bottom: 1px solid var(--main-font-black);
}

.content .example_info p{
	margin: 0.5em 0;
}



/*全員のブログ一覧用*/

.blog_tobiras a{
	display: block;
}

.blog_tobiras a:hover{
	opacity: .8;
	transition: .3s;
}

.blog_tobiras-top a{
	width: min(1080px, 100%);
	margin-bottom:10px;
}

.blog_tobiras-staff{
	display: flex;
/*	justify-content: space-between;*/
	justify-content: flex-start;
    gap: 1.2%;
	flex-wrap: wrap;
}

.blog_tobiras-staff a{
	width: min(260px, 24%);
	margin-bottom: 10px;
}

@media(max-width:768px) {
	.blog_tobiras-staff a{
		width: min(260px, 32%);
	}
}

@media(max-width:599px) {
	.blog_tobiras-staff{
		gap: 2%;
	}
	
	.blog_tobiras-staff a{
/*		width: min(260px, 49%);*/
		width: 49%;
	}
}


.nolink{
	pointer-events: none!important;
}

.postarchive .page-numbers.next,
.postarchive .page-numbers.prev{
	font-size: 0;
    transform: translateY(-16px);
}

.button a.button_reversal{
    color: var(--main-theme-font-color);
    background-color: var(--sub-theme-color);
	border: 3px solid var(--main-theme-font-color);
	margin-top: 30px;
}



/*　230824_ミラブルプレゼント特設ページ用css ここから　*/

.iframe_wrapper{
	position: relative;
	width: 100%;
	overflow: hidden;
}

.iframe_wrapper::before {
	content: "";
	display: block;
	padding-top: 56%;
}

.iframe_wrapper iframe {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.introduce_box{
	border: 2px solid #4ab0a9;
	border-radius: 15px;
	width: min(675px, 100%);
	margin: 0 auto;
	background-color: #fff;
	padding-bottom: 20px;
}

.introduce_box > div{
	margin: 1em 1.5em;
}

.introduce_box h6{
	width: 100%;
	background-color: #4ab0a9;
	color: #fff;
	margin-top: 0;
	border-radius: 10px 10px 0 0;
	padding: 1em;
	text-align: center;
}

.bg_blue{
	background-color: #bae3f9;
	text-align: center;
	font-size: 1.8rem!important;
}

.bg_blue .content p {
	font-size: 1.8rem;
}

.bg_blue .content{
	padding-bottom: 50px;
}

.bg_blue img{
	margin: 0 auto;
}

/*　230824_ミラブルプレゼント特設ページ用css ここまで　*/


/*241206_ヘッダーメニュー改修追記　ここから*/

.header_menu_button div{
	position: absolute;
    bottom: 7px;
    text-align: center;
    width: 100%;
    color: var(--main-theme-font-color);
}

.tel_button{
	background-color: #fff;
}

.tel_button img{
	position: absolute;
	top: 12px;
	right: 0;
	left: 0;
	margin: 0 auto;
}

.tab_menu{
	position: fixed;
	top: 30%;
	right: 0;
	z-index: 100;
}

@media(max-width:820px) {
	.tab_menu{
		top: 12%;
	}
}

@media(max-width:599px) {
	.tab_menu{
		top: 22%;
	}
}

.tab_menu a{
	display: block;
	background-color: #ef6737;
	border-radius: 10px 0 0 10px;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	color: #fff;
	text-decoration: none;
	font-weight: 700;
	font-size: 1.8rem;
	padding: 15px 7px;
	width: 42px;
	box-shadow: 0px 0px 15px -5px #777777;
}

.tab_menu a img{
	display: inline-block;
	margin-bottom: 8px;
}

/*241206_ヘッダーメニュー改修追記　ここから*/


.inline-button{
	display: inline-block;
	transform: translateY(-1.5px);
}

@media(max-width:599px) {
	.inline-button{
		display: block;
    	margin-top: 10px;
	}
}


.inline-button a{
	display: inline-block;
	padding: 0.1em 1.5em;
	background-color: var(--main-theme-color);
	color: #fff;
	border-radius: 10px;
	font-size: 1.2rem;
	text-decoration: none;
	margin: 0 10px;
	transition: .3s;
	line-height: 1.5;
}

.inline-button a:hover{
	opacity: .7;
	transition: .3s;
}

/*お知らせ一覧表示用*/
/*
.content ul.news_archive{
	font-size: 1.5rem;
	list-style: none;
}

.content ul.news_archive li{
	border-bottom: 1px solid var(--main-theme-color);
	margin-left: 0;
}

.content ul.news_archive li a{
	display: block;
	text-decoration: none;
	color: var(--main-font-black);
	transition: .3s;
	padding: 1.5em 1em;
	font-weight: 700;
}

.content ul.news_archive li a:hover{
	background-color: rgba(0,104,181,.3);
	transition: .3s;
}

.content h2.screen-reader-text{
	display: none;
}

.day{
	display: inline-block;
	font-weight: 700;
	margin-bottom: 1em;
	color: #666666;
	font-size: 90%;
}

.news_category{
	font-size: 1rem;
    padding: 0.2em 1em;
    border-radius: 20px;
    background-color: var(--sub-theme-color);
    display: inline-block;
    margin-bottom: 0.5em;
	font-weight: 700;
}

.column_category{
	font-size: 1rem;
    padding: 0.2em 1em;
    border-radius: 20px;
    background-color: #26BF8C;
    display: inline-block;
    margin-bottom: 0.5em;
	font-weight: 700;
}

.blog_category{
	font-size: 1rem;
    padding: 0.2em 1em;
    border-radius: 20px;
    background-color: none;
    display: inline-block;
    margin-bottom: 0.5em;
	font-weight: 700;
	border: 1px solid var(--main-font-black);
}

.content .oyakudachi_category{
	font-size: 1rem;
    padding: 0.2em 1em;
    border-radius: 20px;
	color: #fff;
    background-color: var(--advance-color);
    display: inline-block;
    margin-bottom: 0.5em;
	font-weight: 700;
}
*/

.bikou{
	font-size: 80%;
}

.wpcf7-list-item {
    margin-bottom: 0.5em;
}

.grecaptcha-badge { visibility: hidden; }
