/* common.css
========================================*/
/* module */
/* ==========================
	default style
============================= */
body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, legend, input, textarea, p, blockquote, th, td {
	margin:0;
	padding:0;
}

h1, h2, h3, h4, h5, h6, em, address, small {
	font-size:100%;
	font-style:normal;
	font-weight:normal;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

th {
	font-weight:normal;
	text-align:left;
	vertical-align:top;
}

ul, ol, li {
	list-style-type:none;
}

img {
	border:0;
	vertical-align:bottom;
	max-width:100%;
}

a img {
	vertical-align:middle;
}

a {
	display:inline-block;
	text-decoration:none;
}

strong {
	font-size:100%;
	font-style:normal;
	font-weight:bold;
}

button, input[type=submit] {
	background:none;
	border:0;
	padding:0;
}

input[type=text], input[type=email], input[type=tel], textarea {
	border-radius:0;
	outline:none;
}

input[type=radio], input[type=checkbox] {
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	display:none;
}

select {
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	border-radius:0;
}

* {
	box-sizing:border-box;
}

/* font reset */
body {
	font-family:sans-serif;
	line-height:1;
}

input, button, textarea, select {
	color:inherit;
	font:inherit;
}

/* HTML5 */
article, aside, figure, figcaption, footer, header, nav, section, main, picture {
	display:block;
	margin:0;
	padding:0;
}

/* ==========================
	base style
============================= */
html {
	overflow:auto;
	scroll-behavior:smooth;
}
@media screen and (max-width: 767px) {
	html {
		font-size:3.7333333333vw;
		-webkit-text-size-adjust:100%;
	}
}
@media print, screen and (min-width: 1025px) {
	html {
		font-size:16px;
	}
	html.is-menuopn {
		overflow-y:hidden;
		height:100vh;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	html {
		font-size:14px;
	}
}
@media screen and (max-width: 1024px) {
	html.is-menuopn {
		position:fixed;
		top:0;
		left:0;
		height:100dvh;
		width:100%;
	}
}

body {
	background-color:#fffcfa;
	color:#3f3a39;
	font-family:"Noto Sans JP", sans-serif;
	font-weight:400;
}
@media screen and (max-width: 767px) {
	body {
		width:100vw;
	}
}

a {
	color:#3f3a39;
}

* {
	min-height:0;
	min-width:0;
}

#main {
	letter-spacing:.05em;
	line-height:1.5;
	position:relative;
	z-index:1;
}
@media print, screen and (min-width: 1025px) {
	#main {
		flex:1;
	}
}
@media print, screen and (min-width: 768px) {
	#main {
		padding:3.125vw 2.6041666667vw 0 5.2083333333vw;
	}
	#main main {
		padding-bottom:4.1666666667vw;
	}
}
@media screen and (max-width: 767px) {
	#main {
		overflow:hidden;
		width:100vw;
	}
}

