@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Oswald:wght@200..700&family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&family=Zen+Old+Mincho:wght@400;500;600;700;900&display=swap");
html {
	font-size: 0.0909090909vw;
	font-family: "Zen Old Mincho", serif;
	font-weight: 400;
	font-style: normal;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	opacity: 0;
}

dl dd {
	-webkit-margin-start: 0rem;
	margin-inline-start: 0rem;
}

select {
	/* 初期化 */
	appearance: none;
	-moz-appearance: none;
	-webkit-appearance: none;
	background: none;
	border: none;
	color: #333;
	font-size: 16px;
	width: 100%;
	height: 100%;
	padding: 0 10px;
}

a {
	transition-duration: 0.3s;
}

a:hover {
	opacity: 0.6;
}

@media screen and (min-width: 1100px) {
	html {
		font-size: 1px;
	}
}
@media screen and (max-width: 860px) {
	html {
		font-size: 0.14765vw;
	}
}
dl {
	margin: 0px;
}
dl dt {
	margin: 0px;
}
dl dd {
	margin: 0px;
}

ul,
ol {
	padding: 0px;
	margin: 0px;
}
ul li,
ol li {
	list-style-type: none;
}

body {
	margin: 0px;
	font-size: 16rem;
}
@media screen and (max-width: 860px) {
	body {
		font-size: 24rem;
		line-height: 42rem;
	}
}

figure {
	margin: 0px;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	padding: 0px;
	margin: 0px;
	font-weight: 200;
}

p {
	margin: 0px;
}

a {
	text-decoration: none;
	color: #000;
}
a:hover {
	opacity: 0.6;
}

.p-flex {
	display: flex;
	justify-content: space-between;
}
.p-flex.--align-center {
	align-items: center;
}
.p-flex.--text-right {
	justify-content: flex-end;
}
.p-flex.--text-left {
	justify-content: left;
}
.p-flex.--text-center {
	justify-content: center;
}
.p-flex.--align-bottom {
	align-items: flex-end;
}
.p-flex.--wrap {
	flex-wrap: wrap;
}
.p-flex.--justify-center {
	justify-content: center;
}
.p-flex.--justify-between {
	justify-content: space-between !important;
}
.p-flex.--align-top {
	align-items: flex-start;
}
.p-flex li:last-child .c-text-link_1 {
	margin-right: 0px;
}
.p-flex.--column-2 li,
.p-flex.--column-2 article {
	width: 535rem;
}
@media screen and (max-width: 860px) {
	.p-flex.--column-2 li,
	.p-flex.--column-2 article {
		width: 100%;
	}
}
.p-flex.--column-2 li figure,
.p-flex.--column-2 article figure {
	width: 100%;
}
.p-flex.--column-2 li figure img,
.p-flex.--column-2 article figure img {
	width: 100%;
}
.p-flex.--column-3 {
	justify-content: start;
}
.p-flex.--column-3 article {
	width: 340rem;
	margin-right: 1dvw;
}
.p-flex.--column-3 {
	margin-right: 0rem;
}
@media screen and (max-width: 860px) {
	.p-flex.--column-3 article {
		width: 100%;
	}
}
.p-flex.--column-3 article figure {
	width: 100%;
}
.p-flex.--column-3 article figure img {
	width: 100%;
}
.p-flex.--column-3_l article,
.p-flex.--column-3_l li {
	width: 353rem;
}
@media screen and (max-width: 860px) {
	.p-flex.--column-3_l article,
	.p-flex.--column-3_l li {
		width: 100%;
	}
}
.p-flex.--column-3_l article figure,
.p-flex.--column-3_l li figure {
	width: 100%;
}
.p-flex.--column-3_l article figure img,
.p-flex.--column-3_l li figure img {
	width: 100%;
}
.p-flex.--column-4 li,
.p-flex.--column-4 table,
.p-flex.--column-4 article {
	width: 260rem;
	margin-right: 20rem;
	margin-bottom: 20rem;
}
.p-flex.--column-4 li:nth-child(4n),
.p-flex.--column-4 table:nth-child(4n),
.p-flex.--column-4 article:nth-child(4n) {
	margin-right: 0rem;
}
.p-flex.--column-4 li img,
.p-flex.--column-4 table img,
.p-flex.--column-4 article img {
	width: 100%;
}
.p-flex.--column-4 li figure,
.p-flex.--column-4 table figure,
.p-flex.--column-4 article figure {
	width: 100%;
}
.p-flex.--column-4 li figure img,
.p-flex.--column-4 table figure img,
.p-flex.--column-4 article figure img {
	width: 100%;
}
.p-flex.--column-4.--no-padding table {
	width: 265rem;
	margin-right: 10rem;
	margin-bottom: 0rem;
}
@media screen and (max-width: 860px) {
	.p-flex {
		display: block;
	}
	.p-flex.--flex-sp {
		display: flex;
		justify-content: left;
	}
	.p-flex.--flex-sp.--flex-sp-space_between {
		justify-content: space-between;
	}
}
.p-flex.--text-center {
	text-align: center;
	justify-content: center;
	align-items: center;
}
@media screen and (max-width: 860px) {
	.p-flex.--text-center {
		text-align: center !important;
		justify-content: center !important;
		align-items: center !important;
	}
}
@media screen and (max-width: 860px) {
	.p-flex.--sp-column-2 li {
		width: 48% !important;
		margin-right: 0rem;
	}
}
.p-flex.--reverse {
	flex-direction: row-reverse;
}

.wpcf7-form span {
	display: block;
}
.wpcf7-form .p-flex p {
	display: flex;
	justify-content: space-between;
	width: 100% !important;
}
.wpcf7-form .p-flex p span {
	display: block;
	width: calc(50% - 5rem) !important;
}
.wpcf7-form .p-flex p input {
	width: 100% !important;
}
.wpcf7-form .p-flex.--align-center p {
	display: flex;
	align-items: center;
}

