@charset "utf-8";

/*==================*/
/*   Base settings  */
/*==================*/
@media all {
	:root {
		--daiki-blue: #0099c4;
		--daiki-brown: #802E0E;
	}

	body {
		font-family: "Noto Sans JP", sans-serif;
		font-optical-sizing: auto;
		font-style: normal;
	}

	a:hover {
		opacity: .7;
	}

	.ft-serif {
		font-family: "Noto Serif JP", serif;
		font-optical-sizing: auto;
		font-style: normal;
	}
}

/* responsive */
@media all {
	.spsm-only,
	.sp-only,
	.visible-ltipad {
		display: none;
	}
}


@media all and (max-width: 896px) {
}

@media all and (max-width: 768px) {
	.visible-ltipad {
		display: block;
	}
}

@media screen and (max-width:600px) {
	.hidden-sp {
		display: none;
	}

	.sp-only {
		display: block;
	}


}

@media screen and (max-width:480px) {
	.spsm-only {
		display: block;
	}
}

/*============*/
/*   Header   */
/*============*/
@media screen, print {
	#gHeader .hBox.flexB {
		max-width: none; /* reset */
		padding-left: 7vw;
		padding-right: 4rem;
	}

	#gHeader .hBox img.header-logo {
		aspect-ratio: 2 / 1;
		height: auto;
		max-width: none; /* override */
		width: 20rem;
	}

	#gHeader .rBox {
		margin: 0; /* reset */
	}

	a[href^="tel:"] {
    pointer-events:none;
	}

	a.header-tel {
		color: var(--daiki-blue);
		display: block;
		font-family: "alternate-gothic-compressed", sans-serif;
		font-size: 3.4rem;
		font-style: normal;
		font-weight: 900;
		letter-spacing: .4rem;
		line-height: 1;
		margin-bottom: 1rem;
		text-align: end;
	}

	.header-tel-sm {
		font-size: 2.1rem;
		letter-spacing: .5rem;
		margin-right: .5rem	;
	}

	.header-msg {
		font-size: 1.4rem;
		font-weight: 600;
	}

	nav#gNavi {
		padding:  0; /* override */
	}

	nav#gNavi ul {
		align-items: center;
		display: flex;
		flex-direction: row;
		gap: 5rem;
		height: 5rem;
		justify-content: center;
	}

	#gNavi li a {
		font-size: 1.6rem;
		font-weight: 500;
		padding: 0; /* reset */
	}
}

/* SP BP */
@media all and (max-width: 1100px) {
		#gHeader {
		padding-top: 50px;		
		padding-top: 30px;		
		padding-top: calc(9.85vw - 5.84rem);		
	}

	#gHeader .hBox.flexB {
		padding-left: 75px;
		padding-left: 10px;
		padding-left: calc(32vw - 27.7rem);
	}

	.breadcrumb2 {
		padding-left: 2vw;
	}
}

@media all and (max-width: 896px) {
	#gHeader {
		padding-bottom: 1.5rem;
		padding-top: 30px;		
		padding-top: 20px;
		padding-top: calc(3.37vw - .02rem);		
	}	

	#gHeader h1 {
		margin-left: 0; /* override */
	}

	#gHeader .hBox img.header-logo {
		height: 100px;
		height: 85px;
		height: 60px; /* 11vw */
		height: clamp(6rem, 11vw, 10rem);
		margin-left: 1rem;
		width: auto;
	}

	a.header-tel {
		font-size: 34px;
		font-size: 32px; /* 4vw */
		font-size: 28px;
		font-size: clamp(2.8rem, 4vw, 3.4rem);
	}

	.header-tel-sm {
		font-size: 21px;
		font-size: 20px; /* 2.6vw */
		font-size: 18px;
		font-size: calc(1.01vw + 1.19rem);
		font-size: clamp(1.8rem, 2.6vw, 2.1rem);
	}

	nav#gNavi ul {
		gap: 4rem;
		height: 3.5rem;
	}

	#gNavi li a {
		font-size: 1.4rem;
		letter-spacing: normal; /* reset */
	}

	.breadcrumb2 {
		padding-left: 0; /* reset */
	}
}

@media all and (max-width: 699px) {
	nav#gNavi ul {
		gap: 40px;
		gap: 25px;
		gap: calc(15vw - 6.5rem);
	}
}

@media screen and (max-width:600px) {
	#gHeader {
		padding-bottom: 0; /* reset */
		padding-top: 2rem;
		position: sticky; /* override */
	}

	#gHeader .hBox.flexB {
		margin: 0 0 1rem; /* override */
		padding: 0 2vw;
	}

	nav#gNavi {
		display: none;
	}

	#gHeader .hBox img.header-logo {
		height: 6rem;
		margin-left: 0; /* reset */
		width: auto;
	}

	a.header-tel {
		font-size: 2.4rem;
		margin-bottom: 0; /* reset */
	}

	.header-tel-sm {
		font-size: 1.5rem;
	}

	.menu {
		align-items: center;
		display: flex;
		flex-direction: column;
		gap: .3rem;
		height: 3.5rem; /* oerride */
		justify-content: center;
		margin-right: 2vw;
		width: 2.5rem; /* override */
	}

	.menu span {
		left: auto; /* reset */
		margin-left: 0; /* reset */
		position: relative; /* reset */
		top: auto; /* reset */
		width: 2.5rem;
	}

	.menu span:nth-child(2),
	.menu span:nth-child(3) {
		top: auto; /* reset */
	}
	
	.menu.on span:nth-child(1) {
		transform: translateY(5px) translateX(0) rotate(45deg);
	}

	.menu.on span:nth-child(3) {
		transform: translateY(-5px) translateX(0) rotate(-45deg);
	}

	.menuWrap .tel {
		display: none; /* reset */
	}

	.menuWrap li a {
		font-weight: 500;
	}
}

/*==============*/
/*   Contents   */
/*==============*/
@media screen, print {
	.breadcrumb2 {
		padding-left: 1rem;
		padding-top: 1rem;
	}

	.breadcrumb-list {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
	}

	.breadcrumb-item {
		color: var(--daiki-brown);
		font-size: 1.4rem;
		font-weight: 400;
	}

	.breadcrumb-item a {
		text-decoration: underline;
	}

	.breadcrumb-item + .breadcrumb-item::before {
    content: '>';
    display: inline-block;
    margin: 0 0.5rem;
	}

	.kv-pic-img {
		height: 49rem;
		object-fit: cover;
		width: 100%;
	}

	.titleArea {
		margin-top: 10rem;
	}
}

/* SP BP */
@media all and (max-width: 1100px) {
	.kv-pic-img {
		max-height: 49rem;
	}
}

@media all and (max-width: 896px) {
	.titleArea {
		margin-top: 5.5rem;
	}

	.kv-pic-img {
		max-height: 26rem;
	}
}

@media screen and (max-width:600px) {
	.breadcrumb2 {
		margin-left: -.5rem;
		padding-left: 0; /* reset */
	}

	.titleArea {
		margin-top: 3.5rem;
	}

	.kv-pic-img {
		max-height: 18rem;
	}
}

/* SP BP */
@media all and (max-width: 480px) {
}