@media screen and (max-width: 767px) {
	.pconly {
		display:none;
	}
}
@media print, screen and (min-width: 1025px) {
	.sponly {
		display:none;
	}
}
/* ==========================
	header style
============================= */
#header {
	background-color:#fffcfa;
	position:sticky;
	top:0;
	z-index:1000;
}
@media print, screen and (min-width: 1025px) {
	#header {
		padding:3.90625vw 50px 0;
		height:100vh;
		width:370px;
	}
}
@media screen and (max-width: 1024px) {
	#header {
		display:flex;
		flex-wrap:wrap;
		align-items:center;
		padding:4vw;
	}
}
@media print, screen and (min-width: 1025px) {
	#header .-logo {
		margin-bottom:35px;
	}
}
@media screen and (max-width: 1024px) {
	#header .-logo {
		margin-right:4vw;
		width:26.6666666667vw;
	}
}
#header .-tagline {
	font-weight:700;
}
@media print, screen and (min-width: 1025px) {
	#header .-tagline {
		font-size:1rem;
		margin-bottom:6.6vh;
	}
}
@media screen and (max-width: 767px) {
	#header .-tagline {
		font-size:2.6666666667vw;
		width:45.3333333333vw;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	#header .-tagline {
		font-size:2.1333333333vw;
		width:49.3333333333vw;
	}
}
#header .-menubtn {
	background-color:#db7f4d;
	border-radius:50%;
	height:14.9333333333vw;
	width:16vw;
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	#header .-menubtn {
		height:11.4666666667vw;
		width:12vw;
	}
}
@media print, screen and (min-width: 1025px) {
	#header .-menubtn {
		display:none;
	}
}
#header .glonav {
	margin-bottom:3.90625vw;
}
@media screen and (max-width: 1024px) {
	#header .glonav {
		display:none;
	}
}
#header .glonav-list>li {
	margin-bottom:20px;
	height:75px;
}
#header .glonav-list>li>a {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:space-between;
	background-image:url(../img/common/header_bg_btn_wide.svg);
	background-repeat:no-repeat;
	background-size:cover;
	color:#fff;
	font-size:20px;
	font-weight:700;
	height:100%;
	transition:.5s ease;
}
#header .glonav-list>li>a:hover {
	opacity:.8;
}
#header .glonav-list .-label {
	padding:0 15px;
}
#header .glonav-list .-icon {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	background-image:url(../img/common/dotted.svg);
	background-position:left center;
	background-repeat:no-repeat;
	height:52px;
	width:82px;
}
#header .glonav-sub {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	margin-bottom:20px;
}
#header .glonav-sub>li {
	height:75px;
	width:125px;
}
#header .glonav-sub>li>a {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	background-image:url(../img/common/header_bg_btn_nrw.svg);
	background-repeat:no-repeat;
	background-size:cover;
	color:#fff;
	font-size:18px;
	font-weight:700;
	height:100%;
	transition:.5s ease;
}
#header .glonav-sub>li>a:hover {
	opacity:.8;
}
#header .glonav .-morebtn {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	background-image:url(../img/common/header_bg_btn_more.svg);
	background-repeat:no-repeat;
	background-size:cover;
	color:#db7f4d;
	cursor:pointer;
	font-size:18px;
	font-weight:bold;
	text-align:center;
	height:60px;
	width:100%;
	transition:.5s ease;
}
#header .glonav .-morebtn:hover {
	opacity:.7;
}
#header .menu {
	background-color:rgb(219, 127, 77);
	position:fixed;
	opacity:0;
	overflow-y:scroll;
	pointer-events:none;
	top:0;
	left:0;
	height:100vh;
	width:100vw;
	transition:.5s ease;
	z-index:9999;
}
#header .menu.is-open {
	pointer-events:auto;
	opacity:1;
}
@media print, screen and (min-width: 1025px) {
	#header .menu {
		padding:40px 5.2%;
	}
}
@media screen and (max-width: 1024px) {
	#header .menu {
		padding:6.6666666667vw 5.3333333333vw;
		height:100dvh;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	#header .menu {
		padding:6.6666666667vw 8vw;
	}
}
#header .menu-header {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}
@media print, screen and (min-width: 1025px) {
	#header .menu-header {
		margin-bottom:4.1666666667vw;
		width:100%;
	}
	#header .menu-header .-menu-logo {
		width:20.3%;
	}
	#header .menu-header .-closebtn {
		cursor:pointer;
		margin-top:-40px;
		height:100px;
		width:100px;
	}
	#header .menu-header .-closebtn img {
		width:70px;
	}
}
@media screen and (max-width: 1024px) {
	#header .menu-header {
		margin-bottom:8vw;
	}
	#header .menu-header .-menu-logo {
		width:56vw;
	}
	#header .menu-header .-closebtn {
		margin-top:-2.6666666667vw;
		height:14.9333333333vw;
		width:16vw;
	}
	#header .menu-header .-closebtn img {
		width:11.2vw;
	}
}
@media print, screen and (min-width: 1025px) {
	#header .menu-body {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		margin:0 auto;
		width:90%;
		max-width:1120px;
	}
}
#header .menu-list>li:before {
	background-image:url(../img/common/menu_line.svg);
	background-size:cover;
	content:"";
	display:block;
	margin:0 auto;
}
#header .menu-list>li a {
	color:#fff;
}
#header .menu-list>li>dl>dt {
	color:#fff;
	font-weight:700;
}
#header .menu-list>li>dl>dt span {
	display:inline-block;
}
#header .menu-list>li .-search {
	display:flex;
	flex-wrap:wrap;
}
#header .menu-list>li .-search input {
	background-color:#fff;
	border:0;
	border-radius:20px 0 0 20px;
	color:#db7f4d;
	font-weight:500;
}
#header .menu-list>li .-search input::placeholder {
	color:#db7f4d;
	font-weight:500;
}
#header .menu-list>li .-search button {
	background-color:#db7f4d;
	border:1px solid #fff;
	border-radius:0 20px 20px 0;
	display:block;
}
#header .menu-list>li .-search button img {
	filter:brightness(0) invert(1);
}
@media print, screen and (min-width: 1025px) {
	#header .menu-list {
		width:380px;
	}
	#header .menu-list._right {
		width:480px;
	}
	#header .menu-list>li {
		margin-bottom:10px;
	}
	#header .menu-list>li:before {
		margin-bottom:25px;
		height:3px;
		width:52px;
	}
	#header .menu-list>li a {
		transition:.5s ease;
	}
	#header .menu-list>li a:hover {
		opacity:.7;
	}
	#header .menu-list>li>dl>dt {
		font-size:1.25rem;
		margin-bottom:25px;
	}
	#header .menu-list>li>dl>dt span {
		width:40px;
	}
	#header .menu-list>li>dl>dd {
		padding-left:50px;
	}
	#header .menu-list>li._search {
		margin-top:120px;
	}
	#header .menu-list>li._search:before {
		margin-bottom:120px;
	}
	#header .menu-list>li._search>dl>dd {
		padding-left:20px;
	}
	#header .menu-list>li .-search {
		margin-bottom:40px;
	}
	#header .menu-list>li .-search input {
		background-position:20px center;
		font-size:1.25rem;
		padding:20px 25px;
		width:370px;
	}
	#header .menu-list>li .-search button {
		cursor:pointer;
		width:80px;
	}
	#header .menu-list>li .-search button img {
		width:25px;
	}
	#header .menu-list .-button {
		margin-bottom:20px;
	}
}
@media screen and (max-width: 1024px) {
	#header .menu-list>li {
		margin-bottom:2.6666666667vw;
	}
	#header .menu-list>li:before {
		margin-bottom:5.3333333333vw;
		height:.8vw;
		width:13.8666666667vw;
	}
	#header .menu-list>li>dl>dt {
		font-size:4.8vw;
		margin-bottom:5.3333333333vw;
	}
	#header .menu-list>li>dl>dd {
		padding-left:13.3333333333vw;
	}
	#header .menu-list>li .-icon {
		width:9.3333333333vw;
	}
	#header .menu-list>li._search>dl>dd {
		padding-left:0;
	}
	#header .menu-list>li .-search {
		margin-bottom:8vw;
		padding:0 2.6666666667vw;
	}
	#header .menu-list>li .-search input {
		background-position:4vw center;
		font-size:4.2666666667vw;
		padding:4vw 5.3333333333vw;
		width:calc(100% - 16vw);
	}
	#header .menu-list>li .-search button {
		width:16vw;
	}
	#header .menu-list>li .-search button img {
		width:5.3333333333vw;
	}
	#header .menu-list .-button {
		margin-bottom:5.3333333333vw;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	#header .menu-list>li {
		margin-bottom:2.6666666667vw;
	}
	#header .menu-list>li:before {
		margin-bottom:5.3333333333vw;
		height:.8vw;
		width:13.8666666667vw;
	}
	#header .menu-list>li>dl>dt {
		font-size:3.7333333333vw;
		margin-bottom:4vw;
	}
	#header .menu-list>li .-icon {
		width:8vw;
	}
	#header .menu-list>li .-icon img {
		width:4vw;
	}
	#header .menu-list .-button img {
		width:53.3333333333vw;
	}
}
#header .menu-list-sub {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}
#header .menu-list-sub>li>a {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	font-weight:500;
	line-height:1.2;
}
#header .menu-list-sub>li>a img {
	margin-right:.7em;
}
@media print, screen and (min-width: 1025px) {
	#header .menu-list-sub>li {
		font-size:1.125rem;
		margin-bottom:25px;
		width:160px;
	}
	#header .menu-list-sub>li._wide {
		width:320px;
	}
}
@media screen and (max-width: 1024px) {
	#header .menu-list-sub>li {
		font-size:4.2666666667vw;
		margin-bottom:4vw;
		width:37.3333333333vw;
	}
	#header .menu-list-sub>li._wide {
		width:74.6666666667vw;
	}
	#header .menu-list-sub>li>a {
		padding:.3em 0;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	#header .menu-list-sub>li {
		font-size:3.4666666667vw;
		margin-bottom:2.6666666667vw;
		width:34.6666666667vw;
	}
	#header .menu-list-sub>li._wide {
		width:69.3333333333vw;
	}
}
#header .menu-list-sns {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
}
@media print, screen and (min-width: 1025px) {
	#header .menu-list-sns>li {
		margin-right:40px;
	}
	#header .menu-list-sns>li>a {
		transition:.5s ease;
	}
	#header .menu-list-sns>li>a:hover {
		opacity:.7;
	}
}
@media screen and (max-width: 1024px) {
	#header .menu-list-sns {
		justify-content:center;
	}
	#header .menu-list-sns>li {
		margin:0 5.3333333333vw;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	#header .menu-list-sns>li img {
		width:5.8666666667vw;
	}
}

