@charset "utf-8";
/* CSS Document */

:root {
	--font-weight-regular: 400;
	--font-weight-medium: 500;
	--font-weight-bold: 700;
	--color-common: #231815;
	--color-light-pink: #ea6172;
	--color-light-blue: #7c89a7;
	--color-dark-blue: #004ba0;
	--color-blue: #055ba2;
	--width-contents: 1100px;
}
/* @font-face でローカルフォントを優先 */
@font-face {
font-family: 'Local Noto Sans JP';
src: 
	local('Noto Sans JP'), /* Windows用 */
	local('Noto Sans CJK JP Regular') /* Android用 */;
}

body.renew-index {
	font-family: "Local Noto Sans JP", "Noto Sans JP", sans-serif;
	font-size: 1em;
	font-size: 16px;
}

@media (max-width:950px) {}
@media (max-width:768px) {}
/*──────────────────────────────────────────────────────
header
──────────────────────────────────────────────────────*/
#header {
	border: none;
	padding-top: 2em;
	background: #fff;
}
.header {
	padding-right: 10px;
	padding-left: 10px;
	padding-bottom: 10px;
}
.header-inner {
	display: grid;
	grid-template-columns: 1fr minmax(470px, 43%);
	grid-template-rows: auto 1fr;
	grid-auto-columns: 1fr;
	grid-auto-rows: 1fr;
	gap: 0em 1%;
	grid-auto-flow: column;
	grid-template-areas:
		"header-logo header-subnav"
		"header-nav header-subnav";
}
.header-logo { grid-area: header-logo; }
.header-subnav { grid-area: header-subnav; }
.header-nav { grid-area: header-nav; }

.header-inner {
	position: relative;
	margin: 0 auto;
	max-width: var(--width-contents);
}
.header-logo {
	display: flex;
	p {
		color: var(--color-dark-blue);
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		font-size: 0.75em;
		font-weight: var(--font-weight-bold);
		line-height: 1;
	}
	p::after {
		content: attr(data-en);
		font-style: italic;
		font-size: 1.5em;
		letter-spacing: .05em;
	}
}
#globalnavi {
	margin-top: 10px;
}
#globalnavi li {
	text-align: center;
	padding: 0;
	width: auto;
	border: none;
}
#globalnavi li a {
	display: block;
	text-align: center;
}
.globNav-toggle {
		display: none;
}
.globNav-inner {
		overflow: hidden;
}
.headerNav-list {
	display: flex;
	gap: 0 3em;
	li {
	}
	li a {
		padding: .25em;
	}
}

.header-subnav {
	display: grid;
	grid-template-columns: 1fr auto;
	grid-template-rows: auto 1fr;
	grid-auto-columns: 1fr;
	grid-auto-rows: 1fr;
	gap: 1em 0em;
	grid-auto-flow: column;
	grid-template-areas:
		"headerSubnav-contact headerSubnav-contact"
		"headerSubnav-tel headerSubnav-list";
}
.headerSubnav-contact { grid-area: headerSubnav-contact; }
.headerSubnav-tel { grid-area: headerSubnav-tel; }
.headerSubnav-list { grid-area: headerSubnav-list; }