.p-center {
	max-width: 1100rem;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}
@media screen and (max-width: 860px) {
	.p-center {
		width: 90% !important;
	}
}

.p-center-s {
	max-width: 840rem;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}

.p-center-s2 {
	max-width: 980rem;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
}

img {
	max-width: 100%;
}

/*ここに書いてね*/
.p-header-main .--inner {
	padding: 20rem;
}

.p-header-copy {
	font-size: 14rem;
	line-height: 20rem;
	font-family: "Oswald", "Zen Kaku Gothic New", sans-serif;
}
@media screen and (max-width: 860px) {
	.p-header-copy {
		font-size: 20rem;
		line-height: 30rem;
	}
}

.p-gnav li {
	position: relative;
}
.p-gnav li a {
	display: block;
	padding-left: 15rem;
	padding-right: 15rem;
	padding-top: 30rem;
	padding-bottom: 30rem;
}
@media screen and (max-width: 860px) {
	.p-gnav li a {
		width: 100%;
		padding-left: 0rem;
	}
}
@media screen and (max-width: 860px) {
	.p-gnav li {
		width: 100%;
	}
}
.p-gnav li ul {
	position: absolute;
	z-index: 200;
	background: #fff;
	min-width: 200rem;
	box-sizing: border-box;
	display: none;
}
.p-gnav li ul li {
	min-width: 200rem;
	box-sizing: border-box;
}
.p-gnav li ul li a {
	display: block;
	width: 100%;
	padding: 10rem;
	box-sizing: border-box;
	border-top: 1px solid #f0f0f0;
	white-space: nowrap;
}
@media screen and (min-width: 860px) {
	.p-gnav li:hover ul {
		display: block;
	}
}
@media screen and (max-width: 860px) {
	.p-gnav {
		display: none;
		position: fixed;
		top: 0rem;
		width: 100%;
		z-index: 200;
		background: #fff;
		height: 100%;
	}
}
.p-gnav.panelactive {
	display: flex !important;
	justify-content: center !important;
	align-items: center !important;
	align-content: center !important;
	text-align: center !important;
	flex-wrap: wrap !important;
}

.p-header-sub-1 {
	font-family: "Zen Kaku Gothic New", sans-serif;
}
.p-header-sub-1 p {
	font-size: 12rem;
	letter-spacing: 4rem;
	padding-bottom: 10rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (max-width: 860px) {
	.p-header-sub-1 p {
		font-size: 20rem;
		padding-bottom: 20rem;
	}
}
.p-header-sub-1 h2 {
	font-family: "Zen Old Mincho", serif;
	font-size: 28rem;
	line-height: 38rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-1 h2 {
		font-size: 38rem;
		line-height: 48rem;
	}
}
.p-header-sub-1 h2:after {
	content: "";
	width: 92rem;
	border-bottom: 2rem solid #11589d;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 15rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-1 h2:after {
		margin-top: 25rem;
	}
}
.p-header-sub-1.--no-border h2:after {
	display: none;
}
.p-header-sub-1.--wrapper-border-gray-1:after {
	content: "";
	width: 270rem;
	border-bottom: 1rem solid #d1d1d1;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-top: 30rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-1.--wrapper-border-gray-1:after {
		margin-top: 25rem;
	}
}
.p-header-sub-1.--sub-2 h2 {
	font-size: 32rem;
	line-height: 46rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-1.--sub-2 h2 {
		font-size: 38rem;
		line-height: 48rem;
	}
}
.p-header-sub-1.--sub-2 p {
	font-size: 12rem;
	line-height: 24rem;
	letter-spacing: 0rem;
	letter-spacing: 4rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-1.--sub-2 p {
		font-size: 24rem;
		line-height: 38rem;
	}
}

@media screen and (max-width: 860px) {
	.p-banner-list-1 {
		width: 100% !important;
	}
}
.p-banner-list-1 li {
	max-width: 240rem;
	padding: 10rem;
}
@media screen and (max-width: 860px) {
	.p-banner-list-1 li {
		max-width: calc(50% - 20rem);
		width: calc(50% - 20rem);
	}
}

.p-header-sub-2:after {
	content: "";
	display: block;
	width: 92rem;
	border-bottom: 3rem #fff solid;
	margin-top: 20rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-2:after {
		margin-top: 40rem;
	}
}
.p-header-sub-2 h3 {
	font-size: 28rem;
	line-height: 36rem;
	padding-bottom: 5rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-2 h3 {
		font-size: 38rem;
	}
}
.p-header-sub-2 p {
	font-size: 12rem;
	line-height: 20rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
	padding-bottom: 10rem;
	letter-spacing: 4rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-2 p {
		font-size: 20rem;
		line-height: 30rem;
		padding-bottom: 10rem;
	}
}
@media screen and (max-width: 860px) {
	.p-header-sub-2.u-pb-20 {
		padding-bottom: 40rem;
	}
}

.p-text-base {
	font-size: 14rem;
	line-height: 28rem;
	font-family: "Oswald", "Zen Kaku Gothic New", sans-serif;
}
@media screen and (max-width: 860px) {
	.p-text-base {
		font-size: 24rem;
		line-height: 38rem;
	}
}