/* ==========================
	footer style
============================= */
#footer {
	border-top-color:#db7f4d;
	border-top-style:solid;
}
#footer .-copyright {
	text-align:center;
}
@media print, screen and (min-width: 768px) {
	#footer {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		border-top-width:3px;
		margin-left:-5.2083333333vw;
		padding:35px 45px 20px 5.2083333333vw;
	}
	#footer .-logo {
		margin-bottom:10px;
		width:23.9%;
	}
	#footer .-copyright {
		font-size:.875rem;
		margin-top:30px;
		width:100%;
	}
}
@media screen and (max-width: 767px) {
	#footer {
		border-top-width:.8vw;
		margin-top:16vw;
		padding:10.6666666667vw 8vw 5.3333333333vw;
	}
	#footer .-logo {
		margin:0 auto 8vw;
		width:74.6666666667vw;
	}
	#footer .-copyright {
		font-size:3.2vw;
		margin-top:8vw;
	}
}
#footer .footer-nav>ul>li>a {
	color:#db7f4d;
	font-weight:500;
}
#footer .footer-nav .-contact {
	font-family:"Montserrat", sans-serif;
	background-color:#db7f4d;
	color:#fff;
	display:table;
	font-weight:600;
	padding:.5em 1em;
}
@media print, screen and (min-width: 768px) {
	#footer .footer-nav>ul {
		display:flex;
		flex-wrap:wrap;
		margin-bottom:20px;
	}
	#footer .footer-nav>ul>li {
		font-size:.8333333333vw;
		margin-right:3.125vw;
	}
	#footer .footer-nav>ul>li:last-of-type {
		margin-right:0;
	}
	#footer .footer-nav>ul>li>a {
		transition:.5s ease;
	}
	#footer .footer-nav>ul>li>a:hover {
		opacity:.7;
	}
	#footer .footer-nav .-contact {
		border-radius:.2604166667vw;
		font-size:.8333333333vw;
		margin-left:auto;
		transition:.5s ease;
	}
	#footer .footer-nav .-contact:hover {
		opacity:.7;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	#footer .footer-nav>ul>li {
		font-size:1.4583333333vw;
		margin-right:2.6041666667vw;
	}
	#footer .footer-nav .-contact {
		font-size:1.4583333333vw;
	}
}
@media screen and (max-width: 767px) {
	#footer .footer-nav>ul {
		margin-bottom:8vw;
		padding:0 5.3333333333vw;
	}
	#footer .footer-nav>ul>li {
		font-size:4.2666666667vw;
		margin-bottom:5.3333333333vw;
	}
	#footer .footer-nav .-contact {
		border-radius:1.3333333333vw;
		font-size:4.2666666667vw;
		margin-left:4vw;
	}
}