.header-subnav {
	margin: auto 0 auto auto;
	max-width: 470px;
	width: 100%;
	li {
		display: flex;
		align-items: center;
		font-size: 0.8125em;
	}
	li::before{
		content: "";
		display: block;
		left: 3px;
		width: 6px;
		height: 6px;
		border-top: 1px solid var(--color-common);
		border-right: 1px solid var(--color-common);
		transform: rotate(45deg);
		margin-right: 0.5em;
	}
	a {
		color: var(--color-common);
	}
}
.headerSubnav-contact {
	a {
		background: #0079AD;
		background: linear-gradient(90deg,rgba(0, 121, 173, 100%) 0%, rgba(7, 50, 144, 0.8) 100%);
		border: 1px solid var(--color-dark-blue);
		border-radius: 1em;
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.125em;
		margin: auto 0 auto auto;
		padding: .5em;
		text-align: center;
		max-width: 290px;
		width: 100%;
	}
	a::before {
		aspect-ratio: 26/18;
		background: url(../images/common/icon-mail.png) no-repeat center center / contain;
		content: "";
		display: block;
		margin-right: 0.5em;
		width: 100%;
		max-width: 26px;
	}
}
.headerSubnav-tel {
	a,span {
		color: var(--color-dark-blue);
		display: flex;
		font-size: 2.25em;
		font-weight: var(--font-weight-bold);
	}
	a::before,
	span::before {
		aspect-ratio: 46/39;
		background: url(../images/common/icon-tel.png) no-repeat center center / contain;
		content: "";
		display: block;
		margin-right: 5px;
		width: 100%;
		max-width: 46px;
	}
}
@media (max-width:950px) {
	.header-inner {
		grid-template-columns: 1fr minmax(300px, 30%);
	}
	.header-subnav {
		grid-template-columns: auto;
		grid-template-rows: auto auto 1fr;
		gap: .5em 0em;
		grid-template-areas:
			"headerSubnav-contact"
			"headerSubnav-tel"
			"headerSubnav-list";
		justify-content: end;
	}
	.headerSubnav-list {
		display: flex;
		gap: 1em;
	}
	.headerSubnav-tel {
		a {
			font-size: 1.75em;
		}
		a::before,
		span::before {
			max-width: 28px;
		}

	}

}
@media (max-width:768px) {
	#header {
		padding-top: 10px;
		height: 70px;
	}
	.header-inner {
		grid-template-columns: 100%;
		grid-template-rows: 60px 0 0;
		grid-template-areas:
			"header-logo"
			"header-nav"
			"header-subnav";
	}
	.header-inner.is-open {
		grid-template-rows: 60px auto auto;
	}
	.header-logo {
		flex-direction: column;
		p {
			align-items: flex-start;
		}
		p::after {
			content: none;
		}
	}
	.header-logo img {
		height: 40px;
	}
	.headerNav-list {
		flex-direction: column;
	}
	#globalnavi {
		position: static;
		width: 100%;
		width: calc(100% + 20px);
		z-index: 1000 !important;
		margin-top: 0;
		margin-left: -10px;
	}
	.globNav-toggle {
		display: block;
		color: #000;
		cursor: pointer;
		padding: 0;
		position: absolute;
		right: 10px;
		top: 0;
		width: 48px;
		height: 48px;
	}
	.globNav-toggle::before {
		content: "≡";
		font-size: 48px;
		font-weight: bold;
		position: absolute;
		top: 4px;
		right: 4px;
	}
	.globNav-toggle.is-open::before {
		content: "×"; /*メニューアイコン*/
		font-size: 48px;
		font-weight: bold;
	}

	.globNav-toggle.is-open::before {
		font-size: 48px;
	}
	/* .headerNav-list,
	.header-subnav {
		display: none;
	}
	.headerNav-list.is-open,
	.header-subnav.is-open {
		display: block;
	} */
	.headerNav-list,
	.header-subnav {
		opacity: 0;
		pointer-events: none; 
		visibility: hidden;
		transition: opacity 0.4s ease, visibility 0.4s ease;
	}

	.headerNav-list.is-open,
	.header-subnav.is-open {
		display: block;
		opacity: 1;
		pointer-events: auto; 
		visibility: visible;
	}

}


