@charset 'UTF-8';

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

html {
font-size: 62.5%;
}
body {
overflow-x: hidden;
position: relative;
max-height: 100%;
margin: 0;
width: 100%;
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: 0;
line-height: 1.6;
color: #000;
background-color: #fff;
-webkit-text-size-adjust: 100%;
}
@media (max-width: 1023px) {
	html {
	}
	body {
	letter-spacing: 0;
	}
}
@media (max-width: 767px) {
	html {
	}
	body {
	width: 100%;
	font-size: 1.5rem;
	}
}
@media (max-width: 374px) {
	html {
	font-size: 55%;
	}
}

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, h4 {
line-height: 1.4;
}
@media (min-width: 1024px) {
}
@media (max-width: 767px) {
	h1, h2, h3 {
	letter-spacing: 1px;
	}
}
@media (max-width: 374px) {
	h1, h2, h3 {
	letter-spacing: 0;
	}
}

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

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

.body_wrap {
overflow: visible;
}
@media (max-width: 767px) {
	.body_wrap {
	padding-top: 95px;
	}
}

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

/*-----------------------
 ヘッダー
-----------------------*/
h1 {
display: none;
}
html.active {
overflow: hidden;
}
header {
z-index: 9;
position: absolute;
width: 100%;
top: 0;
left: 0;
}
.header_wrap {
display: flex;
align-items: center;
}
.head_logo {
display: flex;
align-items: center;
width: 170px;
padding: 15px 0 15px 45px;
}
.head_logo a {
display: block;
width: calc(85px);
height: calc(93px);
}
.head_logo img {
object-fit: contain;
width: 100%;
height: 100%;
}
.head_box {
width: calc(100% - 170px);
padding-right: 164px;
}
.head_nav {
}
.head_nav_ul {
display: flex;
align-items: center;
justify-content: flex-end;
}
.head_nav_ul li {
margin: 0 25px;
font-family: "Noto Serif","Noto Serif JP",serif;
font-size: 1.8rem;
font-weight: bold;
text-shadow: #fff 2px 0px 2px, #fff -2px 0px 2px, #fff 0px -2px 2px, #fff -2px 0px 2px,#fff 2px 2px 2px, #fff -2px 2px 2px, #fff 2px -2px 2px, #fff -2px -2px 2px,#fff 1px 2px 2px, #fff -1px 2px 2px,#fff 1px -2px 2px, #fff -1px -2px 2px, #fff 2px 1px 2px, #fff -2px 1px 2px, #fff 2px -1px 2px, #fff -2px -1px 2px,#fff 1px 1px 2px, #fff -1px 1px 2px, #fff 1px -1px 2px, #fff -1px -1px 2px;
}
.head_nav_ul li a {
}
.toggle {
z-index: 99999;
cursor: pointer;
position: fixed;
display: block;
width: 60px;
height: 60px;
top: 28px;
right: 50px;
background-color: #7c509d;
border-radius: 5px;
}
html.active .toggle {
}
.toggle div {
position: absolute;
width: 25px;
height: 22px;
top: 50%;
transform: translateY(-50%);
left: 0;
right: 0;
margin: auto;
}
.toggle span {
display: block;
position: absolute;
width: 100%;
height: 2px;
left: 0;
background-color: #fff;
border-radius: 100px;
transition: .35s ease-in-out;
-webkit-transition: .35s ease-in-out;
-moz-transition: .35s ease-in-out;
}
.toggle span:nth-child(1) {
top: 0;
}
.toggle span:nth-child(2) {
width: 15px;
top: 9px;
}
.toggle span:nth-child(3) {
top: 18px;
}
html.active .toggle {
z-index: 99999;
}
html.active .toggle span {
top: 10px;
}
html.active .toggle span:nth-child(1) {
transform: translateY(0) rotate(-45deg);
}
html.active .toggle span:nth-child(2) {
opacity: 0;
}
html.active .toggle span:nth-child(3) {
transform: translateY(0) rotate(45deg);
}
@media (max-width:1460px) {
	.header_wrap {
	align-items: flex-start;
	}
	.head_logo {
	width: 120px;
	padding: 15px 0 15px 20px;
	}
	.head_box {
	width: calc(100% - 120px);
	padding-top: 35px;
	padding-right: 100px;
	}
	.head_nav_ul li {
	margin: 0 20px;
	font-size: inherit;
	}
	.toggle {
	top: 20px;
	right: 20px;
	}
}
@media (max-width:1023px) {
	.head_logo {
	padding: 10px 0 10px 20px;
	}
	.head_box {
	display: none;
	}
	.toggle {
	top: 10px;
	right: 10px;
	}
}
@media (min-width:768px) {
	/* hover */
	.head_logo a:hover,
	.head_nav_ul li a:hover {
	opacity: .5;
	transition: .5s;
	}
	.toggle:hover {
	background-color: #000;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.head_logo {
	width: fit-content;
	padding: 10px 0 10px 15px;
	}
	.head_logo a {
	width: calc(85px * .8);
	height: calc(93px * .8);
	}
	.head_box {
	display: none;
	}
	.toggle {
	width: 50px;
	height: 50px;
	}
}

/*-----------------------
 TOP
-----------------------*/
/*--メインビジュアル--*/
.mv {
z-index: 0;
width: 100%;
background-color: #fff;
}
.mv_video {
width: 100%;
height: 100svh;
}
.mv_video video {
width: 100%;
height: 100%;
}
.scroll {
position: absolute;
bottom: 30%;
right: 40px;
font-size: 1.2rem;
font-weight: bold;
line-height: 1;
writing-mode: vertical-rl;
-ms-writing-mode: tb-rl;
-webkit-writing-mode: vertical-rl;
}
.scroll::before,
.scroll::after {
position: absolute;
content: "";
width: 1px;
height: 100px;
right: -5px;
top: 0;
}
.scroll::before {
z-index: 2;
background-color: #000;
animation: scroll 2s infinite;
}
.scroll::after {
background-color: #ccc;
}
@keyframes scroll {
	0% {
	transform: scale(1, 0);
	transform-origin: 0 0;
	}
	50% {
	transform: scale(1, 1);
	transform-origin: 0 0;
	}
	51% {
	transform: scale(1, 1);
	transform-origin: 0 100%;
	}
	100% {
	transform: scale(1, 0);
	transform-origin: 0 100%;
	}
}
@media (max-width:1460px) {
	.mv_video {
	height: auto;
	}
	.scroll {
	display: none;
	}
}
@media (max-width:1023px) {
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.mv {
	top: 100px;
	}
}