/* ==========================
	layout style
============================= */
@media print, screen and (min-width: 1025px) {
	.l-container {
		display:flex;
		flex-wrap:wrap;
		flex-direction:row-reverse;
	}
}
.l-article-list .-image {
	aspect-ratio:1/.55;
	overflow:hidden;
}
.l-article-list .-image img {
	object-fit:cover;
	overflow:hidden;
	height:100%;
	width:100%;
}
.l-article-list .-title {
	color:#db7f4d;
	font-weight:700;
	line-height:1.4;
}
@media print, screen and (min-width: 768px) {
	.l-article-list {
		padding:0 2%;
	}
	.l-article-list>li {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		margin-bottom:30px;
	}
	.l-article-list>li>dl {
		flex:1;
		margin-left:2.6%;
	}
	.l-article-list .-image {
		border-radius:1.5625vw;
		width:35%;
	}
	.l-article-list .-title {
		font-size:1.5rem;
		margin-bottom:1.5625vw;
	}
	.l-article-list .-text {
		font-size:1.125rem;
	}
	.l-article-list .p-button {
		margin-right:0;
	}
}
@media screen and (max-width: 767px) {
	.l-article-list>li {
		margin-bottom:10.6666666667vw;
	}
	.l-article-list .-image {
		border-radius:5.3333333333vw;
		margin-bottom:5.3333333333vw;
	}
	.l-article-list .-title {
		font-size:5.3333333333vw;
		margin-bottom:4vw;
	}
	.l-article-list .-text {
		font-size:4.2666666667vw;
	}
	.l-article-list .p-button {
		margin-right:0;
	}
}