.fixed {
		position: fixed;
		top: 0;
		width: 100%;
		z-index: 10000;
		border-bottom: solid 1px #ccc;
		/*background: rgba(255,255,255, 0.9);*/
}
/*──────────────────────────────────────────────────────
footer
──────────────────────────────────────────────────────*/
#footer {
	margin-top: 100px;
	border: none;
	background-color: #fff;
	font-size: 100%;
	padding: 0 10px;
}
#footer::after {
	background: #0079AD;
	background: linear-gradient(90deg,rgba(0, 121, 173, 100%) 0%, rgba(7, 50, 144, 0.8) 100%);
	content: "";
	display: block;
	margin-top: 2em;
	margin-left: -10px;
	width: calc(100% + 20px);
	height: 20px;
}
.fadein {
	display: none;
}
@media (max-width:768px) {
	#footer {
		margin-top: 150px;
		padding: 0;
	}
	#footer::after {
		width: 100%;
		margin-left: 0;
	}
	.footer-inner {
		display: none;
	}
	.fadein {
		position: fixed;
		display: none;
		width: 100%;
		bottom: 0;
		z-index: 0;
	}
	.f_bt li {
		font-size: 13px;
		width: 33.3333%;
		padding: 7px;
		background-color: #fff;
		text-align: center;
		border: solid 3px #003894;
		margin-bottom: 0 !important;
	}
	.f_bt li a {
		display: block;
		width: 100%;
		height: 100%;
		color: #003894;
		font-weight: 900;
	}
	.f_bt li a:before {
		content: url("../images/common/arw_blue-beta.png");
		margin-right: 5px;
	}
	.f_bt li.f_contact a {
		color: #F18E0A;
	}
	.f_bt li.f_contact a:before {
		color: #F18E0A;
		content: url("../images/common/arw_orange-beta.png");
		margin-right: 5px;
	}
}
.footer-inner {
	margin: 0 auto;
	max-width: var(--width-contents);
}
.footer-logo {
}
.footer-nav {
	display: grid;
	grid-template-columns: 1fr minmax(344px, 32%);
	grid-template-rows: repeat(3, auto) 1fr;
	grid-auto-columns: 1fr;
	grid-auto-rows: 1fr;
	gap: 0em 1%;
	grid-auto-flow: column;
	grid-template-areas:
		"footerNav-service footerNav-top"
		"footerNav-service footerNav-page"
		"footerNav-service footerNav-contact"
		"footerNav-service copyright";
}
.footerNav-service { grid-area: footerNav-service; }
.footerNav-top { grid-area: footerNav-top; }
.footerNav-page { grid-area: footerNav-page; }
.footerNav-contact { grid-area: footerNav-contact; }
.copyright { grid-area: copyright; }

#footer li {
		margin-bottom: auto;
}

.footer-nav {
	margin-top: 2.5em;
	li {
		font-size: 1.375em;
		font-weight: var(--font-weight-medium);
	}
	li a {
		color: var(--color-common);
	}
	li li {
		font-size: .8em;
		margin-top: .75em;
	}
}
.top-con {
}
.top-con:before {
	content: none;
	vertical-align: middle;
	margin-right: .5em;
}
.footerNav-head span {
	display: flex;
	align-items: center;
}
.footerNav-head span::before {
	background-color: var(--color-common);
	content: "";
	display: block;
	margin-right: 0.5em;
	width: 1em;
	height: 1px;
}
.footerNav-head a.strong {
	font-weight: var(--font-weight-medium);
}
.footerNav-top {
}
.footerNav-service {
	display: flex;
}
.footerNav-service {
}
.footerNav-service .footerNav-head {
	display: grid; 
	grid-auto-flow: column; 
	grid-auto-columns: 1fr; 
	grid-auto-rows: 1fr; 
	grid-template-columns: repeat(2, 50%); 
	grid-template-rows: auto 1fr; 
	gap: 0em 0em; 
	width: 100%;
	span { grid-area: 1 / 1 / 2 / 3; }
	ul:first-of-type { grid-area: 2 / 1 / 3 / 2; }
	ul:last-child { grid-area: 2 / 2 / 3 / 3; }
}
.footerNav-page {
	li {
		margin-top: 0.75em;
	}
}
.footerNav-contact {
	li {
		font-size: 1.25em;
		margin-top: 1em;
	}
	a {
		background-color: #fff;
		border: 1px solid var(--color-dark-blue);
		border-radius: 1em;
		color: var(--color-dark-blue);
		display: block;
		padding: .25em .5em;
		text-align: center;
	}
	li:last-child a {
		background: #0079AD;
		background: linear-gradient(90deg,rgba(0, 121, 173, 100%) 0%, rgba(7, 50, 144, 0.8) 100%);
		color: #fff;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	li:last-child a::before {
		aspect-ratio: 30/20;
		background: url(../images/common/icon-mail.png) no-repeat center center / contain;
		content: "";
		display: block;
		margin-right: 0.5em;
		width: 100%;
		max-width: 30px;
	}
}
.copyright {
	font-size: 1.125em;
	margin-top: 0.75em;
}
@media (max-width:950px) {
	.footer-title {
		width: 60%;
	}
	.footer-nav {
		grid-template-columns: 1fr minmax(310px, 32%);
	}
	.footer-nav {
		margin-top: 2.5em;
		li {
			font-size: 1em;
		}
	}
	.footerNav-contact {
		li {
			font-size: 1em;
			margin-top: .75em;
		}
	}
	.copyright {
		font-size: 1em;
	}
}