.p-box-1 {
	position: relative;
	width: 100%;
	padding-top: 80rem;
	padding-bottom: 80rem;
}
.p-box-1:before {
	position: absolute;
	right: 0rem;
	content: "";
	display: block;
	background: #1c68b2;
	color: #fff;
	width: calc(100% - 200rem);
	height: 100%;
	box-sizing: border-box;
}
@media screen and (max-width: 860px) {
	.p-box-1:before {
		width: 100%;
	}
}
.p-box-1 .--contents {
	position: relative;
	z-index: 100;
	color: #fff;
	margin-right: calc((100% - 1100rem) / 2);
	width: calc(100% - 698rem - 80rem - (100% - 1100rem) / 2);
}
@media screen and (max-width: 860px) {
	.p-box-1 .--contents {
		width: 90%;
		margin-left: auto;
		margin-right: auto;
	}
}
.p-box-1:after {
	position: absolute;
	right: 0rem;
	content: "";
	display: block;
	width: calc(100% - 200rem);
	height: 100%;
	box-sizing: border-box;
	background: url(../img/common/bg_concept.webp);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top left;
}
@media screen and (max-width: 860px) {
	.p-box-1:after {
		width: 100%;
		top: 510rem;
	}
}
.p-box-1 figure {
	position: relative;
	z-index: 100;
	margin-right: 80rem;
	width: 698rem;
}
@media screen and (max-width: 860px) {
	.p-box-1 figure {
		width: 100%;
		margin-bottom: 60rem;
	}
}
.p-box-1 figure img {
	width: 100%;
}
@media screen and (max-width: 860px) {
	.p-box-1 {
		padding-top: 0rem;
	}
}

.p-mv-1 {
	background: url(../img/common/mv.webp);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
	position: relative;
	height: auto;
}
.p-mv-1:after {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	background: #000;
	top: 0rem;
	left: 0rem;
	opacity: 0.3;
}
.p-mv-1 .--inner {
	position: relative;
	z-index: 100;
}
.p-mv-1 .--inner .--box {
	color: #fff;
}

@media (max-width: 768px) {
	.p-mv-1.is-offset-right {
		background-position: calc(50% + -150px) center !important;
	}
}

p {
	opacity: 0;
}

figure img {
	opacity: 0;
}

@media screen and (max-width: 860px) {
	.p-table-wrapper.--sp-scroll {
		overflow-x: auto;
	}
	.p-table-wrapper.--sp-scroll table tr th,
	.p-table-wrapper.--sp-scroll table tr td {
		min-width: 200rem;
	}
}

.p-box-2 {
	position: relative;
	width: 100%;
	padding-top: 80rem;
	padding-bottom: 80rem;
	background: #1c68b2;
	color: #fff;
	height: 1100rem;
}
.p-box-2.--heihgt-auto {
	height: auto;
}
.p-box-2.--bg-white {
	background: #fff;
}
.p-box-2.--bg-gray {
	background: #ededed;
}
.p-box-2:before {
	position: absolute;
	left: 0rem;
	top: 0rem;
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	background: url(../img/common/bg_service_1.webp);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: top left;
}
.p-box-2 * {
	position: relative;
	z-index: 100;
}
.p-box-2.--normal {
	height: auto;
}
@media screen and (max-width: 860px) {
	.p-box-2 {
		height: auto;
	}
}
@media screen and (max-width: 860px) {
	.p-box-2 .p-header-sub-3 {
		width: 90%;
	}
}
.p-box-2.--height-first {
	height: 650rem;
}
@media screen and (max-width: 860px) {
	.p-box-2.--height-first {
		height: auto;
	}
}

.p-tab-1 li {
	width: calc(50% - 10rem);
}
.p-tab-1 li span {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-weight: bold;
	border: 1px solid #fff;
	display: block;
	width: 100%;
	text-align: center;
	display: flex;
	justify-content: center;
	height: 61rem;
	align-items: center;
	padding: 10rem;
	box-sizing: border-box;
}
.p-tab-1 li span:hover {
	background-color: #fff;
	color: #1c68b2;
}
@media screen and (max-width: 860px) {
	.p-tab-1 li span {
		font-size: 24rem;
		line-height: 34rem;
	}
}
.p-tab-1 li.over span {
	background-color: #fff;
	color: #1c68b2;
}