.l-article-list-7 {
	display:grid;
}
.l-article-list-7 .-title {
	display:flex;
	flex-wrap:wrap;
	flex-wrap:nowrap;
	position:absolute;
}
.l-article-list-7 .-title>span {
	background-color:#fff;
	color:#db7f4d;
	display:inline-block;
	flex:1;
	font-weight:500;
	line-height:1;
	padding:.5em;
}
.l-article-list-7 .-title img {
	vertical-align:top;
}
.l-article-list-7 .-morebtn {
	position:absolute;
}
.l-article-list-7 .-morebtn .p-button {
	pointer-events:none;
}
.l-article-list-7 .-image {
	overflow:hidden;
	height:100%;
}
.l-article-list-7 .-image img {
	object-fit:cover;
	height:100%;
	width:100%;
}
.l-article-list-7>li {
	position:relative;
	overflow:hidden;
}
.l-article-list-7>li:first-of-type .-title img {
	width:100%;
}
.l-article-list-7>li:first-of-type .-image {
	height:100%;
}
@media print, screen and (min-width: 768px) {
	.l-article-list-7 {
		grid-template-columns:2fr 1fr 1fr;
		grid-template-rows:1fr 1fr 1fr;
		gap:1.2% 2.1%;
	}
	.l-article-list-7 .-title {
		font-size:.9375vw;
		top:1.0416666667vw;
		left:.78125vw;
	}
	.l-article-list-7 .-title img {
		margin-right:.1041666667vw;
		height:calc(.9375vw + 1em);
	}
	.l-article-list-7 .-morebtn {
		right:1.0416666667vw;
		bottom:.78125vw;
	}
	.l-article-list-7 .-morebtn .p-button {
		font-size:.6770833333vw;
		padding:.7em 1.5em;
	}
	.l-article-list-7 .-morebtn .p-button:after {
		margin-left:.5208333333vw;
		height:.5208333333vw;
		width:.9895833333vw;
	}
	.l-article-list-7 .-image {
		border-radius:1.5625vw;
	}
	.l-article-list-7>li>a {
		height:100%;
		transition:.5s ease;
	}
	.l-article-list-7>li>a:hover {
		opacity:.7;
	}
	.l-article-list-7>li:first-of-type {
		grid-row:1/4;
		height:40.625vw;
	}
	.l-article-list-7>li:first-of-type .-title {
		display:table;
		font-size:1.6666666667vw;
		top:1.1458333333vw;
		left:1.5625vw;
	}
	.l-article-list-7>li:first-of-type .-title>span {
		display:block;
		overflow:hidden;
		text-overflow:ellipsis;
		white-space:nowrap;
		writing-mode:vertical-rl;
		max-height:36.4583333333vw;
	}
	.l-article-list-7>li:first-of-type .-title img {
		margin-bottom:.2604166667vw;
		height:auto;
		width:calc(1.6666666667vw + 1em);
	}
	.l-article-list-7>li:first-of-type .-morebtn {
		right:1.8229166667vw;
		bottom:1.3020833333vw;
	}
	.l-article-list-7>li:first-of-type .-morebtn .p-button {
		font-size:1.0416666667vw;
	}
	.l-article-list-7>li:first-of-type .-morebtn .p-button:after {
		margin-left:12px;
		height:12px;
		width:25px;
	}
}
@media screen and (max-width: 767px) {
	.l-article-list-7 {
		display:flex;
		flex-wrap:wrap;
		justify-content:space-between;
		padding:0 5.3333333333vw;
	}
	.l-article-list-7 .-title {
		font-size:3.2vw;
		top:2.6666666667vw;
		left:2.6666666667vw;
	}
	.l-article-list-7 .-title img {
		margin-right:.5333333333vw;
		height:5.3333333333vw;
	}
	.l-article-list-7 .-morebtn {
		right:2.6666666667vw;
		bottom:2.1333333333vw;
	}
	.l-article-list-7 .-morebtn .p-button {
		font-size:2.6666666667vw;
		padding:.5em 1.5em;
	}
	.l-article-list-7 .-morebtn .p-button:after {
		margin-left:2.6666666667vw;
		vertical-align:middle;
		height:2.6666666667vw;
		width:5.0666666667vw;
	}
	.l-article-list-7 .-image {
		border-radius:5.3333333333vw;
		height:42.6666666667vw;
		width:43.7333333333vw;
	}
	.l-article-list-7>li {
		margin-bottom:4vw;
		height:42.6666666667vw;
		width:43.7333333333vw;
	}
	.l-article-list-7>li>a {
		height:100%;
	}
	.l-article-list-7>li:first-of-type {
		height:99.4666666667vw;
		width:89.3333333333vw;
	}
	.l-article-list-7>li:first-of-type .-title {
		font-size:5.3333333333vw;
		top:4vw;
		left:5.3333333333vw;
	}
	.l-article-list-7>li:first-of-type .-title img {
		height:calc(5.3333333333vw + 1em);
		width:auto;
	}
	.l-article-list-7>li:first-of-type .-morebtn {
		right:2.6666666667vw;
		bottom:2.6666666667vw;
	}
	.l-article-list-7>li:first-of-type .-morebtn .p-button {
		font-size:4.8vw;
		padding:2.6666666667vw 6.6666666667vw;
	}
	.l-article-list-7>li:first-of-type .-morebtn .p-button:after {
		margin-left:3.2vw;
		height:2.9333333333vw;
		width:6.1333333333vw;
	}
	.l-article-list-7>li:first-of-type .-image {
		height:99.4666666667vw;
		width:89.3333333333vw;
	}
}