/*──────────────────────────────────────────────────────
contents
──────────────────────────────────────────────────────*/
#main {
		width: 72.9%;
}

.renew-index #visual {
	background: url(../images/index/mv.jpg) no-repeat center center/cover;
	box-shadow: none;
	max-height: 695px;
}
.visual-wrapper {
	aspect-ratio: 1366/695;
	display: grid;
	align-content: center;
	justify-content: center;
	margin: 0 auto;
	width: 100%;
	max-width: 1366px;
}
.visual-inner {
}

.contents-catch {
	color: #231815;
	margin: 1em auto 0;
	padding: 4em 10px 0;
	text-align: center;
	width: fit-content;
	p {
		font-size: 1.75em;
		font-weight: 500;
		line-height: 1.6;
	}
	p::after {
		border-top: dotted 4px #231815;
		content: "";
		display: block;
		margin: 2em auto 0;
		width: calc(100% - 3em);
		height: 1px;

	}
}
@media (max-width:768px) {
	.contents-catch {
		padding-top: 2em;
		p {
			font-size: 1em;
		}
	}
}
.indexSection-inner {
	margin: 0 auto;
	max-width: var(--width-contents);
}

.section-title {
	background: none;
	border: none;
	font-size: 100%;
	padding: 0;
	font-weight: var(--font-weight-bold);
	margin: 0;
}
.section-title:before {
	content: none;
	margin-right: 0;
	vertical-align: auto;
}
.section-title {
	display: flex;
}
.section-title::before {
	color: var(--color-light-blue);
	content: attr(data-en)"";
	font-weight: var(--font-weight-bold);
}
@media (max-width:480px) {
	.section-title {
		font-size: 100%;
		padding: 0;
	}
}

/* POINT */
.point {
	margin-top: 3em;
}
.point-section {
}
.point .section-title {
	color: var(--color-light-blue);
	align-items: center;
	justify-content: center;
	font-size: 1.875em;
	font-weight: var(--font-weight-medium);
	text-align: center;
}
.point .section-title::before {
	font-size: 2.467em;
	margin-right: .6em;
}
@media (max-width:950px) {
	.point .section-title {
		flex-direction: column;
		font-size: .9em;
		text-align: left;
	}
	.point .section-title::before {
		font-size: 2.45em;
		margin-right: 0;
		margin-bottom: 0.2em;
	}
}
.point-content {
	background-color: #f7fbfe;
	/* display: flex; */
	margin-top: 3em;
}
.point-content {
	display: grid; 
	grid-auto-flow: column; 
	grid-auto-columns: 1fr; 
	grid-auto-rows: 1fr; 
	grid-template-columns: 35% 1fr; 
	grid-template-rows: auto; 
	gap: 0em 0em; 
}
.point-content::before { grid-area: 1 / 1 / 2 / 2; }
.point-list { grid-area: 1 / 2 / 2 / 3; }
.point-content::before {
	background: url(../images/index/point.jpg) no-repeat right center/cover;
	content: "";
	display: block;
	/* width: 35%; */
}
.point-list {
	padding: 3.5em 10px 3.5em 5em;
	/* width: 65%; */
	max-width: 760px;
}
.point-item {
	h3 {
		color: var(--color-blue);
		font-size: 2em;
		font-weight: var(--font-weight-bold);
		line-height: 1.4;
	}
	p {
		line-height: 1.75;
		margin-top: 2em;
	}
}
.point-item:not(:first-child) {
	margin-top: 4em;
}
@media (max-width:950px) {
	.point-content {
		margin-top: 1em;
	}
	.point-content {
		display: block;
	}
	.point-content::before {
		aspect-ratio: 100/30;
		width: 100%;;
		/* width: 35%; */
	}
	.point-list {
		padding: 10px;
	}
	.point-item {
		h3 {
			font-size: 1.25em;
		}
		p {
			line-height: 1.5;
			margin-top: 1em;
		}
	}
	.point-item:not(:first-child) {
		margin-top: 2em;
	}

}

