/*
Theme Name: Ashida Original
Theme URI: 
Author: 有限会社ランドマーク
Author URI: 
Description: 株式会社あしだウェブサイトオリジナルテーマ
Requires at least: 6.6
Tested up to: 6.6
Requires PHP: 5.7
Version: 1.0
License: Y-Yard Inc.
License URI: https://y-yard.co.jp/
Text Domain: ashida
Tags: 
*/

html, body {
	height: 100%;
}
.wp-site-blocks {
	min-height: 100%;
	box-sizing: border-box;
	display: flex;
	flex-flow: column;
	justify-content: space-between;
}
main {
	flex-grow: 1;
}

ul {
	list-style: none;
	padding: 0;
}

summary {
  display: block;
  list-style: none;
}

/* 一部ブラウザで消えなかった場合は以下も追記 */
summary::-webkit-details-marker {
  display:none;
}

/*navigateion*/
header .wp-block-navigation__responsive-container {
	padding: .5em !important;
	background-color: rgba(36, 48, 109, .95) !important;
}
@media (min-width: 782px) {
	header .wp-block-navigation__responsive-container {
		left: inherit !important;
		bottom: inherit !important;
	}
}
header button.wp-block-navigation__responsive-container-open svg,
header button.wp-block-navigation__responsive-container-close svg {
	width: 3em;
	height: 3em;
}
header .wp-block-navigation__responsive-container-content {
	max-height: 100vh;
	padding: 4em 8em;
}
header .wp-block-navigation__container .wp-block-navigation-item + .wp-block-navigation-item {
	width: 100%;
	padding: 1.8em 1em 0;
	border-top: solid 1px;
}
header .wp-block-navigation__container .current-menu-item {
	display: none !important;
}
header .wp-block-navigation__container .current-menu-item:first-child + .wp-block-navigation-item {
	border: none;
}

/*why*/
section.why .wp-block-details:first-child summary {
	background-image: url(assets/images/why1.png);
}
section.why .wp-block-details:nth-child(2) summary {
	background-image: url(assets/images/why2.png);
}
section.why .wp-block-details:nth-child(3) summary {
	background-image: url(assets/images/why3.png);
}
section.why .wp-block-details:nth-child(4) summary {
	background-image: url(assets/images/why4.png);
}
section.why .wp-block-details:nth-child(5) summary {
	background-image: url(assets/images/why5.png);
}
section.why .wp-block-details summary {
	position: relative;
	list-style: none;
	display: flex;
    align-content: center;
    padding: 1.5em;
	text-align: center;
	font-size: 2em;
	font-weight: bold;
	background-position: center center;
	background-size: auto 90%;
	background-repeat: no-repeat;
}
section.why summary::after {
	content: '';
	display: block;
	width: 1em;
	height: 1em;
	border-right: solid 1px;
	border-bottom: solid 1px;
	position: absolute;
	right: 1em;
	transition: transform 0.5s;
	transform: rotate(45deg);
}
section.why details[open] summary::after {
	transform: translateY(.5em) rotate(225deg);
}

/*step*/
section.step .wp-block-columns {
	position: relative;
}
section.step .wp-block-columns::before {
    content: "";
    position: absolute;
    top: 0;
    right: 30px;
    width: 1px;
    height: 100%;
    background: #bbbbbb;
}
section.step .wp-block-columns::after {
    content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 20px 10px 0;
    border-color: #bbbbbb transparent transparent;
    right: 20px;
    bottom: -1px;
}

/*faq*/
.faq summary {
	position: relative;
	list-style: none;
	padding-right: 5em;
}
.faq summary::before {
	content: 'Q.';
	font-size: 2em;
	font-weight: bold;
	margin-right: .25em;
	line-height: 0;
}
.faq summary + p::before, .faq summary + .wp-block-group > p:first-child::before {
	content: 'A.';
	font-size: 2em;
	font-weight: bold;
	margin-right: .25em;
	line-height: 0;
}
.faq summary::after {
	content: '';
	display: block;
	width: 2em;
	height: 2em;
	border-right: solid 1px;
	border-bottom: solid 1px;
	position: absolute;
	bottom: -.5em;
	right: 2em;
	transition: transform 0.5s;
	transform: translateY(-1em) rotate(45deg);
}
.faq details[open] summary::after {
	transform: rotate(225deg);
}

/*LINE icon*/
.line-icon svg {
	display: none;
}
.line-icon .wp-block-social-link-anchor {
	background-image: url(assets/images/line_w.svg);
	background-size: contain;
	background-position: center center;
	background-repeat: no-repeat;
	width: .8em;
	height: .8em;
}