.l-topicpath>ul {
	display:flex;
	flex-wrap:wrap;
}
.l-topicpath>ul>li {
	color:#db7f4d;
}
.l-topicpath>ul>li>a {
	color:#db7f4d;
}
.l-topicpath>ul>li:after {
	content:">";
	display:inline-block;
	margin:0 .5em;
}
.l-topicpath>ul>li:last-of-type {
	font-weight:500;
}
.l-topicpath>ul>li:last-of-type:after {
	display:none;
}
@media print, screen and (min-width: 768px) {
	.l-topicpath {
		margin-bottom:25px;
	}
	.l-topicpath>ul>li {
		font-size:1rem;
	}
	.l-topicpath>ul>li>a {
		transition:.5s ease;
	}
	.l-topicpath>ul>li>a:hover {
		opacity:.7;
	}
}
@media screen and (max-width: 767px) {
	.l-topicpath {
		margin-bottom:5.3333333333vw;
		padding:0 5.3333333333vw;
	}
}

.l-pagenation-list {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
}
.l-pagenation-list .-arrow {
	margin:0 1.2rem;
}
.l-pagenation-list .-arrow>a {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	background-color:#db7f4d;
	border-radius:50%;
	height:100%;
	width:100%;
}
.l-pagenation-list .-arrow._prev {
	transform:rotate(180deg);
}
.l-pagenation-list .-num {
	font-family:"Montserrat", sans-serif;
	color:#db7f4d;
	margin:0 .5rem;
}
.l-pagenation-list .-num>a {
	color:#db7f4d;
	padding:0 .3rem;
}
@media print, screen and (min-width: 768px) {
	.l-pagenation-list a {
		transition:.3s ease;
	}
	.l-pagenation-list a:hover {
		opacity:.7;
	}
	.l-pagenation-list .-arrow {
		height:45px;
		width:45px;
	}
	.l-pagenation-list .-arrow img {
		width:21px;
	}
	.l-pagenation-list .-num {
		font-size:1.25rem;
	}
	.l-pagenation-list .-num.is-cur {
		font-size:1.75rem;
	}
}
@media screen and (max-width: 767px) {
	.l-pagenation-list .-arrow {
		height:17.3333333333vw;
		width:17.3333333333vw;
	}
	.l-pagenation-list .-num {
		display:none;
		font-size:4.8vw;
	}
	.l-pagenation-list .-num.is-cur {
		display:block;
		font-size:6.4vw;
	}
	.l-pagenation-list .-num.is-cur+.-num {
		display:block;
	}
	.l-pagenation-list .-num:has(+ .is-cur) {
		display:block;
	}
}