/* NEWS */
.news {
	margin-top: 5.5em;
	padding: 0 10px;
}
.newsSection-inner {
	display: grid;
	grid-auto-flow: column; 
	grid-auto-columns: 1fr; 
	grid-auto-rows: 1fr; 
	grid-template-columns: minmax(300px, 27%) 1fr; 
	grid-template-rows: repeat(3, auto); 
	gap: 0em 1%; 
	grid-template-areas: 
		"news-title news-block"
		"archive-link news-block"; 
}
.news-title { grid-area: news-title; }
.archive-link { grid-area: archive-link; }
.news-block { grid-area: news-block; }

@media (max-width:950px) {
	.news {
		margin-top: 3em;
	}
	.newsSection-inner {
		grid-template-columns: 100%; 
		grid-template-areas: 
			"news-title"
			"news-block"
			"archive-link"; 
	}
}
.news .section-title {
	flex-direction: column;
	font-size: 1em;
	font-weight: var(--font-weight-regular);
}
.news .section-title::before {
	font-size: 4.875em;
	margin-bottom: 0.2em;
}
.archive-link {
	margin-top: 2.5em;
	a {
		color: var(--color-light-blue);
		display: flex;
		align-items: center;
	}
	a::after {
		border-top: 1px solid var(--color-light-blue);
		border-right: 1px solid var(--color-light-blue);
		transform: rotate(45deg);
		content: "";
		display: block;
		margin: 0 auto 0 1em;
		width: .5em;
		height: .5em;
	}
}
.news-line {
	display: flex;
	border-bottom: 1px solid #c8c5c4;
	width: 100%;
}
.news-posts {
	display: flex;
	align-items: flex-start;
	padding: .75em 0;
	width: 28%;
}
.news-headline {
	font-size: .9375em;
	padding: .5em 0 .5em 1em;
	width: 72%;
	a {
		color: var(--color-common);
		display: block;
		padding: .25em;
	}
}
.news-date {
	color: var(--color-common);
	font-size: 0.875em;
	padding-top: .25em;
}
.news-category {
	background-color: #ccc;
	color: #fff;
	display: block;
	font-size: 0.75em;
	margin: 0 0 0 auto;
	padding: .25em;
	text-align: center;
	width: 100%;
	max-width: 90px;
}
.news-category.topics {
	background-color: #b09156;
}
.news-category.food-poisoning {
	background-color: #5f80c0;
}
@media (max-width:950px) {
	.news .section-title {
		font-size: .9em;
	}
	.news .section-title::before {
		font-size: 2.45em;
	}
	.news-line {
		flex-direction: column;
	}
	.news-posts {
		gap: .5em;
		padding-bottom: 0;
		width: 100%;
	}
	.news-headline {
		padding-left: 0;
		padding-right: 0;
		width: 100%;
	}
	.news-category {
		margin-left: 0;
	}
}


/* 業務内容 */
.business {
	margin-top: 5.5em;
	padding: 0 10px;
}
.businessSection-inner {
}
.business .section-title {
	display: none;
}
.business-list {
	display: grid;
	grid-template-columns: repeat(auto-fit, 31%);
	grid-template-columns: repeat(3, 31%);
	column-gap: 3.5%;
	justify-content: space-between;
	grid-auto-rows: auto;
}
@media (max-width:768px) {
	.business {
		margin-top: 3em;
	}
	.business-list {
		grid-template-columns: repeat(auto-fit, 49%);
		grid-template-columns: repeat(2, 49%);
		column-gap: 1%;
		justify-content: space-between;
		grid-auto-rows: auto;
	}
}
.business-card {
	color: var(--color-common);
    display: grid;
    grid-row: span 5; /* カード内の要素数に合わせる */
    grid-template-rows: subgrid;
	align-content: start;
	gap: 0 0;
	width: 100%;
	max-width: 340px;
}
.business-card:nth-child(n+4) {
	margin-top: 4em;
}