.p-article-1 {
	filter: drop-shadow(0px 10px 20px rgba(0, 0, 0, 0.06));
}
.p-article-1 figure {
	width: 312rem;
	font-size: 0rem;
	line-height: 0rem;
}
@media screen and (max-width: 860px) {
	.p-article-1 figure {
		width: 100%;
		height: 400rem;
	}
}
.p-article-1 figure img {
	width: 312rem;
	-o-object-fit: cover;
	object-fit: cover;
	height: 100%;
}
@media screen and (max-width: 860px) {
	.p-article-1 figure img {
		width: 100%;
	}
}
.p-article-1 .--contents {
	width: calc(100% - 312rem);
	background: #fff;
	color: #000;
	padding: 50rem 60rem 50rem 60rem;
	box-sizing: border-box;
}
@media screen and (max-width: 860px) {
	.p-article-1 .--contents {
		width: 100%;
		padding: 40rem 40rem 40rem 40rem;
	}
}
.p-article-1 .--contents .u-pt-20 {
	padding-top: 40rem;
}
.p-article-1 h3 {
	font-size: 28rem;
	line-height: 36rem;
	padding-bottom: 20rem;
}
@media screen and (max-width: 860px) {
	.p-article-1 h3 {
		font-size: 38rem;
		line-height: 48rem;
		padding-bottom: 40rem;
	}
}
.p-article-1 p {
	font-size: 14rem;
	line-height: 24rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (max-width: 860px) {
	.p-article-1 p {
		font-size: 24rem;
		line-height: 38rem;
	}
}
.p-article-1 .c-btn-1.--small {
	width: 100%;
}

.p-article-2 {
	width: 346rem;
	padding-bottom: 40rem;
}
.p-article-2 figure {
	width: 346rem;
	height: 346rem;
	margin-bottom: 20rem;
	font-size: 0rem;
	line-height: 0rem;
}
@media screen and (max-width: 860px) {
	.p-article-2 figure {
		width: 100%;
		height: 350rem;
	}
}
.p-article-2 figure img {
	width: 346rem;
	height: 346rem;
	-o-object-position: center center;
	object-position: center center;
	-o-object-fit: cover;
	object-fit: cover;
}
@media screen and (max-width: 860px) {
	.p-article-2 figure img {
		width: 100%;
		height: 350rem;
	}
}
.p-article-2 .--contents p {
	font-size: 18rem;
	line-height: 30rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
/* PCサイズで3列にする（861px以上） */
@media screen and (min-width: 861px) {
	.p-flex.--column-3 .p-article-2 {
		width: 32%; /* 3列になるようにパーセンテージ指定 */
		padding-bottom: 40rem;
		margin-right: 2%;
	}
	.p-flex.--column-3 .p-article-2:nth-child(3n) {
		margin-right: 0;
	}

	.p-flex.--column-3 .p-article-2 figure {
		width: 100%;
		height: auto; /* 必要に応じて固定にしてもOK */
		margin-bottom: 20rem;
		font-size: 0;
		line-height: 0;
	}

	.p-flex.--column-3 .p-article-2 figure img {
		width: 100%;
		height: auto;
		object-fit: cover;
		object-position: center center;
	}
}
@media screen and (max-width: 860px) {
	.p-article-2 .--contents p {
		font-size: 24rem;
		line-height: 38rem;
	}
}
@media screen and (max-width: 860px) {
	.p-article-2 {
		width: 48%;
		padding-bottom: 40rem;
	}
	.p-article-2.--sp-full-width {
		width: 100%;
		padding-bottom: 40rem;
	}
	.p-article-2.--sp-full-width figure {
		height: 300rem;
	}
	.p-article-2.--sp-full-width figure img {
		height: 300rem;
	}
}
.p-article-2.swiper-slide {
	width: auto;
}

.p-header-sub-3 p {
	font-size: 12rem;
	line-height: 28rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
	letter-spacing: 4rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-3 p {
		font-size: 20rem;
		line-height: 30rem;
	}
}
.p-header-sub-3 h2 {
	font-size: 28rem;
	line-height: 38rem;
}
@media screen and (max-width: 860px) {
	.p-header-sub-3 h2 {
		font-size: 38rem;
		line-height: 48rem;
	}
}
@media screen and (max-width: 860px) {
	.p-header-sub-3 {
		width: 100%;
	}
	.p-header-sub-3 .p-flex {
		width: 100%;
	}
}

.p-list-text-box li {
	width: calc(50% - 40rem);
	padding-bottom: 60rem;
	box-sizing: border-box;
}
@media screen and (max-width: 860px) {
	.p-list-text-box li {
		width: 100%;
	}
}

.p-article-3 dt {
	font-size: 18rem;
	line-height: 28rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (max-width: 860px) {
	.p-article-3 dt {
		font-size: 38rem;
		line-height: 48rem;
	}
}
.p-article-3 dt:after {
	content: "";
	display: block;
	width: 30%;
	height: 2rem;
	background: #11589d;
	margin-top: 10rem;
	margin-bottom: 20rem;
}
@media screen and (max-width: 860px) {
	.p-article-3 dt:after {
		margin-top: 20rem;
		margin-bottom: 40rem;
	}
}
.p-article-3 dd {
	font-size: 14rem;
	line-height: 28rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (max-width: 860px) {
	.p-article-3 dd {
		font-size: 24rem;
		line-height: 38rem;
	}
}

.p-list-sns-footer li {
	margin-left: 20rem;
}
.p-list-sns-footer li:fist-child {
	margin-left: 0rem;
}

.p-list-news li {
	font-family: "Zen Kaku Gothic New", sans-serif;
	border-bottom: 1px solid #fff;
	padding-bottom: 10rem;
	margin-bottom: 20rem;
	font-size: 14rem;
	line-height: 26rem;
}
@media screen and (max-width: 860px) {
	.p-list-news li {
		font-size: 24rem;
		line-height: 38rem;
		margin-bottom: 40rem;
	}
}
.p-list-news li dl dt {
	margin-right: 20rem;
}
@media screen and (max-width: 860px) {
	.p-list-news li dl dt {
		margin-right: 0rem;
		margin-bottom: 10rem;
	}
}
.p-list-news li dl dd a {
	color: #fff;
}
@media screen and (max-width: 860px) {
	.p-list-news li dl dd {
		margin-bottom: 10rem;
	}
}

.p-nav-footer {
	width: 700rem;
	padding-top: 80rem;
	padding-bottom: 80rem;
}
.p-nav-footer li a {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 14rem;
	line-height: 26rem;
	color: #fff;
	margin-right: 40rem;
	padding-bottom: 10rem;
	display: block;
}
@media screen and (max-width: 860px) {
	.p-nav-footer li a {
		font-size: 24rem;
		line-height: 38rem;
		padding-bottom: 20rem;
	}
}
@media screen and (max-width: 860px) {
	.p-nav-footer {
		width: 100%;
		padding-bottom: 40rem;
	}
}

.p-copy {
	font-size: 12rem;
	line-height: 20rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (max-width: 860px) {
	.p-copy {
		font-size: 20rem;
		line-height: 30rem;
		padding-bottom: 60rem;
	}
}

.p-content-1 {
	padding-top: 90rem;
	padding-bottom: 90rem;
	position: relative;
}
.p-content-1:before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0rem;
	left: 0rem;
	/*backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);*/
	backdrop-filter: grayscale(50%);
	-webkit-backdrop-filter: grayscale(50%);
	background-color: rgba(0, 0, 0, 0.4);
}
.p-content-1 .--box {
	display: block;
	background: #11589d;
	width: 600rem;
	box-sizing: border-box;
	padding: 60rem;
	color: #fff;
	z-index: 100;
}
@media screen and (max-width: 860px) {
	.p-content-1 .--box {
		width: 100%;
	}
}
.p-content-1 .--box h3 {
	font-size: 32rem;
	line-height: 52rem;
	padding-bottom: 20rem;
}
@media screen and (max-width: 860px) {
	.p-content-1 .--box h3 {
		padding-bottom: 40rem;
	}
}
.p-content-1 .--box p {
	font-size: 14rem;
	line-height: 28rem;
}
@media screen and (max-width: 860px) {
	.p-content-1 .--box p {
		font-size: 24rem;
		line-height: 42rem;
	}
}

.u-bg-1 {
	background: url(../img/common/bg_img_content_1.png);
	background-repeat: no-repeat;
	background-size: cover;
}

.u-bg-2 {
	background: url(../img/common/bg_img_content_2.png);
	background-repeat: no-repeat;
	background-size: cover;
}

.u-bg-3 {
	background: url(../img/common/bg_img_content_3.png);
	background-repeat: no-repeat;
	background-size: cover;
}

.c-btn-5 svg {
	margin-right: 10rem;
}

.c-btn-6 {
	font-family: "Zen Kaku Gothic New", sans-serif;
	display: block;
	background: #11589d;
	color: #fff;
	border: none;
	padding: 10rem 30rem;
	border-radius: 60rem;
	width: 90%;
	max-width: 400rem;
	font-size: 16rem;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	box-sizing: border-box;
	cursor: pointer;
}
@media screen and (max-width: 860px) {
	.c-btn-6 {
		font-size: 24rem;
		line-height: 38rem;
	}
}
.c-btn-6.--left {
	margin-left: 0;
	margin-right: 0;
}
.c-btn-6.--size-l {
	max-width: 1000rem;
}

.u-width-full {
	width: 100%;
}

.c-logo-header {
	width: 133rem;
	margin-right: 20rem;
}
@media screen and (max-width: 860px) {
	.c-logo-header {
		width: 180rem;
	}
}

.c-btn-1 {
	background: #11589d;
	color: #fff;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 14rem;
	font-family: "Oswald", "Zen Kaku Gothic New", sans-serif !important;
	line-height: 20rem;
	padding: 0 10rem;
	box-sizing: border-box;
	cursor: pointer;
}
.c-btn-1:hover {
	opacity: 0.8;
}
.c-btn-1 img {
	margin-right: 10rem;
}
.c-btn-1.--small {
	width: 250rem;
	height: 52rem;
	font-size: 14rem;
}
.c-btn-1.--normal {
	width: 375rem;
	height: 52rem;
	font-size: 14rem;
}
.c-btn-1.--center {
	margin-left: auto;
	margin-right: auto;
}
.c-btn-1.--arrow:before {
	content: "";
	display: block;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	width: 6rem;
	height: 6rem;
	transform: rotate(-45deg);
	margin-right: 10rem;
	box-sizing: border-box;
	margin-bottom: -2rem;
}
.c-btn-1.--white {
	background: #fff;
	color: #000;
}
.c-btn-1.--white:before {
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
}
.c-btn-1.--deep-blue {
	background: #11589d !important;
}
@media screen and (max-width: 860px) {
	.c-btn-1 {
		font-size: 24rem !important;
		line-height: 34rem !important;
		padding: 20rem 20rem !important;
		height: auto !important;
	}
}

.c-icon-new {
	display: inline-block;
	background: #fff;
	color: #11589d;
	padding: 0rem 20rem;
	border-radius: 5rem;
	margin-left: 10rem;
	font-weight: bold;
}

.c-btn-2 {
	border: 1px solid #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 18rem;
	background-color: rgba(255, 255, 255, 0.3);
	color: #fff;
	padding-top: 25rem;
	padding-bottom: 25rem;
	box-sizing: border-box;
	font-family: "Oswald", "Zen Kaku Gothic New", sans-serif;
	font-weight: bold;
	width: 310rem;
	cursor: pointer;
}
.c-btn-2:before {
	content: "";
	display: block;
	border-right: 1px solid #fff;
	border-bottom: 1px solid #fff;
	width: 8rem;
	height: 8rem;
	transform: rotate(-45deg);
	margin-right: 10rem;
	box-sizing: border-box;
}
@media screen and (max-width: 860px) {
	.c-btn-2 {
		font-size: 24rem;
		line-height: 34rem;
	}
}

.c-header-tell .--number {
	font-size: 30rem;
	line-height: 30rem;
	font-family: "Oswald", sans-serif;
	padding-bottom: 5rem;
}
.c-header-tell .--number img {
	margin-right: 10rem;
}
.c-header-tell .--time {
	text-align: right;
	width: 100%;
	font-family: "Oswald", "Zen Kaku Gothic New", sans-serif;
	font-size: 12rem;
	line-height: 12rem;
}
@media screen and (max-width: 860px) {
	.c-header-tell {
		display: none;
	}
}

.u-mb-30 {
	margin-bottom: 30rem;
}

.c-btn-3 {
	display: block;
	cursor: pointer;
}
.c-btn-3:before {
	content: "";
	display: inline-block;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	width: 8rem;
	height: 8rem;
	transform: rotate(-45deg);
	margin-right: 10rem;
	box-sizing: border-box;
}

.c-btn-4 {
	border: 1px solid #fff;
	width: 200rem;
	height: 150rem;
	display: flex;
	justify-content: center;
	align-items: center;
	color: #fff;
	font-size: 18rem;
	box-sizing: border-box;
	text-align: center;
	cursor: pointer;
}
.c-btn-4 span {
	display: block;
	width: 100%;
	padding-right: 15rem;
	padding-left: 15rem;
	box-sizing: border-box;
}
.c-btn-4 img {
	width: auto !important;
	margin-right: 10rem;
	max-width: 13rem;
}
@media screen and (max-width: 860px) {
	.c-btn-4 img {
		max-width: 20rem;
	}
}
@media screen and (max-width: 860px) {
	.c-btn-4 {
		font-size: 24rem;
		line-height: 34rem;
		width: 100%;
		margin-top: 40rem;
	}
}

/*ここまで書いてね*/
.u-pb-200 {
	padding-bottom: 200rem;
}

.u-mb-20 {
	margin-bottom: 20rem;
}

.u-bg-4 {
	background: url(../img/common/img_contact_2.png);
	background-size: cover;
}

.u-bg-4_2 {
	background: url(../img/common/img_contact_1.png);
	background-size: cover;
}

.u-bg-5 {
	background: url(../img/common/img_sample_8.png);
	background-size: cover;
}

.u-bg-6 {
	background: url(../img/common/img_sample_9.png);
	background-size: cover;
}

.u-bg-7 {
	background: url(../img/common/img_sample_10.png);
	background-size: cover;
}

.u-bg-8 {
	background: url(../img/common/img_sample_15.png);
	background-size: cover;
}

.u-bg-9 {
	background: url(../img/common/img_sample_16.png);
	background-size: cover;
}

.u-bg-10 {
	background: url(../img/common/img_sample_17.png);
	background-size: cover;
}

.u-bg-11 {
	background: url(../img/common/img_sample_18.png);
	background-size: cover;
}

.u-bg-12 {
	background: url(../img/common/img_sample_19.png);
	background-size: cover;
}

.u-bg-13 {
	background: url(../img/common/img_sample_21.png);
	background-size: cover;
}

.u-bg-14 {
	background: url(../img/common/img_sample_21.png);
	background-size: cover;
}

.u-bg-15 {
	background: url(../img/common/img_sample_22.png);
	background-size: cover;
}

.u-bg-16 {
	background: url(../img/common/img_sample_23.png);
	background-size: cover;
}

.u-bg-16_2 {
	background: url(../img/common/img_sample_22_2.png);
	background-size: cover;
}

.u-bg-17 {
	background: url(../img/common/img_sample_24.png);
	background-size: cover;
}

.u-pr-20 {
	padding-right: 20rem;
}

.u-bg-18 {
	background: url(../img/common/img_sample_26.png);
	background-size: cover;
}

.u-bg-19 {
	background: url(../img/common/img_sample_27.png);
	background-size: cover;
}

.u-bg-20 {
	background: url(../img/common/img_sample_28.png);
	background-size: cover;
}

.u-bg-21 {
	background: url(../img/common/img_sample_29.png);
	background-size: cover;
}

.u-bg-22 {
	background: url(../img/common/img_sample_30.png);
	background-size: cover;
}

.u-bg-gray-3 {
	background: #f6f6f6;
}

.u-bg-trgl-left {
	overflow: hidden;
	position: relative;
}
.u-bg-trgl-left:before {
	content: "";
	display: block;
	width: 100%;
	height: 130%;
	background: #f8f8f8;
	position: absolute;
	top: -10%;
	left: -60%;
	z-index: -1;
	transform: rotate(-45deg);
}
@media screen and (max-width: 860px) {
	.u-bg-trgl-left:before {
		left: -40%;
		top: -5%;
		width: 100%;
		height: 500rem;
	}
}
.u-bg-trgl-left.--white:before {
	background: #f6f6f6 !important;
	z-index: 1;
	top: -520rem;
}
@media screen and (max-width: 860px) {
	.u-bg-trgl-left.--white:before {
		top: -5%;
	}
}
.u-bg-trgl-left.--pure-white:before {
	background: #fff !important;
	z-index: 1;
	top: 0rem;
}
@media screen and (max-width: 860px) {
	.u-bg-trgl-left.--pure-white:before {
		top: -5%;
	}
}
.u-bg-trgl-left * {
	position: relative;
	z-index: 100;
}

.u-bg-img-3 {
	background: url(../img/common/bg_footer.webp);
	background-size: cover;
	background-repeat: no-repeat;
}

.p-sns-list {
	position: fixed;
	top: 150rem;
	right: 0rem;
	z-index: 200;
}
.p-sns-list li {
	padding: 15rem;
}
.p-sns-list li:first-child {
	background: #10448b;
}
.p-sns-list li:nth-child(2) {
	background: #135690;
}
.p-sns-list li:nth-child(3) {
	background: #1264a7;
}
.p-sns-list li:nth-child(4) {
	background: #237fc0;
}
@media screen and (max-width: 860px) {
	.p-sns-list {
		display: none;
	}
}

.u-p-20 {
	padding: 20rem;
}

.u-p-15 {
	padding: 15rem;
}

.u-ml-10 {
	margin-left: 10rem;
}

.u-bg-gray {
	background: #efefef;
}

.u-bg-gray-2 {
	background: #f8f8f8;
}

.u-pl-10 {
	padding-left: 10rem;
}

.u-ml-20 {
	margin-left: 20rem;
}

.u-pt-260 {
	padding-top: 260rem;
}

.u-pt-360 {
	padding-top: 360rem;
}

.u-n-mt-100 {
	margin-top: -100rem;
}

.u-n-mt-50 {
	margin-top: -50rem;
}
@media screen and (max-width: 860px) {
	.u-n-mt-50 {
		margin-top: -100rem;
	}
}

.u-sp-pb-20 {
	padding-bottom: 20rem;
}

@media screen and (max-width: 860px) {
	.u-sp-width-150 {
		width: 150rem;
	}
}

.u-mt-n-200 {
	margin-top: -200rem;
}

.u-pb-60 {
	padding-bottom: 60rem;
}

.u-pb-100 {
	padding-bottom: 100rem;
}

.u-pb-60 {
	padding-bottom: 60rem;
}

.u-mb-60 {
	margin-bottom: 60rem;
}

.u-pb-50 {
	padding-bottom: 50rem;
}

.u-pt-20 {
	padding-top: 20rem;
}

.u-pt-10 {
	padding-top: 10rem;
}

.u-pt-80 {
	padding-top: 80rem;
}

.u-no-border-bottom {
	border-bottom: none !important;
}

@media screen and (max-width: 860px) {
	.u-sp-pt-80 {
		padding-top: 80rem;
	}
}

.u-mt-80 {
	margin-top: 80rem;
}

.u-mt-150 {
	margin-top: 150rem;
}

.u-mt-100 {
	margin-top: 100rem;
}

.u-width-60 {
	width: 60rem;
}

.u-mt-200 {
	margin-top: 200rem;
}

.u-bg-lightred {
	background: #f6ebe8 !important;
}

.u-bg-lightblue {
	background: #d6e3f2 !important;
}

.u-pt-200 {
	padding-top: 200rem;
}

.u-position-relative {
	position: relative;
}

.u-top-n-50 {
	top: -50rem;
}

.u-mt-n-50 {
	margin-top: -50rem;
}

.u-p-60 {
	padding: 60rem;
}

.u-p-50 {
	padding: 50rem;
}

.u-pb-30 {
	padding-bottom: 30rem;
}

.u-pt-60 {
	padding-top: 60rem;
}

.u-pt-50 {
	padding-top: 50rem;
}

.u-text-center {
	text-align: center;
}

.u-text-right {
	text-align: right;
}

.u-pl-60 {
	padding-left: 60rem;
}
@media screen and (max-width: 860px) {
	.u-pl-60 {
		padding-left: 0rem;
	}
}

.u-posiiton-r {
	position: relative;
}

.u-width-half {
	width: 50%;
}

.u-width-half_s {
	width: 48%;
}

.u-pt-20 {
	padding-top: 20rem;
}

.u-pb-20 {
	padding-bottom: 20rem !important;
}

.u-pb-10 {
	padding-bottom: 10rem;
}

.u-mt-100 {
	margin-top: 100rem;
}

.u-position-absolute {
	position: absolute;
}

.u-z-100 {
	z-index: 100;
}

.u-mr-10 {
	margin-right: 10rem;
}

.u-mr-30 {
	margin-right: 30rem;
}

.u-pb-80 {
	padding-bottom: 80rem;
}

.u-font-size-16 {
	font-size: 16rem;
}
.u-font-size-16 p {
	font-size: 16rem !important;
	line-height: 32rem !important;
}
@media screen and (max-width: 860px) {
	.u-font-size-16 p {
		font-size: 24rem !important;
		line-height: 46rem !important;
	}
}

.u-mb-40 {
	margin-bottom: 40rem;
}

.u-text-box_1 {
	font-size: 14rem;
	line-height: 27rem;
}
@media screen and (max-width: 860px) {
	.u-text-box_1 {
		font-size: 24rem;
		line-height: 38rem;
	}
}

.u-p-30 {
	padding: 30rem;
}

.u-width-720 {
	width: 720rem;
}
@media screen and (max-width: 860px) {
	.u-width-720 {
		width: 100%;
	}
}

.u-pt-15 {
	padding-top: 15rem;
}

.u-border-b1gray {
	border-bottom: 1px solid #ededed;
}

.u-border-b2gray {
	border-bottom: 1px solid #c7c7c7;
}

.u-pt-40 {
	padding-top: 40rem;
}

.u-pt-30 {
	padding-top: 30rem;
}

.u-max-width-470 {
	max-width: 470rem;
}

.u-max-width-680 {
	max-width: 680rem;
}

.u-max-width-860 {
	max-width: 860rem;
}

.u-max-width-1400 {
	max-width: 1400rem;
}

.u-pb-120 {
	padding-bottom: 120rem;
}

.u-text-left {
	text-align: left;
}

.u-mt-n-80 {
	margin-top: -80rem;
}

.u-mt-n-140 {
	margin-top: -140rem;
}
@media screen and (max-width: 860px) {
	.u-mt-n-140.--sp-0 {
		margin-top: 0rem;
	}
}

.u-mt-n-90 {
	margin-top: -90rem;
}

.u-p-100 {
	padding: 100rem;
}
@media screen and (max-width: 860px) {
	.u-p-100.--sp-p-40 {
		padding: 40rem;
	}
}

.u-pb-180 {
	padding-bottom: 180rem;
}

.u-pr-40 {
	padding-right: 40rem;
}
.u-pr-40.--must {
	padding-right: 40rem !important;
}

.u-pr-60 {
	padding-right: 60rem;
}
.u-pr-60.--sp-0 {
	padding-right: 0rem;
}

.u-sp-pb-60 {
	padding-bottom: 60rem;
}

@media screen and (max-width: 860px) {
	.u-sp-pt-40 {
		padding-top: 40rem;
	}
}

.u-bg-white {
	background: #fff !important;
}

.u-bg-white-right_1:before {
	content: "";
	background: #fff;
	height: 430rem;
	display: block;
	border-radius: 10rem 0 0 10rem;
	position: absolute;
	top: 220rem;
	right: 0rem;
	width: calc(100% - (100% - 1100rem) / 2 + 80rem);
	opacity: 0.9;
	filter: drop-shadow(0px 10px 20px rgba(0, 0, 0, 0.06));
}
@media screen and (max-width: 860px) {
	.u-bg-white-right_1.--sp-none:before {
		display: none;
	}
}

.u-bg-none {
	background: none;
}

.u-mt-n-60 {
	margin-top: -60rem;
}

.u-pt-160 {
	padding-top: 160rem;
}

.u-pt-100 {
	padding-top: 100rem;
}

.u-width-500 {
	width: 500rem;
}

.u-bg-pink_1 {
	position: relative;
}
.u-bg-pink_1:before {
	content: "";
	display: block;
	width: 100%;
	height: 430rem;
	background: url(../img/common/img_salon_2.png);
	position: absolute;
	bottom: 0rem;
	left: 0rem;
}

.u-bg-img_1 {
	position: relative;
}
.u-bg-img_1:before {
	content: "";
	display: block;
	width: 100%;
	height: 430rem;
	background: url(../img/common/img_faq.png);
	position: absolute;
	top: 0rem;
	left: 0rem;
}

.u-bg-img-2 {
	background: url(../img/common/img_resister.png);
	background-size: cover;
	background-repeat: no-repeat;
}

.u-bg-blue {
	background: #0e4e8b;
	color: #fff;
}

.u-w-size-l {
	min-width: 60rem;
	white-space: nowrap;
}

.u-sp-only {
	display: none;
}
@media screen and (max-width: 860px) {
	.u-sp-only {
		display: block;
	}
}

.u-pc-only-flex {
	display: flex;
}
@media screen and (max-width: 860px) {
	.u-pc-only-flex {
		display: none;
	}
}

.u-pc-only-block {
	display: block;
}
@media screen and (max-width: 860px) {
	.u-pc-only-block {
		display: none;
	}
}

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

@media screen and (max-width: 860px) {
	.u-sp-pb-0 {
		padding-bottom: 0rem !important;
	}
}

@media screen and (max-width: 860px) {
	.u-sp-pt-30 {
		padding-top: 30rem;
	}
}

@media screen and (max-width: 860px) {
	.u-sp-pb-20 {
		padding-bottom: 20rem;
	}
}

@media screen and (max-width: 860px) {
	.u-sp-pb-40 {
		padding-bottom: 40rem;
	}
}

@media screen and (max-width: 860px) {
	.p-sp-nav-list {
		position: fixed;
		top: 0rem;
		left: 0rem;
		background-color: rgb(255, 255, 255);
		width: 100%;
		height: 100%;
	}
	.p-sp-nav-list ul {
		width: 100%;
	}
	.p-sp-nav-list ul li {
		font-size: 24rem;
		line-height: 38rem;
		padding-bottom: 40rem;
	}
	.p-sp-nav-list a {
		margin-top: 20rem;
		width: 50% !important;
	}
}

.u-z-300 {
	z-index: 300;
}

.u-pb-255 {
	padding-bottom: 255rem;
}

/*option*/
/*==================================================
　5-2-1 3本線が×に
===================================*/
/*ボタン外側※レイアウトによってpositionや形状は適宜変更してください*/
.openbtn1 {
	position: relative; /*ボタン内側の基点となるためrelativeを指定*/
	background: #fff;
	cursor: pointer;
	width: 80rem;
	height: 80rem;
	z-index: 500;
	display: none;
}
@media screen and (max-width: 860px) {
	.openbtn1 {
		position: fixed;
		display: block;
		top: 0rem;
		right: 0rem;
		width: 105rem;
		height: 105rem;
	}
}

/*ボタン内側*/
.openbtn1 span {
	display: inline-block;
	transition: all 0.4s; /*アニメーションの設定*/
	position: absolute;
	left: 27.5%;
	height: 3px;
	border-radius: 2px;
	background: #000;
	width: 45%;
}

.openbtn1 span:nth-of-type(1) {
	top: 32.5%;
}

.openbtn1 span:nth-of-type(2) {
	top: 50%;
}

.openbtn1 span:nth-of-type(3) {
	top: 67.5%;
}

/*activeクラスが付与されると線が回転して×に*/
.openbtn1.active span:nth-of-type(1) {
	top: 38%;
	left: 33.5%;
	transform: translateY(6px) rotate(-45deg);
	width: 30%;
}

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

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

.u-pt-90 {
	padding-top: 90rem;
}

.u-pb-90 {
	padding-bottom: 90rem;
}

.u-text-base {
	font-size: 14rem;
	line-height: 28rem;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
.u-text-base.--white {
	color: #fff;
}
.u-text-base.--size-m {
	font-size: 16rem;
	line-height: 32rem;
}
.u-text-base.--size-l {
	font-size: 24rem;
	line-height: 38rem;
}
.u-text-base.--type-mincho {
	font-family: "Zen Old Mincho", serif;
}
@media screen and (max-width: 860px) {
	.u-text-base {
		font-size: 24rem;
		line-height: 46rem;
	}
}

.u-pb-40 {
	padding-bottom: 40rem;
}

@media screen and (max-width: 860px) {
	.p-sp-pt-40 {
		padding-top: 40rem;
	}
}

@media screen and (max-width: 860px) {
	.p-sp-pb-60 {
		padding-bottom: 60rem;
	}
}

@media screen and (max-width: 860px) {
	.u-sp-mr-0 {
		margin-right: 0rem;
	}
}

.u-position-fixed {
	position: fixed;
}

.u-bottom-10 {
	bottom: 10rem;
}

.u-bottom-20 {
	bottom: 20rem;
}

.u-right-20 {
	right: 10rem;
}

.u-z-index-100 {
	z-index: 100;
}

.u-max-width-200 {
	max-width: 200rem;
}

@media screen and (max-width: 750px) {
	.u-sp-text-left {
		text-align: left;
	}
}

.u-pb-0 {
	padding-bottom: 0rem;
}

.u-mb-0 {
	margin-bottom: 0rem !important;
}

.u-max-width-400 {
	max-width: 400rem;
}

.u-max-width-300 {
	max-width: 300rem;
}

.u-max-width-n-300 {
	width: calc(100% - 340rem) !important;
}

.u-max-width-550 {
	max-width: 550rem;
}

.u-mb-100 {
	margin-bottom: 100rem;
}

.display-none {
	display: none;
}

/*JS関連*/
.tag-1 {
	display: flex;
}

.tag-2 {
	display: none;
}

.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output {
	max-width: 1100rem;
	width: 90%;
	margin: 0 auto;
	box-sizing: border-box;
	margin-top: 20rem;
}

.swiper {
	width: 100%;
}
/*# sourceMappingURL=common.css.map */
.logo-slider {
	overflow: hidden;
}
.logo-track {
	display: flex;
	flex-wrap: nowrap;
	animation: scroll 80s linear infinite;
}

@keyframes scroll {
	from {
		transform: translateX(0);
	}
	to {
		transform: translateX(-490%);
	} /* 行全体が流れ切るまで移動 */
}
.logo-item {
	flex: 0 0 auto;
	margin-right: 40px; /* 間隔は任意で調整 */
}

/* 特許バッジ */
.patent-badge {
	/*   position: absolute; */
	width: 120px; /* 任意サイズ */
	height: auto;
	z-index: 10;
	pointer-events: none;
}