.l-consult {
	border-color:#db7f4d;
	border-style:dotted;
}
.l-consult>h2 {
	color:#db7f4d;
	font-weight:900;
	line-height:1.5;
}
@media print, screen and (min-width: 768px) {
	.l-consult {
		border-width:5px;
		margin-top:80px;
		padding:30px 3.9%;
	}
	.l-consult>h2 {
		font-size:2.5rem;
		margin-bottom:30px;
	}
}
@media screen and (max-width: 767px) {
	.l-consult {
		border-width:1.3333333333vw;
		margin:13.3333333333vw 4vw 0;
		padding:6.6666666667vw 2.6666666667vw;
	}
	.l-consult>h2 {
		font-size:8.5333333333vw;
		margin-bottom:5.3333333333vw;
		text-align:center;
	}
}
@media print, screen and (min-width: 768px) {
	.l-consult-block {
		display:flex;
		flex-wrap:wrap;
		align-items:center;
		justify-content:space-between;
	}
	.l-consult-block .-button {
		width:30%;
		transition:.5s ease;
	}
	.l-consult-block .-button:hover {
		opacity:.7;
	}
}
@media screen and (max-width: 767px) {
	.l-consult-block .-button {
		display:table;
		margin:0 auto;
		width:74.6666666667vw;
	}
}
.l-consult-box {
	border-color:#db7f4d;
	border-style:solid;
}
.l-consult-box>dl>dt {
	color:#db7f4d;
	font-weight:700;
}
@media print, screen and (min-width: 768px) {
	.l-consult-box {
		display:flex;
		flex-wrap:wrap;
		align-items:center;
		justify-content:space-between;
		border-width:3px;
		border-radius:1.3020833333vw;
		padding:35px 2.5%;
		width:66%;
	}
	.l-consult-box .-image {
		width:42.4%;
	}
	.l-consult-box>dl {
		flex:1;
		margin-left:3.6%;
	}
	.l-consult-box>dl>dt {
		font-size:1.75rem;
		margin-bottom:.5208333333vw;
	}
}
@media screen and (max-width: 767px) {
	.l-consult-box {
		border-width:.8vw;
		border-radius:5.3333333333vw;
		margin-bottom:5.3333333333vw;
		padding:6.6666666667vw 2.6666666667vw;
	}
	.l-consult-box .-image {
		margin:0 auto 5.3333333333vw;
		width:61.3333333333vw;
	}
	.l-consult-box>dl>dt {
		font-size:5.3333333333vw;
		margin-bottom:2.6666666667vw;
	}
}