/*--top共通--*/
.top_main {
z-index: 9;
position: relative;
background-color: #fff;
}
.top_sec {
position: relative;
padding: 150px 90px;
}
.top_wrap {
max-width: 1400px;
margin: auto;
}
.top_ttl {
margin-bottom: 40px;
line-height: 1;
}
.top_ttl_1 {
margin-right: 30px;
font-family: "Times New Roman","Noto Serif JP",serif;
font-size: 7.0rem;
font-weight: normal;
}
.top_ttl_2 {
font-family: "Noto Serif JP",serif;
font-size: 1.8rem;
letter-spacing: 1px;
}
.top_txt {
font-size: 1.8rem;
text-align: justify;
line-height: 1.8;
}
.top_txt p + p {
}
.more {
max-width: 340px;
height: 80px;
margin: 50px auto 0;
font-family: "Noto Serif JP",serif;
font-size: 1.8rem;
font-weight: bold;
line-height: 1;
border: 1px solid #000;
border-radius: 5px;
}
.more a {
position: relative;
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
.more a::before {
position: absolute;
content: "";
width: 16px;
height: 16px;
bottom: 10px;
right: 10px;
background-image: url(./common/img/more_arrow.png);
background-repeat: no-repeat;
background-size: contain;
}
@media (max-width:1460px) {
	.top_sec {
	padding: 130px 70px;
	}
	.top_wrap {
	max-width: 964px;
	}
	.top_ttl {
	margin-bottom: 30px;
	}
	.top_ttl_1 {
	margin-right: 20px;
	font-size: 5.0rem;
	}
	.top_ttl_2 {
	font-size: 1.8rem;
	}
	.top_txt {
	font-size: inherit;
	line-height: inherit;
	}
	.more {
	max-width: 300px;
	height: 70px;
	margin-top: 40px;
	font-size: 1.7rem;
	}
}
@media (max-width:1023px) {
	.top_sec {
	padding: 100px 70px;
	}
	.top_wrap {
	max-width: 708px;
	}
	.top_ttl {
	text-align: center;
	}
	.top_ttl_1 {
	font-size: 4.0rem;
	}
	.more {
	max-width: 280px;
	height: 60px;
	font-size: inherit;
	}
}
@media (min-width:768px) {
	/* hover */
	.more:hover {
	color: #fff !important;
	background-color: #000 !important;
	transition: background-color .5s;
	}
	.more:hover a::before {
	filter: brightness(0) invert(1) !important;
	}
}
@media (max-width:767px) {
	.top_sec {
	padding: 80px 15px;
	}
	.top_wrap {
	max-width: 330px;
	}
	.top_ttl_1 {
	display: block;
	margin-right: 0;
	margin-bottom: 8px;
	font-size: 3.0rem;
	}
	.top_ttl_2 {
	display: block;
	}
	.more {
	max-width: 220px;
	height: 45px;
	margin-top: 30px;
	}
	.more a::before {
	width: 10px;
	height: 10px;
	bottom: 8px;
	right: 8px;
	}
}

/*-- 私たちからのメッセージ --*/
.top_msg {
z-index: 9;
position: relative;
padding: 0;
}
.top_msg_logo {
z-index: 0;
position: sticky;
width: 100%;
height: 1080px;
top: 0;
}
.top_msg_logo::before {
z-index: 2;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: url(./common/img/logo.png);
background-repeat: no-repeat;
background-position: center;
background-size: 674px auto;
}
.top_msg_logo::after {
z-index: 1;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color: #fff;
}
.top_msg_box {
z-index: 2;
position: relative;
padding: 200px 90px 280px 90px;
}
.top_msg_box::before {
opacity: .8;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: linear-gradient(to top, #fff 90%, transparent);
}
.top_msg .top_wrap {
}
.top_msg_box_wrap {
z-index: 1;
position: relative;
}
.top_msg_ttl {
margin-bottom: 50px;
font-family: "Noto Serif JP",serif;
font-size: 3.6rem;
font-weight: 600;
text-align: center;
letter-spacing: .1em;
}
.top_msg_txt {
font-size: 2.1rem;
text-align: center;
line-height: 2;
}
.top_msg_txt_in {
}
.top_msg_txt_in + .top_msg_txt_in {
margin-top: 48px;
}
.top_msg_txt_in p {
}
.top_msg_txt_in p span {
display: block;
}
@media (max-width:1460px) {
	.top_msg_logo {
	height: 800px;
	}
	.top_msg_logo::before {
	background-size: 400px auto;
	}
	.top_msg_box {
	padding: 150px 70px 200px 70px;
	}
	.top_msg_ttl {
	margin-bottom: 40px;
	font-size: 3.0rem;
	}
	.top_msg_txt {
	font-size: 1.8rem;
	line-height: 1.8;
	}
	.top_msg_txt_in + .top_msg_txt_in {
	margin-top: 30px;
	}
}
@media (max-width:1023px) {
	.top_msg_logo {
	height: 600px;
	}
	.top_msg_logo::before {
	background-size: 300px auto;
	}
	.top_msg_box {
	padding: 150px 70px 200px 70px;
	}
	.top_msg_ttl {
	margin-bottom: 40px;
	font-size: 2.6rem;
	}
	.top_msg_txt {
	margin-left: auto;
	margin-right: auto;
	font-size: inherit;
	text-align: justify;
	line-height: 1.8;
	}
	.top_msg_txt_in + .top_msg_txt_in {
	margin-top: 20px;
	}
	.top_msg_txt_in p span {
	display: inline;
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.top_msg {
	}
	.top_msg_logo {
	position: relative;
	height: 400px;
	}
	.top_msg_logo::before {
	background-size: 200px auto;
	}
	.top_msg_logo.logo-fixed {
	position: fixed;
	top: 0;
	left: 0;
	}
	.top_msg_box {
	padding: 150px 15px 100px 15px;
	transition: transform 0s cubic-bezier(.22,1,.36,1);
	}
	.top_msg_logo.logo-fixed ~ .top_msg_box {
	margin-top: 625px;
	}
	.top_msg_ttl {
	margin-bottom: 30px;
	font-size: 2.2rem;
	letter-spacing: 1px;
	}
	.top_msg_txt {
	line-height: inherit;
	}
	.top_msg_txt_in + .top_msg_txt_in {
	margin-top: 1em;
	}
}

/*-- サービス --*/
.top_service {
z-index: 9;
}
.top_service::before {
z-index: 1;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color: #deaffd;
}
.top_service_img {
z-index: 2;
position: absolute;
width: 100%;
height: 90%;
bottom: 0;
left: 0;
right: 0;
margin: auto;
background-color: #deaffd;
}
.top_service_img::after {
position: absolute;
content: "";
width: 100%;
height: 50%;
top: 0;
left: 0;
right: 0;
margin: auto;
background-image: linear-gradient(to bottom,#deaffd,transparent);
background-position: center bottom;
background-repeat:  no-repeat;
background-size: cover;
}
.top_service_img img {
opacity: .2;
object-fit: cover;
width: 100%;
height: 100%;
}
.top_service_img::before {
}
.top_service .top_wrap {
position: relative;
z-index: 4;
}
.top_service_txt {
margin-bottom: 50px;
font-family: "Noto Serif JP", serif;
font-size: 1.8rem;
font-weight: 600;
text-align: justify;
line-height: 1.8;
letter-spacing: 1px;
}
.top_service_list {
display: flex;
flex-wrap: wrap;
margin: -12px -12px 60px -12px;
}
.top_service_list_in {
width: calc(50% - 24px);
margin: 12px;
background-color: #fff;
border: 2px solid #9c6fbd;
}
.top_service_list_in + .top_service_list_in {
}
.top_service_list_ttl {
padding: 15px 20px;
font-family: "Noto Serif JP", serif;
font-weight: 600;
color: #fff;
background-color: #9c6fbd;
}
.top_service_list_ttl_1 {
margin-right: 10px;
font-style: italic;
font-size: 3.0rem;
line-height: 1;
}
.top_service_list_ttl_1::after {
content: ".";
}
.top_service_list_ttl_2 {
font-size: 2.2rem;
letter-spacing: 1px;
}
.top_service_list_txt {
padding: 20px;
text-align: justify;
}
.top_service_box {
max-width: 1000px;
margin: auto;
}
.top_service_box .top_txt {
width: fit-content;
margin: 0 auto 30px;
}
.top_service_btn {
display: flex;
flex-wrap: wrap;
margin: -5px;
padding: 30px;
background-color: #fff;
border-radius: 5px;
}
.top_service_btn li {
width: calc(16.6666666667% - 10px);
margin: 5px;
padding: 20px 5px;
color: #fff;
background-color: #7c509d;
border-radius: 5px;
}
.top_service_btn li:nth-of-type(2) {
background-color: #8e5bb4;
}
.top_service_btn li:nth-of-type(3) {
background-color: #a168cd;
}
.top_service_btn li:nth-of-type(4) {
background-color: #ab6fda;
}
.top_service_btn li:nth-of-type(5) {
background-color: #b574e6;
}
.top_service_btn li:nth-of-type(6) {
background-color: #bf7bf3;
}
.top_service_btn li a {
}
.top_service_btn_ico {
width: calc(92px * .6);
height: calc(72px * .6);
margin: 0 auto 15px;
}
.top_service_btn_ico img {
object-fit: contain;
object-position: center;
}
.top_service_btn_txt {
display: flex;
align-items: center;
justify-content: center;
font-size: 1.4rem;
text-align: center;
line-height: 1.4;
}
@media (max-width:1460px) {
	.top_service_txt {
	margin-bottom: 40px;
	line-height: inherit;
	}
	.top_service_list {
	margin-bottom: 40px;
	}
	.top_service_list_ttl_1 {
	font-size: 2.6rem;
	}
	.top_service_list_ttl_2 {
	font-size: 2.0rem;
	}
	.top_service_list_txt {
	padding: 15px;
	}
	.top_service_btn {
	padding: 20px;
	}
	.top_service_btn li {
	padding: 20px 10px;
	}
	.top_service_btn_ico {
	width: calc(92px * .4);
	height: calc(72px * .4);
	margin-bottom: 15px;
	}
	.top_service_btn_txt {
	font-size: 1.4rem;
	}
}
@media (max-width:1023px) {
	.top_service_txt {
	width: fit-content;
	margin: 0 auto 30px;
	}
	.top_service_list {
	margin: -6px -6px 30px -6px;
	}
	.top_service_list_in {
	width: calc(50% - 12px);
	margin: 6px;
	}
	.top_service_list_ttl {
	padding: 10px 15px;
	}
	.top_service_list_ttl_1 {
	font-size: 2.4rem;
	}
	.top_service_list_ttl_2 {
	font-size: 1.8rem;
	}
	.top_service_list_txt {
	padding: 10px 15px;
	font-size: 1.5rem;
	}
	.top_service_box .top_txt {
	margin-bottom: 20px;
	}
	.top_service_btn {
	max-width: 450px;
	margin: auto;
	padding: 15px;
	}
	.top_service_btn li {
	width: calc(33.3333% - 10px);
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.top_service_txt {
	margin-bottom: 20px;
	font-size: inherit;
	}
	.top_service_list {
	display: block;
	margin: 0 0 30px 0;
	}
	.top_service_list_in {
	width: 100%;
	margin: 0;
	}
	.top_service_list_in + .top_service_list_in {
	margin-top: 10px;
	}
	.top_service_list_ttl {
	padding: 8px 15px;
	}
	.top_service_list_ttl_1 {
	font-size: 2.0rem;
	}
	.top_service_list_ttl_2 {
	font-size: 1.6rem;
	}
	.top_service_list_txt {
	padding: 10px 12px;
	font-size: 1.4rem;
	}
	.top_service_box .top_txt {
	margin-bottom: 20px;
	}
	.top_service_btn {
	padding: 10px;
	}
	.top_service_btn li {
	width: calc(33.3333% - 10px);
	padding: 10px 5px;
	}
	.top_service_btn_ico {
	width: calc(92px * .3);
	height: calc(72px * .3);
	margin-bottom: 10px;
	}
	.top_service_btn_txt {
	font-size: 1.2rem;
	}
}

/*-- 企業情報 --*/
.top_company {
background-color: #fff;
}
.top_company .top_wrap {
display: flex;
}
.top_company_in1 {
width: 50%;
padding-right: 100px;
}
.top_company .top_ttl {
}
.top_company .top_ttl_1 {
}
.top_company .top_ttl_2 {
}
.top_company_name {
margin-bottom: 15px;
font-size: 2.4rem;
font-weight: 600;
color: #7c509d;
}
.top_company_dl {
border-top: 1px solid #000;
}
.top_company_dl dl {
display: flex;
border-bottom: 1px solid #000;
}
.top_company_dl dt {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: 116px;
text-align: center;
}
.top_company_dl dt::before {
position: absolute;
content: "";
width: 1px;
height: calc(100% - 20px);
top: 50%;
transform: translateY(-50%);
right: 0;
background-image: url(./common/img/line01.png);
background-repeat: repeat-y;
background-size: 1px auto;
}
.top_company_dl dt span {
display: block;
width: 48px;
margin: 0 auto;
text-align-last: justify;
text-justify: inter-ideograph;
}
.top_company_dl dd {
width: calc(100% - 116px);
padding: 22px 30px;
}
.top_company_dl dd span {
}
.top_company_dl dd span + span {
margin-left: 1em;
}
.top_company_dl_tel {
margin-bottom: 8px;
font-size: 3.0rem;
font-weight: bold;
line-height: 1;
color: #7c509d;
}
.top_company_dl_tel a {
}
.top_company_dl_tel a::before {
content: "tel.";
font-size: 1.8rem;
font-weight: 500;
}
.top_company_dl_txt {
font-size: 1.4rem;
}
.top_company .more {
}
.top_company_in2 {
width: 50%;
}
.top_company_map {
height: 470px;
border: 1px solid #000;
}
.top_company_map iframe {
display: block;
width: 100%;
height: 100%;
border-width: 0 !important;
}
@media (max-width:1460px) {
	.top_company_in1 {
	padding-right: 30px;
	}
	.top_company_dl dd span {
	display: block;
	}
	.top_company_dl dd span + span {
	margin-left: 0;
	}
	.top_company_dl_tel {
	font-size: 2.6rem;
	}
}
@media (max-width:1023px) {
	.top_company .top_wrap {
	position: relative;
	display: block;
	padding-bottom: 100px;
	}
	.top_company_in1 {
	width: 100%;
	margin-bottom: 30px;
	padding-right: 0;
	}
	.top_company_name {
	text-align: center;
	}
	.top_company_dl {
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	}
	.top_company .more {
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	}
	.top_company_in2 {
	width: 100%;
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.top_company .top_wrap {
	padding-bottom: 80px;
	}
	.top_company_name {
	font-size: 1.8rem;
	}
	.top_company_dl {
	width: 100%;
	font-size: 1.4rem;
	}
	.top_company_dl dt {
	width: 100px;
	}
	.top_company_dl dd {
	width: calc(100% - 100px);
	padding: 15px 30px;
	}
	.top_company_dl_tel {
	margin-bottom: 5px;
	font-size: 2.1rem;
	}
	.top_company_dl_tel a::before {
	font-size: 1.4rem;
	}
	.top_company_dl_txt {
	font-size: 1.3rem;
	}
	.top_company_map {
	height: 400px;
	}
}

/*-- 施工事例 --*/
.top_works {
padding: 0;
}
.top_works_box {
z-index: 1;
position: absolute;
width: 100%;
top: 50%;
transform: translateY(-50%);
left: 0;
right: 0;
margin: auto;
}
.top_works .top_wrap {
text-align: center;
}
.top_works .top_ttl {
text-shadow: 0 0 15px rgba(0,0,0,.5);
color: #fff;
}
.top_works .top_ttl_1 {
}
.top_works .top_ttl_2 {
}
.top_works .top_txt {
text-align: center;
text-shadow: 0 0 15px rgba(0,0,0,.5);
color: #fff;
}
.top_works .more {
background-color: #fff;
}
.top_works_img {
display: flex;
flex-wrap: wrap;
}
.top_works_img li {
position: relative;
width: calc(25%);
height: 298px;
background-color: #512671;
}
.top_works_img li img {
opacity: .5;
object-fit: cover;
width: 100%;
height: 100%;
}
@media (max-width:1460px) {
	.top_works_box {
	max-width: 964px;
	}
	.top_works_img li {
	height: 200px;
	}
}
@media (max-width:1023px) {
	.top_works_box {
	max-width: 708px;
	}
	.top_works_img li {
	height: 180px;
	}
	.top_works .top_txt {
	max-width: 550px;
	margin-left: auto;
	margin-right: auto;
	text-align: justify;
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.top_works_box {
	max-width: 330px;
	}
	.top_works_img li {
	width: 33.3333%;
	height: 120px;
	}
	.top_works_img li:nth-of-type(7),
	.top_works_img li:nth-of-type(8) {
	width: 50%;
	}
}

/*-- お知らせ --*/
.top_info {
background-color: #fff;
}
.top_info .top_wrap {
}
.top_info .top_ttl {
}
.top_info .top_ttl_1 {
}
.top_info .top_ttl_2 {
}
.top_info_box {
}
.top_info_box dl {
display: flex;
padding: 18px 0;
background-color: #fff;
}
.top_info_box dl:nth-of-type(odd) {
background-color: #f8f6fa;
}
.top_info_box dt {
width: 197px;
padding-left: 45px;
}
.top_info_box dd {
width: calc(100% - 197px);
padding-right: 45px;
}
.top_info_more {
width: fit-content;
margin-top: 15px;
margin-left: auto;
font-size: 1.8rem;
line-height: 1;
color: #78227d;
}
.top_info_more a {
cursor: pointer;
position: relative;
display: block;
padding-right: 24px;
}
.top_info_more a::after {
position: absolute;
content: "";
width: 6px;
height: 6px;
top: 6px;
right: 0;
border-style: solid;
border-color: #78227d;
border-width: 0 2px 2px 0;
transform: rotate(45deg);
}
@media (max-width:1460px) {
	.top_info_box dt {
	width: 150px;
	padding-left: 30px;
	}
	.top_info_box dd {
	width: calc(100% - 150px);
	padding-right: 30px;
	}
}
@media (max-width:1023px) {
	.top_info_box dl {
	padding: 15px 0;
	font-size: 1.5rem;
	}
	.top_info_box dt {
	width: 130px;
	padding-left: 20px;
	}
	.top_info_box dd {
	width: calc(100% - 130px);
	padding-right: 20px;
	}
	.top_info_more {
	margin-top: 15px;
	font-size: inherit;
	}
	.top_info_more a {
	padding-right: 18px;
	}
	.top_info_more a::after {
	width: 4px;
	height: 4px;
	}
}
@media (min-width:768px) {
	/* hover */
	.top_info_more a:hover {
	opacity: .5;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.top_info_box dl {
	display: block;
	padding: 10px;
	font-size: 1.4rem;
	}
	.top_info_box dt {
	width: 100%;
	padding-left: 0;
	}
	.top_info_box dd {
	width: 100%;
	padding-right: 0;
	}
	.top_info_more {
	margin-top: 10px;
	}
}

/*-- ご相談・お問い合わせ --*/
.top_contact {
background-color: #f2edf5;
}
.top_contact .top_wrap {
display: flex;
align-items: flex-end;
}
.top_contact_in1 {
width: 50%;
padding-right: 10px;
}
.top_contact .top_ttl {
}
.top_contact .top_ttl_1 {
}
.top_contact .top_ttl_2 {
}
.top_contact .top_txt {
}
.top_contact_in2 {
width: 50%;
}
.top_contact_btn {
display: flex;
}
.top_contact_btn_in {
width: calc(50% - 10px);
border: 1px solid #000;
border-radius: 5px;
}
.top_contact_btn_tel {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
margin-right: 10px;
line-height: 1;
background-color: #fff;
}
.top_contact_btn_tel,
.top_contact_btn_mail a {
position: relative;
height: 100px;
}
.top_contact_btn_tel::after,
.top_contact_btn_mail a::after {
position: absolute;
content: "";
width: 16px;
height: 16px;
bottom: 10px;
right: 10px;
background-image: url(./common/img/more_arrow.png);
background-repeat: no-repeat;
background-size: contain;
}
.top_contact_btn_mail a::after {
filter: brightness(0) invert(1);
}
.top_contact_btn_tel_1 {
margin-bottom: 10px;
font-family: "Noto Serif JP",serif;
font-weight: bold;
font-size: 3.4rem;
}
.top_contact_btn_tel_1 a {
}
.top_contact_btn_tel_1 a::before {
content: "tel.";
font-size: 1.8rem;
}
.top_contact_btn_tel_2 {
font-size: 1.4rem;
}
.top_contact_btn_mail {
margin-left: 10px;
font-family: "Noto Serif JP",serif;
font-size: 2.1rem;
font-weight: 600;
color: #fff;
background-color: #000;
}
.top_contact_btn_mail a {
position: relative;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.top_contact_btn_mail a::before {
display: block;
content: "";
width: 29px;
height: 29px;
margin-right: 10px;
background-image: url(./common/img/ico_mail.svg);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
@media (max-width:1460px) {
	.top_contact .top_wrap {
	display: block;
	}
	.top_contact_in1 {
	width: 100%;
	margin-bottom: 30px;
	padding-right: 0;
	}
	.top_contact .top_ttl {
	text-align: center;
	}
	.top_contact .top_txt {
	text-align: center;
	}
	.top_contact_in2 {
	width: 100%;
	}
	.top_contact_btn {
	max-width: 700px;
	margin: auto;
	}
}
@media (max-width:1023px) {
	.top_contact_btn_tel_1 {
	font-size: 3.0rem;
	}
	.top_contact_btn_mail {
	font-size: 1.9rem;
	}
}
@media (min-width:768px) {
	/* hover */
	.top_contact_btn_mail:hover {
	background-color: #7c509d;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.top_contact_in1 {
	margin-bottom: 20px;
	}
	.top_contact .top_txt {
	text-align: left;
	}
	.top_contact_btn {
	display: block;
	max-width: 260px;
	}
	.top_contact_btn_in {
	width: 100%;
	}
	.top_contact_btn_tel,
	.top_contact_btn_mail a {
	height: 75px;
	}
	.top_contact_btn_tel::after,
	.top_contact_btn_mail a::after {
	width: 10px;
	height: 10px;
	bottom: 8px;
	right: 8px;
	}
	.top_contact_btn_tel {
	margin-right: 0;
	margin-bottom: 10px;
	}
	.top_contact_btn_tel_1 {
	margin-bottom: 5px;
	font-size: 2.2rem;
	}
	.top_contact_btn_tel_1 a::before {
	font-size: 1.4rem;
	}
	.top_contact_btn_tel_2 {
	font-size: 1.3rem;
	}
	.top_contact_btn_mail {
	margin-left: 0;
	}
	.top_contact_btn_mail {
	font-size: 1.6rem;
	}
	.top_contact_btn_mail a::before {
	width: 22px;
	height: 22px;
	}
}

/*-----------------------
 フッター
-----------------------*/
footer {
z-index: 9;
position: relative;
background-color: #fff;
}
.footer_box {
padding: 100px 90px;
text-align: center;
background-color: #fff;
}
.footer_box .top_wrap {
}
.footer_logo {
max-width: 184px;
margin: 0 auto 20px;
}
.footer_logo a {
}
.footer_logo img {
}
.footer_name {
margin-bottom: 15px;
font-size: 2.0rem;
font-weight: bold;
}
.footer_address {
margin-bottom: 20px;
}
.footer_map {
max-width: 340px;
margin: auto;
font-family: "Noto Serif JP",serif;
font-weight: bold;
background-color: #fff;
border: 1px solid #000;
border-radius: 5px;
}
.footer_map a {
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 60px;
}
.footer_map a::before {
display: block;
content: "";
width: calc(19px);
height: calc(23px);
margin-right: 10px;
background-image: url(./common/img/ico_map.svg);
background-repeat: no-repeat;
background-position: center;
background-size: contain;
}
.footer_nav {
padding: 27px 90px;
background-color: #f1e8f2;
}
.footer_nav_ul {
display: flex;
justify-content: center;
max-width: 1400px;
margin: auto;
}
.footer_nav li {
margin: 0 23px;
font-family: "Noto Serif JP",serif;
font-weight: bold;
}
.footer_nav li a {
}
.copyright {
padding: 34px 90px;
font-size: 1.4rem;
text-align: center;
}
.pagetop {
z-index: 9;
position: fixed;
width: 60px;
height: 60px;
right: 10px;
margin-bottom: 10px;
background-color: #7c509d;
background-image: url(./common/img/pagetop_arrow.png);
background-repeat: no-repeat;
background-position: center;
background-size: 24px auto;
border-radius: 5px;
}
.pagetop a {
display: block;
width: 100%;
height: 100%;
}
html.active footer {
z-index: 99;
overflow-x: hidden;
overflow-y: auto;
position: fixed;
display: block;
width: 100%;
height: 100vh;
top: 0;
left: 0;
padding-bottom: 100px;
background-color: #fff;
animation: spmenu-open .5s ease-out forwards;
}
html.closing footer {
animation: spmenu-close .5s 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 .footer_box {
padding: 80px 30px 50px 30px;
}
html.active .footer_nav {
padding: 0;
background-color: transparent;
}
html.active .footer_nav_ul {
flex-wrap: wrap;
justify-content: flex-start;
max-width: 600px;
margin: auto;
}
html.active .footer_nav li {
width: calc(50% - 12px);
margin: 6px;
font-size: 1.8rem;
text-align: center;
background-color: #f1e8f2;
border: 1px solid #000;
border-radius: 5px;
}
html.active .footer_nav a {
position: relative;
display: block;
padding: 20px 10px;
}
html.active .footer_nav a::before {
position: absolute;
content: "";
width: 16px;
height: 16px;
bottom: 10px;
right: 10px;
background-image: url(./common/img/more_arrow.png);
background-repeat: no-repeat;
background-size: contain;
}
html.active .copyright {
display: none;
}
@media (max-width:1460px) {
	.footer_box {
	padding: 80px 70px;
	}
	.footer_nav {
	padding: 27px 70px;
	}
	.copyright {
	padding: 34px 70px;
	}
	.pagetop {
	right: 0;
	margin-bottom: 0;
	border-radius: 5px 0 0 0;
	}
}
@media (max-width:1023px) {
	.footer_name {
	font-size: 1.8rem;
	}
}
@media (min-width:768px) {
	/* hover */
	.footer_map:hover {
	color: #fff;
	background-color: #000;
	transition: background-color .5s;
	}
	.footer_map:hover a::before {
	filter: brightness(0) invert(1);
	}
	.footer_nav_ul li a:hover {
	opacity: .5;
	transition: .5s;
	}
	html.active .footer_nav_ul li:hover {
	color: #fff;
	background-color: #000;
	transition: background-color .5s;
	}
	html.active .footer_nav_ul li a:hover {
	opacity: 1;
	}
	html.active .footer_nav_ul li:hover a::before {
	filter: brightness(0) invert(1);
	}
	.pagetop:hover {
	background-color: #000;
	transition: .5s;
	}
}
@media (max-width:767px) {
	footer {
	padding-bottom: 80px;
	}
	.footer_box {
	padding: 50px 15px 30px 15px;
	}
	.footer_logo {
	max-width: 140px;
	}
	.footer_name {
	margin-bottom: 5px;
	font-size: 1.6rem;
	}
	.footer_address {
	margin-bottom: 10px;
	font-size: 1.4rem;
	}
	.footer_map {
	max-width: 230px;
	font-size: 1.4rem;
	}
	.footer_map a {
	height: 45px;
	}
	.footer_map a::before {
	width: calc(19px * .8);
	height: calc(23px * .8);
	}
	html:not(.active) .footer_nav {
	display: none;
	}
	.copyright {
	padding: 0 15px;
	font-size: 1.2rem;
	}
	.pagetop {
	width: 50px;
	height: 50px;
	}
	html.active .footer_box {
	padding: 40px 15px 30px 15px;
	}
	html.active .footer_logo {
	max-width: 100px;
	}
	html.active .footer_nav_ul {
	display: block;
	max-width: 230px;
	}
	html.active .footer_nav li {
	width: 100%;
	margin: 5px 0;
	font-size: inherit;
	}
	html.active .footer_nav a {
	padding: 10px 5px;
	}
	html.active .footer_nav a::before {
	width: 10px;
	height: 10px;
	bottom: 8px;
	right: 8px;
	}
}

/*-----------------------
 追従バナー
-----------------------*/
.sidebnr {
z-index: 9;
position: fixed;
top: 40%;
right: 0;
width: 80px;
}
.sidebnr_ul {
overflow: hidden;
border-radius: 8px 0 0 8px;
box-shadow: 0 0 15px rgba(0,0,0,.2);
}
.sidebnr_ul li {
background-color: #9c6fbd;
}
.sidebnr_ul li a {
display: block;
display: flex;
align-items: center;
justify-content: center;
width: 100%;
height: 80px;
}
.sidebnr_ul li a img {
object-fit: contain;
object-position: center;
width: 40px;
height: 40px;
}
.sidebnr_ul li.line {
background-color: #fff;
}
@media (max-width:1460px) {
	.sidebnr {
	width: 60px;
	top: inherit;
	bottom: 100px;
	}
	.sidebnr_ul li a {
	height: 60px;
	}
	.sidebnr_ul li a img {
	width: 30px;
	height: 30px;
	}
}
@media (max-width:1023px) {
}
@media (min-width:768px) {
	/* hover */
	.sidebnr_ul li:hover {
	background-color: #000;
	transition: .5s;
	}
}
@media (max-width:767px) {
	.sidebnr {
	width: 150px;
	right: inherit;
	left: 0;
	bottom: 0;
	}
	.sidebnr_ul {
	display: flex;
	border-radius: 0 8px 0 0;
	}
	.sidebnr_ul li {
	width: calc(33.3333%);
	}
	.sidebnr_ul li a {
	width: 50px;
	height: 50px;
	}
	.sidebnr_ul li a img {
	width: 25px;
	height: 25px;
	}
}

/*-----------------------
 下層共通
-----------------------*/
.page {
overflow-x: hidden;
position: relative;
}
.page::after {
opacity: .1;
z-index: -8;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-image: url(./common/img/low_bg.jpg);
background-repeat: no-repeat;
background-position: top center;
filter: grayscale(100%);
}
.low {
}
.low_body_wrap {
padding-top: 125px;
}
@media (max-width: 1260px) {
	.low_body_wrap {
	padding-top: 120px;
	}
}
@media (max-width: 1023px) {
	.low_body_wrap {
	padding-top: 110px;
	}
}
@media (max-width: 767px) {
	.low_body_wrap {
	padding-top: 95px;
	}
}

/* ページタイトル */
.pagettl {
z-index: 1;
position: relative;
}
.pagettl_img {
height: 300px;
background-color: #512671;
}
.pagettl_img img {
opacity: .5;
object-fit: cover;
width: 100%;
height: 100%;
}
.pagettl_h2 {
z-index: 1;
position: absolute;
width: calc(100% - 30px);
top: 50%;
transform: translateY(-50%);
left: 0;
right: 0;
margin: auto;
text-align: center;
text-shadow: 0 0 15px rgba(0, 0, 0, .5);
color: #fff;
line-height: 1;
}
.pagettl_h2::before {
display: none;
z-index: -1;
position: absolute;
content: "";
width: calc(100% + 100px);
height: 100%;
top: -15px;
left: 0;
right: 0;
margin: auto;
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: "Times New Roman","Noto Serif","Noto Serif JP",serif;
font-size: 6.0rem;
font-weight: normal;
letter-spacing: 1px;
}
.pagettl_h2_2 {
font-family: "Noto Serif JP",serif;
font-size: 2.6rem;
letter-spacing: 2px;
}
@media (max-width: 1260px) {
	.pagettl_img {
	height: 230px;
	}
	.pagettl_h2_1 {
	font-size: 5.0rem;
	}
}
@media (max-width: 1023px) {
	.pagettl_img {
	height: 180px;
	}
	.pagettl_h2_1 {
	font-size: 4.0rem;
	}
	.pagettl_h2_2 {
	font-size: 2.4rem;
	}
}
@media (max-width: 767px) {
	.pagettl_img {
	height: 120px;
	}
	.pagettl_h2_1 {
	margin-bottom: 10px;
	font-size: 2.6rem;
	}
	.pagettl_h2_2 {
	font-size: 2.0rem;
	}
}

/*-- 大枠 --*/
.low_section {
padding: 100px 70px;
}
.low_wrap {
max-width: 1200px;
margin: auto;
}
.low_parts + .low_parts {
margin-top: 60px;
}
@media (max-width:1260px) {
	.low_section {
	padding: 80px 70px;
	}
	.low_wrap {
	max-width: 964px;
	}
}
@media (max-width:1023px) {
	.low_section {
	padding: 60px 70px;
	}
	.low_wrap {
	max-width: 708px;
	}
	.low_parts + .low_parts {
	margin-top: 50px;
	}
}
@media (max-width:767px) {
	.low_section {
	padding: 50px 15px;
	}
	.low_wrap {
	max-width: 330px;
	}
	.low_parts + .low_parts {
	margin-top: 40px;
	}
}

/* 背景色 */
.bg01 {
position: relative;
}
.bg01::after {
z-index: -9;
position: absolute;
content: "";
width: 100%;
height: 100%;
top: 0;
left: 0;
background-color: #f9f6fb;
}

/* タイトル */
.low_ttl01 {
position: relative;
margin-bottom: 100px;
padding-bottom: 40px;
font-family: "Noto Serif JP",serif;
font-size: 4.0rem;
font-weight: 600;
text-align: center;
letter-spacing: 1px;
}
.low_ttl01::before {
position: absolute;
content: "";
width: 80px;
height: 3px;
bottom: 0;
right: 0;
left: 0;
margin: auto;
background: linear-gradient(90deg, #7c509d 0%, #7c509d 50%, #be93df 50%, #be93df 100%);
}
.low_ttl02 {
z-index: 1;
position: relative;
margin-bottom: 20px;
padding: 20px 30px;
font-family: "Noto Serif JP",serif;
font-size: 2.6rem;
font-weight: 600;
color: #fff;
background-image: linear-gradient(to right,
#9c6fbd,#e5d3f3);
}
.low_ttl02::before {
z-index: -1;
position: absolute;
content: "";
width: calc(100% - 10px);
height: calc(100% - 10px);
top: 50%;
transform: translateY(-50%);
left: 0;
right: 0;
margin: auto;
border: 1px solid #fff;
}
.low_parts + .low_ttl02 {
margin-top: 80px;
}
.low_ttl03 {
}
.low_ttl04 {
}
@media (max-width:1260px) {
	.low_ttl01 {
	padding-bottom: 30px;
	font-size: 3.4rem;
	}
	.low_ttl01::before {
	width: 60px;
	}
	.low_ttl02 {
	padding: 18px 25px;
	font-size: 2.4rem;
	}
	.low_ttl02::before {
	width: calc(100% - 8px);
	height: calc(100% - 8px);
	}
	.low_parts + .low_ttl02 {
	margin-top: 60px;
	}
}
@media (max-width:1023px) {
	.low_ttl01 {
	margin-bottom: 50px;
	font-size: 3.0rem;
	}
	.low_ttl02 {
	padding: 15px 20px;
	font-size: 2.2rem;
	}
	.low_parts + .low_ttl02 {
	margin-top: 50px;
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.low_ttl01 {
	margin-bottom: 60px;
	padding-bottom: 20px;
	font-size: 2.6rem;
	}
	.low_ttl01::before {
	width: 50px;
	height: 2px;
	}
	.low_ttl02 {
	margin-bottom: 20px;
	padding: 13px 15px;
	font-size: 2.0rem;
	}
	.low_ttl02::before {
	width: calc(100% - 6px);
	height: calc(100% - 6px);
	}
	.low_parts + .low_ttl02 {
	margin-top: 40px;
	}
}

/* テキスト */
.low_txt_m {
text-align: justify;
}
.low_txt_m p + p {
margin-top: 1em;
}
.fit {
width: fit-content;
margin-left: auto;
margin-right: auto;
}
.red {
color: #d90707;
}

/*-----------------------
 会社概要
-----------------------*/
.company_page {
}
.company_msg_box {
}
.company_msg_box {
display: flex;
font-family: "Noto Serif JP",serif;
}
.company_msg_box_in1 {
width: calc(100% - 250px);
padding-right: 100px;
}
.company_msg_box_txt {
font-size: 1.9rem;
line-height: 2;
text-align: justify;
}
.company_msg_box_txt_p {
}
.company_msg_box_txt_p + .company_msg_box_txt_p {
margin-top: 20px;
}
.company_msg_box_in2 {
width: 250px;
}
.company_msg_box_img {
margin: 0 auto 10px;
}
.company_msg_box_img img {
object-fit: cover;
aspect-ratio: 3 / 4;
}
.company_msg_box_name {
display: flex;
align-items: center;
justify-content: center;
margin-bottom: 10px;
}
.company_msg_box_name_1 {
margin-right: 1em;
}
.company_msg_box_name_2 {
font-size: 2.4rem;
letter-spacing: .1em;
}
.company_about {
}
.company_about_box {
display: flex;
flex-direction: row-reverse;
align-items: center;
}
.company_about_box_in1 {
width: 50%;
padding-left: 100px;
}
.company_about_box_img {
}
.company_about_box_img img {
object-fit: cover;
aspect-ratio: 1 / 1.3;
width: 100%;
height: 100%;
}
.company_about_box_in2 {
width: 50%;
}
.company_about_box_dl {
border-top: 1px solid #000;
}
.company_about_box_dl dl {
display: flex;
padding: 20px;
border-bottom: 1px solid #000;
}
.company_about_box_dl dt {
position: relative;
width: 120px;
font-weight: bold;
}
.company_about_box_dl dt::before {
position: absolute;
content: "";
width: 1px;
height: 100%;
top: 50%;
transform: translateY(-50%);
right: 0;
background-image: url(./common/img/line01.png);
background-repeat: repeat-y;
background-size: 1px auto;
}
.company_about_box_dl dd {
width: calc(100% - 120px);
padding-left: 20px;
text-align: justify;
}
.company_about_box_dl dd span {
}
.company_about_box_dl dd span + span {
margin-left: 1em;
}
.company_about_box_dl ul {
}
.company_about_box_dl ul + ul {
margin-top: 1em;
}
.company_strengths {
}
.company_strengths_list {
counter-reset: pointNumber;
}
.company_strengths_list_in {
}
.company_strengths_list_in + .company_strengths_list_in {
margin-top: 50px;
padding-top: 50px;
border-top: 1px solid #7c509d;
}
.company_strengths_list_box {
display: flex;
flex-direction: row-reverse;
}
.company_strengths_list_box_in1 {
width: 40%;
}
.company_strengths_list_box_img {
}
.company_strengths_list_box_img img {
object-fit: cover;
aspect-ratio: 3 / 2;
width: 100%;
height: 100%;
}
.company_strengths_list_box_in2 {
width: 60%;
padding-right: 50px;
}
.company_strengths_list_ttl {
position: relative;
display: flex;
align-items: center;
margin-bottom: 40px;
padding-left: 160px;
font-family: "Noto Serif JP",serif;
font-size: 2.4rem;
counter-increment: pointNumber;
}
.company_strengths_list_ttl::before {
position: absolute;
content: "POINT " counter(pointNumber, decimal-leading-zero);
width: 120px;
top: 50%;
transform: translateY(-50%);
left: 0;
padding: 8px;
font-size: 1.8rem;
text-align: center;
color: #7c509d;
background-color: #fff;
border: 1px solid #7c509d;
border-radius: 5px;
}
.company_strengths_list_txt {
text-align: justify;
line-height: 1.8;
}
.company_area {
}
.company_area_box {
display: flex;
flex-direction: column-reverse;
}
.company_area_box_in1 {
}
.company_area_box_txt {
text-align: center;
line-height: 1.8;
}
.company_area_box_txt strong {
color: #7c509d;
}
.company_area_box_in2 {
margin-bottom: 20px;
}
.company_area_box_img {
max-width: 800px;
margin: auto;
}
.company_area_box_img img {
object-fit: cover;
aspect-ratio: 16 / 9;
width: 100%;
height: 100%;
}
.company_map_box {
height: 600px;
border: 1px solid #000;
}
.company_map_box iframe {
display: block;
width: 100%;
height: 100%;
border-width: 0 !important;
}
@media (max-width:1260px) {
	.company_msg_box_in1 {
	padding-right: 60px;
	}
	.company_msg_box_txt {
	font-size: 1.8rem;
	line-height: 1.8;
	}
	.company_msg_box_name_1 {
	font-size: 1.5rem;
	}
	.company_msg_box_name_2 {
	font-size: 2.0rem;
	}
	.company_about_box_in1 {
	padding-left: 60px;
	}
	.company_strengths_list_in + .company_strengths_list_in {
	margin-top: 40px;
	padding-top: 40px;
	}
}
@media (max-width:1023px) {
	.company_msg_box_in1 {
	padding-right: 40px;
	}
	.company_msg_box_txt {
	font-size: inherit;
	line-height: inherit;
	}
	.company_msg_box_txt_p + .company_msg_box_txt_p {
	margin-top: 10px;
	}
	.company_msg_box_name_2 {
	font-size: 1.8rem;
	}
	.company_about_box {
	display: block;
	}
	.company_about_box_in1 {
	width: 100%;
	max-width: 400px;
	margin: 0 auto 30px;
	padding-left: 0;
	}
	.company_about_box_img img {
	aspect-ratio: 3 / 2;
	}
	.company_about_box_in2 {
	width: 100%;
	}
	.company_about_box_dl {
	max-width: 500px;
	margin: auto;
	}
	.company_about_box_dl dl {
	padding: 10px 15px;
	}
	.company_strengths_list_in + .company_strengths_list_in {
	margin-top: 30px;
	padding-top: 30px;
	}
	.company_strengths_list_box_in1 {
	}
	.company_strengths_list_box_img {
	height: 100%;
	}
	.company_strengths_list_box_img img {
	aspect-ratio: inherit;
	}
	.company_strengths_list_box_in2 {
	padding-right: 30px;
	}
	.company_strengths_list_ttl {
	display: block;
	margin-bottom: 20px;
	padding-top: 40px;
	padding-left: 0;
	font-size: 2.2rem;
	}
	.company_strengths_list_ttl::before {
	width: 100px;
	top: 0;
	transform: inherit;
	padding: 5px;
	font-size: 1.5rem;
	}
	.company_strengths_list_txt {
	line-height: inherit;
	}
	.company_area_box_txt {
	line-height: inherit;
	}
}
@media (min-width:768px) {
}
@media (max-width:767px) {
	.company_msg_box {
	display: block;
	}
	.company_msg_box_in1 {
	width: 100%;
	margin-bottom: 20px;
	padding-right: 0;
	}
	.company_msg_box_in2 {
	width: 100%;
	max-width: 180px;
	margin: auto;
	}
	.company_about_box_dl {
	font-size: 1.4rem;
	}
	.company_about_box_dl dl {
	padding: 8px 10px;
	}
	.company_about_box_dl dt {
	width: 100px;
	}
	.company_about_box_dl dd {
	width: calc(100% - 100px);
	padding-left: 15px;
	}
	.company_about_box_dl dd span {
	display: block;
	}
	.company_about_box_dl dd span + span {
	margin-left: 0;
	}
	.company_about_box_dl ul + ul {
	margin-top: 5px;
	}
	.company_strengths_list_in + .company_strengths_list_in {
	margin-top: 20px;
	padding-top: 20px;
	}
	.company_strengths_list_box {
	flex-direction: column-reverse;
	}
	.company_strengths_list_box_in1 {
	width: 100%;
	}
	.company_strengths_list_box_img img {
	aspect-ratio: 3 / 2;
	}
	.company_strengths_list_box_in2 {
	width: 100%;
	margin-bottom: 20px;
	padding-right: 0;
	}
	.company_strengths_list_ttl {
	width: fit-content;
	text-align: center;
	margin: 0 auto 15px;
	padding-top: 0;
	padding-left: 100px;
	font-size: 1.9rem;
	}
	.company_strengths_list_ttl::before {
	width: 80px;
	top: 50%;
	transform: translateY(-50%);
	padding: 3px;
	font-size: 1.4rem;
	border-radius: 1px;
	}
	.company_area_box_txt {
	text-align: justify;
	}
	.company_map_box {
	height: 400px;
	}
}

/*-----------------------
 施工事例
-----------------------*/
.works_page {
}
.works_sec {
}
.works_btn {
display: flex;
flex-wrap: wrap;
margin: 0 -8px 100px -8px;
}
.works_btn li {
width: calc(33.333% - 16px);
margin: 8px;
font-family: "Noto Serif JP",serif;
font-size: 1.9rem;
font-weight: 600;
line-height: 1.4;
letter-spacing: 1px;
color: #7c509d;
background-color: #fff;
border: 2px solid #7c509d;
border-radius: 5px;
}
.works_btn li a {
position: relative;
display: flex;
align-items: center;
justify-content: center;
height: 65px;
padding: 10px 20px;
text-align: center;
}
.works_btn li a::before {
position: absolute;
content: "";
width: 16px;
height: 16px;
bottom: 10px;
right: 10px;
background-image: url(./common/img/more_arrow.png);
background-repeat: no-repeat;
background-size: contain;
}
.works_box {
padding: 40px;
background-color: #fff;
border-radius: 10px;
}
.works_box + .works_box {
margin-top: 50px;
}
.work_ttl {
z-index: 1;
position: relative;
margin-bottom: 40px;
padding: 15px 20px;
font-family: "Noto Serif JP",serif;
font-size: 2.8rem;
font-weight: 600;
color: #fff;
background-color: #9c6fbd;
}
.work_ttl::before {
z-index: -1;
opacity: .6;
position: absolute;
content: "";
width: 100%;
height: calc(100% - 10px);
top: 50%;
transform: translateY(-50%);
left: 0;
right: 0;
margin: auto;
border: 1px solid #fff;
}
.works_box_wrap {
padding: 40px;
}
.works_parts {
}
.works_parts + .works_parts {
margin-top: 30px;
}
.works_sub {
margin-top: 40px;
margin-bottom: 20px;
padding: 10px 20px;
background-image: linear-gradient(to right,#dbc1ee,#fff);
border-radius: 5px;
}
.works_deta {
}
.works_deta_ttl {
margin-bottom: 8px;
font-size: 1.8rem;
}
.works_deta_dl {
display: flex;
flex-wrap: wrap;
border-style: solid;
border-color: #000;
border-width: 1px 0 0 1px;
}
.works_deta_dl dl {
display: flex;
width: 50%;
line-height: 1.4;
border-style: solid;
border-color: #000;
border-width: 0 1px 1px 0;
}
.works_deta_dl dt {
width: 130px;
padding: 15px 10px;
text-align: center;
background-color: #f1f1f1;
}
.works_deta_dl dd {
width: calc(100% - 130px);
padding: 15px 20px;
background-color: #fff;
}
.works_txt {
text-align: justify;
}
.works_txt p + p {
margin-top: 10px;
}
.works_img {
}
.works_img_3col {
display: flex;
flex-wrap: wrap;
margin: -5px;
}
.works_img_3col li {
width: calc(33.3333% - 10px);
margin: 5px;
}
.works_img_3col li img,
.works_img_2col li img {
object-fit: cover;
aspect-ratio: 3 / 2;
width: 100%;
height: 100%;
border-radius: 5px;
}
.works_img_2col {
display: flex;
align-items: flex-start;
}
.works_img_2col + .works_img_2col {
margin-top: 30px;
}
.works_img_2col li {
position: relative;
}
.works_img_2col li::before {
position: absolute;
top: 0;
padding: 10px 20px;
font-weight: bold;
line-height: 1;
letter-spacing: 1px;
color: #fff;
}
.works_img_2col li.before {
width: calc(40% - 20px);
margin-right: 20px;
}
.works_img_2col li.after {
width: calc(60% - 20px);
margin-left: 20px;
}
.works_img_2col li.before::before {
content: "Before";
left: 0;
background-color: #aaa;
border-radius: 5px 0 5px 0;
}
.works_img_2col li.before::after {
position: absolute;
content: "";
width: 20px;
height: 25px;
top: 50%;
transform: translateY(-50%);
right: -30px;
background-color: #000;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.works_img_2col li.after::before {
content: "After";
right: 0;
background-color: #7c509d;
border-radius: 0 5px 0 5px;
}
@media (max-width:1260px) {
	.works_btn {
	margin: 0 -4px 80px -4px;
	}
	.works_btn li {
	width: calc(33.333% - 8px);
	margin: 4px;
	font-size: 1.8rem;
	letter-spacing: 0;
	}
	.works_btn li a {
	height: 60px;
	}
	.works_box {
	padding: 30px;
	}
	.work_ttl {
	font-size: 2.4rem;
	}
	.works_deta_dl {
	font-size: 1.5rem;
	}
	.works_deta_dl dt {
	padding: 13px 10px;
	}
	.works_deta_dl dd {
	padding: 13px 20px;
	}
}
@media (max-width:1023px) {
	.works_btn {
	margin-bottom: 50px;
	}
	.works_btn li {
	font-size: inherit;
	}
	.works_btn li a {
	height: 50px;
	}
	.works_box {
	padding: 20px;
	}
	.work_ttl {
	margin-bottom: 30px;
	font-size: 2.2rem;
	}
	.works_deta_ttl {
	margin-bottom: 5px;
	font-size: inherit;
	}
	.works_parts + .works_parts {
	margin-top: 20px;
	}
	.works_deta_dl dt {
	width: 100px;
	padding: 10px 5px;
	}
	.works_deta_dl dd {
	width: calc(100% - 100px);
	padding: 10px 15px;
	}
	.works_txt {
	font-size: 1.5rem;
	}
	.works_sub {
	margin-top: 30px;
	margin-bottom: 15px;
	}
	.works_img_2col li::before {
	padding: 8px 15px;
	font-size: 1.4rem;
	}
}
@media (min-width:768px) {
	/* hover */
	.works_btn li:hover {
	color: #fff;
	background-color: #7c509d;
	transition: background-color .3s;
	}
	.works_btn li:hover a::before {
	filter: brightness(0) invert(1);
	}
}
@media (max-width:767px) {
	.works_btn {
	margin: -2px -2px 40px -2px;
	}
	.works_btn li {
	width: calc(50% - 4px);
	margin: 2px;
	font-family: "Noto Sans JP", sans-serif;
	font-size: 1.4rem;
	}
	.works_btn li a {
	height: 40px;
	}
	.works_btn li a::before {
	width: 10px;
	height: 10px;
	bottom: 8px;
	right: 8px;
	}
	.works_box {
	padding: 15px;
	}
	.work_ttl {
	margin-bottom: 20px;
	padding: 10px 15px;
	font-size: 2.0rem;
	}
	.work_ttl::before {
	height: calc(100% - 7px);
	}
	.works_deta_ttl {
	margin-bottom: 5px;
	font-size: inherit;
	}
	.works_deta_dl {
	display: block;
	}
	.works_deta_dl dl {
	width: 100%;
	font-size: 1.3rem;
	}
	.works_deta_dl dt {
	padding: 8px 5px;
	}
	.works_deta_dl dd {
	padding: 8px 15px;
	}
	.works_txt {
	font-size: 1.4rem;
	}
	.works_sub {
	margin-top: 20px;
	margin-bottom: 10px;
	padding: 8px 15px;
	border-radius: 2px;
	}
	.works_img_3col {
	margin: -3px;
	}
	.works_img_3col li {
	width: calc(50% - 6px);
	margin: 3px;
	}
	.works_img_3col li img,
	.works_img_2col li img {
	border-radius: 2px;
	}
	.works_img_2col li.before {
	width: calc(45% - 10px);
	margin-right: 10px;
	}
	.works_img_2col li.after {
	width: calc(55% - 10px);
	margin-left: 10px;
	}
	.works_img_2col li::before {
	padding: 5px 8px;
	font-weight: 500;
	font-size: 1.2rem;
	}
	.works_img_2col li.before::before {
	border-radius: 2px 0 2px 0;
	}
	.works_img_2col li.before::after {
	width: 14px;
	height: 18px;
	right: -18px;
	}
	.works_img_2col li.after::before {
	border-radius: 0 2px 0 2px;
	}
}

/*-------------------------
 フォームパーツ
-----------------------*/
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: #000;
border: 1px solid #000;
}
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 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: 70px;
margin: 0 10px;
color: #000;
border: 2px solid #b385d5;
}
.contact_previous {
background-color: #c7c7c7;
border-color: #c7c7c7;
}
.contact_submit {
background-color: #b385d5;
}
.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;
font-weight: normal;
line-height: 1;
color: #d90707;
}
@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: #7c509d;
	border-color: #7c509d;
	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: 8px;
	border-radius: 0;
	}
	textarea {
	height: 200px;
	}
	.contact_submit_flex {
	margin-top: 2em;
	}
	.contact_submit_flex {
	display: block;
	}
	.contact_previous,
	.contact_submit {
	width: 250px;
	height: 55px;
	margin: 10px auto;
	}
}

/*-----------------------
 お問い合わせ
-----------------------*/
.contact_page {
}
.contact_box {
display: flex;
max-width: 1000px;
margin: auto;
}
.contact_box_in {
width: calc(33.3333% - 24px);
margin: 12px;
}
.contact_box_in_wrap {
padding: 20px;
text-align: center;
background-color: #f2edf5;
border: 2px solid #9c6fbd;
border-radius: 10px;
}
.contact_box_ttl {
position: relative;
margin: 0 auto 25px;
padding: 10px;
font-size: 1.7rem;
text-align: center;
color: #fff;
background-color: #9c6fbd;
border-radius: 100px;
}
.contact_box_tel1 {
position: relative;
margin-bottom: 8px;
padding-top: 100px;
font-family: "Times New Roman","Noto Serif JP",serif;
font-weight: 500;
font-size: 3.3rem;
letter-spacing: 1px;
line-height: 1;
}
.contact_box_tel1::before {
position: absolute;
content: "";
width: calc(100px * .6);
height: calc(139px * .6);
top: 0;
right: 0;
left: 0;
margin: auto;
background-image: url(./common/img/contact/thanks.png);
background-repeat: no-repeat;
background-size: contain;
}
.contact_box_tel1 a {
}
.contact_box_tel1 a::before {
content: "tel.";
font-size: 1.8rem;
}
.contact_box_tel2 {
line-height: 1;
}
.contact_box_qr {
max-width: 160px;
margin: auto;
}
.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: rgba(255,255,255,.5);
}
.contact_form dd {
width: calc(100% - 300px);
padding: 15px 0 15px 30px;
}
.contact_form dd label {
}
.contact_address_txt {
width: 100%;
margin-bottom: 5px;
font-size: 1.4rem;
letter-spacing: 0;
}
.contact_address {
}
.contact_address_1 {
margin-bottom: 1em;
}
.contact_address_1 input {
width: 150px;
}
.contact_address_2 {
margin-bottom: 1em;
}
.contact_address_3 {
}
.contact_address p {
margin-bottom: 3px;
font-size: 85%;
}
.privacy_box {
overflow-x: hidden;
overflow-y: auto;
height: 400px;
margin-top: 3em;
padding: 30px;
letter-spacing: 0;
background-color: #fff;
border: 1px solid #000;
}
.privacy_ttl {
margin-bottom: 1em;
font-family: "Noto Serif JP",serif;
font-size: 2.4rem;
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_sub {
position: relative;
margin-top: 2em;
margin-bottom: 5px;
padding-left: 15px;
font-weight: bold;
text-align: justify;
}
.privacy_sub::before {
position: absolute;
content: "";
width: 8px;
height: 12px;
top: 50%;
transform: translateY(-50%);
left: 0;
background-color: #000;
clip-path: polygon(0 0, 0% 100%, 100% 50%);
}
.privacy_txt {
font-size: 95%;
text-align: justify;
}
.privacy_txt p + p {
margin-top: 10px;
}
.formtbl {
width: 100%;
margin: 40px auto 0;
border-collapse: separate;
border-spacing: 5px;
}
.formtbl tr {
}
.formtbl th {
width: 300px;
padding: 20px;
font-weight: bold;
background-color: rgba(255,255,255,.5);
}
.formtbl td {
width: calc(100% - 300px);
padding: 20px;
}
.thanks_page {
}
.thanks_msg {
position: relative;
max-width: 600px;
margin: auto;
padding-top: 140px;
font-size: 1.8rem;
text-align: center;
}
.thanks_msg::before {
position: absolute;
content: "";
width: calc(100px * .8);
height: calc(139px * .8);
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;
}
@media (max-width:1260px) {
	.contact_box {
	margin: -6px;
	}
	.contact_box_in {
	width: calc(33.3333% - 12px);
	margin: 6px;
	}
	.contact_box_in_wrap {
	padding: 15px;
	}
	.contact_box_ttl {
	margin-bottom: 20px;
	padding: 10px 0;
	font-size: 1.5rem;
	}
	.contact_box_tel1 {
	margin-bottom: 5px;
	font-size: 2.8rem;
	}
	.contact_box_tel2 {
	font-size: 1.4rem;
	}
	.contact_box_qr {
	max-width: 150px;
	}
}
@media (max-width:1023px) {
	.contact_box {
	max-width: 550px;
	margin-left: auto;
	margin-right: auto;
	flex-wrap: wrap;
	justify-content: center;
	}
	.contact_box_in {
	width: calc(50% - 12px);
	margin: 6px;
	}
	.contact_box_in:first-of-type {
	width: calc(100% - 12px);
	}
	.contact_box_in:first-of-type .contact_box_in_wrap {
	max-width: 263px;
	margin-left: auto;
	margin-right: auto;
	}
	.contact_form dt {
	width: 200px;
	padding: 15px;
	}
	.contact_form dd {
	width: calc(100% - 200px);
	padding: 15px 0 15px 20px;
	}
	.thanks_msg {
	font-size: inherit;
	}
}
@media (min-width:768px) {
	/* hover */
	.contact_box_qr:hover,
	.privacy_txt a:hover {
	opacity: .5;
	transition: .3s;
	}
}
@media (max-width:767px) {
	.contact_box {
	margin: -4px;
	}
	.contact_box_in {
	width: calc(50% - 8px);
	margin: 4px;
	}
	.contact_box_in:first-of-type {
	width: calc(100% - 8px);
	}
	.contact_box_in:first-of-type .contact_box_in_wrap {
	max-width: 220px;
	}
	.contact_box_in_wrap {
	padding: 10px;
	border-radius: 6px;
	}
	.contact_box_ttl {
	position: relative;
	margin-bottom: 15px;
	padding: 0 0 12px 0;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 1.3;
	color: #7c509d;
	background-color: transparent;
	border-radius: 0;
	}
	.contact_box_ttl::before {
	position: absolute;
	content: "";
	width: 50px;
	height: 2px;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background-color: #7c509d;
	}
	.contact_box_tel1 {
	margin-bottom: 5px;
	padding-top: 80px;
	font-size: 2.4rem;
	letter-spacing: 0;
	}
	.contact_box_tel1::before {
	width: calc(100px * .5);
	height: calc(139px * .5);
	}
	.contact_box_tel2 {
	font-size: 1.3rem;
	}
	.contact_box_qr {
	max-width: 100px;
	}
	.contact_form dl {
	display: block;
	margin-bottom: 10px;
	}
	.contact_form dt {
	width: 100%;
	padding: 10px;
	border-radius: 4px;
	}
	.contact_form dd {
	width: 100%;
	padding: 10px 10px;
	}
	.contact_address_in1 input {
	width: 100px;
	}
	.wpcf7-radio .wpcf7-list-item {
	min-width: 70px;
	}
	.privacy_box {
	margin-top: 2em;
	padding: 15px;
	}
	.privacy_ttl {
	width: fit-content;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
	}
	.privacy_sub {
	margin-top: 1em;
	margin-bottom: 3px;
	padding-left: 12px;
	}
	.privacy_sub::before {
	width: 6px;
	height: 10px;
	}
	.thanks_msg {
	padding-top: 100px;
	}
	.thanks_msg::before {
	width: calc(100px * .6);
	height: calc(139px * .6);
	}
}

@media (max-width:767px) {
.formtbl th {
    width: 100%;
    display: block;
}
.formtbl td {
    width: 100%;
    display: block;
}
}

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