/*googlemap*/
.googlemap {
	filter: grayscale(50%);
}

/*contact*/
.contact > div {
	margin-bottom: 1em;
	display: flex;
	flex-flow: column;
	gap: 0 1em;
}
.contact > div + * {
	padding-top: 1em;
	border-top: solid 1px;
}
.contact > div.hp_alignTop {
	align-items: flex-start;
}
.contact > div.hp_labelRow label {
	line-height: 1;
	display: inline-flex;
	align-items: center;
	margin-right: 2em;
}
.contact > div.hp_labelColumn label {
	line-height: 1;
	display: flex;
	align-items: center;
	margin-bottom: .5em;
}
.contact > div.hp_labelColumn label:first-child {
	flex-grow: 0;
	flex-shrink: 0;
}
@media (min-width: 782px) {
	.contact > div {
		flex-flow: row;
		align-items: center;
	}
	.contact > div dt {
		max-width: 13em;
	}
}
.contact > div dt {
	width: 100%;
	white-space: nowrap;
	display: flex;
	justify-content: left;
	margin: 0;
}
.contact > div dt p {
	margin: 0;
}
.contact > div dt.hp_required::after {
	content: "\203B";
	color: #F00;
}
.contact > div dd {
	width: 100%;
	margin: 0;
}
.contact > div dd p {
	margin: 0;
}
.contact > div dd input, .contact > div dd textarea {
	border-radius: .25em;
	box-sizing: border-box;
	outline: none;
	border: none;
}
.contact > div dd input[type="text"],
.contact > div dd input[type="email"],
.contact > div dd input[type="tel"] {
	width: 100%;
	padding: 1em;
	background-color: #f3f0ec;
	border-radius: .5em;
}
.contact > div dd input[type="radio"] {
	margin-right: .25em;
}
.contact > div dd textarea {
	align-self: flex-start;
	width: 100%;
	padding: 1em;
	height: 10em;
	background-color: #f3f0ec;
	border-radius: .5em;
}
#contractoreHideForm {
	flex-flow: wrap;
}
#hideform {
	transition: all .25s ease-in;
	height: 0;
	margin-top: 0;
	opacity: 0;
	margin-left: 1em;
	overflow: hidden;
	width: 100%;
	box-sizing: border-box;
	display: block;
}
#hideform input {
	margin-top: .25em;
}
#contractoreHideForm input[name="request"]:checked ~ #hideform {
	height: 5.5em;
	margin-top: .5em;
	opacity: 1;
	overflow: visible;
}
.contact + .submit {
	margin-top: 4em;
	text-align: center;
}
.contact + .submit > p {
	position: relative;
}
.contact + .submit input {
	padding: 1em 2em 1em 4em;
    margin-top: 1em;
    border: solid 1px #dddddd;
    border-radius: 2em;
    letter-spacing: 2em;
    font-weight: normal;
}
.contact + .submit > p .wpcf7-spinner {
	position: absolute;
    top: 2em;
    left: 0;
    right: 0;
	margin: auto;
}

/*taxonomy-category*/
.taxonomy-category a {
	display: inline-block;
	margin-bottom: .5em;
}

/*category selecter*/
.category-selecter {
	gap: .5em;
}
.category-selecter .wp-block-navigation-item__content .wp-block-navigation-item__label {
	color: #24306D;
	font-weight: bold;
	background-color: #A9BFEA;
	margin: 0;
	display: inline-block;
    margin: 0;
	padding: .5em;
	border-radius: .5em;
}
.category-selecter .wp-block-navigation-item.current-menu-item .wp-block-navigation-item__content .wp-block-navigation-item__label,
.category-selecter .wp-block-navigation-item .wp-block-navigation-item__content .wp-block-navigation-item__label:hover {
	color: #FFF;
	background-color: #24306D;
}

/*work single*/
.works-title {
	display: inline-block;
}
#main-carousel .splide__slide img {
	width: 100%;
    height: 100%;
    object-fit: contain;
    aspect-ratio: 4 / 3;
}
#thumbnail-carousel {
	margin-top: 8px;
}
#thumbnail-carousel .splide__slide img {
	width: 100px;
    height: 75px;
    object-fit: contain;
    aspect-ratio: 4 / 3;
}
#main-carousel .splide__arrow svg {
    fill: #FFF;
}
.splide__track--nav>.splide__list>.splide__slide.is-active {
    border: 1px solid #888 !important;
}