.businessCard-thumb {
	margin-bottom: 1.5em;
}
.businessCard-title {
	font-size: 1.25em;
	font-weight: var(--font-weight-medium);
	line-height: 1.2;
	text-align: center;
	margin: 0;
    align-self: start; /* 行トラック内で上詰め */
}
.businessCard-caption {
	font-size: .9375em;
	margin: 1em 0 0;
	text-align: center;
}
.businessCard-desc {
	font-size: .875em;
	margin: 2em 0 0;
}
.businessCard-link {
	margin-top: 1.25em;
	button {
		background-color: #073290;
		border: 0;
		border-radius: 1em;
		color: #fff;
		cursor: pointer;
		font-size: 0.875em;
		padding: .3em 1em;
	}
	button::before {
		content: "▼";
	}
}
.businessCard-linklist {
	li {
		font-size: .9375em;
		margin: 1em 0 0;
		padding-left: 1.25em;
		position: relative;
	}
	li::before,
	li::after {
		content: "";
		display: block;
		position: absolute;
	}
	li::before {
		width: 1em;
		height: 1em;
		border-radius: 50%;
		background: #073290;
		left: 0;
		top: .25em;
	}
	li::after{
		left: .4em;
		top: .5em;
		width: 6px;
		height: 6px;
		border: 4px solid transparent;
		border-left: 6px solid #fff;
	}
}
.businessCard-link {
	summary {
		background-color: #073290;
		border: 0;
		border-radius: 1em;
		color: #fff;
		cursor: pointer;
		display: inline-block;
		font-size: 0.875em;
		padding: .3em 1em;
	}
	summary::before {
		content: "▼";
	}
	summary::-webkit-details-marker {
		display: none;
	}
}

.businessCard-linklist {
    display: none;
    opacity: 0;
    transform: translateY(-8px);
    transition: 
        opacity 0.3s ease,
        transform 0.3s ease,
        display 0.3s allow-discrete; /* ← display変化をアニメーション対象に */
}

details[open] .businessCard-linklist {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

/* 開き始めの初期状態（@starting-styleが必要） */
@starting-style {
    details[open] .businessCard-linklist {
        opacity: 0;
        transform: translateY(-8px);
    }
}
@media (max-width:768px) {
	.business-card {
		max-width: 100%;
	}
	.business-card:nth-child(n+3) {
		margin-top: 2em;
	}
	.businessCard-thumb {
		margin-bottom: 1em;
	}
	.businessCard-title {
		font-size: 1em;
	}
	.businessCard-caption {
		font-size: .875em;
	}
	.businessCard-desc {
		font-size: .8125em;
		margin-top: 1.5em;
	}
	.businessCard-linklist {
		li {
			font-size: .875em;
		}
	}
}
@media (max-width:950px) {
	.businessCard-title {
		font-size: 1.125em;
	}
	.businessCard-caption {
		font-size: .8125em;
	}
}

/* 社長あいさつ */
.greeting-section {
	margin-top: 6em;
	padding: 0 10px;
}
.greetingSection-inner {
	display: grid; 
	grid-auto-flow: column; 
	grid-auto-columns: 1fr; 
	grid-template-columns: minmax(136px, 12.3%) 1fr; 
	gap: 0 0; 
	grid-template-areas: 
		"greeting-title greeting-contents";
}
.greeting-title { grid-area: greeting-title; }
.greeting-contents { grid-area: greeting-contents; }
@media (max-width:950px) {
	.greeting-section {
		margin-top: 4em;
	}
	.greetingSection-inner {
		grid-template-columns: 3em 1fr; 
	}
}

.greeting-title {
	background: none;
	border-right: 1px solid #000;
	color: var(--color-common);
	display: flex;
	align-items: center;
	font-size: 1.75em;
	font-weight: 500;
	margin: 0;
	writing-mode: vertical-rl;
	span {
		background-color: transparent;
		padding: 0;
		position: relative;
	}
	span::before {
		border: 1px solid #000;
		content: "";
		display: block;
		position: absolute;
		top: calc(100% + 1em);
		margin: 0;
		vertical-align: auto;
		width: .8em;
		height: .8em;
	}
	span::after {
		border-top: 1px solid #000;
		border-right: 1px solid #000;
		transform: rotate(45deg);
		content: "";
		display: block;
		margin: 0;
		position: absolute;
		top: calc(100% + 1.25em);
		left: .4em;
		width: .3em;
		height: .3em;
		vertical-align: auto;
	}
}
.greeting-title::before {
	content: none;
}
.greeting-contents {
	padding-left: 4em;
}
.greeting-catch {
	color: var(--color-light-pink);
	font-size: 1.75em;
	font-weight: var(--font-weight-bold);
	line-height: 1.7;
	margin-bottom: 1em;
	letter-spacing: .15em;
}
.greeting-txt {
	line-height: 2.3;
	margin: 1em 0 0;
}
@media (max-width:950px) {
	.greeting-title {
		font-size: 1.25em;
	}
	.greeting-contents {
		padding-left: 1em;
	}
	.greeting-catch {
		font-size: 1em;
		letter-spacing: 0;
	}
	.greeting-txt {
		font-size: 0.9em;
		line-height: 1.8;
	}
}
/*──────────────────────────────────────────────────────
デバイス
──────────────────────────────────────────────────────*/
@media (max-width:1024px) {}
/*──────────────────────────────────────────────────────*/
@media (max-width:980px) {}
/*──────────────────────────────────────────────────────*/
@media (max-width:768px) {

	#header .title p {
		display: none;
	}
	#globalnavi li {
		width: 100%;
		background-color: #F08800;
		border-bottom: 1px solid #fff;
	}
	#globalnavi li a {
		position: relative;
		width: 100% !important;
		padding: 1em;
	}
	.header-subnav {
		background-color: #fff;
		margin-left: -10px;
		width: calc(100% + 20px);
	}
	.header-subnav::after {
		background: #0079AD;
		background: linear-gradient(90deg,rgba(0, 121, 173, 100%) 0%, rgba(7, 50, 144, 0.8) 100%);
		content: "";
		display: block;
		margin-left: -10px;
		width: calc(100% + 20px);
		height: 5px;
	}
	.header-subnav li {
		text-align: center;
		width: 100%;
		background-color: #F08800;
		border-bottom: 1px solid #fff;
	}
	.headerSubnav-list {
		display: block;
		li a {
			position: relative;
			width: 100% !important;
			padding: 1em;
		}
	}
	.headerSubnav-list li::before {
		content: none;
	}
	.headerSubnav-contact {
		padding-top: 10px;
		text-align: center;
		a {
			margin: auto;
		}
	}

	.headerSubnav-tel {
		padding: 10px 0;
		text-align: center;
		a {
			margin: auto;
			justify-content: center;
		}
	}
	#main, #side {
			width: 100%;
			float: none;
			margin: 0 auto;
	}
	#side {
	margin-top: 25px;
	}
