@charset 'UTF-8';

* {
margin: 0px;
padding: 0px;
word-break: normal !important;
word-wrap: break-word;
line-break:normal;
border: 0;
outline: 0;
box-sizing: border-box;
hanging-punctuation: force-end;
}

html {
scroll-padding-top: 100px;
overflow: auto;
font-size: 62.5%;
}
body {
position: relative;
max-height: 100%;
margin: 0;
padding: 0;
font-style: normal;
font-family: "Noto Sans JP", sans-serif;
font-size: 1.6rem;
font-optical-sizing: auto;
font-weight: 500;
letter-spacing: 1px;
line-height: 1.6;
color: #000;
background-color: #f3f8ff;
-webkit-text-size-adjust: 100%;
}
@media (max-width: 1023px) {
	html {
	font-size: 60%;
	}
	body {
	letter-spacing: 0;
	}
}
@media (max-width: 767px) {
	html {
	scroll-padding-top: 70px;
	font-size: 55%;
	}
	body {
	width: 100%;
	font-size: 1.5rem;
	}
}
@media (max-width: 374px) {
	html {
	font-size: 50%;
	}
}

section {
position: relative;
}
section:after {
clear:both;
display:block;
content:"";
}
table {
border-collapse: collapse;
border-spacing: 0;
}
table th {
font-weight: normal;
text-align: inherit;
}
nav, ol, ul {
list-style: none;
}

h1, h2, h3, h4, h5, h6 {
font-size: inherit;
font-weight: bold;
}
h1, h2, h3 {
line-height: 1.4;
}
@media (min-width: 1024px) {
}
@media (max-width: 767px) {
	h1, h2, h3 {
	}
}
@media (max-width: 374px) {
	h1, h2, h3 {
	}
}

a {
text-decoration: none;
color: inherit;
}
a:hover {
text-decoration: none;
}
@media (min-width: 768px) {
	a[href^="tel:"] {
	pointer-events: none;
	}
}

/*-------------------------
 フォームパーツ
-----------------------*/
button {
cursor: pointer;
font-family: inherit;
font-size: inherit;
background-color: transparent;
border: 0;
}
input,
select,
textarea {
display: block;
font-family: inherit;
font-size: inherit;
color: #333;
border: 1px solid #c7c7c7;
}
input[type="button"],
input[type="text"],
input[type="tel"],
input[type="submit"],
input[type="image"],
textarea {
-webkit-appearance: none;
}
input[type="text"],
input[type="tel"],
input[type="password"],
input[type="date"],
input[type="email"],
textarea {
-webkit-appearance: none;
width: 100%;
padding: 10px;
background-color: #fff;
border-radius: 0;
}
select {
width: 100%;
padding: 10px;
background-color: #fff;
border-radius: 0;
}
input[type="file"] {
-webkit-appearance: none;
background-color: transparent;
border: 0;
}
input[type="checkbox"],
input[type="radio"] {
display: inline-block;
margin-left: 2px;
margin-right: 0.5em;
transform: scale(1.1, 1.1);
}
.select {
position: relative;
}
.select::after {
position: absolute;
content: "";
width: 12px;
height: 10px;
top: 50%;
transform: translateY(-50%);
right: 10px;
background-color: #888;
clip-path: polygon(0 0, 50% 100%, 100% 0);
}
.select select {
-webkit-appearance: none;
}
textarea {
width: 100%;
height: 250px;
}
::placeholder {
}
.contact_submit_flex {
display: flex;
justify-content: center;
margin: 3em auto 0;
}
.contact_previous,
.contact_submit {
display:flex;
justify-content: center;
align-items: center;
width: fit-content;
width: 300px;
height: 60px;
margin: 0 10px;
color: #333;
border: 2px solid #4d8bff;
border-radius: 100px;
}
.contact_previous {
background-color: #c7c7c7;
border-color: #c7c7c7;
}
.contact_submit {
background-color: #4d8bff;
}
.contact_submit .wpcf7-spinner {
display: none;
}
.contact_previous input[type="button"],
input[type="reset"],
input[type="submit"] {
-webkit-appearance: none;
cursor: pointer;
cursor: hand;
width: 100%;
height: 100%;
font-weight: bold;
letter-spacing: 1px;
color: #fff;
background-color: transparent;
border-color: transparent;
border-radius: 0;
}
.contact_previous input[type="button"],
.contact_previous input[type="reset"],
.contact_previous input[type="submit"] {
color: #fff;
}
input[readonly="readonly"] {
border-width: 0;
}
.privacy_check {
margin-top: 20px;
text-align: center;
}
.privacy_check_p {
margin-bottom: 20px;
}
.hissu {
display: inline-block;
margin-left: 1em;
padding: 5px;
font-size: 1.3rem;
font-weight: normal;
line-height: 1;
background-color: #fff;
border: 1px solid;
}
@media (max-width:1023px) {
	.select::after {
	width: 10px;
	height: 8px;
	right: 8px;
	}
}
@media (min-width:768px) {
	/* focus */
	input[type="text"]:focus,
	input[type="tel"]:focus,
	input[type="password"]:focus,
	input[type="date"]:focus,
	input[type="email"]:focus,
	select:focus,
	textarea:focus {
	background-color: #fbfcd6;
	transition: .3s;
	}
	input[readonly="readonly"]:focus {
	background-color: #fff;
	}
	/* hover */
	.privacy_check a:hover {
	opacity: .5;
	transition: .3s;
	}
	.contact_previous:hover {
	background-color: #fff;
	border-color: #2d2d2d;
	transition: .3s;
	}
	.contact_submit:hover {
	background-color: #34c3e0;
	border-color: #34c3e0;
	transition: .3s;
	}
	.contact_previous:hover input {
	color: #2d2d2d;
	}
	.contact_submit:hover input {
	color: #fff;
	transition: .3s;
	}
}
@media (max-width:767px) {
	input[type="text"],
	input[type="tel"],
	input[type="password"],
	input[type="date"],
	input[type="email"],
	select,
	textarea {
	padding: 10px;
	border-radius: 0;
	}
	.select::after {
	width: 10px;
	height: 6px;
	right: 7px;
	}
	textarea {
	height: 200px;
	}
	.contact_submit,
	.contact_previous {
	width: 200px;
	height: 42px;
	margin: 0 2px;
	font-size: inherit !important;
	}
}

/*-----------------------
 slick
-----------------------*/
.slick-slider {
position: relative;
display: block;
margin: 0;
padding: 0;
line-height: 0;
box-sizing: border-box;
-webkit-user-select: none;
-moz-user-select: none;
-ms-user-select: none;
user-select: none;
-webkit-touch-callout: none;
-khtml-user-select: none;
-ms-touch-action: pan-y;
touch-action: pan-y;
-webkit-tap-highlight-color: transparent;
}
.slick-list {
position: relative;
display: block;
margin: 0;
padding: 0;
}
.slick-list:focus {
outline: none;
}
.slick-list.dragging {
cursor: pointer;
cursor: hand;
}
.slick-slider .slick-track,
.slick-slider .slick-list {
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-ms-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
}
.slick-track {
position: relative;
top: 0;
left: 0;
display: block;
margin-left: auto;
margin-right: auto;
}
.slick-track:before,
.slick-track:after {
display: table;
content: '';
}
.slick-track:after {
clear: both;
}
.slick-loading .slick-track {
visibility: hidden;
}
.slick-slide {
display: none;
float: left;
height: 100%;
min-height: 1px;
}
[dir='rtl'] .slick-slide {
float: right;
}
.slick-slide img,
.slick-slide video {
display: block;
object-fit: cover;
width: 100%;
height: 100%;
margin: 0;
padding: 0;
vertical-align: middle;
}
.slick-slide.slick-loading img {
display: none;
}
.slick-slide.dragging img {
pointer-events: none;
}
.slick-initialized .slick-slide {
display: block;
}
.slick-loading .slick-slide {
visibility: hidden;
}
.slick-vertical .slick-slide {
display: block;
height: auto;
border: 1px solid transparent;
}
.slick-arrow.slick-hidden {
display: none;
}
@media (max-width:1023px) {
}
@media (min-width:768px) {
	/* hover */
	.slick-slide a:hover img {
	opacity: .5;
	transition: .3s;
	}
}
@media (max-width:767px) {
}

/*-----------------------
 共通設定
-----------------------*/
.body_wrap {
overflow: hidden;
}