/* ==========================
	project style
============================= */
@media print, screen and (min-width: 768px) {
	.p-title {
		margin-bottom:3.125vw;
	}
}
@media screen and (max-width: 767px) {
	.p-title {
		margin-bottom:8vw;
	}
}
.p-title._wave {
	background-image:url(../img/common/line_wave.svg);
	text-align:center;
}
.p-title._wave>span {
	font-family:"Montserrat", sans-serif;
	background-color:#fffcfa;
	color:#db7f4d;
	display:inline-block;
	font-weight:600;
	line-height:2;
	padding:0 .5em;
}
@media print, screen and (min-width: 768px) {
	.p-title._wave {
		background-size:16.3541666667vw 3.8020833333vw;
		font-size:2rem;
		height:3.8020833333vw;
		animation:wavePc 8s infinite linear;
	}
}
@media screen and (min-width: 768px) and (max-width: 1024px) {
	.p-title._wave {
		line-height:1;
	}
	.p-title._wave>span {
		line-height:1.4;
	}
}
@media screen and (max-width: 767px) {
	.p-title._wave {
		background-size:52.8vw 12.2666666667vw;
		font-size:6.4vw;
		height:12.2666666667vw;
		animation:waveSp 6s infinite linear;
	}
}
.p-title._orange {
	display:flex;
	flex-wrap:wrap;
	align-items:center;
	justify-content:center;
	background-image:url(../img/common/bg_title_orange.svg);
	background-size:100% 100%;
	color:#fff;
	font-weight:500;
	line-height:1.2;
	text-align:center;
}
.p-title._orange>span {
	display:inline-block;
	line-height:1.2;
	margin-left:.5em;
	padding-top:.2em;
}
@media print, screen and (min-width: 768px) {
	.p-title._orange {
		font-size:2rem;
		height:61px;
	}
	.p-title._orange>span {
		font-size:1.25rem;
	}
}
@media screen and (max-width: 767px) {
	.p-title._orange {
		font-size:7.4666666667vw;
		height:16vw;
	}
	.p-title._orange>span {
		font-size:4.8vw;
	}
}

@keyframes wavePc {
	0% {
		background-position:0 0;
	}
	100% {
		background-position:16.3541666667vw 0;
	}
}
@keyframes waveSp {
	0% {
		background-position:0 0;
	}
	100% {
		background-position:52.8vw 0;
	}
}
.p-button {
	font-family:"Montserrat", sans-serif;
	background-color:#db7f4d;
	color:#fff;
	display:table;
	line-height:1.2;
}
.p-button:after {
	background-image:url(../img/common/arrow_01.svg);
	background-repeat:no-repeat;
	background-size:cover;
	content:"";
	display:inline-block;
}
.p-button._white {
	background:transparent;
	border-color:#db7f4d;
	border-style:solid;
	color:#db7f4d;
}
.p-button._white:after {
	background-image:url(../img/common/arrow_02.svg);
}
@media print, screen and (min-width: 768px) {
	.p-button {
		border-radius:25px;
		font-size:1.25rem;
		margin:40px auto 0;
		padding:12px 25px;
		transition:.5s ease;
	}
	.p-button:hover {
		opacity:.7;
	}
	.p-button:after {
		margin-left:12px;
		height:12px;
		width:25px;
	}
	.p-button._sm {
		font-size:1.125rem;
	}
	.p-button._white {
		border-width:2px;
	}
}
@media screen and (max-width: 767px) {
	.p-button {
		border-radius:6.6666666667vw;
		font-size:4.8vw;
		margin:8vw auto 0;
		padding:2.6666666667vw 6.6666666667vw;
	}
	.p-button:after {
		margin-left:3.2vw;
		height:2.9333333333vw;
		width:6.1333333333vw;
	}
	.p-button._white {
		border-width:.5333333333vw;
	}
}