.aside-body {
display: none;
}

.aside-title {
		margin: 0;
		padding: 0 0 0 25px;
		position: relative;
		color: #000;
		font-size: 14px;
		font-size: 1.4rem;
		font-weight: bold;
}
.aside-title:before {
content: "OPEN ▼";
font-size: 1.2rem;
position: absolute;
right: 10px;
}
.aside-list-wrap {
		margin: 0;
		padding: 10px;
}
.aside-list-wrap li {
		background: url(../images/common/arw_orange.png) no-repeat ;
		background-position: 5px 20px;
		padding: 10px;
		border-bottom: solid 1px #ccc;
}
.aside-list-wrap li a {
display: block;
		padding-left: 10px;
		color: #666;
		width: 100%;
		height: 100%;
}
.aside-list-wrap li a:hover {
		text-decoration: underline;
}
.bnr-aside li {
		margin-bottom: 10px;
}
}
/*──────────────────────────────────────────────────────*/
@media (max-width:480px) {
		.globNav-inner {
				margin-top: -5px;
				display: none;
		}
		.globNav-toggle::before, .globNav-toggle.is-open::before {
				font-size: 40px;
		}
		.title-border {
				padding: 12px;
				font-size: 1.6rem;
		}
		.section-title2 {
				font-size: 1.5rem;
		}
		.section-title2 span {
				display: block;
				margin-left: 30px;
		}
  .con-title {
		font-size: 1.6rem;
}
		.title-g, .title-b {
				font-size: 1.5rem;
				padding: 7px;
				font-size: 1.5rem;
		}
		#footer {
				border-top: none;
				padding: 0;
				background-color: #fff;
				margin-top: 150px;
		}
		.footer_nav {
				display: none !important;
		}
}
/*──────────────────────────────────────────────────────*/
@media (max-width:375px) {}