.right { text-align: right !important; }
.left { text-align: left !important; }
.center { text-align: center !important; }
.fit { width: fit-content;margin-right: auto;margin-left: auto; }
@media (max-width: 767px) {
	.fit_sp {
	width: fit-content;
	margin-right: auto;
	margin-left: auto;
	text-align: left;
	}
}
.normal { font-weight: normal;}
.font_small { font-size: 1.4rem; }
.font_large { font-size: 1.8rem; }
.red { color: #e10915; }
.underline { text-decoration: underline; }
.bold { font-weight: bold; }

.txtlink a {
text-decoration: underline;
}
@media (min-width:768px) {
	.txtlink a:hover {
	opacity: .5;
	transition: .5s;
	}
}

img {
display: block;
width: 100%;
max-width: 100%;
width: auto;
height: auto;
margin-right: auto;
margin-left: auto;
vertical-align:top;
}

.mb1 {
margin-bottom: 1em;
}
.mt1 {
margin-top: 1em;
}

.sp {
display: none;
}
@media (max-width: 767px) {
	.pc {
	display: none;
	}
	.sp {
	display: block;
	}
}

/*-----------------------
 ヘッダー
-----------------------*/
html.active {
overflow: hidden;
}
header {
z-index: 2;
position: relative;
}
.head_logo {
position: absolute;
width: calc(371px * .8);
height: calc(170px * .8);
top: 10px;
left: 20px;
font-size: 0;
background-image: url(./common/img/logo.svg);
background-repeat: no-repeat;
background-size: contain;
}
.head_logo a {
display: block;
width: 100%;
height: 100%;
}
.head_sns {
position: fixed;
width: 70px;
height: 70px;
top: 37px;
right: 239px;
background-color: #152b83;
border-radius: 100%;
}
html.is-fixed .head_sns {
top: 10px;
right: 210px;
}
.head_sns a {
position: absolute;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.head_sns img {
object-fit: cover;
width: 28px;
height: 28px;
}
.toggle {
cursor: pointer;
position: fixed;
display: flex;
align-items: center;
justify-content: flex-end;
width: 184px;
height: 71px;
top: 37px;
right: 33px;
padding-right: 40px;
font-family: "Montserrat", sans-serif;
font-size: 1.8rem;
font-weight: bold;
line-height: 1;
color: #fff;
background-color: #152b83;
border-radius: 100px;
}
html.is-fixed .toggle {
top: 10px;
right: 15px;
}
.toggle::before,
.toggle::after {
position: absolute;
content: "";
width: 35px;
height: 35px;
top: 50%;
transform: translateY(-50%);
left: 18px;
background-repeat: no-repeat;
background-position: center;
}
.toggle::before {
background-image: url(./common/img/toggle_open.svg);
background-size: 18px auto;
}
html.active .toggle::before {
background-image: url(./common/img/toggle_close.svg);
}
.toggle::after {
opacity: .5;
border: 1px solid #fff;
border-radius: 100%;
}
@media (max-width:1440px) {
	.head_logo {
	width: calc(371px * .7);
	height: calc(170px * .7);
	top: 10px;
	}
	.head_sns {
	top: 10px;
	right: 210px;
	}
	.toggle {
	top: 10px;
	right: 15px;
	}
}
@media (max-width:1310px) {
}
@media (max-width:1023px) {
	.head_logo {
	width: calc(371px * .6);
	height: calc(170px * .6);
	top: 5px;
	}
	.head_sns {
	width: 60px;
	height: 55px;
	right: 165px !important;
	}
	.head_sns img {
	width: 22px;
	height: 22px;
	}
	.toggle {
	width: 140px;
	height: 55px;
	padding-right: 30px;
	font-size: inherit;
	}
	.toggle::before,
	.toggle::after {
	width: 32px;
	height: 32px;
	left: 15px;
	}
	.toggle::before {
	background-size: 14px auto;
	}
}
@media (min-width:768px) {
	/* hover */
	.head_logo:hover {
	opacity: .5;
	transition: .5s;
	}
	.head_sns:hover,
	.toggle:hover {
	background-color: #34c3e0;
	transition: .5s;
	}
	.toggle:hover::after {
	opacity: 1;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.head_logo {
	width: calc(371px * .5);
	height: calc(170px * .5);
	top: 2px;
	left: 10px;
	}
	.head_sns {
	position: absolute;
	width: 50px;
	height: 50px;
	top: 55px !important;
	right: 0 !important;
	border-radius: 8px 0 0 8px;
	}
	.toggle {
	width: 105px;
	height: 50px;
	top: 0 !important;
	right: 0 !important;
	padding-right: 15px;
	font-size: 1.3rem;
	border-radius: 0 0 0 15px;
	}
	.toggle::before,
	.toggle::after {
	width: 26px;
	height: 26px;
	left: 14px;
	}
	.toggle::before {
	background-size: 13px auto;
	}
	.toggle::after {
	opacity: 1;
	}
}

/*-----------------------
 TOP
-----------------------*/
/*--メインビジュアル--*/
.mv {
position: relative;
padding: 40px 30px 90px 30px;
}
.mv::before {
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 50%;
transform: translateX(-50%);
background-image: url(./common/img/top/mv_bg.jpg);
background-repeat: no-repeat;
background-size: 100% auto;
}
.mv_wrap {
position: relative;
max-width: 1920px;
margin: auto;
}
.mv_img {
position: relative;
width: calc(1520px);
height: calc(587px);
margin: auto;
}
.mv_img::before {
position: absolute;
content: "";
width: calc(1743px);
height: calc(510px);
bottom: -153px;
left: 50%;
transform: translateX(-50%);
background-image: url(./common/img/top/mv_img_bg.png);
background-repeat: no-repeat;
background-size: contain;
}
.mv_img_in {
position: absolute;
mask-repeat: no-repeat;
mask-size: 100% 100%;
-webkit-mask-repeat: no-repeat;
-webkit-mask-size: 100% 100%;
}
.mv_img_in1 {
visibility: hidden;
width: calc(440px);
height: calc(429px);
top: 151px;
left: 0;
mask-image: url(./common/img/top/mv_img01_mask.png);
-webkit-mask-image: url(./common/img/top/mv_img01_mask.png);
}
.mv_img_in2 {
visibility: hidden;
width: calc(286px);
height: calc(367px);
top: 0;
left: 318px;
mask-image: url(./common/img/top/mv_img02_mask.png);
-webkit-mask-image: url(./common/img/top/mv_img02_mask.png);
}
.mv_img_in3 {
width: calc(331px);
height: calc(404px);
top: 179px;
right: 528px;
mask-image: url(./common/img/top/mv_img03_mask.png);
-webkit-mask-image: url(./common/img/top/mv_img03_mask.png);
}
.mv_img_in4 {
width: calc(551px);
height: calc(382px);
top: 177px;
right: 0;
mask-image: url(./common/img/top/mv_img04_mask.png);
-webkit-mask-image: url(./common/img/top/mv_img04_mask.png);
}
.mv_img_in::before {
position: absolute;
content: "";
background-repeat: no-repeat;
background-size: contain;
}
.mv_img_in1::before {
width: calc();
height: calc();
background-image: url(./common/img/top/mv);
}
.mv_img_in img {
object-fit: cover;
width: 100%;
height: 100%;
}
.mv_box {
max-width: 930px;
margin: 35px auto 0;
}
.mv_ttl {
visibility: hidden;
margin-bottom: 20px;
font-size: 7.0rem;
font-weight: 900;
text-align: center;
line-height: 1.3;
letter-spacing: 2px;
color: #152b83;
}
.mv_ttl_1 {
display: block;
}
.mv_ttl_1_s {
color: #4d8bff;
}
.mv_ttl_2 {
display: block;
}
.mv_txt1 {
visibility: hidden;
margin-bottom: 40px;
font-size: 3.0rem;
font-weight: 900;
text-align: center;
letter-spacing: 4px;
color: #4d8bff;
}
.mv_txt2 {
visibility: hidden;
width: fit-content;
margin: auto;
font-size: 2.2rem;
line-height: 1.8;
}
.mv_txt2_in {
}
@media (max-width:1920px) {
	.mv::before {
	width: 1920px;
	}
}
@media (max-width:1580px) {
	.mv::before {
	width: 1580px;
	}
	.mv_wrap {
	max-width: 1310px;
	}
	.mv_img {
	width: 100%;
	height: 520px;
	}
	.mv_img::before {
	width: calc(1743px * .9);
	height: calc(510px * .9);
	}
	.mv_img_in1 {
	width: calc(440px * .9);
	height: calc(429px * .9);
	top: 140px;
	left: -20px;
	}
	.mv_img_in2 {
	width: calc(286px * .9);
	height: calc(367px * .9);
	left: 280px;
	}
	.mv_img_in3 {
	width: calc(331px * .9);
	height: calc(404px * .9);
	top: 170px;
	right: 450px;
	}
	.mv_img_in4 {
	width: calc(551px * .9);
	height: calc(382px * .9);
	top: 160px;
	right: -20px;
	}
}
@media (max-width:1370px) {
	.mv {
	padding-top: 90px;
	}
	.mv::before {
	width: 1370px;
	}
	.mv_wrap {
	max-width: 964px;
	}
	.mv_img {
	height: 460px;
	}
	.mv_img::before {
	width: calc(1743px * .65);
	height: calc(510px * .65);
	bottom: -80px;
	}
	.mv_img_in1 {
	width: calc(440px * .7);
	height: calc(429px * .7);
	top: 140px;
	left: -20px;
	}
	.mv_img_in2 {
	width: calc(286px * .7);
	height: calc(367px * .7);
	top: 30px;
	left: 180px;
	}
	.mv_img_in3 {
	width: calc(331px * .7);
	height: calc(404px * .7);
	top: 170px;
	right: 340px;
	}
	.mv_img_in4 {
	width: calc(551px * .7);
	height: calc(382px * .7);
	top: 160px;
	right: -20px;
	}
	.mv_box {
	margin-top: 20px;
	}
	.mv_ttl {
	font-size: 5.5rem;
	}
	.mv_txt1 {
	margin-bottom: 25px;
	font-size: 3.0rem;
	letter-spacing: 2px;
	}
	.mv_txt2 {
	font-size: 1.8rem;
	}
}
@media (max-width:1023px) {
	.mv {
	padding: 90px 30px 50px 30px;
	}
	.mv::before {
	width: 1200px;
	}
	.mv_wrap {
	max-width: 708px;
	}
	.mv_img {
	height: 370px;
	}
	.mv_img::before {
	width: calc(1743px * .5);
	height: calc(510px * .5);
	bottom: -65px;
	}
	.mv_img_in1 {
	width: calc(440px * .55);
	height: calc(429px * .55);
	top: 120px;
	left: -30px;
	}
	.mv_img_in2 {
	width: calc(286px * .55);
	height: calc(367px * .55);
	top: 20px;
	left: 120px;
	}
	.mv_img_in3 {
	width: calc(331px * .55);
	height: calc(404px * .55);
	top: 140px;
	right: 240px;
	}
	.mv_img_in4 {
	width: calc(551px * .55);
	height: calc(382px * .55);
	top: 130px;
	right: -30px;
	}
	.mv_box {
	margin-top: 20px;
	}
	.mv_ttl {
	margin-bottom: 15px;
	font-size: 4.0rem;
	}
	.mv_txt1 {
	margin-bottom: 20px;
	font-size: 2.4rem;
	letter-spacing: inherit;
	}
	.mv_txt2 {
	font-size: inherit;
	line-height: inherit;
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.mv {
	padding: 30px 15px 30px 15px;
	}
	.mv::before {
	width: 1200px;
	}
	.mv_wrap {
	max-width: 330px;
	}
	.mv_img {
	height: 370px;
	}
	.mv_img::before {
	width: calc(1743px * .25);
	height: calc(510px * .25);
	bottom: -15px;
	}
	.mv_img_in1 {
	width: calc(440px * .5);
	height: calc(429px * .5);
	top: 140px;
	left: -70px;
	}
	.mv_img_in2 {
	width: calc(286px * .3);
	height: calc(367px * .3);
	top: 80px;
	left: 70px;
	}
	.mv_img_in3 {
	z-index: 1;
	width: calc(331px * .33);
	height: calc(404px * .33);
	top: 50px;
	right: 30px;
	}
	.mv_img_in4 {
	width: calc(551px * .5);
	height: calc(382px * .5);
	top: 170px;
	right: -100px;
	}
	.mv_box {
	margin-top: 15px;
	}
	.mv_ttl {
	margin-bottom: 10px;
	font-size: 2.6rem;
	}
	.mv_txt1 {
	margin-bottom: 15px;
	font-size: 1.8rem;
	letter-spacing: inherit;
	}
}

/*--top共通--*/
.top_main {
position: relative;
}
.top_sec {
padding: 90px 30px;
}
.top_wrap {
max-width: 1310px;
margin: auto;
}
.top_ttl {
margin-bottom: 45px;
line-height: 1;
}
.top_ttl_1 {
visibility: hidden;
display: block;
margin-bottom: 15px;
font-size: 2.4rem;
}
.top_ttl_2 {
visibility: hidden;
display: block;
font-size: 4.8rem;
font-family: "Montserrat","Noto Sans JP",sans-serif;
letter-spacing: 0;
}
.top_txt {
}
.top_more {
visibility: hidden;
width: fit-content;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-weight: bold;
line-height: 1;
color: #fff;
background-color: #4d8bff;
border: 2px solid #4d8bff;
border-radius: 100px;
}
.top_more a {
position: relative;
display: block;
padding: 16px 36px 16px 65px;
}
.top_more a::before {
position: absolute;
content: "";
width: 33px;
height: 33px;
top: 50%;
transform: translateY(-50%);
left: 11px;
background-color: #2362d7;
background-image: url(./common/img/ico_arrow01_w.svg);
background-repeat: no-repeat;
background-position: center;
background-size: 13px auto;
border-radius: 100%;
}
@media (max-width:1370px) {
	.top_wrap {
	max-width: 1200px !important;
	}
}
@media (max-width:1260px) {
	.top_wrap {
	max-width: 964px !important;
	}
	.top_ttl {
	margin-bottom: 20px;
	}
	.top_ttl_1 {
	font-size: 2.0rem;
	}
	.top_ttl_2 {
	font-size: 4.0rem;
	}
}
@media (max-width:1023px) {
	.top_sec {
	padding: 70px 30px;
	}
	.top_wrap {
	max-width: 708px !important;
	}
	.top_ttl {
	margin-bottom: 20px;
	}
	.top_ttl_1 {
	font-size: 1.8rem;
	}
	.top_ttl_2 {
	font-size: 3.4rem;
	}
	.top_txt {
	font-size: inherit;
	line-height: inherit;
	}
	.top_more a {
	padding: 14px 30px 14px 60px;
	}
	.top_more a::before {
	width: 30px;
	height: 30px;
	left: 8px;
	background-size: 10px auto;
	}
}
@media (min-width:768px) {
	/* hover */
	.top_more:hover {
	background-color: #34c3e0;
	border-color: #34c3e0;
	transition: .5s;
	}
	.top_more:hover a::before {
	background-color: rgba(255,255,255,.7);
	background-image: url(./common/img/ico_arrow01_green.svg);
	transition: .3s;
	}
}
@media (max-width:767px) {
	.top_sec {
	padding: 60px 15px;
	}
	.top_wrap {
	max-width: 330px !important;
	}
	.top_ttl {
	}
	.top_ttl_1 {
	margin-bottom: 8px;
	}
	.top_ttl_2 {
	font-size: 3.0rem;
	}
	.top_more {
	}
	.top_more a {
	padding: 12px 25px 12px 50px;
	}
	.top_more a::before {
	width: 26px;
	height: 26px;
	background-size: 9px auto;
	}
}

/*-- イベント情報 --*/
.top_event {
max-width: 1920px;
margin: auto;
padding-right: 0;
}
.top_event::after {
z-index: -9;
position: absolute;
content: "";
width: 1920px;
height: 100%;
top: 0;
left: 0;
background-image: url(./common/img/top/event_bg.png);
background-repeat: no-repeat;
background-position: top 30px left;
background-size: 100% auto;
}
.top_event_wrap {
display: flex;
max-width: 1770px;
margin-right: 0;
}
.top_event_in1,
.top_news_in1 {
width: 155px;
}
.top_event_in1 {
padding-top: 20px;
}
.top_event_in1_wrap,
.top_news_in1_wrap {
}
.top_event .top_ttl {
}
.top_event .top_ttl_1 {
}
.top_event .top_ttl_2 {
}
.top_event .top_more {
}
.top_event_in2,
.top_news_in2 {
width: calc(100% - 155px);
}
.top_event_in2 {
position: relative;
padding-left: 82px;
}
.top_event_nav {
z-index: 1;
position: absolute;
width: 100%;
top: 50%;
transform: translateY(-50%);
}
.event_prev,
.event_next {
z-index: 1;
cursor: pointer;
position: absolute;
display: block;
width: 49px;
height: 49px;
top: 50%;
transform: translateY(-50%);
background-color: #fff;
background-repeat: no-repeat;
background-size: 13px auto;
background-position: center;
border: 1px solid #4d8bff;
border-radius: 100%;
}
.event_prev {
left: -10px;
background-image: url(./common/img/ico_arrow01_blue_r.svg);
}
.event_next {
right: 110px;
background-image: url(./common/img/ico_arrow01_blue.svg);
}
.top_event_in2_wrap {
overflow: hidden;
position: relative;
padding-left: 60px;
padding-bottom: 55px;
}
.top_event_in2_wrap::before {
position: absolute;
content: "";
width: calc(100%);
height: 80%;
bottom: 0;
left: 0;
background-color: #bbd3fe;
border-radius: 26px 0 0 26px;
}
.top_event_slide {
visibility: hidden;
overflow: hidden;
}
.top_event_slide .slick-slide {
width: calc(374px + 24px);
}
.top_event_slide_in {
position: relative;
padding: 10px 12px;
}
.top_event_slide_in .slick-slide {
}
.top_event_slide_in_wrap {
position: relative;
background-color: #fff;
border-radius: 15px;
box-shadow: 0 0 10px rgba(0,0,0,.2);
}
.top_event_slide_in_wrap a {
z-index: 1;
display: block;
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.top_event_slide_img {
padding: 10px;
}
.top_event_slide_img img {
object-fit: contain;
aspect-ratio: 368 / 260;
width: 100%;
height: 100%;
}
.top_event_slide_box {
padding-bottom: 20px;
border-bottom: 1px solid #bbd3fe;
}
.top_event_slide_ttl {
display: flex;
align-items: center;
justify-content: center;
width: fit-content;
margin: 0 auto 10px;
padding: 0 20px;
font-size: 1.8rem;
font-weight: bold;
line-height: 1.4;
}
.top_event_slide_date {
padding: 0 20px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 1.4rem;
font-weight: bold;
text-align: center;
line-height: 1;
color: #4d8bff;
}
.top_event_slide_txt {
padding: 20px;
text-align: justify;
line-height: 1.6;
}
.top_event_slide_txt_in {
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4;
text-overflow: ellipsis;
}
@media screen and (max-width: 1370px) {
	.top_event {
	padding-right: 30px;
	}
	.top_event_wrap {
	margin-right: auto;
	}
	.event_next {
	right: 70px;
	}
	.top_event_in2_wrap {
	padding-left: 50px;
	padding-right: 50px;
	padding-bottom: 40px;
	}
	.top_event_in2_wrap::before {
	border-radius: 26px;
	}
}
@media screen and (max-width: 1260px) {
	.top_event::after {
	background-position: top left;
	}
	.top_event_in2 {
	padding-left: 50px;
	}
	.event_next {
	right: 40px;
	}
	.top_event_in2_wrap {
	padding-left: 20px;
	padding-right: 20px;
	padding-bottom: 20px;
	}
	.top_event_slide .slick-slide {
	width: auto;
	}
	.top_event_slide_in {
	padding: 10px;
	}
	.top_event_slide_ttl {
	font-size: inherit;
	}
	.top_event_slide_txt {
	padding: 15px;
	font-size: 1.4rem;
	}
}
@media screen and (max-width: 1023px) {
	.top_event::after {
	width: 1400px;
	background-position: top left;
	}
	.top_event_in2 {
	padding-left: 30px;
	}
	.top_event_slide {
	width: 388px;
	margin: auto;
	}
	.event_prev,
	.event_next {
	width: 40px;
	height: 40px;
	}
	.event_next {
	right: 15px;
	}
}
@media screen and (min-width: 768px) {
	/* hover */
	.event_prev:hover,
	.event_next:hover {
	background-color: #34c3e0;
	border-color: #34c3e0;
	transition: .5s;
	}
	.event_prev:hover {
	background-image: url(./common/img/ico_arrow01_w_r.svg);
	}
	.event_next:hover {
	background-image: url(./common/img/ico_arrow01_w.svg);
	}
	.top_event_slide_in_wrap:hover {
	background-color: #eff5ff;
	transition: .5s;
	}
	.top_event_slide_in_wrap:hover .top_event_slide_img {
	opacity: .5;
	transition: .5s;
	}
	.top_event_slide_in_wrap:hover .top_event_slide_box,
	.top_event_slide_in_wrap:hover .top_event_slide_txt {
	opacity: .5;
	transition: .5s;
	}
}
@media screen and (max-width: 767px) {
	.top_event {
	padding-right: 15px;
	}
	.top_event::after {
	width: 1600px;
	background-position: bottom -10px right 40px;
	}
	.top_event_wrap,
	.top_news_wrap {
	display: block;
	}
	.top_event .top_ttl,
	.top_news .top_ttl {
	margin-bottom: 0;
	}
	.top_event_in1,
	.top_news_in1 {
	width: 100%;
	margin-bottom: 20px;
	padding-top: 0;
	}
	.top_event_in1_wrap,
	.top_news_in1_wrap {
	display: flex;
	align-items: center;
	justify-content: space-between;
	}
	.top_event .top_more {
	}
	.top_event_in2 {
	width: 100%;
	padding-left: 0;
	}
	.event_next {
	right: -12px;
	}
	.top_event_in2_wrap {
	padding-left: 10px;
	padding-right: 10px;
	padding-bottom: 15px;
	}
	.top_event_in2_wrap::before {
	height: 75%;
	border-radius: 15px;
	}
	.top_event_slide {
	width: 100%;
	}
	.top_event_slide_box {
	padding-bottom: 10px;
	}
	.top_event_slide_ttl {
	margin-bottom: 8px;
	padding: 0 15px;
	}
	.top_event_slide_txt {
	text-align: left;
	}
}

/*-- お知らせ --*/
.top_news {
}
.top_news_wrap {
display: flex;
max-width: 1620px;
}
.top_news_in1 {
}
.top_news_in1_wrap {
}
.top_news .top_ttl {
}
.top_news .top_ttl_1 {
}
.top_news .top_ttl_2 {
}
.top_news .top_more {
}
.top_news_in2 {
padding-left: 108px;
}
.top_news_dl {
position: relative;
display: flex;
align-items: center;
max-width: 1356px;
min-height: 99px;
padding: 17px 17px;
border-bottom: 1px solid #abbee5;
}
.top_news_dl:first-of-type {
border-top: 1px solid #abbee5;
}
.top_news_dt {
display: flex;
align-items: center;
justify-content: space-between;
width: 350px;
}
.top_news_date {
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 2.0rem;
font-weight: bold;
line-height: 1;
}
.top_news_cat {
width: 123px;
margin-right: 28px;
padding: 6px;
font-weight: bold;
text-align: center;
line-height: 1.2;
background-color: #fff;
border-radius: 2px;
}
.top_news_dd {
width: calc(100% - 350px);
}
.top_news_txt {
font-size: 1.8rem;
}
.top_news_txt a {
position: relative;
display: block;
padding-right: 70px;
}
.top_news_txt a::before {
position: absolute;
content: "";
width: 42px;
height: 42px;
top: 50%;
transform: translateY(-50%);
right: 0;
background-image: url(./common/img/ico_arrow01_skyblue.svg);
background-repeat: no-repeat;
background-position: center;
background-size: 13px auto;
border: 1px solid #abbee5;
border-radius: 100%;
}
@media screen and (max-width: 1830px) {
	.top_news_in2 {
	padding-left: 80px;
	}
}
@media screen and (max-width: 1370px) {
	.top_news_in2 {
	padding-left: 50px;
	}
	.top_news_dt {
	width: 280px;
	}
	.top_news_date {
	font-size: inherit;
	letter-spacing: 0;
	}
	.top_news_cat {
	width: 120px;
	margin-right: 20px;
	padding: 5px;
	font-size: 1.5rem;
	}
	.top_news_dd {
	width: calc(100% - 280px);
	}
	.top_news_txt {
	font-size: 1.5rem;
	}
}
@media screen and (max-width: 1260px) {
	.top_news_dl {
	display: block;
	min-height: auto;
	padding: 15px 10px;
	}
	.top_news_dt {
	width: 100%;
	justify-content: flex-start;
	font-size: inherit;
	margin-bottom: 5px;
	}
	.top_news_date {
	width: 120px;
	margin-right: 20px;
	}
	.top_news_dd {
	width: 100%;
	}
	.top_news_txt {
	font-size: 1.5rem;
	}
}
@media screen and (max-width: 1023px) {
	.top_news_in2 {
	padding-left: 20px;
	}
	.top_news_dl {
	padding: 12px 5px;
	}
	.top_news_txt a {
	padding-right: 40px;
	}
	.top_news_txt a::before {
	width: 30px;
	height: 30px;
	background-size: 12px auto;
	}
}
@media screen and (min-width: 768px) {
	/* hover */
	.top_news_txt a:hover {
	color: #34c3e0;
	transition: .1s;
	}
	.top_news_txt a:hover::before {
	background-color: #34c3e0;
	border-color: #34c3e0;
	background-image: url(./common/img/ico_arrow01_w.svg);
	transition: .5s;
	}
}
@media screen and (max-width: 767px) {
	.top_news_wrap {
	display: block;
	}
	.top_news_in1 {
	width: 100%;
	margin-bottom: 20px;
	}
	.top_news_in2 {
	width: 100%;
	padding-left: 0;
	}
	.top_news_dl {
	padding: 10px 0;
	}
	.top_news_date {
	width: 90px;
	margin-right: 20px;
	font-size: 1.4rem;
	}
	.top_news_cat {
	font-size: 1.4rem;
	}
	.top_news_txt {
	font-size: 1.4rem;
	}
	.top_news_txt a {
	padding-right: 30px;
	}
	.top_news_txt a::before {
	width: 22px;
	height: 22px;
	background-size: 10px auto;
	}
}

/*-- Service --*/
.top_service {
}
.top_service .top_wrap {
}
.top_service .top_ttl {
margin-bottom: 50px;
text-align: center;
}
.top_service .top_ttl_2 {
}
.top_service_list {
max-width: 1154px;
margin: auto;
}
.top_service_li {
position: relative;
display: flex;
align-items: center;
min-height: 400px;
background-color: #fff;
border-radius: 26px;
}
.top_service_li + .top_service_li {
margin-top: 55px;
}
.top_service_li a {
z-index: 2;
display: block;
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.top_service_li_in1 {
width: calc(100% - 435px);
padding: 30px 0 30px 80px;
}
.top_service_li_ttl {
position: relative;
display: flex;
align-items: center;
margin-bottom: 30px;
}
.top_service_li_ttl::before {
position: absolute;
content: "";
width: 48px;
height: 48px;
top: 50%;
transform: translateY(-50%);
right: 0;
background-image: url(./common/img/ico_arrow01_skyblue.svg);
background-repeat: no-repeat;
background-position: center;
background-size: 13px auto;
border: 1px solid #abbee5;
border-radius: 100%;
}
.top_service_li_ttl_1 {
display: block;
margin-right: 25px;
font-size: 3.3rem;
font-weight: 900;
}
.top_service_li_ttl_2 {
display: block;
font-size: 2.0rem;
color: #4d8bff;
}
.top_service_li_txt {
font-size: 1.9rem;
text-align: justify;
line-height: 1.8;
color: #474747;
}
.top_service_li_in2 {
position: relative;
width: 435px;
padding: 10px 88px 10px 55px;
}
.top_service_li_no {
position: absolute;
top: -15px;
right: 20px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 19.1rem;
font-weight: bold;
line-height: 1;
color: #d7e8ff;
}
.top_service_li_img {
z-index: 1;
position: relative;
object-fit: cover;
width: calc(330px);
height: calc(260px);
}
.top_service_li_img img {
}
@media screen and (max-width: 1370px) {
	.top_service_li {
	min-height: 350px;
	}
	.top_service_li + .top_service_li {
	margin-top: 20px;
	}
	.top_service_li_in1 {
	padding: 20px 0 20px 40px;
	}
}
@media screen and (max-width: 1260px) {
	.top_service_li {
	min-height: 300px;
	}
	.top_service_li + .top_service_li {
	margin-top: 20px;
	}
	.top_service_li_in1 {
	width: calc(100% - 350px);
	padding: 20px 0 20px 40px;
	}
	.top_service_li_ttl::before {
	width: 38px;
	height: 38px;
	background-size: 12px auto;
	}
	.top_service_li_ttl_1 {
	margin-right: 20px;
	font-size: 2.6rem;
	}
	.top_service_li_ttl_2 {
	font-size: 1.8rem;
	}
	.top_service_li_txt {
	font-size: inherit;
	line-height: inherit;
	}
	.top_service_li_in2 {
	width: 350px;
	padding: 10px 30px;
	}
	.top_service_li_no {
	top: 0;
	right: 15px;
	font-size: 12rem;
	}
	.top_service_li_img {
	width: calc(330px * .8);
	height: calc(260px * .8);
	}
}
@media screen and (max-width: 1023px) {
	.top_service_li {
	min-height: 200px;
	border-radius: 20px;
	}
	.top_service_li + .top_service_li {
	margin-top: 10px;
	}
	.top_service_li_in1 {
	width: calc(100% - 250px);
	padding: 20px 0 20px 20px;
	}
	.top_service_li_ttl {
	display: block;
	margin-bottom: 15px;
	}
	.top_service_li_ttl::before {
	width: 30px;
	height: 30px;
	background-size: 12px auto;
	}
	.top_service_li_ttl_1 {
	margin-bottom: 5px;
	margin-right: 0;
	font-size: 2.2rem;
	}
	.top_service_li_ttl_2 {
	font-size: inherit;
	}
	.top_service_li_txt {
	font-size: inherit;
	line-height: inherit;
	}
	.top_service_li_in2 {
	width: 250px;
	padding: 10px 20px;
	}
	.top_service_li_no {
	top: 0;
	right: 10px;
	font-size: 9rem;
	}
	.top_service_li_img {
	width: calc(330px * .5);
	height: calc(260px * .5);
	}
}
@media screen and (min-width: 768px) {
	/* hover */
	.top_service_li:hover {
	outline: 3px solid #34c3e0;
	box-shadow: 0 0 10px rgba(0,0,0,.2);
	transition: .1s;
	}
	.top_service_li:hover .top_service_li_ttl_1,
	.top_service_li:hover .top_service_li_ttl_2 {
	color: #152b83;
	}
	.top_service_li:hover .top_service_li_ttl::before {
	background-color: #34c3e0;
	border-color: #34c3e0;
	background-image: url(./common/img/ico_arrow01_w.svg);
	}
	.top_service_li:hover .top_service_li_txt {
	color: #888;
	}
	.top_service_li:hover .top_service_li_no {
	color: #34c3e0;
	}
	.top_service_li:hover .top_service_li_img {
	animation: fontzoom .3s;
	}
	@keyframes fontzoom {
		50% {
		transform: scale(1.05);
		}
	}
}
@media screen and (max-width: 767px) {
	.top_service_li {
	display: block;
	min-height: auto;
	border-radius: 10px;
	}
	.top_service_li_in1 {
	width: 100%;
	padding: 15px;
	}
	.top_service_li_ttl {
	display: block;
	margin-bottom: 15px;
	}
	.top_service_li_ttl::before {
	width: 24px;
	height: 24px;
	background-size: 10px auto;
	}
	.top_service_li_ttl_1 {
	margin-bottom: 3px;
	}
	.top_service_li_ttl_2 {
	font-size: inherit;
	}
	.top_service_li_txt {
	font-size: inherit;
	text-align: left;
	line-height: inherit;
	}
	.top_service_li_in2 {
	width: calc(330px * .55);
	height: calc(260px * .55);
	margin: auto;
	padding: 0 10px 20px 10px;
	}
	.top_service_li_no {
	top: -10px;
	right: 0;
	font-size: 8rem;
	}
	.top_service_li_img {
	width: 100%;
	height: 100%;
	}
}

/*-- 施工事例 --*/
.top_case {
overflow: hidden;
max-width: 1920px;
margin: auto;
padding-right: 0;
padding-left: 0;
}
.top_case .top_wrap {
}
.top_case_head,
.top_voice_head {
display: flex;
align-items: center;
justify-content: space-between;
margin-bottom: 40px;
}
.top_case .top_ttl {
}
.top_case .top_ttl_1 {
}
.top_case .top_ttl_2 {
}
.top_case .top_more {
}
.top_case_box {
max-width: 1920px;
margin: auto;
}
.top_case_slide {
visibility: hidden;
margin-bottom: 35px;
}
.top_case_slide .slick-slide {
width: calc(315px + 30px);
}
.top_case_slide_in {
padding: 0 15px;
}
.top_case_slide_in a {
}
.top_case_slide_in img {
object-fit: cover;
aspect-ratio: 1 / 1;
width: 100%;
height: 100%;
border: 10px solid #fff;
}
.top_case_nav {
width: fit-content;
display: flex;
align-items: center;
margin: auto;
}
.case_prev,
.case_next {
cursor: pointer;
position: relative;
display: block;
width: 40px;
height: 40px;
background-color: #fff;
background-repeat: no-repeat;
background-size: 12px auto;
background-position: center;
border: 1px solid #e6e0d6;
border-radius: 100%;
}
.case_prev {
background-image: url(./common/img/ico_arrow01_skyblue_r.svg);
}
.case_next {
background-image: url(./common/img/ico_arrow01_skyblue.svg);
}
.case_dots {
margin: 0 20px;
}
.case_dots .slick-dots {
display: flex;
align-items: center;
}
.case_dots .slick-dots li {
width: 8px;
height: 8px;
margin: 0 5px;
font-size: 0;
background-color: #cbc0a9;
border-radius: 100%;
}
.case_dots .slick-dots li.slick-active {
background-color: #000;
}
@media screen and (max-width: 1370px) {
	.top_case_slide .slick-slide {
	width: 300px;
	}
	.top_case_slide_in {
	padding: 0 10px;
	}
	.top_case_slide_in img {
	border-width: 7px;
	}
}
@media screen and (max-width: 1260px) {
}
@media screen and (max-width: 1023px) {
	.top_case_head,
	.top_voice_head {
	margin-bottom: 20px;
	}
	.top_case_slide {
	margin-bottom: 20px;
	}
	.top_case_slide .slick-slide {
	width: 260px;
	}
	.top_case_slide_in {
	padding: 0 5px;
	}
	.top_case_slide_in img {
	border-width: 5px;
	}
	.case_prev,
	.case_next {
	width: 30px;
	height: 30px;
	}
}
@media screen and (min-width: 768px) {
	/* hover */
	.case_prev:hover,
	.case_next:hover {
	background-color: #34c3e0;
	border-color: #34c3e0;
	transition: .5s;
	}
	.case_prev:hover {
	background-image: url(./common/img/ico_arrow01_w_r.svg);
	}
	.case_next:hover {
	background-image: url(./common/img/ico_arrow01_w.svg);
	}
}
@media screen and (max-width: 767px) {
	.top_case_slide {
	margin-bottom: 15px;
	}
	.top_case_slide .slick-slide {
	width: 200px;
	}
	.top_case_slide_in {
	padding: 0 3px;
	}
	.top_case_slide_in img {
	border-width: 3px;
	}
	.case_prev,
	.case_next {
	width: 26px;
	height: 26px;
	background-size: 10px auto;
	}
	.case_dots {
	margin: 0 10px;
	}
	.case_dots .slick-dots li {
	width: 6px;
	height: 6px;
	margin: 0 4px;
	}
}

/*-- お客様の声 --*/
.top_voice {
}
.top_voice .top_wrap {
}
.top_voice_head {
}
.top_voice .top_ttl {
}
.top_voice .top_ttl_1 {
}
.top_voice .top_ttl_2 {
}
.top_voice .top_more {
}
.top_voice_box {
position: relative;
max-width: 1510px;
margin: auto;
}
.top_voice_nav {
z-index: 1;
position: absolute;
width: calc(100% + 220px);
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
}
.voice_prev,
.voice_next {
cursor: pointer;
position: absolute;
display: block;
width: 82px;
height: 82px;
background-repeat: no-repeat;
background-size: 22px auto;
background-position: center;
border: 1px solid #e6e0d6;
border-radius: 100%;
}
.voice_prev {
left: 0;
background-image: url(./common/img/ico_arrow01_skyblue_r.svg);
}
.voice_next {
right: 0;
background-image: url(./common/img/ico_arrow01_skyblue.svg);
}
.top_voice_slide {
overflow: hidden;
}
.top_voice_slide .slick-slide {
}
.top_voice_slide_in {
position: relative;
padding: 0 20px;
}
.top_voice_slide_in_box {
}
.top_voice_slide_in a {
z-index: 3;
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.top_voice_slide_in_box_1 {
overflow: hidden;
position: relative;
border-radius: 15px 15px 0 0;
}
.top_voice_slide_ico {
position: absolute;
display: flex;
align-items: center;
justify-content: center;
width: 88px;
height: 88px;
bottom: 20px;
right: 20px;
background-color: #fff;
border-radius: 100%;
}
.top_voice_slide_ico img {
object-fit: contain;
aspect-ratio: 467 / 271;
width: calc(52px);
height: calc(65px);
}
.top_voice_slide_img {
}
.top_voice_slide_img img {
}
.top_voice_slide_in_box_2 {
padding: 40px 50px;
color: #474747;
background-color: #fff;
border: 3px solid #fff;
border-top-width: 0;
border-radius: 0 0 15px 15px;
}
.top_voice_slide_ttl {
margin-bottom: 15px;
font-family: "Kiwi Maru",sans-serif;
font-size: 1.9rem;
font-weight: 500;
line-height: 1.4;
}
.top_voice_slide_txt {
text-align: justify;
line-height: 1.8;
}
.top_voice_slide_txt_p {
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 5;
text-overflow: ellipsis;
}
.top_voice_slide_more {
margin-top: 2px;
text-align: right;
padding: 26px 40px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 1.8rem;
font-weight: bold;
line-height: 1;
background-color: #fff;
border-radius: 15px;
}
.top_voice_slide_more::before {
display: inline-block;
content: "";
width: calc(13px);
height: calc(10px);
margin-right: 14px;
background-image: url(./common/img/ico_arrow01_skyblue.svg);
background-repeat: no-repeat;
background-size: contain;
}
@media screen and (max-width: 1750px) {
	.top_voice_nav {
	width: calc(100% + 50px);
	}
	.voice_prev,
	.voice_next {
	width: 49px;
	height: 49px;
	background-size: 13px auto;
	background-color: #fff;
	}
	.top_voice_slide_in_box_2 {
	padding: 20px 30px;
	}
	.top_voice_slide_txt {
	line-height: 1.6;
	}
}
@media screen and (max-width: 1570px) {
	.top_voice_box {
	max-width: 1330px;
	}
	.top_voice_slide_in {
	padding: 0 10px;
	}
}
@media screen and (max-width: 1370px) {
	.top_voice_box {
	max-width: 1220px;
	}
	.top_voice_slide_ttl {
	font-size: 1.8rem;
	}
	.top_voice_slide_more {
	padding: 20px 40px;
	font-size: inherit;
	}
	.top_voice_slide_more::before {
	width: calc(13px * .9);
	height: calc(10px * .9);
	margin-right: 10px;
	}
}
@media screen and (max-width: 1260px) {
	.top_voice_box {
	max-width: 984px;
	}
}
@media screen and (max-width: 1023px) {
	.top_voice_nav {
	width: calc(100% + 30px);
	}
	.top_voice_box {
	max-width: 728px;
	}
	.voice_prev,
	.voice_next {
	width: 40px;
	height: 40px;
	background-size: 12px auto;
	}
	.top_voice_slide_ico {
	width: 70px;
	height: 70px;
	bottom: 10px;
	right: 10px;
	}
	.top_voice_slide_ico img {
	width: calc(52px * .8);
	height: calc(65px * .8);
	}
	.top_voice_slide_in_box_2 {
	padding: 20px;
	}
	.top_voice_slide_more {
	padding: 15px 20px;
	font-size: 1.5rem;
	}
}
@media screen and (min-width: 768px) {
	/* hover */
	.top_voice_slide_in_box:hover .top_voice_slide_in_box_1 {
	border: 3px solid #34c3e0;
	border-bottom-width: 0;
	transition: .5s;
	}
	.top_voice_slide_in_box:hover .top_voice_slide_img {
	overflow: hidden;
	}
	.top_voice_slide_in_box:hover .top_voice_slide_img img {
	transform: scale(1.1, 1.1);
	transition: .5s;
	}
	.top_voice_slide_in_box:hover .top_voice_slide_ico {
	z-index: 2;
	animation: fontzoom .3s;
	}
	.top_voice_slide_in_box:hover .top_voice_slide_in_box_2 {
	border-color: #34c3e0;
	transition: .5s;
	}
	.top_voice_slide_in_box:hover .top_voice_slide_txt {
	color: #888;
	}
	.top_voice_slide_in_box:hover .top_voice_slide_more {
	color: #fff;
	background-color: #34c3e0;
	transition: background-color .5s;
	}
	.top_voice_slide_in_box:hover .top_voice_slide_more::before {
	background-image: url(./common/img/ico_arrow01_w.svg);
	}
	.voice_prev:hover,
	.voice_next:hover {
	background-color: #34c3e0;
	border-color: #34c3e0;
	transition: .5s;
	}
	.voice_prev:hover {
	background-image: url(./common/img/ico_arrow01_w_r.svg);
	}
	.voice_next:hover {
	background-image: url(./common/img/ico_arrow01_w.svg);
	}
}
@media screen and (max-width: 767px) {
	.top_voice_nav {
	width: calc(100% + 20px);
	}
	.top_voice_box {
	max-width: 350px;
	}
	.voice_prev,
	.voice_next {
	width: 36px;
	height: 36px;
	background-size: 10px auto;
	}
	.top_voice_slide_ico {
	width: 60px;
	height: 60px;
	}
	.top_voice_slide_ico img {
	width: calc(52px * .7);
	height: calc(65px * .7);
	}
	.top_voice_slide_in_box_2 {
	padding: 15px;
	}
	.top_voice_slide_ttl {
	font-size: 1.7rem;
	}
	.top_voice_slide_txt {
	text-align: left;
	}
}

/*-- ご挨拶 --*/
.top_greeting {
}
.top_greeting::after {
z-index: -9;
position: absolute;
content: "";
width: 1920px;
height: 100%;
top: 0;
left: 50%;
transform: translateX(-50%);
background-image: url(./common/img/top/greeting_bg.png);
background-repeat: no-repeat;
background-position: bottom 80px center;
background-size: 100% auto;
}
.top_greeting_box {
}
.top_greeting .top_wrap {
position: relative;
padding-top: 150px;
padding-bottom: 350px;
}
.top_greeting .top_ttl {
text-align: center;
}
.top_greeting .top_ttl_1 {
margin-bottom: 0;
}
.top_greeting .top_ttl_2 {
margin-bottom: 15px;
}
.top_greeting_txt1 {
max-width: 818px;
margin: 0 auto 30px;
font-family: "Kiwi Maru",sans-serif;
font-size: 3.4rem;
text-align: center;
}
.top_greeting_txt2 {
max-width: 818px;
margin: auto;
font-size: 2.0rem;
text-align: justify;
line-height: 2.0;
}
.top_greeting_img {
}
.top_greeting_img_in {
z-index: -1;
position: absolute;
}
.top_greeting_img_in1 {
width: calc(600px);
height: calc(400px);
top: -100px;
left: -250px;
}
.top_greeting_img_in2 {
width: calc(447px);
height: calc(575px);
top: 20px;
right: -254px;
}
.top_greeting_img_in::before {
position: absolute;
content: "";
background-repeat: no-repeat;
background-size: contain;
}
.top_greeting_img_in1::before {
width: calc(296px);
height: calc(341px);
left: -60px;
bottom: -150px;
background-image: url(./common/img/top/greeting_img01_bg.png);
}
.top_greeting_img_in2::before {
width: calc(336px);
height: calc(662px);
left: -170px;
bottom: -140px;
background-image: url(./common/img/top/greeting_img02_bg.png);
}
.top_greeting_img_in img {
object-fit: cover;
width: 100%;
height: 100%;
}
.top_greeting_img_in1 img {
clip-path: polygon(0 0, 80% 18%, 100% 100%, 13% 87%);
-webkit-clip-path: polygon(0 0, 80% 18%, 100% 100%, 13% 87%);
}
.top_greeting_img_in2 img {
clip-path: polygon(13% 23%, 100% 0, 90% 84%, 0 100%);
-webkit-clip-path: polygon(13% 23%, 100% 0, 90% 84%, 0 100%);
}
@media screen and (max-width: 1755px) {
	.top_greeting::after {
	width: 1755px;
	background-position: bottom 50px center;
	}
	.top_greeting .top_wrap {
	padding-top: 0;
	padding-bottom: 300px;
	}
	.top_greeting_txt1 {
	max-width: 650px;
	font-size: 3.0rem;
	}
	.top_greeting_txt2 {
	max-width: 650px;
	font-size: 1.8rem;
	line-height: 1.8;
	}
	.top_greeting_img_in1 {
	width: calc(600px * .73);
	height: calc(400px * .73);
	left: -30px;
	}
	.top_greeting_img_in2 {
	width: calc(447px * .8);
	height: calc(575px * .8);
	right: -30px;
	}
	.top_greeting_img_in1::before {
	width: calc(296px * .9);
	height: calc(341px * .9);
	}
	.top_greeting_img_in2::before {
	width: calc(336px * .9);
	height: calc(662px * .9);
	}
}
@media screen and (max-width: 1370px) {
	.top_greeting::after {
	width: 1370px;
	}
	.top_greeting .top_wrap {
	padding-bottom: 250px;
	}
	.top_greeting_txt1 {
	max-width: 620px;
	font-size: 2.8rem;
	}
	.top_greeting_txt2 {
	max-width: 620px;
	line-height: inherit;
	}
	.top_greeting_img_in1 {
	width: calc(600px * .65);
	height: calc(400px * .65);
	top: -80px;
	}
	.top_greeting_img_in2 {
	width: calc(447px * .65);
	height: calc(575px * .65);
	}
	.top_greeting_img_in1::before {
	width: calc(296px * .8);
	height: calc(341px * .8);
	left: -80px;
	bottom: -100px;
	}
	.top_greeting_img_in2::before {
	width: calc(336px * .8);
	height: calc(662px * .8);
	}
}
@media screen and (max-width: 1260px) {
	.top_greeting::after {
	width: 1260px;
	}
	.top_greeting .top_wrap {
	padding-top: 50px;
	padding-bottom: 200px;
	}
	.top_greeting_txt1 {
	max-width: 500px;
	font-size: 2.8rem;
	}
	.top_greeting_txt2 {
	max-width: 620px;
	line-height: inherit;
	}
	.top_greeting_img_in1 {
	width: calc(600px * .55);
	height: calc(400px * .55);
	top: -90px;
	}
	.top_greeting_img_in2 {
	width: calc(447px * .55);
	height: calc(575px * .55);
	top: -120px;
	}
	.top_greeting_img_in1::before {
	width: calc(296px * .7);
	height: calc(341px * .7);
	left: -40px;
	bottom: -90px;
	}
	.top_greeting_img_in2::before {
	width: calc(336px * .7);
	height: calc(662px * .7);
	left: -120px;
	bottom: -100px;
	}
}
@media screen and (max-width: 1023px) {
	.top_greeting::after {
	width: 1260px;
	}
	.top_greeting .top_wrap {
	padding-top: 50px;
	padding-bottom: 150px;
	}
	.top_greeting_txt1 {
	max-width: 360px;
	margin-bottom: 15px;
	font-size: 2.4rem;
	}
	.top_greeting_txt2 {
	max-width: 100%;
	font-size: inherit;
	}
	.top_greeting_img_in1 {
	width: calc(600px * .4);
	height: calc(400px * .4);
	top: -40px;
	}
	.top_greeting_img_in2 {
	width: calc(447px * .45);
	height: calc(575px * .45);
	top: -100px;
	}
	.top_greeting_img_in1::before {
	width: calc(296px * .5);
	height: calc(341px * .5);
	left: -30px;
	bottom: -60px;
	}
	.top_greeting_img_in2::before {
	width: calc(336px * .5);
	height: calc(662px * .5);
	left: -100px;
	bottom: -90px;
	}
}
@media screen and (min-width: 768px) {
}
@media screen and (max-width: 767px) {
	.top_greeting::after {
	width: 767px;
	}
	.top_greeting .top_wrap {
	padding-top: 0;
	padding-bottom: 180px;
	}
	.top_greeting_txt1 {
	max-width: 100%;
	margin-bottom: 10px;
	font-size: 2.0rem;
	}
	.top_greeting_txt2 {
	text-align: left;
	}
	.top_greeting_img_in1 {
	width: calc(600px * .3);
	height: calc(400px * .3);
	top: inherit;
	bottom: 10px;
	left: -10px;
	}
	.top_greeting_img_in2 {
	width: calc(447px * .3);
	height: calc(575px * .3);
	top: inherit;
	bottom: 0px;
	right: 0;
	}
	.top_greeting_img_in1::before {
	width: calc(296px * .35);
	height: calc(341px * .35);
	left: -60px;
	bottom: -35px;
	}
	.top_greeting_img_in2::before {
	width: calc(336px * .3);
	height: calc(662px * .3);
	left: inherit;
	right: -30px;
	bottom: -10px;
	}

}

/*-- Recruit --*/
.top_recruit {
padding-top: 0;
}
.top_recruit::after {
z-index: -9;
position: absolute;
content: "";
width: 100%;
height: 85%;
bottom: 0;
left: 0;
background-color: #538fff;
}
.top_recruit .top_wrap {
max-width: 1354px;
}
.top_recruit_img {
overflow: hidden;
margin-bottom: 38px;
border-radius: 15px;
box-shadow: 0 0 10px rgba(16,97,246,.6);
}
.top_recruit_img img {
object-fit: cover;
aspect-ratio: 1354 / 537;
width: 100%;
height: 100%;
}
.top_recruit .top_ttl {
text-align: center;
color: #fff;
}
.top_recruit .top_ttl_2 {
}
.top_recruit_more {
width: fit-content;
margin: auto;
font-size: 2.2rem;
font-weight: bold;
line-height: 1;
color: #fff;
border: 1px solid rgba(255,255,255,.5);
border-radius: 100px;
}
.top_recruit_more a {
position: relative;
display: block;
padding: 20px 65px;
}
.top_recruit_more a::before {
position: relative;
display: inline-block;
vertical-align: middle;
content: "";
width: calc(13px);
height: calc(10px);
top: -2px;
margin-right: 16px;
background-image: url(./common/img/ico_arrow01_w.svg);
background-repeat: no-repeat;
background-size: contain;
}
@media screen and (max-width: 1370px) {
	.top_recruit_more {
	font-size: 2.0rem;
	}
}
@media screen and (max-width: 1260px) {
	.top_recruit_more {
	font-size: 1.8rem;
	}
}
@media screen and (max-width: 1023px) {
}
@media screen and (min-width: 768px) {
	/* hover */
	.top_recruit_more:hover {
	background-color: #34c3e0;
	border-color: #34c3e0;
	transition: .5s;
	}
}
@media screen and (max-width: 767px) {
	.top_recruit {
	padding-top: 40px;
	}
	.top_recruit::after {
	height: 75%;
	}
	.top_recruit_img {
	margin-bottom: 30px;
	border-radius: 10px;
	}
	.top_recruit_img img {
	aspect-ratio: 4 / 2.2;
	}
	.top_recruit_more {
	font-size: 1.6rem;
	}
	.top_recruit_more a {
	position: relative;
	display: block;
	padding: 17px 50px;
	}
	.top_recruit_more a::before {
	width: calc(13px * .8);
	height: calc(10px * .8);
	top: -1px;
	margin-right: 14px;
	}
}

/*-----------------------
 フッター
-----------------------*/
footer {
}
.cnt {
padding: 80px 30px;
background-color: #538fff;
}
.cnt_box {
max-width: 1310px;
margin: auto;
}
.cnt_box_head {
margin-bottom: 50px;
text-align: center;
}
.cnt_box_head .top_ttl_1 {
margin-bottom: 20px;
}
.cnt_box_head .top_ttl_2.cnt_ttl_2 {
visibility: visible;
margin-bottom: 15px;
}
.cnt_box_head .top_ttl_1.cnt_ttl_1 {
visibility: visible;
margin-bottom: 0;
}
.cnt_txt {
font-size: 1.8rem;
font-weight: bold;
}
.cnt_box_flex {
display: flex;
justify-content: center;
margin: -10px;
}
.cnt_box_in {
position: relative;
width: calc(25% - 20px);
margin: 10px;
padding: 30px 0;
text-align: center;
line-height: 1;
border: 3px solid #3d7bed;
border-radius: 15px;
}
.cnt_box_in_txt {
position: relative;
margin-bottom: 25px;
font-size: 2.2rem;
font-weight: bold;
line-height: 1.3;
}
.cnt_box_in_ico {
margin: auto;
}
.cnt_box_in_ico a {
display: block;
width: 100px;
height: 100px;
margin: auto;
font-size: 0;
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
.cnt_box_ig {
}
.cnt_box_ig a {
max-width: 60px;
background-image: url(./common/img/ico_instagram.png);
}
.cnt_box_line {
}
.cnt_box_line a {
background-image: url(./common/img/qr_line.jpg);
}
.cnt_box_mail {
}
.cnt_box_mail a {
max-width: 70px;
background-image: url(./common/img/ico_mail.png);
}
.cnt_box_tel {
}
.cnt_box_line {
}
.cnt_tel_1 {
position: relative;
margin-bottom: 8px;
padding-top: 50px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 2.8rem;
font-weight: bold;
letter-spacing: 2px;
}
.cnt_tel_1::before {
position: absolute;
content: "";
width: 40px;
height: 40px;
top: 0;
left: 50%;
transform: translateX(-50%);
background-image: url(./common/img/ico_tel.svg);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
.cnt_tel_1 a {
}
.cnt_tel_2 {
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 1.8rem;
font-weight: 600;
letter-spacing: 2px;
}
.footer_box {
transform: translateZ(0);
padding: 150px 30px 50px 30px;
background-color: #353f50;
}
.footer_box_wrap {
max-width: 1310px;
margin: auto;
}
.footer_nav {
display: flex;
justify-content: space-between;
line-height: 1.4;
margin: 0 -45px 100px -45px;
}
.footer_nav_in {
margin: 0 45px;
}
.nav1_p {
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 2.2rem;
font-weight: bold;
color: #fff;
}
.footer_nav_in2 .nav1_p,
.footer_nav_in3 .nav1_p {
margin-bottom: 30px;
color: #538fff;
}
.nav1_p a {
}
.footer_nav_in2 {
}
.nav2_flex {
display: flex;
}
.nav2_flex_in {
}
.nav2_flex_in + .nav2_flex_in {
margin-left: 50px;
}
.nav2_p {
margin-bottom: 15px;
font-size: 1.8rem;
font-weight: bold;
color: #fff;
}
.nav2_p a {
}
.nav3 {
}
.nav3_li {
margin-bottom: 10px;
font-size: 1.7rem;
font-weight: normal;
color: #ccc;
}
.nav3_li a {
display: block;
width: fit-content;
}
.nav3_li a::before {
display: inline-block;
content: "";
width: calc(13px);
height: calc(10px);
margin-right: 10px;
background-image: url(./common/img/ico_arrow01_skyblue.svg);
background-repeat: no-repeat;
background-size: contain;
}
.nav3 + .nav2_p {
margin-top: 40px;
}
.footer_nav_in3 {
}
.footer_nav_in4 {
}
.footer_bottom {
display: flex;
align-items: flex-end;
justify-content: center;
flex-wrap: wrap;
margin-bottom: 50px;
color: #fff;
}
.footer_bottom_in {
}
.footer_bottom_in + .footer_bottom_in {
margin-left: 35px;
}
.footer_bottom_in1 {
}
.footer_logo {
width: calc(371px * .7);
height: calc(170px * .7);
font-size: 0;
background-image: url(./common/img/footer_logo.svg);
background-repeat: no-repeat;
background-size: contain;
}
.footer_logo a {
display: block;
width: 100%;
height: 100%;
}
.footer_bottom_in2 {
}
.footer_name {
margin-bottom: 2px;
font-size: 1.5rem;
font-weight: bold;
}
.footer_address {
font-size: 1.4rem;
}
.footer_bottom_in3 {
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 1.4rem;
letter-spacing: 3px;
line-height: 1;
}
.footer_tel,
.footer_fax {
position: relative;
padding-left: 50px;
}
.footer_tel {
margin-bottom: 8px;
letter-spacing: 3.5px;
}
.footer_tel::before,
.footer_fax::before {
position: absolute;
top: 50%;
transform: translateY(-50%);
left: 0;
letter-spacing: 1px;
}
.footer_tel::before {
content: "TEL.";
}
.footer_tel a {
}
.footer_fax {
}
.footer_fax::before {
content: "FAX.";
}
.footer_bottom_in4 {
}
.footer_sns {
}
.footer_sns img {
object-fit: contain;
width: 36px;
height: 36px;
}
.footer_bnr {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: center;
margin: -12px -12px 50px -12px;
}
.footer_bnr_li {
margin: 12px;
}
.footer_bnr_li a {
display: block;
}
.footer_bnr_li a img {
object-fit: contain;
height: auto;
}
.footer_bnr_li_rectangle a img {
width: 300px;
}
.footer_bnr_li_square a img {
width: 120px;
}
.copyright {
font-size: 1.4rem;
font-weight: 600;
text-align: center;
line-height: 1.4;
color: #b1b1b1;
}
html.active .spmenu {
z-index: 1;
overflow-x: hidden;
overflow-y: auto;
position: fixed;
width: 100%;
height: 100vh;
top: 0;
left: 0;
padding-bottom: 50px;
background-color: #353f50;
animation: spmenu-open .3s ease-out forwards;
}
html.closing .spmenu {
animation: spmenu-close .3s ease-out forwards;
}
@keyframes spmenu-open {
	from {
		transform: translateY(-100%);
	}
	to {
		transform: translateY(0);
	}
}
@keyframes spmenu-close {
	from {
		transform: translateY(0);
	}
	to {
		transform: translateY(-100%);
	}
}
html.active .head_logo,
html.active .head_sns {
display: none;
}
html.active .cnt {
padding: 40px 30px;
}
html.active .footer_box {
padding: 40px 30px;
}
html.active .footer_nav {
margin-bottom: 40px;
}
html.active .footer_logo {
width: calc(371px * .5);
height: calc(170px * .5);
}
html.active .copyright {
display: none;
}
@media (max-width:1370px) {
	.cnt {
	padding: 30px 30px 80px 30px;
	}
	.cnt_box {
	max-width: 1200px;
	}
	.cnt_box_in {
	}
	.cnt_box_in_txt {
	font-size: 2.0rem;
	}
	.footer_box {
	padding: 80px 30px 30px 30px;
	}
	.footer_box_wrap {
	max-width: 1200px;
	}
	.footer_nav {
	justify-content: center;
	margin-bottom: 50px;
	}
}
@media (max-width:1260px) {
	.cnt {
	padding: 30px 30px 60px 30px;
	}
	.cnt_box {
	max-width: 964px;
	}
	.cnt_box_flex {
	margin: -5px;
	}
	.cnt_box_in {
	width: calc(25% - 10px);
	margin: 5px;
	padding: 20px 0;
	}
	.cnt_box_in_ico a {
	width: 80px;
	height: 80px;
	}
	.cnt_ig_ico a {
	max-width: 50px;
	}
	.cnt_mail_ico a {
	max-width: 60px;
	}
	.cnt_tel_1 {
	margin-bottom: 8px;
	padding-top: 30px;
	font-size: 2.4rem;
	letter-spacing: 1px;
	}
	.cnt_tel_1::before {
	width: 35px;
	height: 35px;
	top: -10px;
	}
	.cnt_tel_2 {
	font-size: inherit;
	}
	.footer_box {
	padding: 60px 30px 30px 30px;
	}
	.footer_box_wrap {
	max-width: 964px;
	}
	.footer_nav {
	margin: 0 -25px 30px -25px;
	}
	.footer_nav_in {
	margin: 0 25px;
	}
	.nav1_p {
	font-size: 1.8rem;
	}
	.nav2_p {
	font-size: inherit;
	}
	.footer_nav_in2 .nav1_p,
	.footer_nav_in3 .nav1_p {
	margin-bottom: 15px;
	}
	.nav2_flex {
	display: block;
	}
	.nav2_flex_in + .nav2_flex_in {
	margin-top: 15px;
	margin-left: 0;
	}
	.nav3 + .nav2_p {
	margin-top: 20px;
	}
	.nav3_li {
	font-size: inherit;
	}
	.footer_bottom_in1 {
	width: 100%;
	margin-bottom: 20px;
	}
	.footer_logo {
	margin: auto;
	}
}
@media (max-width:1023px) {
	.cnt_box {
	max-width: 708px;
	}
	.cnt_box_flex {
	flex-wrap: wrap;
	max-width: 480px;
	margin: auto;
	}
	.cnt_box_in {
	width: calc(50% - 10px);
	padding: 15px 0;
	}
	.cnt_box_in_txt {
	margin-bottom: 20px;
	font-size: 1.9rem;
	}
	.footer_box_wrap {
	max-width: 708px;
	}
	.footer_bottom {
	position: relative;
	margin-bottom: 30px;
	}
	.footer_bnr {
	margin-bottom: 30px;
	}
	.footer_logo {
	width: calc(371px * .5);
	height: calc(170px * .5);
	}
	.footer_bottom_in4 {
	}
	.footer_bnr_li_rectangle a img {
	width: 250px;
	}
	.footer_bnr_li_square a img {
	width: 100px;
	}
}
@media (min-width:768px) {
	/* hover */
	.footer_logo:hover,
	.cnt_box_in_ico:hover,
	.nav1_p a:hover,
	.nav2_p a:hover,
	.nav3_li a:hover,
	.footer_sns:hover,
	.footer_bnr_li:hover {
	opacity: .5;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.cnt {
	padding: 30px 15px 40px 15px;
	}
	.cnt_box {
	max-width: 330px;
	}
	.cnt_box_head {
	margin-bottom: 30px;
	}
	.cnt_txt {
	font-size: inherit;
	}
	.cnt_box_flex {
	margin: -4px;
	}
	.cnt_box_in {
	width: calc(50% - 8px);
	height: 140px;
	margin: 4px;
	padding: 10px 0;
	border-width: 2px;
	}
	.cnt_box_in_txt {
	margin-bottom: 15px;
	font-size: 1.7rem;
	}
	.cnt_box_in_ico a {
	width: 50px;
	height: 50px;
	}
	.cnt_ig_ico a {
	max-width: 40px;
	background-image: url(./common/img/ico_instagram_w.png);
	}
	.cnt_box_line a {
	max-width: 40px;
	background-image: url(./common/img/ico_line.svg);
	}
	.cnt_mail_ico a {
	max-width: 50px;
	}
	.cnt_tel_1 {
	margin-bottom: 3px;
	padding-top: 28px;
	font-size: 2.2rem;
	letter-spacing: 0;
	}
	.cnt_tel_1::before {
	width: 28px;
	height: 28px;
	top: -2px;
	}
	.cnt_tel_2 {
	font-size: 1.4rem;
	letter-spacing: 1px;
	}
	.footer_box {
	padding: 40px 15px 60px 15px;
	}
	.footer_box_wrap {
	max-width: 330px;
	}
	.footer_nav {
	display: block;
	margin: 0 0 40px 0;
	}
	.footer_nav_in {
	width: 100%;
	margin: 0;
	padding: 10px;
	}
	.footer_nav_in + .footer_nav_in {
	margin-top: 0;
	border-top: 1px solid rgba(255,255,255,.2);
	}
	.nav1_p {
	font-size: 1.6rem;
	}
	.nav2_p {
	margin-bottom: 8px;
	}
	.footer_nav_in2 .nav1_p,
	.footer_nav_in3 .nav1_p {
	margin-bottom: 10px;
	}
	.nav2_flex {
	display: block;
	}
	.nav2_flex_in + .nav2_flex_in {
	margin-top: 10px;
	}
	.nav3 + .nav2_p {
	margin-top: 10px;
	}
	.nav3_li {
	margin-bottom: 8px;
	}
	.footer_bottom {
	display: block;
	padding-bottom: 0;
	}
	.footer_bottom_in {
	width: 100%;
	text-align: center;
	}
	.footer_bottom_in + .footer_bottom_in {
	margin-left: 0;
	}
	.footer_logo {
	width: calc(371px * .6);
	height: calc(170px * .6);
	margin: auto;
	}
	.footer_bottom_in1 {
	margin-bottom: 15px;
	}
	.footer_bottom_in2 {
	margin-bottom: 10px;
	}
	.footer_bottom_in3 {
	width: fit-content;
	margin: 0 auto 20px !important;
	}
	.footer_tel, .footer_fax {
	padding-left: 40px;
	}
	.footer_bottom_in4 {
	position: relative;
	}
	.footer_sns img {
	width: 30px;
	height: 30px;
	}
	.footer_bnr {
	margin: -10px -10px 30px -10px;
	}
	.footer_bnr_li {
	margin: 10px;
	}
	.footer_bnr_li_rectangle a img {
	width: 200px;
	}
	.footer_bnr_li_square a img {
	width: 80px;
	}
	.copyright {
	font-size: 1.2rem;
	}
	html.active .cnt {
	padding: 40px 15px;
	}
	html.active .footer_box {
	padding: 40px 30px;
	}
}

/*-----------------------
 下層共通
-----------------------*/

/* ページタイトル・パンくず */
.pagettl {
z-index: 1;
position: relative;
height: 280px;
}
.pagettl::before {
z-index: -1;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: url(./common/img/pankuzu_bg.jpg);
background-repeat: no-repeat;
background-position: center;
background-size: cover;
}
.pagettl_h2 {
z-index: 1;
position: absolute;
width: calc(100% - 30px);
bottom: 40px;
left: 50%;
transform: translateX(-50%);
text-align: center;
line-height: 1;
}
.pagettl_h2::before {
display: none;
z-index: -1;
position: absolute;
content: "";
width: calc(100% + 100px);
height: 100%;
top: -15px;
left: 50%;
transform: translateX(-50%);
background-image: url(./common/img/page_ttl_l.png),url(./common/img/page_ttl_r.png);
background-repeat: no-repeat;
background-position: top left,top right;
background-size: 80px auto;
}
.pagettl_h2_1 {
position: relative;
display: block;
width: fit-content;
margin: 0 auto 15px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 4.8rem;
text-shadow: 0 0 10px rgba(0,0,0,.2);
color: rgba(255,255,255,.8);
}
.pagettl_h2_2 {
font-size: 3.2rem;
font-weight: 800;
}
.breadcrumb {
display: flex;
flex-wrap: wrap;
padding: 20px;
letter-spacing: .5px;
line-height: 1.4;
}
.breadcrumb span {
display: block;
}
.breadcrumb span > a,
.breadcrumb span > span {
display: block;
margin: 2px 10px;
}
.breadcrumb span > a {
}
.breadcrumb span > span {
}
.breadcrumb .current-item {
}
@media (max-width: 1260px) {
	.pagettl_h2 {
	bottom: 30px;
	}
	.pagettl_h2_1 {
	margin-bottom: 10px;
	font-size: 4.0rem;
	}
	.pagettl_h2_2 {
	font-size: 2.8rem;
	}
}
@media (max-width: 1023px) {
	.pagettl {
	height: 230px;
	}
	.pagettl_h2_1 {
	margin-bottom: 10px;
	font-size: 3.4rem;
	}
	.pagettl_h2_2 {
	font-size: 2.4rem;
	}
}
@media (min-width: 768px) {
	/* hover */
	.breadcrumb a:hover {
	opacity: .5;
	transition: .3s;
	}
}
@media (max-width: 767px) {
	.breadcrumb {
	padding: 15px 10px;
	font-size: 90%;
	}
	.pagettl {
	height: 200px;
	}
	.pagettl_h2 {
	bottom: 20px;
	}
	.pagettl_h2_1 {
	font-size: 2.8rem;
	}
	.pagettl_h2_2 {
	font-size: 2.2rem;
	}
}

/*-- 大枠div --*/
.low {
position: relative;
letter-spacing: 1px;
}
.low_section {
padding: 100px 30px;
}
.low_wrap {
max-width: 1200px;
margin: auto;
}
.low_wrap2 {
max-width: 1440px;
}
.low_wrap>h1,
.low_wrap>h2,
.low_wrap>h3,
.low_wrap>h4,
.low_wrap>h5,
.low_wrap>h6,
.low_wrap>section,
.low_wrap>div,
.low_wrap>p,
.low_wrap>ul,
.low_wrap>ol,
.low_wrap>dl,
.low_wrap>table,
.low_wrap>a,
.low_wrap>img {
position: relative;
}
.low_parts + .low_parts {
margin-top: 60px;
}
@media (max-width:1260px) {
	.low_wrap {
	max-width: 964px;
	}
}
@media (max-width:1023px) {
	.low_wrap {
	max-width: 708px;
	}
	.low_section {
	padding: 60px 30px;
	}
}
@media (max-width:767px) {
	.low_wrap {
	max-width: 330px;
	}
	.low_section {
	padding: 50px 15px;
	}
	.low_parts + .low_parts {
	margin-top: 30px;
	}
}

/* 背景色 */
.bg01 {
position: relative;
}
.bg01::after {
z-index: -9;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color: #fff;
}
.bg02 {
position: relative;
}
.bg02::after {
z-index: -9;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color: #e4effe;
}
@media (max-width:767px) {
}

/*-------------------------
 汎用レイアウト
-------------------------*/
/*-- h3～h6タイトル --*/
.low_h3 {
z-index: 1;
position: relative;
margin-top: 3em;
margin-bottom: 4em;
text-align: center;
}
.low_h3:first-child {
margin-top: 0;
}
.low_h3_1 {
display: block;
width: fit-content;
margin: 0 auto 15px;
padding: 10px 30px;
font-family: "Montserrat", "Noto Sans JP", sans-serif;
font-weight: 500;
line-height: 1;
color: #fff;
background-color: #152b83;
border-radius: 100px;
}
.low_h3_2 {
display: block;
font-weight: 800;
font-size: 3.6rem;
}
.low_h3_1 + .low_h3_2 {
margin-top: 3px;
}
.low_h3_2 + .low_h3_3 {
margin-top: 10px;
}
h3[class*="low_h3"] + h4[class*="low_h3"] {
margin-top: 0;
}
.low_h4 {
z-index: 1;
position: relative;
display: flex;
flex-wrap: wrap;
align-items: center;
margin-top: 3em;
margin-bottom: 1.5em;
padding: 15px 35px;
font-size: 2.4rem;
line-height: 1.4;
border-radius: 10px;
background-color: #9dbdf8;
}
.low_h4:first-child {
margin-top: 0;
}
.bg02 .low_h4 {
background-color: #fff;
border: 1px solid #aec0d2;
}
.low_h4::before {
opacity: .7;
z-index: -2;
position: absolute;
content: "";
width: calc(100% - 30px);
height: 100%;
top: 0;
left: 50%;
transform: translateX(-50%);
border: 1px solid #fff;
border-width: 0 1px;
}
.bg01 .low_h4 {
}
.low_h5.point {
display: flex;
align-items: center;
padding: 0;
border-left-width: 0;
background-color: transparent;
border-width: 0;
}
.low_h5.point::before {
display: none;
}
.point_s1 {
display: flex;
align-items: center;
justify-content: center;
width: 150px;
padding: 15px 10px;
text-align: center;
letter-spacing: 1px;
line-height: 1.2;
color: #fff;
background-color: #4d8bff;
border: 3px solid;
border-radius: 100px;
}
.point_s2 {
display: block;
width: calc(100% - 150px);
padding-left: 20px;
line-height: 1.2;
border-radius: 100px 6px 6px 100px;
}
.bg01 .point_s2 {
color: #4d8bff;
background-color: #d1c4ac;
}
h3[class*="low_h3"] + h5[class*="low_h4"],
h4[class*="low_h3"] + h5[class*="low_h4"] {
margin-top: 0;
}
.low_h5 {
width: fit-content;
margin-top: 2em;
margin-bottom: 1em;
padding-bottom: 5px;
color: #4d8bff;
font-size: 1.8rem;
border-bottom: 3px double #4d8bff;
}
.low_wrap > h4[class*="low_h3"]:first-child,
.low_wrap > h5[class*="low_h4"]:first-child,
.low_wrap > h6[class*="low_h5"]:first-child,
h3[class*="low_h3"] + h6[class*="low_h5"],
h4[class*="low_h3"] + h6[class*="low_h5"],
h5[class*="low_h4"] + h6[class*="low_h5"] {
margin-top: 0;
}
@media (max-width:1023px) {
	.low_h3 {
	margin-bottom: 3em;
	}
	.low_h3_1 {
	margin-bottom: 10px;
	font-size: inherit;
	}
	.low_h3_2 {
	font-size: 3.0rem;
	letter-spacing: inherit;
	}
	.low_h4 {
	}
	.low_h5 {
	}
}
@media (max-width:767px) {
	.low_h3 {
	}
	.low_h3_1 {
	}
	.low_h3_2 {
	font-size: 2.6rem;
	}
	.low_h4 {
	padding: 10px 15px;
	font-size: 1.8rem;
	border-radius: 6px;
	}
	.low_h4::before {
	width: calc(100% - 15px);
	}
	.point_s1 {
	width: 80px;
	font-size: 1.6rem;
	padding: 10px;
	border-radius: 6px;
	}
	.point_s2 {
	width: calc(100% - 80px);
	padding-left: 10px;
	}
	.low_h5 {
	margin-top: 2em;
	margin-bottom: 10px;
	font-size: 1.7rem;
	}
}

/*-- 画像 --*/
.low_img {
}
.low_img_m {
max-width: 900px;
margin-left: auto !important;
margin-right: auto !important;
}
.low_img img {
}
.low_logo {
}
.low_logo img {
max-width: 500px;
}
@media (min-width:768px) {
	.low_img {
	margin-right: 10px;
	margin-left: 10px;
	}
}
@media (max-width:767px) {
	.low_img  {
	max-width: 400px;
	margin-left: auto;
	margin-right: auto;
	}
	.low_img_m {
	max-width: 400px;
	}
	.low_logo img {
	max-width: 200px;
	}
}

/*-- テキスト --*/
.low_catch {
position: relative;
width: fit-content;
margin-left: auto;
margin-right: auto;
font-size: 2.2rem;
font-weight: bold;
}
.low_read {
}
.low_read_1 {
font-size: 2.4rem;
font-weight: bold;
text-align: center;
line-height: 1.4;
}
.low_read_2 {
width: fit-content;
margin: auto;
font-size: 1.8rem;
line-height: 2;
}
.low_txt_l,
.low_txt_m,
.low_txt_s {
width: fit-content;
margin-left: auto;
margin-right: auto;
}
.low_txt_l {
font-size: 1.8rem;
}
.low_txt_m {
}
.low_txt_s {
font-size: 1.4rem;
}
.low_read p + p,
div[class*="low_txt_"] p + p {
margin-top: 1em;
}
@media (min-width:768px) {
	.low_txt_l01 {
	letter-spacing: 1px;
	}
	/*--div[class*="low_txt_"],
	.low_read {
	margin-right: 10px;
	margin-left: 10px;
	}--*/
	.low_txt_l {
	font-size: 1.8rem;
	}
}
@media (max-width:1023px) {
	.low_catch {
	font-size: 1.8rem;
	}
	.low_read_2 {
	line-height: inherit;
	}
}
@media (max-width:767px) {
	.low_catch {
	/*--width: fit-content;
	margin-left: auto;
	margin-right: auto;
	text-align: left;--*/
	font-size: 1.9rem;
	}
	.low_read_1 {
	font-size: 1.7rem;
	}
	.low_read_2 {
	font-size: inherit;
	}
	.low_txt_l {
	font-size: 1.6rem;
	}
	.low_txt_s {
	font-size: 1.3rem;
	}
	.low_read p + p,
	div[class*="low_txt_"] p + p {
	margin-top: 0.5em;
	}
}

/*-- テキストリンク --*/
.txt_link {
text-decoration: underline;
}
@media (min-width:768px) {
	/* hover */
	.txt_link:hover {
	opacity: .5;
	transition: .3s;
	}
}

/*-- レイアウト01（色背景） --*/
.lay01 {
padding: 30px;
background-color: #f1f1f1;
border-radius: 0;
}
.bg01 .lay01 {
background-color: #d1c4ac;
}
.lay01.bd {
background-color: transparent;
border: 1px solid #c7c7c7;
}
.lay01_ttl {
margin-bottom: 30px;
font-size: 2.2rem;
font-weight: bold;
text-align: center;
line-height: 1.4;
}
.lay01_txt {
}
.lay01 p + p {
margin-top: 1em;
}
@media (max-width:767px) {
	.lay01 {
	padding: 20px;
	}
	.lay01_ttl {
	margin-bottom: 10px;
	font-size: 1.7rem;
	}
	.lay01 p + p {
	margin-top: 0.5em;
	}
}

/*-- レイアウト02（画像＋説明文1） --*/
.lay02 {
overflow: hidden;
display: flex;
align-items: center;
height: 100%;
background-color: #fff;
border: 1px solid #c7c7c7;
border-radius: 10px;
}
.bg01 .lay02 {
background-color: #fff;
}
.lay02:nth-of-type(even) {
}
.lay02:nth-of-type(odd) {
flex-direction: row-reverse;
}
.lay02_box_ttl {
margin-bottom: 1em;
font-size: 2.0rem;
font-weight: bold;
}
.lay02_img {
width: 400px;
height: 100%;
}
.lay02_img img {
object-fit: cover;
width: 100%;
min-height: 350px;
height: 100%;
}
.lay02_box {
position: relative;
width: calc(100% - 400px);
height: 100%;
padding: 30px;
}
.lay02_box .low_h4 {
margin-top: 0 !important;
padding: 10px 20px;
font-size: 2.0rem;
}
.lay02_txt {
}
.lay02_txt p + p {
margin-top: 1em;
}
.lay02 .linkbtn {
min-width: 250px;
margin-top: 1em;
text-align: right;
}
.lay02 .linkbtn a {
min-width: inherit;
text-align: center;
text-decoration: none !important;
}
@media (max-width:1320px) {
}
@media (min-width:1024px) {
	.lay02_txt {
	line-height: 1.8;
	}
}
@media (max-width:1023px) {
	.lay02 {
	background-color: transparent;
	}
	.lay02_img {
	width: 350px;
	margin: auto;
	}
	.lay02_box {
	width: calc(100% - 350px);
	}
	.lay02_box_ttl {
	font-size: 1.8rem;
	}
}
@media (max-width:767px) {
	.lay02 {
	display: block;
	max-width: 400px;
	margin: auto;
	background-color: transparent;
	border-width: 1px;
	}
	.lay02_img {
	width: 100%;
	}
	.lay02_img img {
	aspect-ratio: 3 / 2;
	min-height: 100%;
	}
	.lay02_box {
	width: 100%;
	padding: 20px;
	}
	.lay02_box::before {
	width: calc(100% - 14px);
	height: calc(100% - 14px);
	}
	.lay02_box_ttl {
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	font-size: 1.6rem;
	}
	.lay02 .linkbtn {
	min-width: 200px;
	text-align: center;
	}
}

/*-- レイアウト02（画像＋説明文1） --*/
.lay03 {
overflow: hidden;
padding: 30px;
background-color: #fff;
border: 1px solid #c7c7c7;
border-radius: 10px;
}
.lay03 .low_h4 {
border-bottom-width: 0;
}
.lay03 .low_h4:first-of-type {
margin-top: 0 !important;
}
div[class*="lay03_box"] + div[class*="lay03_box"] {
margin-top: 40px;
}
.lay03_box1,
.lay03_box2 {
display: flex;
align-items: flex-start;
}
.lay03_box2 {
flex-direction: row-reverse;
}
.lay03_box1 .lay03_txt,
.lay03_box2 .lay03_txt {
width: calc(100% - 400px);
}
.lay03_box1 .lay03_txt {
padding-right: 30px;
}
.lay03_box2 .lay03_txt {
padding-left: 30px;
}
.lay03_txt p + p {
margin-top: 1em;
}
.lay03_box1 .lay03_img,
.lay03_box2 .lay03_img {
width: 400px;
}
.lay03_box3 {
}
.lay03_box3 .lay03_txt {
margin-bottom: 20px;
}
.lay03_img img {
}
@media (max-width:1023px) {
	.lay03_box1,
	.lay03_box2 {
	display: block;
	}
	.lay03_box1 .lay03_txt,
	.lay03_box2 .lay03_txt {
	width: 100%;
	margin-bottom: 20px;
	}
	.lay03_box1 .lay03_txt {
	padding-right: 0;
	}
	.lay03_box2 .lay03_txt {
	padding-left: 0;
	}
	.lay03_box1 .lay03_img,
	.lay03_box2 .lay03_img {
	width: 100%;
	}
}
@media (max-width:767px) {
	.lay03 {
	padding: 20px;
	border-width: 1px;
	}
}

/*-- faq --*/
.faq {
}
.faq_list {
}
.faq_list_li {
overflow: hidden;
margin-bottom: 15px;
border: 1px solid #c7c7c7;
border-radius: 0;
}
.faq_q {
cursor: pointer;
position: relative;
padding: 30px 50px 30px 75px;
font-weight: 500;
background-color: #fff;
}
.faq_a {
position: relative;
padding: 30px 20px 30px 75px;
border-top: 1px solid #ddd;
}
.faq_q::before,
.faq_a::before {
position: absolute;
content: "";
top: 50%;
transform: translateY(-50%);
left: 30px;
font-family: "arial",sans-serif;
font-size: 2.2rem;
line-height: 1;
}
.faq_q::before {
content: "Q.";
}
.faq_a::before {
content: "A.";
}
.faq_q::after {
z-index: 1;
position: absolute;
content: "";
width: calc(15px);
height: calc(15px);
top: 50%;
transform: translateY(-50%);
right: 20px;
background-image: url(./common/img/faq_toggle_open.png);
background-repeat: no-repeat;
background-size: contain;
filter: brightness(0) invert(.5);
}
.faq_q.open::after {
background-image: url(./common/img/faq_toggle_close.png);
background-repeat: no-repeat;
background-size: contain;
}
@media (max-width:1320px) {
}
@media (max-width:1023px) {
	.faq_list {
	}
	.faq_q {
	padding: 20px 55px 20px 65px;
	}
	.faq_a {
	padding: 20px 20px 20px 65px;
	}
	.faq_q::before,
	.faq_a::before {
	left: 20px;
	}
}
@media (min-width:768px) {
	/* hover */
	.faq_q:hover {
	background-color: #f1f1f1;
	transition: .5s;
	}
	.faq_q:hover::after {
	}
}
@media (max-width:767px) {
	.faq_list_li {
	margin-bottom: 6px;
	}
	.faq_q {
	padding: 15px 35px 15px 50px;
	}
	.faq_a {
	padding: 15px 15px 15px 50px;
	}
	.faq_q::before,
	.faq_a::before {
	left: 15px;
	font-size: 2.0rem;
	}
	.faq_q::after {
	width: calc(20px * .6);
	height: calc(20px * .6);
	right: 10px;
	}
	.faq_q.open::after {
	width: calc(20px * .6);
	height: calc(20px * .6);
	right: 10px;
	}
}

/*-- テーブル --*/
.tbl1 {
}
.tbl1 table {
table-layout: auto;
}
.fixed {
table-layout: fixed;
}
.tbl100 {
width: 100%;
}
.tbl_scr {
overflow-y: hidden !important;
overflow-x: hidden !important;
}
.tbl1 th,
.tbl1 td {
padding: 15px 20px;
line-height: 1.4;
background-color: #fff;
border: 1px solid #c7c7c7;
}
.tbl1 th {
width: 250px;
font-weight: bold;
background-color: #f5f5f5;
}
.tbl1 td {
width: calc(100% - 250px);
}
.tbl1 p + p,
.tbl1 p + ul,
.tbl1 ul + p,
.tbl1 ul + ul {
margin-top: 1em;
}
.tbl1 .list01 {
margin-left: 0;
margin-right: 0;
}
.tbl1 a.link {
display: block;
width: fit-content;
margin-top: 5px;
padding: 6px 12px;
font-size: 1.3rem;
font-weight: bold;
text-decoration: none !important;
line-height: 1;
border: 2px solid #252525;
border-radius: 4px;
}
.tbl1 a.link::after {
position: relative;
display: inline-block;
vertical-align: middle;
content: "";
width: 4px;
height: 4px;
top: -2px;
margin-left: 3px;
border-style: solid;
border-color: #252525;
border-width: 2px 2px 0 0;
transform: rotate(45deg);
}
@media (max-width:1023px) {
	.tbl1 {
	table-layout: fixed;
	}
	.tbl_scr {
	overflow-x: auto !important;
	}
	.tbl_scr::-webkit-scrollbar {
	width: 10px;
	height: 8px;
	background: #eee;
	}
	.tbl_scr::-webkit-scrollbar-thumb {
	background: #ccc;
	border-radius: 10px;
	}
	.tbl_scr .tbl1 {
	width: 1024px;
	}
}
@media (min-width:768px) {
	/* hover */
	.tbl1 a:hover {
	background-color: #f1f1f1;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.tbl1 th,
	.tbl1 td {
	padding: 10px;
	}
	.tbl1 th {
	width: 100px;
	}
	.tbl1 td {
	width: calc(100% - 100px);
	}
	.tbl_scr .tbl1 {
	width: 767px;
	}
	.tbl1.sp_tbl {
	}
	.tbl1.sp_tbl tr,
	.tbl1.sp_tbl th,
	.tbl1.sp_tbl td {
	display: block;
	width: 100% !important;
	}
	.tbl1.sp_tbl tr {
	margin-bottom: 10px;
	}
	.tbl1.sp_tbl th + td,
	.tbl1.sp_tbl td + td {
	border-top: 0;
	}
	.tbl1 a {
	font-size: 1.4rem;
	}
}

/*-- 2カラムtable --*/
.tbl_col2 {
}
@media (max-width:1023px) {
	.tbl_col2 .col2_in {
	width: 100%;
	margin-bottom: 10px;
	}
}

/*-- 定義リスト --*/
.dl1 {
}
.dl1 dl {
border-bottom: 1px solid #c7c7c7;
}
.dl1 dt {
position: relative;
padding: 20px;
font-weight: bold;
}
.dl1 dd {
padding: 20px;
}
@media (min-width:768px) {
	.dl1 dl {
	display: flex;
	}
	.dl1 dt {
	width: 250px;
	}
	.dl1 dd {
	width: calc(100% - 250px);
	}
}
@media (max-width:767px) {
	.dl1 dl {
	position: relative;
	border-bottom: 1px solid #c7c7c7;
	}
	.dl1 dt {
	border-bottom-width: 0;
	padding: 15px 10px 0 10px;
	}
	.dl1 dd {
	border-bottom-width: 0;
	padding: 5px 10px 15px 10px;
	}
}

/*-- フロー --*/
.flow {
}
.flow_list {
}
.flow_list_li {
position: relative;
margin-bottom: 40px;
padding: 30px;
background-color: #f5f5f5;
border: 1px solid #c7c7c7;
border-radius: 6px;
}
.bg01 .flow_list_li {
background-color: #fff;
}
.flow_list_li:not(:last-of-type)::after {
position: absolute;
content: "";
width: 30px;
height: 20px;
bottom: -30px;
right: 0;
left: 0;
margin: auto;
background-color: #ccc;
clip-path: polygon(100% 0, 0 0, 50% 100%);
-webkit-clip-path: polygon(100% 0, 0 0, 50% 100%);
}
.flow_txt1 {
margin-bottom: .5em;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
}
.flow_txt2 {
width: fit-content;
margin-left: auto;
margin-right: auto;
}
@media (max-width:1023px) {
	.flow_list_li {
	border-width: 1px;
	}
	.flow_txt1 {
	font-size: 1.8rem;
	}
}
@media (max-width:767px) {
	.flow_list_li {
	margin-bottom: 35px;
	padding: 15px;
	}
	.flow_list_li:not(:last-of-type)::after {
	width: 30px;
	height: 20px;
	bottom: -28px;
	}
	.flow_txt1 {
	font-size: 1.8rem;
	}
}

/*-- ダウンロード --*/
.download {
}
.download li {
font-weight: bold;
}
.download li + li {
margin-top: 10px;
}
.download a {
position: relative;
display: block;
padding: 15px 80px 15px 15px;
text-decoration: none !important;
background-color: #f1f1f1;
border-left: 15px solid #ccc;
border-radius: 4px;
}
.bg01 .download a {
background-color: #d1c4ac;
border-color: #888;
}
.download a::before {
position: absolute;
content: "";
width: 28px;
height: 28px;
top: 50%;
transform: translateY(-50%);
right: 30px;
background-image: url(./common/img/ico_download.png);
background-repeat: no-repeat;
background-size: contain;
}
@media (max-width:1023px) {
}
@media (min-width:768px) {
	/* hover */
	.download a:hover {
	color: #fff;
	background-color: #02a14d;
	border-color: #02a14d;
	transition: .5s;
	}
	.download a:hover::before {
	filter: brightness(0) invert(1);
	transition: .5s;
	}
}
@media (max-width:767px) {
	.download li + li {
	margin-top: 8px;
	}
	.download a {
	padding: 10px 50px 10px 10px;
	border-left-width: 10px;
	border-radius: 4px;
	}
	.download a::before {
	width: 20px;
	height: 20px;
	right: 20px;
	}
}

/*-- 多列カラム --*/
.col2,
.col3,
.col4,
.col5,
.col6 {
display: flex;
flex-wrap: wrap;
margin-right: -12px;
margin-left: -12px;
}
.col2_in,
.col3_in,
.col4_in,
.col5_in,
.col6_in {
width: calc(50% - 24px);
margin-right: 12px;
margin-left: 12px;
margin-bottom: 40px;
}
.col_ttl {
font-size: 1.8rem;
font-weight: bold;
text-align: center;
}
.col_txt {
}
.col_img img {
object-fit: cover;
aspect-ratio: 4 / 3;
width: 100%;
height: 100%;
}
.col_ttl + .col_txt,
.col_img + .col_txt,
.col_txt + .col_ttl,
.col_img + .col_ttl,
.col_ttl + .col_img,
.col_txt + .col_img {
margin-top: 10px;
}
@media (min-width:1024px) {
	.col3_in {
	width: calc(33.3333% - 24px);
	}
	.col4_in {
	width: calc(25% - 24px);
	}
	.col5_in {
	width: calc(20% - 24px);
	}
	.col6_in {
	width: calc(16.6666666667% - 24px);
	}
}
@media (max-width:1023px) {
}
@media (max-width:767px) {
	.col2,
	.col3,
	.col4,
	.col5,
	.col6 {
	margin-right: -5px;
	margin-left: -5px;
	}
	.col2_in,
	.col3_in,
	.col4_in,
	.col5_in,
	.col6_in {
	width: calc(50% - 10px);
	margin-right: 5px;
	margin-left: 5px;
	margin-bottom: 30px;
	}
	.col2.sp_col1,
	.col3.sp_col1,
	.col4.sp_col1,
	.col5.sp_col1,
	.col6.sp_col1 {
	display: block;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 0;
	}
	.sp_col1 .col2_in,
	.sp_col1 .col3_in,
	.sp_col1 .col4_in,
	.sp_col1 .col5_in,
	.sp_col1 .col6_in {
	width: 100%;
	margin-right: 0;
	margin-left: 0;
	margin-bottom: 30px;
	}
	.col_ttl {
	font-size: 1.6rem;
	}
	.col_ttl + .col_txt,
	.col_img + .col_txt,
	.col_txt + .col_ttl,
	.col_img + .col_ttl,
	.col_ttl + .col_img,
	.col_txt + .col_img {
	margin-top: 5px;
	}
}

/*-- 3カラムリンクバナー --*/
.linkbnr {
}
.linkbnr .col3_in {
overflow: hidden;
position: relative;
background-color: #f1f1f1;
border-radius: 8px;
}
.bg01 .linkbnr .col3_in {
background-color: #d1c4ac;
}
.linkbnr .col3_in a {
z-index: 1;
position: absolute;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.linkbnr_box {
padding: 20px;
}
.linkbnr .col_ttl {
text-align: left;
}
.linkbnr .col_txt {
}
.linkbnr {
}
.linkbnr {
}
@media (min-width:768px) {
	/* hover */
	.linkbnr .col3_in:hover {
	opacity: .5;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.linkbnr_box {
	padding: 15px;
	}
}

/*-- リスト --*/
.list01_li {
margin: 4px 0;
padding-left: 1em;
text-indent: -1em;
}
.list01_li + .list01_li {
}
.list02_li + .list01_li {
margin-top: 1em;
}
.list02 {
}
.list02_li {
position: relative;
padding-left: 28px;
}
.list02_li::before {
position: absolute;
content: "";
width: 7px;
height: 2px;
top: 12px;
left: 10px;
background-color: #4d8bff;
}
.list03 {
}
.list03_li {
position: relative;
padding: 12px 10px 12px 35px;
border-bottom: 1px dashed #c7c7c7;
}
.list03_li::before {
position: absolute;
content: "";
width: 6px;
height: 6px;
top: 50%;
transform: translateY(-50%);
left: 12px;
background-color: #f5f5f5;
border: 2px solid #aaa;
border-radius: 50%;
}
.list04 {
}
.list04_ul {
counter-reset: listnum;
}
.list04_li::before {
counter-increment: listnum;
content: counter(listnum)".";
width: inherit !important;
height: inherit !important;
top: inherit;
transform: inherit;
font-weight: 500;
color: #222;
background-color: inherit;
border-width: 0;
}
.list04_li::marker {
}
@media (min-width:768px) {
	.list01,
	.list02,
	.list03,
	.list04 {
	margin-left: 10px;
	margin-right: 10px;
	}
	.list04_li {
	font-size: 1.8rem;
	}
}
@media (max-width:767px) {
	.list02_li {
	padding-left: 22px;
	}
	.list02_li + li {
	margin-top: 0.7em;
	}
	.list02_li::before {
	width: 5px;
	height: 2px;
	top: 10px;
	}
	.list03_li {
	padding: 10px 5px 10px 28px;
	}
	.list03_li::before {
	width: 6px;
	height: 6px;
	left: 10px;
	}
}

/*-- GoogleMap埋め込み --*/
.gmap {
}
.gmap iframe {
display: block;
width: 100%;
height: 600px;
border-width: 0 !important;
}
@media (max-width:767px) {
	.gmap iframe {
	height: 400px;
	}
}

/*-- リンクボタン --*/
.linkbtn {
font-weight: bold;
text-align: center;
}
.linkbtn a {
position: relative;
display: inline-block;
min-width: 250px;
margin-left: auto;
margin-right: auto;
padding: 16px 36px 16px 65px;
text-decoration: none !important;
letter-spacing: 1px;
color: #fff;
background-color: #4d8bff;
border: 2px solid #4d8bff;
border-radius: 100px;
}
.linkbtn a::after {
position: absolute;
content: "";
width: 33px;
height: 33px;
top: 50%;
transform: translateY(-50%);
left: 11px;
background-color: #2362d7;
background-image: url(./common/img/ico_arrow01_w.svg);
background-repeat: no-repeat;
background-position: center;
background-size: 13px auto;
border-radius: 100%;
}
.linkbtn_list {
display: flex;
flex-wrap: wrap;
margin: 0 -10px -20px -10px;
}
.linkbtn_list li {
margin: 0 10px 20px 10px;
width: calc(50% - 20px);
}
.linkbtn_list_3col li {
width: calc(33.3333% - 20px);
}
.linkbtn_list_4col li {
width: calc(25% - 20px);
}
.linkbtn_list a {
display: flex;
align-items: center;
justify-content: center;
min-width: 100%;
text-align: left;
}
.linkbtn .linkbtn_list a {
min-width: 100%;
}
@media (max-width:1023px) {
	.linkbtn a {
	padding: 14px 30px 14px 60px;
	}
	.linkbtn a::after {
	width: 26px;
	height: 26px;
	background-size: 9px auto;
	}
}
@media (min-width:768px) {
	/* hover */
	.linkbtn a:hover {
	background-color: #34c3e0;
	border-color: #34c3e0;
	transition: .3s;
	}
	.linkbtn a:hover::after {
	background-color: rgba(255, 255, 255, .7);
	background-image: url(./common/img/ico_arrow01_green.svg);
	transition: .3s;
	}
}
@media (max-width:767px) {
	.linkbtn a {
	padding: 14px 30px 14px 60px;
	}
	.linkbtn a::after {
	width: 26px;
	height: 26px;
	background-size: 9px auto;
	}
}

/*-----------------------
 ブログ
-----------------------*/
.blog {
}
/*-- 共通 --*/
.blog_category {
display: flex;
flex-wrap: wrap;
flex-wrap: wrap;
justify-content: flex-end;
margin-right: -2px;
margin-bottom: 5px;
}
.blog_category li {
margin: 2px;
padding: 4px 8px;
font-size: 1.2rem;
text-align: center;
line-height: 1;
background-color: #fff;
border-radius: 2px;
}
.blog_date {
font-size: 1.5rem;
text-align: right;
line-height: 1;
letter-spacing: 1px;
}
/*-- アーカイブ --*/
.blog_archives {
}
.blog_list {
display: flex;
flex-wrap: wrap;
margin: -12px;
}
.blog_list_li {
overflow: hidden;
position: relative;
width: calc(33.3333% - 24px);
margin: 12px;
background-color: #fff;
border-radius: 15px;
}
.blog_list_li>a {
z-index: 1;
display: block;
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.blog_list_box {
}
.blog_list_box_img {
object-fit: cover;
aspect-ratio: 3 / 2;
width: 100%;
height: 100%;
background-image: url(./common/img/blog/icatch.jpg);
background-repeat: no-repeat;
background-size: cover;
}
.blog_list_box_img img {
object-fit: cover;
width: 100%;
height: 100%;
}
.blog_list_box_in {
padding: 20px;
text-align: justify;
}
.blog_date {
margin-bottom: 10px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 1.3rem;
text-align: left;
letter-spacing: .5px;
line-height: 1;
}
.blog_list_ttl {
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 2;
text-overflow: ellipsis;
margin-bottom: 10px;
font-size: 1.8rem;
letter-spacing: 1px;
line-height: 1.4;
}
.blog_list_txt {
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3;
text-overflow: ellipsis;
letter-spacing: 0;
font-weight: normal;
line-height: 1.4;
}
.blog_list_box .blog_category {
position: absolute;
top: 10px;
right: 15px;
}
/*-- ページャー --*/
.wp-pagenavi {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
margin-top: 50px;
font-family: "arial",sans-serif;
line-height: 1;
}
.wp-pagenavi .pages {
margin-right: 10px;
}
.wp-pagenavi .page,
.wp-pagenavi .current {
width: 30px;
height: 30px;
margin: 2px;
display: flex;
align-items: center;
justify-content: center;
background-color: #eee;
border-radius: 100%;
}
.wp-pagenavi .current {
font-weight: bold;
color: #fff;
background-color: #4d8bff;
border: 1px solid;
}
.wp-pagenavi .nextpostslink {
margin-left: 10px;
font-size: 2.0rem;
}
/*-- シングルページ --*/
.blog_single_box {
margin-bottom: 3em;
padding: 50px;
background-color: #fff;
border-radius: 30px;
}
.blog_single .blog_date {
margin-bottom: 10px;
font-size: 1.7rem;
}
.blog_single .blog_category {
margin-bottom: 10px;
}
.blog_single .blog_category li {
background-color: #f3f8ff;
}
.blog_single_title {
margin: 0 auto 30px;
font-family: "Kiwi Maru",sans-serif;
font-weight: 500;
font-size: 2.7rem;
}
.post_in {
text-align: justify;
line-height: 2;
}
.post_in h1 {
margin-top: 0;
margin-bottom: 1em;
padding: 15px;
font-size: 120%;
background-color: #9dbdf8;
border-radius: 6px;
}
.post_in h2 {
margin-top: 0;
margin-bottom: 1em;
padding-bottom: 5px;
font-size: 115%;
border-bottom: 2px solid #aaa;
}
.post_in h3 {
width: fit-content;
margin-top: 0;
margin-bottom: 1em;
padding-bottom: 5px;
font-size: 110%;
border-bottom: 1px solid #aaa;
}
.post_in h4 {
margin-bottom: .5em;
}
.post_in h5 {
margin-bottom: .5em;
}
.post_in h6 {
margin-bottom: .5em;
}
.post_in img {
width: auto;
max-width: 800px;
margin: 2em auto 2em;
border-radius: 8px;
}
.post_in p a {
text-decoration: underline;
}
.post_in ul,
.post_in ol {
margin-top: 1em;
margin-bottom: 1em;
margin-left: 1.5em;
}
.post_in ul {
list-style: disc;
}
.post_in ol {
list-style: decimal;
}
.post_dl_btn {
}
.post_dl_btn a {
}
/*-- singleページャー --*/
.single_pager {
z-index: 1;
display: flex;
display: box;
align-items: center;
position: relative;
letter-spacing: 0;
}
.single_pager li {
position: relative;
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
text-overflow: ellipsis;
width: 33.3333%;
}
.single_pager_prev,
.single_pager_next {
width: calc((100% - 150px)/2);
overflow: hidden;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
text-overflow: ellipsis;
}
.single_pager li a {
padding: 0 15px;
}
.single_pager_prev a,
.single_pager_next a {
display: block;
width: fit-content;
}
.single_pager_next a {
margin-left: auto;
}
.single_pager_prev::before,
.single_pager_next::before {
position: absolute;
content: "";
width: 5px;
height: 5px;
top: 9px;
transform: rotate(45deg);
}
.single_pager_prev::before {
left: 1px;
border-bottom: 2px solid #252525;
border-left: 2px solid #252525;
}
.single_pager_next::before {
right: 1px;
border-top: 2px solid #252525;
border-right: 2px solid #252525;
}
.single_pager_return {
width: 150px;
text-align: center;
}
@media (max-width:1320px) {
	.blog_list_ttl {
	font-size: inherit;
	}
	.blog_list_txt {
	font-size: 90%;
	}
}
@media (max-width:1023px) {
	.blog_category li {
	padding: 4px 5px;
	}
	.blog_list_li {
	width: calc(50% - 24px);
	}
	.wp-pagenavi {
	}
	.blog_single_box {
	padding: 30px;
	}
	.post_in {
	line-height: inherit;
	}
	.blog_single .blog_date {
	font-size: 1.5rem;
	}
	.blog_single_title {
	margin-bottom: 1em;
	font-size: 2.4rem;
	}
	.post_in img {
	width: 100%;
	max-width: 100%;
	}
}
@media (min-width:768px) {
	/*-- hover */
	.blog_list_li:hover {
	opacity: .6;
	transition: .5s;
	}
	.wp-pagenavi .page:hover {
	font-weight: bold;
	color: #fff;
	background-color: #4d8bff;
	transition: .5s;
	}
	.single_pager li a:hover {
	opacity: .5;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.blog_list {
	margin: -6px;
	}
	.blog_list_li {
	width: calc(50% - 12px);
	margin: 6px;
	border-radius: 8px;
	}
	.blog_list_box {
	}
	.blog_list_box_in {
	padding: 15px;
	text-align: left;
	}
	.blog_archives .blog_date {
	margin-bottom: 5px;
	font-size: 1.2rem;
	}
	.blog_list_box .blog_category {
	top: 3px;
	right: 5px;
	}
	.blog_list_box .blog_category li {
	padding: 3px;
	font-size: 1.1rem;
	border-width: 0;
	}
	.blog_list_ttl {
	margin-bottom: 5px;
	font-size: 1.4rem;
	}
	.blog_list_txt {
	-webkit-line-clamp: 3;
	line-height: 1.3;
	}
	.blog_single_box {
	padding: 20px;
	border-radius: 15px;
	}
	.blog_single .blog_date {
	margin-bottom: 5px;
	font-size: 1.3rem;
	}
	.blog_single .blog_category {
	margin-bottom: 5px;
	}
	.blog_single_title {
	font-size: 2.0rem;
	}
	.post_in {
	text-align: left;
	}
	.single_pager {
	display: block;
	}
	.single_pager {
	display: block;
	}
	.single_pager li {
	width: 100%;
	}
	.single_pager_prev,
	.single_pager_return {
	margin-bottom: 8px;
	}
	.single_pager li a {
	padding: 0 10px;
	font-size: 1.4rem;
	}
	.single_pager_prev::before,
	.single_pager_next::before {
	width: 4px;
	height: 4px;
	top: 8px;
	border-width: 1px !important;
	}
}

/*-----------------------
 リフォーム
-----------------------*/
.reform_page {
}
.reform_msg {
min-height: 480px;
display: flex;
align-items: center;
justify-content: center;
}
.reform_msg::before {
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: linear-gradient(to bottom, #f3f8ff 10%, transparent);
}
.reform_msg::after {
opacity: .5;
z-index: -9;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: url(./common/img/reform/msg_bg.jpg);
background-repeat: no-repeat;
background-position: center;
background-size: cover;
}
.reform_msg_box {
max-width: 800px;
}
.reform_msg_txt1 {
width: fit-content;
margin: auto;
font-family: "Kiwi Maru",sans-serif;
font-size: 2.6rem;
font-weight: 500;
letter-spacing: 4px;
line-height: 2;
}
.reform_msg_txt2 {
margin-top: 30px;
font-size: 1.8rem;
line-height: 2;
}
.reform_about {
}
.reform_about_list {
display: flex;
flex-wrap: wrap;
margin: 0 -12px;
}
.reform_about_list_in {
width: calc(33.3333% - 24px);
margin: 0 12px;
}
.reform_about_list_in_ttl {
margin-bottom: 10px;
padding: 15px 20px;
font-size: 2.2rem;
font-weight: 800;
text-align: center;
line-height: 1.4;
background-color: #9dbdf8;
border-radius: 100px;
}
.reform_about_list_in_box {
padding: 30px;
background-color: #f3f8ff;
border-radius: 30px;
}
.reform_about_list_in_img {
margin-bottom: 10px;
}
.reform_about_list_in_img img {
max-width: 280px;
margin: auto;
}
.reform_about_list_in_txt {
text-align: justify;
}
.reform_menu {
}
.reform_menu::before,
.reform_menu::after {
opacity: .3;
z-index: -9;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 50%;
transform: translateX(-50%);
background-repeat: no-repeat;
background-size: 1920px auto;
}
.reform_menu::before {
background-image: url(./common/img/top/greeting_bg.png);
background-position: top 200px center;
}
.reform_menu::after {
background-image: url(./common/img/top/greeting_bg_r.png);
background-position: bottom 200px center;
}
.reform_menu_list {
}
.reform_menu_list_in {
overflow: hidden;
z-index: 1;
display: flex;
background-color: #fff;
border-radius: 30px;
}
.reform_menu_list_in:nth-of-type(even) {
flex-direction: row-reverse;
}
.reform_menu_list_in + .reform_menu_list_in {
margin-top: 40px;
}
.reform_menu_list_in_box {
width: 50%;
padding: 50px;
}
.reform_menu_list_ttl {
margin-bottom: 30px;
font-size: 2.6rem;
line-height: 1.4;
color: #152b83;
}
.reform_menu_list_txt {
font-size: 1.8rem;
text-align: justify;
line-height: 2;
}
.reform_menu_list_img {
width: 50%;
}
.reform_menu_list_img img {
object-fit: cover;
aspect-ratio: 16 / 9;
width: 100%;
height: 100%;
}
.reform_menu_more {
z-index: 1;
overflow: hidden;
position: relative;
margin-top: 100px;
height: 200px;
text-shadow: 0 0 10px rgba(0,0,0,.3);
background-color: #000;
border-radius: 10px;
}
.reform_menu_more::before {
opacity: .6;
z-index: -1;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: url(./common/img/reform/more_bg.jpg);
background-repeat: no-repeat;
background-position: center;
background-size: cover;
}
.reform_menu_more a {
position: relative;
display: block;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 100%;
font-size: 2.8rem;
font-weight: 800;
letter-spacing: 3px;
color: #fff;
}
.reform_menu_more a::after {
position: relative;
display: inline-block;
vertical-align: middle;
content: "";
width: 50px;
height: 50px;
margin-left: 30px;
background-color: #4d8bff;
background-image: url(./common/img/ico_arrow01_w.svg);
background-repeat: no-repeat;
background-position: center;
background-size: 15px auto;
border-radius: 100%;
}
@media (max-width:1320px) {
	.reform_menu::before,
	.reform_menu::after {
	background-size: 1920px auto;
	}
	.reform_menu::before {
	background-position: top center;
	}
	.reform_menu::after {
	background-position: bottom 20% center;
	}
	.reform_about_list_in_img img {
	max-width: 230px;
	}
	.reform_menu_list_in_box {
	padding: 30px;
	}
	.reform_menu_list_ttl {
	margin-bottom: 20px;
	font-size: 2.2rem;
	}
	.reform_menu_list_txt {
	font-size: inherit;
	line-height: 1.8;
	}
}
@media (max-width:1023px) {
	.reform_menu::before,
	.reform_menu::after {
	background-size: 1260px auto;
	}
	.reform_msg {
	min-height: 350px;
	}
	.reform_msg_txt1 {
	font-size: 2.4rem;
	line-height: 1.8;
	}
	.reform_msg_txt2 {
	font-size: inherit;
	}
	.reform_about_list_in_ttl {
	padding: 12px 10px;
	font-size: 2.0rem;
	}
	.reform_about_list_in_box {
	padding: 20px;
	border-radius: 15px;
	}
	.reform_about_list_in_img img {
	max-width: 150px;
	}
	.reform_menu_list_in {
	border-radius: 15px;
	}
	.reform_menu_list_in + .reform_menu_list_in {
	margin-top: 20px;
	}
	.reform_menu_list_in_box {
	padding: 20px;
	}
	.reform_menu_list_ttl {
	margin-bottom: 15px;
	font-size: 2.0rem;
	}
	.reform_menu_list_txt {
	font-size: inherit;
	line-height: inherit;
	}
	.reform_menu_more {
	margin-top: 80px;
	height: 150px;
	}
	.reform_menu_more a {
	font-size: 2.4rem;
	letter-spacing: 2px;
	}
	.reform_menu_more a::after {
	width: 40px;
	height: 40px;
	margin-left: 20px;
	background-size: 12px auto;
	}
}
@media (min-width:768px) {
	/* hover */
	.reform_menu_more:hover::before {
	opacity: .8;
	transform: scale(1.1, 1.1);
	transition: .5s;
	}
}
@media (max-width:767px) {
	.reform_msg {
	min-height: 250px;
	}
	.reform_msg_txt1 {
	width: 100%;
	font-size: 2.0rem;
	line-height: inherit;
	}
	.reform_msg_txt1 br {
	display: none;
	}
	.reform_msg_txt2 {
	margin-top: 20px;
	line-height: inherit;
	}
	.reform_about_list {
	justify-content: center;
	margin: -12px -6px;
	}
	.reform_about_list_in {
	width: calc(50% - 12px);
	margin: 12px 6px;
	}
	.reform_about_list_in_ttl {
	padding: 10px;
	font-size: 1.8rem;
	}
	.reform_menu_list_txt {
	text-align: left;
	}
	.reform_about_list_in_box {
	padding: 15px;
	}
	.reform_about_list_in_img img {
	max-width: 120px;
	}
	.reform_about_list_in_txt {
	text-align: left;
	}
	.reform_menu_list_in {
	display: block;
	}
	.reform_menu_list_in + .reform_menu_list_in {
	margin-top: 20px;
	}
	.reform_menu_list_in_box {
	width: 100%;
	padding: 15px;
	}
	.reform_menu_list_ttl {
	width: fit-content;
	margin: 0 auto 10px;
	font-size: 1.8rem;
	}
	.reform_menu_list_img {
	width: 100%;
	}
	.reform_menu_more {
	margin-top: 60px;
	height: 100px;
	}
	.reform_menu_more a {
	font-size: 1.8rem;
	letter-spacing: 1px;
	}
	.reform_menu_more a::after {
	width: 30px;
	height: 30px;
	margin-left: 15px;
	background-size: 10px auto;
	}
}

/*-----------------------
 ビルメンテナンス
-----------------------*/
.maintenance_page {
}
#maintenance_msg.reform_msg::after {
background-image: url(./common/img/maintenance/msg_bg.jpg);
}
@media (max-width:1320px) {
}
@media (max-width:1023px) {
}
@media (min-width:768px) {
}
@media (max-width:767px) {

}

/*-----------------------
 クリーニング・清掃
-----------------------*/
.cleaning_page {
}
#cleaning_msg.reform_msg::after {
background-image: url(./common/img/cleaning/msg_bg.jpg);
background-position: bottom center;
}
#cleaning_menu .reform_menu_more::before {
background-image: url(./common/img/cleaning/more_bg.jpg);
}
@media (max-width:1320px) {
}
@media (max-width:1023px) {
}
@media (min-width:768px) {
}
@media (max-width:767px) {

}

/*-----------------------
 遺品整理
-----------------------*/
.estate_page {
}
#estate_msg.reform_msg::after {
opacity: .8;
background-image: url(./common/img/estate_cleanup/msg_bg.jpg);
background-position: bottom center;
}
.estate_help {
}
.estate_help_list {
max-width: 800px;
margin: 0 auto 60px;
line-height: 1.4;
}
.estate_help_img {
max-width: 400px;
margin: auto;
}
.estate_help_list_in {
position: relative;
padding: 20px 20px 20px 80px;
font-family: "Kiwi Maru",sans-serif;
font-size: 2.2rem;
font-weight: 500;
background-color: #cad8f2;
border-radius: 100px;
}
.estate_help_list_in + .estate_help_list_in {
margin-top: 20px;
}
.estate_help_list_in::before {
position: absolute;
content: "";
width: 30px;
height: 30px;
top: 50%;
transform: translateY(-50%);
left: 30px;
background-image: url(./common/img/mark.png);
background-repeat: no-repeat;
background-size: contain;
}
.cnt_bnr {
z-index: 1;
overflow: hidden;
position: relative;
margin: 100px auto 0;
padding: 60px;
background-color: #000;
border-radius: 30px;
}
.cnt_bnr::before {
opacity: .8;
z-index: -1;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: url(./common/img/top/mv_bg.jpg);
background-repeat: no-repeat;
background-size: cover;
}
.cnt_bnr_ttl {
display: flex;
align-items: center;
flex-wrap: wrap;
justify-content: center;
margin-bottom: 40px;
text-align: center;
font-weight: 800;
}
.cnt_bnr_ttl_1 {
display: block;
font-size: 3.8rem;
color: #e6e93f;
}
.cnt_bnr_ttl_2,
.cnt_bnr_ttl_3 {
display: block;
font-size: 3.2rem;
color: #fff;
}
.cnt_bnr_ttl_3 {
width: 100%;
}
.cnt_bnr_box {
display: flex;
align-items: center;
justify-content: center;
font-weight: bold;
line-height: 1;
}
.cnt_bnr_tel,
.cnt_bnr_mail {
width: 340px;
border-radius: 100px;
}
.cnt_bnr_tel {
margin-right: 30px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 3.0rem;
color: #152b83;
background-color: #fff;
}
.cnt_bnr_mail {
font-size: 2.0rem;
color: #fff;
background-color: #152b83;
}
.cnt_bnr_tel a,
.cnt_bnr_mail a {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 80px;
padding-left: 45px;
}
.cnt_bnr_tel a {
}
.cnt_bnr_mail a {
}
.cnt_bnr_tel a::before,
.cnt_bnr_mail a::before {
position: absolute;
content: "";
background-repeat: no-repeat;
background-position: center;
background-size: contain;
top: 50%;
transform: translateY(-50%);
left: 35px;
}
.cnt_bnr_tel a::before {
width: 33px;
height: 33px;
background-image: url(./common/img/ico_tel.svg);
}
.cnt_bnr_mail a::before {
width: 30px;
height: 30px;
background-image: url(./common/img/ico_mail_w.svg);
filter: brightness(0) invert(1);
}
@media (max-width:1320px) {
	.estate_help_list_in {
	padding: 15px 20px 15px 60px;
	font-size: 1.8rem;
	}
	.estate_help_list_in::before {
	width: 20px;
	height: 20px;
	left: 25px;
	}
	.estate_help_list_in + .estate_help_list_in {
	margin-top: 10px;
	}
	.estate_help_img {
	max-width: 350px;
	}
}
@media (max-width:1023px) {
	.estate_help_list {
	margin-bottom: 30px;
	}
	.estate_help_list_in {
	padding: 12px 20px 12px 60px;
	font-size: 1.7rem;
	}
	.estate_help_img {
	max-width: 300px;
	}
}
@media (min-width:768px) {
	/* hover */
	.cnt_bnr_mail:hover {
	background-color: #34c3e0;
	transition: .3s;
	}
}
@media (max-width:767px) {
	.estate_help_list_in {
	padding: 12px 12px 12px 50px;
	font-size: 1.6rem;
	}
	.estate_help_list_in::before {
	width: 18px;
	height: 18px;
	left: 20px;
	}
	.estate_help_img {
	max-width: 250px;
	}
}

/*-----------------------
 施工事例
-----------------------*/
.case_page {
}
.case_entrance {
}
.case_entrance_ttl {
margin-bottom: 80px;
padding-top: 100px;
font-size: 3.0rem;
font-weight: 800;
text-align: center;
line-height: 1.4;
color: #152b83;
background-image: url(./common/img/case/ico_ttl.png);
background-repeat: no-repeat;
background-position: top center;
background-size: 80px auto;
}
.case_entrance_list {
display: flex;
}
.case_entrance_list_in {
z-index: 1;
position: relative;
overflow: hidden;
display: flex;
align-items: center;
flex-direction: column;
justify-content: center;
width: calc(50% - 20px);
height: 300px;
text-align: center;
line-height: 1;
background-color: #000;
border: 6px solid #fff;
box-shadow: 0 0 10px rgba(0,0,0,.2);
border-radius: 30px;
}
.case_entrance_list_in.reform {
margin-right: 20px;
}
.case_entrance_list_in.cleaning {
margin-left: 20px;
}
.case_entrance_list_in::before {
opacity: .6;
z-index: -1;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-repeat: no-repeat;
background-position: center;
background-size: cover;
}
.case_entrance_list_in.reform::before {
background-image: url(./common/img/case/entrance_reform.jpg);
}
.case_entrance_list_in.cleaning::before {
background-image: url(./common/img/case/entrance_cleaning.jpg);
}
.case_entrance_list_in a {
z-index: 1;
position: absolute;
display: block;
width: 100%;
height: 100%;
top: 0;
left: 0;
}
.case_entrance_list_txt1 {
margin-bottom: 15px;
font-size: 3.4rem;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-weight: bold;
color: #e6e93f;
}
.case_entrance_list_txt2 {
margin-bottom: 40px;
font-size: 3.0rem;
font-weight: 800;
color: #fff;
}
.case_entrance_list_more {
padding: 12px 40px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-weight: bold;
background-color: #fff;
border-radius: 100px;
}
.case_sec {
}
.case_list {
}
.case_list_in {
padding: 60px;
background-color: #fff;
border-radius: 30px;
}
.case_list_in + .case_list_in {
margin-top: 30px;
}
.case_sec_img {
display: flex;
flex-wrap: wrap;
margin: -12px;
}
.case_sec_img_li {
width: calc(50% - 24px);
margin: 12px;
}
.case_sec_ba {
max-width: calc(100% - 30px);
margin: auto;
}
.case_sec_ba_in {
overflow: hidden;
position: relative;
display: flex;
align-items: center;
}
.case_sec_ba_in + .case_sec_ba_in {
margin-top: 40px;
}
.case_sec_ba_in_b,
.case_sec_ba_in_a {
position: relative;
}
.case_sec_ba_in_b {
width: calc(40% - 40px);
margin-right: 40px;
}
.case_sec_ba_in_a {
width: 60%;
}
.case_sec_ba_in_b::before,
.case_sec_ba_in_a::before {
position: absolute;
display: flex;
align-items: center;
justify-content: center;
padding: 8px 20px;
top: 0;
font-family: "Montserrat", "Noto Sans JP", sans-serif;
font-weight: bold;
color: #fff;
}
.case_sec_ba_in_b::before {
content: "Before";
left: 0;
font-size: 1.3rem;
background-color: #152b83;
border-radius: 12px 0 20px 0;
}
.case_sec_ba_in_a::before {
content: "After";
right: 0;
font-size: 1.8rem;
background-color: #4d8bff;
border-radius: 0 12px 0 20px;
}
.case_sec_ba_in_b::after {
z-index: 1;
position: absolute;
content: "";
width: 23px;
height: 28px;
top: 50%;
transform: translateY(-50%);
right: -32px;
background-color: #000;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
-webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.case_sec_ba_in_b img,
.case_sec_ba_in_a img,
.case_sec_img img {
object-fit: cover;
aspect-ratio: 3 / 2;
width: 100%;
height: 100%;
border-radius: 15px;
}
.case_sec_ba + .case_sec_img,
.case_sec_img + .case_sec_ba {
margin-top: 20px;
}
.case_sec_txt {
margin: 40px auto 0;
text-align: justify;
}
.case_sec_txt_p + .case_sec_txt_p {
margin-top: 1em;
}
@media (max-width:1320px) {
	.case_list_in {
	padding: 30px;
	}
}
@media (max-width:1023px) {
	.case_entrance_ttl {
	margin-bottom: 60px;
	padding-top: 80px;
	font-size: 2.6rem;
	background-size: 60px auto;
	}
	.case_entrance_list_in {
	width: calc(50% - 10px);
	height: 260px;
	border-width: 4px;
	border-radius: 15px;
	}
	.case_entrance_list_in.reform {
	margin-right: 10px;
	}
	.case_entrance_list_in.cleaning {
	margin-left: 10px;
	}
	.case_entrance_list_txt1 {
	font-size: 3.0rem;
	}
	.case_entrance_list_txt2 {
	margin-bottom: 20px;
	font-size: 2.8rem;
	}
	.case_entrance_list_more {
	padding: 10px 35px;
	font-size: 90%;
	}
	.case_list_in {
	padding: 20px;
	border-radius: 15px;
	}
	.case_sec_ba_in_b::after {
	width: 18px;
	height: 20px;
	right: -28px;
	}
}
@media (min-width:768px) {
	/* hover */
	.case_entrance_list_in:hover {
	border-color: #34c3e0;
	transition: .5s;
	}
	.case_entrance_list_in:hover::before {
	opacity: .8;
	transform: scale(1.1, 1.1);
	transition: .5s;
	}
	.case_entrance_list_in:hover .case_entrance_list_txt1 {
	color: #fff;
	text-shadow: 0 0 10px rgba(0,0,0,.5);
	}
	.case_entrance_list_in:hover .case_entrance_list_txt2 {
	text-shadow: 0 0 10px rgba(0,0,0,.5);
	}
	.case_entrance_list_in:hover .case_entrance_list_more {
	color: #fff;
	background-color: #34c3e0;
	transition: background-color .5s;
	}
}
@media (max-width:767px) {
	.case_entrance_ttl {
	margin-bottom: 40px;
	padding-top: 60px;
	font-size: 2.4rem;
	background-size: 40px auto;
	}
	.case_entrance_list_in {
	width: calc(50% - 6px);
	height: 200px;
	border-width: 3px;
	}
	.case_entrance_list_in.reform {
	margin-right: 6px;
	}
	.case_entrance_list_in.cleaning {
	margin-left: 6px;
	}
	.case_entrance_list_txt1 {
	margin-bottom: 8px;
	font-size: 2.0rem;
	}
	.case_entrance_list_txt2 {
	margin-bottom: 20px;
	font-size: 2.2rem;
	}
	.case_entrance_list_more {
	padding: 8px 30px;
	}
	.case_list_in {
	padding: 15px;
	}
	.case_list_in + .case_list_in {
	margin-top: 20px;
	}
	.case_sec_img {
	margin: -5px;
	}
	.case_sec_img_li {
	width: calc(50% - 10px);
	margin: 5px;
	}
	.case_sec_ba_in_b::before,
	.case_sec_ba_in_a::before {
	padding: 3px 10px;
	}
	.case_sec_ba_in_b::before {
	font-size: 1.0rem;
	border-radius: 6px 0 8px 0;
	}
	.case_sec_ba_in_a::before {
	font-size: 1.2rem;
	border-radius: 0 6px 0 8px;
	}
	.case_sec_ba_in_b::after {
	width: 10px;
	height: 15px;
	right: -14px;
	}
	.case_sec_ba {
	max-width: calc(100% - 10px);
	}
	.case_sec_ba_in_b {
	width: calc(45% - 18px);
	margin-right: 18px;
	}
	.case_sec_ba_in_a {
	width: 55%;
	}
	.case_sec_ba_in_b img,
	.case_sec_ba_in_a img,
	.case_sec_img img {
	border-radius: 8px;
	}
	.case_sec_txt {
	max-width: 100%;
	margin-top: 20px;
	text-align: left;
	}
}

/*-----------------------
 お客様の声
-----------------------*/
.voice_page {
}
.voice_sec {
}
.voice_list {
}
.voice_list_in {
position: relative;
}
.voice_list_in + .voice_list_in {
margin-top: 50px;
}
.voice_list_head {
display: flex;
align-items: center;
margin-bottom: 4px;
padding: 20px 30px;
background-color: #fff;
border-radius: 20px 20px 0 0;
}
.bg01 .voice_list_head {
background-color: #f3f8ff;
}
.voice_list_no {
display: flex;
align-items: center;
justify-content: center;
width: 180px;
padding: 10px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-weight: bold;
line-height: 1;
color: #fff;
background-color: #4d8bff;
border-radius: 10px;
}
.voice_list_no_1 {
display: block;
margin-right: 10px;
font-size: 1.8rem;
}
.voice_list_no_2 {
display: block;
font-size: 2.8rem;
}
.voice_list_ttl {
width: calc(100% - 180px);
padding-left: 30px;
font-family: "Kiwi Maru",sans-serif;
font-size: 2.6rem;
font-weight: 500;
line-height: 1.3;
}
.voice_list_box {
padding: 30px;
background-color: #fff;
border-radius: 0 0 30px 30px;
}
.bg01 .voice_list_box {
background-color: #f3f8ff;
}
.voice_list_img {
display: flex;
align-items: center;
max-width: 1000px;
margin: 0 auto 30px;
}
.voice_list_img_in {
position: relative;
}
.voice_list_img_in.befor {
width: calc(40% - 30px);
margin-right: 30px;
}
.voice_list_img_in.after {
width: calc(60% - 30px);
margin-left: 30px;
}
.voice_list_img_in::before {
position: absolute;
display: flex;
align-items: center;
justify-content: center;
top: -15px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-weight: bold;
color: #fff;
border-radius: 100%;
}
.voice_list_img_in.befor::before {
content: "Before";
width: 70px;
height: 70px;
left: -15px;
font-size: 1.3rem;
background-color: #152b83;
}
.voice_list_img_in.after::before {
content: "After";
width: 80px;
height: 80px;
right: -15px;
background-color: #4d8bff;
}
.voice_list_img_in.befor::after {
z-index: 1;
position: absolute;
content: "";
width: 28px;
height: 38px;
top: 50%;
transform: translateY(-50%);
right: -44px;
background-color: #000;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
-webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.voice_list_img_in img {
object-fit: cover;
aspect-ratio: 3 / 2;
width: 100%;
height: 100%;
border-radius: 15px;
}
.voice_list_img2 {
max-width: 800px;
margin: 0 auto 30px;
}
.voice_list_img2 img {
object-fit: cover;
aspect-ratio: 16 / 9;
width: 100%;
height: 100%;
border-radius: 15px;
}
.voice_list_txt {
position: relative;
max-width: 1000px;
margin: 0 auto 40px;
}
.voice_list_txt_1 {
position: relative;
margin-right: 190px;
padding: 25px;
text-align: justify;
background-color: #f1f1f1;
border-radius: 20px;
}
.bg01 .voice_list_txt_1 {
background-color: #fff;
}
.voice_list_txt_1::before {
position: absolute;
content: "";
width: 30px;
height: 40px;
background-color: #f1f1f1;
bottom: 60px;
right: -28px;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
-webkit-clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.bg01 .voice_list_txt_1::before {
background-color: #fff;
}
.voice_list_txt_2 {
position: absolute;
width: 200px;
bottom: 0px;
right: 0px;
padding-left: 30px;
}
.voice_list_ico {
width: 130px;
height: 130px;
display: flex;
align-items: center;
justify-content: center;
margin: 0 auto 10px;
background-color: #f3f8ff;
border-radius: 100%;
}
.bg01 .voice_list_ico {
background-color: #fff;
}
.voice_list_ico img {
max-width: 65px;
}
.voice_list_name {
font-size: 90%;
text-align: center;
}
.voice_list_data {
position: relative;
max-width: 1000px;
margin: auto;
}
.voice_list_data_dt {
position: absolute;
top: -20px;
left: 20px;
width: fit-content;
padding: 12px 40px;
line-height: 1;
background-color: #9dbdf8;
border-radius: 100px;
}
.voice_list_data_dd {
padding: 30px 25px 15px 25px;
text-align: justify;
background-color: #fff;
border: 2px solid #9dbdf8;
border-radius: 10px;
}
@media (max-width:1320px) {
	.voice_list_no {
	width: 150px;
	}
	.voice_list_no_2 {
	font-size: inherit;
	}
	.voice_list_no_2 {
	font-size: 2.4rem;
	}
	.voice_list_ttl {
	width: calc(100% - 150px);
	padding-left: 20px;
	font-size: 2.4rem;
	}
}
@media (max-width:1023px) {
	.voice_list_in + .voice_list_in {
	margin-top: 30px;
	}
	.voice_list_head {
	padding: 20px;
	}
	.voice_list_ttl {
	font-size: 2.2rem;
	}
	.voice_list_box {
	padding: 20px;
	}
	.voice_list_img_in.befor {
	width: calc(40% - 20px);
	margin-right: 20px;
	}
	.voice_list_img_in.befor::after {
	width: 20px;
	height: 30px;
	right: -30px;
	}
	.voice_list_img_in.after {
	width: calc(60% - 20px);
	margin-left: 20px;
	}
	.voice_list_img_in img {
	border-radius: 10px;
	}
	.voice_list_txt_1 {
	margin-right: 180px;
	padding: 20px;
	}
	.voice_list_txt_2 {
	width: 180px;
	}
	.voice_list_name {
	font-size: 85%;
	}
	.voice_list_ico img {
	max-width: 60px;
	}
	.voice_list_data_dd {
	padding: 30px 20px 15px 20px;
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.voice_list_in + .voice_list_in {
	margin-top: 20px;
	}
	.voice_list_head {
	display: block;
	padding: 15px;
	}
	.voice_list_no {
	width: 100px;
	margin-bottom: 10px;
	padding: 8px;
	border-radius: 6px;
	}
	.voice_list_no_1 {
	margin-right: 5px;
	font-size: 1.5rem;
	}
	.voice_list_no_2 {
	font-size: 2.0rem;
	}
	.voice_list_ttl {
	width: 100%;
	padding-left: 0;
	font-size: 2.0rem;
	}
	.voice_list_box {
	padding: 15px;
	border-radius: 0 0 15px 15px;
	}
	.voice_list_img_in.befor {
	width: calc(45% - 10px);
	margin-right: 10px;
	}
	.voice_list_img_in.befor::after {
	width: 10px;
	height: 15px;
	right: -14px;
	}
	.voice_list_img_in.befor::before,
	.voice_list_img_in.after::before {
	width: auto;
	height: auto;
	top: -5px;
	padding: 5px 10px;
	border-radius: 100px;
	}
	.voice_list_img_in.befor::before {
	left: -5px;
	font-size: 1.0rem;
	}
	.voice_list_img_in.after::before {
	right: -5px;
	font-size: 1.2rem;
	}
	.voice_list_img_in.after {
	width: calc(55% - 10px);
	margin-left: 10px;
	}
	.voice_list_img_in img {
	border-radius: 6px;
	}
	.voice_list_txt {
	margin-bottom: 20px;
	}
	.voice_list_txt_1 {
	margin-right: 0;
	text-align: left;
	padding: 15px;
	border-radius: 10px;
	}
	.voice_list_txt_1::before {
	width: 30px;
	height: 30px;
	background-color: #f1f1f1;
	bottom: -20px;
	right: 120px;
	clip-path: polygon(0 0, 100% 99%, 89% 0);
	-webkit-clip-path: polygon(0 0, 100% 99%, 89% 0);
	}
	.voice_list_txt_2 {
	position: relative;
	width: 150px;
	bottom: inherit;
	right: inherit;
	margin-top: 10px;
	margin-left: auto;
	padding-left: 0;
	}
	.voice_list_ico {
	width: 100px;
	height: 100px;
	margin-bottom: 5px;
	}
	.voice_list_ico img {
	max-width: 50px;
	}
	.voice_list_data_dd {
	padding: 30px 20px 15px 20px;
	}
	.voice_list_data_dt {
	top: -15px;
	left: 15px;
	padding: 10px 20px;
	}
	.voice_list_data_dd {
	padding: 20px 15px 10px 15px;
	font-size: 90%;
	text-align: left;
	}
}

/*-----------------------
 求人情報
-----------------------*/
.recruit_page {
}
.recruit_message {
position: relative;
}
.recruit_message::before {
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: linear-gradient(to bottom,#f3f8ff 20%,transparent);
}
.recruit_message::after {
z-index: -1;
opacity: .6;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: url(./common/img/recruit/message_bg.png);
background-repeat: no-repeat;
background-position: bottom center;
background-size: cover;
background-color: #fff;
}
.message_ttl {
width: fit-content;
margin-bottom: 20px;
font-size: 3.6rem;
font-weight: 900;
line-height: 1.8;
color: #152b83;
}
.message_ttl_s {
color: #4d8bff;
}
.message_box {
display: flex;
align-items: center;
}
.message_box_in1 {
width: calc(100% - 500px);
padding-right: 70px;
text-align: justify;
}
.message_box_in1_p {
font-size: 1.8rem;
font-weight: bold;
line-height: 1.8;
}
.message_box_in1_p + .message_box_in1_p {
margin-top: 1em;
}
.message_box_in2 {
position: relative;
width: 500px;
}
.message_box_in2::before {
position: absolute;
content: "";
width: calc(336px * .4);
height: calc(662px * .4);
right: -100px;
bottom: 10px;
background-image: url(./common/img/top/greeting_img02_bg.png);
background-repeat: no-repeat;
background-size: contain;
}
.message_box_img {
}
.message_box_img img {
object-fit: cover;
aspect-ratio: 800 / 694;
width: 100%;
height: 100%;
border-radius: 15px;
}
.voice_box {
display: flex;
align-items: flex-start;
padding: 50px;
background-color: #f3f8ff;
border-radius: 30px;
}
.voice_box:nth-of-type(even) {
flex-direction: row-reverse;
}
.voice_box + .voice_box {
margin-top: 30px;
}
.voice_box_in1 {
width: calc(100% - 350px);
}
.voice_box:nth-of-type(odd) .voice_box_in1 {
padding-right: 60px;
}
.voice_box:nth-of-type(even) .voice_box_in1 {
padding-left: 60px;
}
.voice_box_ttl {
margin-bottom: 30px;
font-family: "Kiwi Maru",sans-serif;
font-size: 2.6rem;
font-weight: 500;
color: #152b83;
}
.voice_box_txt {
text-align: justify;
}
.voice_box_txt_p {
}
.voice_box_txt_p + .voice_box_txt_p {
margin-top: 1em;
}
.voice_box_name {
margin-top: 1em;
text-align: right;
}
.voice_box_in2 {
width: 350px;
}
.voice_box_img {
position: relative;
}
.voice_box_img::before {
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 50%;
left: 50%;
transform: translateY(-50%) translateX(-50%);
background-color: #cad8f2;
}
.voice_box:nth-of-type(odd) .voice_box_img::before {
clip-path: polygon(26% 2%, 100% 17%, 72% 100%, 0 82%);
-webkit-clip-path: polygon(26% 2%, 100% 17%, 72% 100%, 0 82%);
}
.voice_box:nth-of-type(even) .voice_box_img::before {
clip-path: polygon(74% 2%, 0 17%, 28% 100%, 100% 82%);
-webkit-clip-path: polygon(74% 2%, 0 17%, 28% 100%, 100% 82%);
}
.voice_box_img img {
object-fit: cover;
aspect-ratio: 2 / 2.5;
width: 100%;
height: 100%;
}
.voice_box:nth-of-type(odd) .voice_box_img img {
clip-path: polygon(0 10%, 100% 0, 100% 95%, 13% 96%);
-webkit-clip-path: polygon(0 10%, 100% 0, 100% 95%, 13% 96%);
}
.voice_box:nth-of-type(even) .voice_box_img img {
clip-path: polygon(100% 10%, 0 0, 0 95%, 87% 96%);
-webkit-clip-path: polygon(100% 10%, 0 0, 0 95%, 87% 96%);
}
.recruit_jobinfo {
}
.recruit_jobinfo_box {
margin-bottom: 50px;
padding: 50px;
background-color: #fff;
border-radius: 20px;
}
.recruit_jobinfo_box .low_h4 {
margin-bottom: 15px;
}
.jobinfo_txt {
margin-bottom: 1em;
text-align: justify;
color: #152b83;
}
.recruit_jobinfo .tbl1 th {
width: 200px;
}
.recruit_jobinfo .tbl1 td {
width: calc(100% - 200px);
font-size: 90%;
text-align: justify;
}
@media (max-width:1320px) {
	.message_ttl {
	font-size: 3.0rem;
	}
	.message_box_in1 {
	width: calc(100% - 400px);
	padding-right: 30px;
	}
	.message_box_in2 {
	width: 400px;
	}
	.voice_box {
	padding: 30px;
	}
	.voice_box_ttl {
	margin-bottom: 20px;
	font-size: 2.4rem;
	}
}
@media (max-width:1023px) {
	.message_ttl {
	font-size: 2.6rem;
	line-height: inherit;
	}
	.message_box_in1 {
	width: calc(100% - 300px);
	padding-right: 20px;
	}
	.message_box_in1_p {
	font-size: inherit;
	line-height: inherit;
	}
	.message_box_in2 {
	width: 300px;
	}
	.message_box_img img {
	border-radius: 10px;
	}
	.voice_box {
	display: block;
	padding: 20px;
	border-radius: 15px;
	}
	.voice_box_in1 {
	width: 100%;
	margin-bottom: 30px;
	}
	.voice_box:nth-of-type(odd) .voice_box_in1 {
	padding-right: 0;
	}
	.voice_box:nth-of-type(even) .voice_box_in1 {
	padding-left: 0;
	}
	.voice_box_ttl {
	font-size: 2.4rem;
	}
	.voice_box_ttl br {
	display: none;
	}
	.voice_box_in2 {
	width: 100%;
	max-width: 300px;
	margin: auto;
	}
	.recruit_jobinfo_box {
	margin-bottom: 40px;
	padding: 30px;
	border-radius: 15px;
	}
	.recruit_jobinfo .tbl1 th {
	width: 160px;
	}
	.recruit_jobinfo .tbl1 td {
	width: calc(100% - 160px);
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.message_ttl {
	font-size: 2.2rem;
	}
	.message_box {
	display: block;
	}
	.message_box_in1 {
	width: 100%;
	margin-bottom: 30px;
	padding-right: 0;
	text-align: left;
	}
	.message_box_in2 {
	width: 100%;
	max-width: 320px;
	margin: auto;
	}
	.voice_box {
	padding: 15px;
	}
	.voice_box_in1 {
	width: 100%;
	margin-bottom: 20px;
	}
	.voice_box_ttl {
	font-size: 2.2rem;
	}
	.voice_box_txt {
	text-align: left;
	}
	.voice_box_in2 {
	max-width: 200px;
	}
	.recruit_jobinfo_box {
	margin-bottom: 30px;
	padding: 15px;
	border-radius: 10px;
	}
	.recruit_jobinfo_box .low_h4 {
	margin-bottom: 10px;
	}
	.jobinfo_txt {
	text-align: left;
	}
	.recruit_jobinfo .tbl1,
	.recruit_jobinfo .tbl1 tr,
	.recruit_jobinfo .tbl1 th,
	.recruit_jobinfo .tbl1 td {
	display: block;
	}
	.recruit_jobinfo .tbl1 tr + tr {
	margin-top: 5px;
	}
	.recruit_jobinfo .tbl1 th {
	width: 100%;
	border-bottom-width: 0;
	}
	.recruit_jobinfo .tbl1 td {
	width: 100%;
	text-align: left;
	}
}

/*-----------------------
 会社概要
-----------------------*/
.company_page {
}
.company_msg {
}
.company_msg::before {
opacity: .3;
z-index: -1;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: url(./common/img/company/message_bg.png);
background-position: bottom center;
background-repeat: no-repeat;
background-size: cover;
}
.msg_box {
display: flex;
}
.msg_box_in1 {
width: calc(100% - 300px);
padding-top: 20px;
padding-right: 30px;
}
.msg_box_txt {
line-height: 1.8;
}
.msg_box_ttl {
margin-bottom: 40px;
font-family: "Kiwi Maru",sans-serif;
font-size: 2.8rem;
font-weight: 500;
text-align: justify;
line-height: 1.4;
}
.msg_box_txt {
text-align: justify;
}
.msg_box_txt_p {
font-size: 1.8rem;
line-height: 1.8;
}
.msg_box_txt_p + .msg_box_txt_p {
margin-top: 1em;
}
.msg_box_in2 {
width: 300px;
}
.msg_box_img {
width: 250px;
margin: 0 auto 10px;
}
.msg_box_img img {
object-fit: cover;
aspect-ratio: 3 / 4;
border-radius: 8px;
}
.msg_box_name {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 10px;
font-family: "Kiwi Maru",sans-serif;
}
.msg_box_name_1 {
margin-right: 1em;
}
.msg_box_name_2 {
font-size: 2.4rem;
}
.msg_box_profile {
max-width: 260px;
margin: auto;
padding: 15px;
background-color: #fff;
border-radius: 8px;
}
.msg_box_profile_dl {
display: flex;
font-size: 90%;
}
.msg_box_profile_dt {
width: 140px;
}
.msg_box_profile_dd {
width: calc(100% - 140px);
}
.about_box {
max-width: 800px;
margin: auto;
}
.about_box_dl {
display: flex;
align-items: flex-start;
padding: 15px;
border-bottom: 1px solid #bbb;
}
.about_box_dl + .about_box_dl {
}
.about_box_dt {
position: relative;
width: 200px;
font-weight: bold;
}
.about_box_dd {
width: calc(100% - 200px);
text-align: justify;
}
.about_box_dd_p1 {
width: fit-content;
margin-bottom: 5px;
padding: 4px 10px;
background-color: #f1f1f1;
border-radius: 2px;
}
.about_box_dd_p2 {
}
.about_box_dd_p2 + .about_box_dd_p1 {
margin-top: 20px;
}
.company_history {
}
.history_dt_p {
display: flex;
}
.history_dt_s1,
.history_dt_s2,
.history_dt_s3 {
display: block;
}
.history_dt_s1 {
width: 35px;
}
.history_dt_s2 {
width: 45px;
text-align: right;
}
.history_dt_s3 {
width: 35px;
text-align: right;
}
@media (max-width:1320px) {
}
@media (max-width:1023px) {
	.msg_box_in1 {
	width: calc(100% - 250px);
	padding-top: 0;
	padding-right: 30px;
	}
	.msg_box_ttl {
	margin-bottom: 20px;
	font-size: 2.6rem;
	}
	.msg_box_txt_p {
	font-size: inherit;
	line-height: inherit;
	}
	.msg_box_in2 {
	width: 250px;
	}
	.msg_box_name_1 {
	font-size: 90%;
	}
	.msg_box_name_2 {
	font-size: 2.2rem;
	}
	.msg_box_profile {
	padding: 10px;
	}
	.msg_box_profile_dl {
	font-size: 85%;
	}
	.about_box_dt {
	width: 150px;
	}
	.about_box_dd {
	width: calc(100% - 150px);
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.msg_box {
	display: block;
	}
	.msg_box_in1 {
	width: 100%;
	margin-bottom: 30px;
	padding-right: 0;
	}
	.msg_box_ttl {
	font-size: 2.2rem;
	text-align: center;
	}
	.msg_box_txt {
	text-align: left;
	}
	.msg_box_in2 {
	width: 250px;
	margin: auto;
	}
	.msg_box_img {
	max-width: 180px;
	margin-bottom: 5px;
	}
	.msg_box_name_2 {
	font-size: 2.0rem;
	}
	.about_box_dl {
	padding: 10px;
	}
	.company_about .about_box_dt {
	width: 80px;
	}
	.company_about .about_box_dd {
	width: calc(100% - 80px);
	}
	.company_history .about_box_dl {
	display: block;
	}
	.company_history .about_box_dt {
	width: 100%;
	margin-bottom: 5px;
	}
	.company_history .about_box_dd {
	width: 100%;
	text-align: left;
	}
	.history_dt_s1 {
	width: 30px;
	}
	.history_dt_s2 {
	width: 40px;
	}
	.history_dt_s3 {
	width: 30px;
	}
}

/*-----------------------
 お問い合わせ
-----------------------*/
.contact_page {
}
.contact_tel {
}
.contact_box {
display: flex;
max-width: 800px;
margin: auto;
text-align: center;
}
.contact_box_line,
.contact_box_tel {
width: calc(50% - 20px);
padding: 30px;
background-color: #fff;
border-radius: 30px;
}
.contact_box_line {
margin-right: 20px;
}
.contact_box_line_1,
.contact_box_tel_1 {
position: relative;
margin-bottom: 10px;
padding-top: 60px;
font-size: 2.2rem;
font-weight: bold;
line-height: 1.4;
}
.contact_box_line_1::before,
.contact_box_tel_1::before {
position: absolute;
content: "";
width: 50px;
height: 50px;
top: 0;
left: 50%;
transform: translateX(-50%);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
.contact_box_line_1::before {
background-image: url(./common/img/ico_line.svg);
}
.contact_box_tel_1::before {
background-image: url(./common/img/ico_tel.svg);
}
.contact_box_line_1 {
}
.contact_box_line_2 {
max-width: 100px;
margin: auto;
}
.contact_box_tel {
margin-left: 20px;
}
.contact_box_tel_1 {
}
.contact_box_tel_2 {
margin-top: 20px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 3.0rem;
font-weight: 600;
line-height: 1;
}
.contact_box_tel_2::before {
content: "TEL.";
font-size: 2.0rem;
letter-spacing: 0;
}
.contact_box_tel_3 {
margin-top: 20px;
font-family: "Montserrat","Noto Sans JP",sans-serif;
font-size: 1.8rem;
font-weight: 600;
line-height: 1;
}
.contact_page .low_txt_m {
text-align: justify;
}
.contact_form {
}
.contact_form dl {
display: flex;
margin-bottom: 5px;
}
.contact_form dt {
display: flex;
justify-content: space-between;
align-items: center;
flex-wrap: wrap;
width: 300px;
padding: 20px;
font-weight: bold;
background-color: #d0ddf7;
border-radius: 10px;
}
.contact_form dd {
width: calc(100% - 300px);
padding: 15px 0 15px 30px;
}
.contact_note {
margin-top: 5px;
font-size: 90%;
letter-spacing: 0;
}
.contact_name dd {
}
.wpcf7-checkbox .wpcf7-list-item {
display: block;
}
.wpcf7-checkbox .wpcf7-list-item + .wpcf7-list-item {
margin-top: 3px;
}
.wpcf7-radio .wpcf7-list-item {
display: inline-block;
min-width: 100px;
}
.wpcf7-radio .wpcf7-list-item + .wpcf7-list-item {
margin-left: 1em;
}
.contact_name .contact_form_dd_in {
width: 50%;
}
.contact_name .contact_form_dd_in:nth-of-type(1) {
padding-right: 5px;
}
.contact_name .contact_form_dd_in:nth-of-type(2) {
padding-left: 5px;
}
.contact_birt dd {
display: flex;
align-items: center;
}
.contact_birt .contact_form_dd_in1 {
}
.contact_birt .contact_form_dd_in2 {
margin: 0 10px;
}
.contact_address_txt {
width: 100%;
margin-bottom: 5px;
font-size: 1.4rem;
letter-spacing: 0;
}
.contact_address_in1 {
display: flex;
flex-wrap: wrap;
align-items: center;
margin-bottom: 1em;
}
.contact_address_in1 input {
width: 150px;
}
.contact_address_in1 .note {
margin-left: 15px;
}
.contact_address_in1 .note a {
display: block;
padding: 8px 5px;
font-size: 1.3rem;
line-height: 1;
letter-spacing: 0;
background-color: #f1f1f1;
border: 1px solid;
border-radius: 2px;
}
.contact_address_in2 {
margin-bottom: 1em;
}
.contact_naiyou_in1 {
margin-bottom: 1em;
}
.conf_msg {
margin-top: 2em;
text-align: center;
}
.thanks_page {
}
.thanks_msg {
position: relative;
max-width: 600px;
margin-left: auto;
margin-right: auto;
padding: 100px 0 50px 0;
}
.thanks_msg::before {
position: absolute;
content: "";
width: calc(106px * 1);
height: calc(73px * 1);
top: 0;
left: 0;
right: 0;
margin: auto;
background-image: url(./common/img/contact/thanks.png);
background-repeat: no-repeat;
background-size: contain;
}
.thanks_msg_in + .thanks_msg_in {
margin-top: 10px;
}
.privacy_box {
overflow-x: hidden;
overflow-y: auto;
height: 400px;
margin-top: 3em;
padding: 30px;
letter-spacing: 0;
background-color: #fff;
border: 1px solid #ccc;
}
.privacy_ttl {
margin-bottom: 1em;
font-size: 1.8rem;
text-align: center;
}
.privacy_box::-webkit-scrollbar {
width: 8px;
background-color: #f1f1f1;
}
.privacy_box::-webkit-scrollbar-thumb {
background-color: #ccc;
border-radius: 100px;
}
.privacy_ttl {
margin-bottom: 1em;
font-size: 1.8rem;
font-weight: bold;
text-align: center;
}
.privacy_txt1 {
margin-top: 2em;
margin-bottom: 5px;
font-size: 95%;
font-weight: bold;
text-align: justify;
}
.privacy_txt2 {
font-size: 95%;
text-align: justify;
}
.privacy_txt2 a {
text-decoration: underline;
}
.privacy_txt2_p {
}
.privacy_txt2_p + .privacy_txt2_p,
.privacy_txt2_p + .privacy_ul,
.privacy_ul + .privacy_ul,
.privacy_ul + .privacy_txt2_p {
margin-top: 1em;
}
.privacy_ul {
}
.privacy_li {
padding-left: 1em;
text-indent: -1em;
}
@media (max-width:1023px) {
	.contact_box_line,
	.contact_box_tel {
	width: calc(50% - 12px);
	padding: 20px;
	border-radius: 15px;
	}
	.contact_box_line {
	margin-right: 12px;
	}
	.contact_box_tel {
	margin-left: 12px;
	}
	.contact_box_line_1,
	.contact_box_tel_1 {
	padding-top: 50px;
	font-size: 2.0rem;
	}
	.contact_box_line_1::before,
	.contact_box_tel_1::before {
	width: 40px;
	height: 40px;
	}
	.contact_box_tel_2 {
	font-size: 2.6rem;
	}
	.contact_box_tel_2::before {
	font-size: inherit;
	}
	.contact_form dt {
	border-radius: 8px;
	}
}
@media (min-width:768px) {
	/* hover */
	.privacy_txt2 a:hover {
	opacity: .5;
	transition: .3s;
	}
}
@media (max-width:767px) {
	.contact_box_line,
	.contact_box_tel {
	width: calc(50% - 5px);
	padding: 15px 5px;
	border-radius: 10px;
	}
	.contact_box_line {
	margin-right: 5px;
	}
	.contact_box_tel {
	margin-left: 5px;
	}
	.contact_box_line_1,
	.contact_box_tel_1 {
	padding-top: 40px;
	font-size: 1.6rem;
	}
	.contact_box_line_1::before,
	.contact_box_tel_1::before {
	width: 30px;
	height: 30px;
	}
	.contact_box_line_2 {
	max-width: 80px;
	}
	.contact_box_tel_2 {
	margin-top: 20px;
	font-size: 1.9rem;
	line-height: 1.2;
	}
	.contact_box_tel_2::before {
	display: none;
	}
	.contact_box_tel_3 {
	margin-top: 15px;
	font-size: 1.5rem;
	}
	.contact_page .low_txt_m {
	text-align: left;
	}
	.contact_form dl {
	display: block;
	}
	.contact_form dt {
	width: 100%;
	padding: 10px;
	border-radius: 4px;
	}
	.contact_form dd {
	width: 100%;
	padding: 20px 10px;
	}
	.contact_address_in1 input {
	width: 100px;
	}
	.wpcf7-radio .wpcf7-list-item {
	min-width: 70px;
	}
	.privacy_box {
	margin-top: 2em;
	padding: 20px;
	}
	.privacy_ttl {
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	}
	.privacy_txt2 {
	text-align: left;
	}
	.thanks_msg {
	padding-top: 60px;
	}
	.thanks_msg::before {
	width: calc(106px * .6);
	height: calc(73px * .6);
	}
}

/*-----------------------
 印刷対策
-----------------------*/
@media print {
	* {
	-webkit-print-color-adjust: exact;
	print-color-adjust: exact;
	}
	.mv_img_in,
	.mv_ttl,
	.mv_txt1 {
	visibility: visible !important;
	}
	.top_wrap,
	.low_wrap {
	max-width: 100% !important;
	}
}
@media print and (max-width: 1000px) {
}
