.pc_view {
  display: none !important;
}
* {
  box-sizing: border-box;
}

body {
  width: 100%;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  font-size: 18px;
  line-height: 1.7;
  overflow-x: hidden;
}
img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
a {
  color: #002d49;
  text-decoration: none;
}
header {
  width: 94%;
  max-width: 1080px;
  margin: 0 auto;
  padding: 10px 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
header img.logo {
  width: 177px;
  height: auto;
}
main .swiper {
  height: calc(100vh - 74px);
}
main .swiper-slide {
  position: relative;
  z-index: 1;
  display: flex;
  justify-content: center;
  align-items: center;
}
main .swiper-slide.img01 {
  background: url(../img/main01.jpg) no-repeat center center;
  background-size: cover;
}
main .swiper-slide.img02 {
  background: url(../img/main02.jpg) no-repeat center center;
  background-size: cover;
}
main .swiper-slide.img03 {
  background: url(../img/main03.jpg) no-repeat center center;
  background-size: cover;
}
main .swiper-slide p {
  color: #fff;
  font-size: calc(48px * 0.8);
  position: absolute;
  z-index: 2;
  text-shadow: 2px 2px 1px rgba(0, 0, 0, 1);
}
main .swiper-slide p span {
  font-size: 87.5%;
}
main .swiper-slide p.vertical {
  writing-mode: vertical-rl;
  text-orientation: upright;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
/**********************************/
section h2 {
  font-size: calc(48px * 0.7);
  text-align: center;
  margin: 0 0 30px;
  font-weight: 300;
}
section h2 span {
  font-size: 0.875em;
}
section h3 {
  font-size: calc(32px * 0.7);
  margin: 0 0 20px;
  font-weight: 300;
}
section h3 span {
  font-size: 0.875em;
}
section p {
  font-size: calc(21px * 0.8);
  font-weight: 300;
}
/*********************************/
section#myWorks {
  padding: 40px 0;
}
section#myWorks div.box div.imgbox {
  width: 100%;
  background: url(../img/myworks01.jpg) no-repeat center 70%;
  background-size: cover;
  min-height: 400px;
}
section#myWorks div.box div.textbox {
  width: 100%;
  padding: 40px 3%;
}

/*********************************/
section#omotenashi {
  padding: 40px 0;
  background: #002d49;
  color: #fff;
  text-align: center;
}
section#omotenashi h3 {
  width: 94%;
  margin: 0 auto;
}
section#omotenashi p.textbox {
  width: 94%;
  max-width: 1000px;
  margin: 50px auto 0;
  text-align: left;
}

section#omotenashi h3 {
  margin: 50px 0;
}
section#omotenashi div.more {
  text-align: center;
  margin: 80px 0 30px;
}
section#omotenashi div.more a {
  padding: 15px 20px;
  background: #fff;
  color: #002d49;
  font-size: 21px;
}
/*********************************/
section#space {
  padding: 40px 0;
}
section#space h2 {
  width: 94%;
  margin: 0 auto 50px;
  background: #002d49;
  color: #fff;
  padding: 30px 0;
}
section#space div.box {
  width: 94%;
  margin: 0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
section#space div.box div.img {
  width: 32%;
  margin: 0 0 25px;
}
/********************************/
section#spaceDetail {
  padding: 40px 0;
}
section#spaceDetail h1 {
  background: #002d49;
  color: #fff;
  padding: 40px 0;
  margin: -30px 0 50px;
	text-align: center;
	font-size: 1.3em;
}
section#spaceDetail h2 {
  margin: 0 0 30px;
	font-size: 1.2em;
}
section#spaceDetail h3 {
	font-size:1.1em;
}
section#spaceDetail div.box {
  width: 94%;
  max-width: 1280px;
  margin: 0 auto;
}
section#spaceDetail p.copy {
  width: 94%;
  max-width: 1280px;
  margin: 20px auto 50px;
  background: #f5f5f5;
  padding: 20px;
}
section#spaceDetail div.sbox {
/*   display: flex;
  justify-content: space-between; */
  margin: 0 0 50px;
}
section#spaceDetail div.sbox div.imgbox {
  width: 100%;
}
section#spaceDetail div.sbox div.textbox {
  width: 100%;
}
section#spaceDetail div.sbox div.textbox h3 {
  margin: 0 0 25px !important;
  line-height: 1;
}
section#spaceDetail div.more {
  text-align: center;
  margin: 70px 0 50px;
}
section#spaceDetail div.more a {
  padding: 15px 70px;
  background: #002d49;
  color: #fff;
  font-size: 24px;
}
/*********************************/
section#connection {
  padding: 40px 0;
}
section#connection h3 {
  text-align: center;
}
section#connection div.box1 {
  display: flex;
  flex-wrap: wrap;
}
section#connection div.box1 div.imgbox {
  width: 100%;
  background: url(../img/connection02.jpg) no-repeat center left;
  background-size: cover;
  min-height: 350px;
  margin: 0 0 30px;
}
section#connection div.box1 div.textbox {
  width: 100%;
  padding: 40px 3%;
}
section#connection div.box2 {
  display: flex;
  flex-wrap: wrap;
}
section#connection div.box2 div.imgbox {
  width: 100%;
  background: url(../img/connection01.jpg) no-repeat center 70%;
  background-size: cover;
  min-height: 350px;
  margin: 0 0 30px;
}
section#connection div.box2 div.textbox {
  width: 100%;
  padding: 40px 3%;
}
section#connection div.staffbox {
  display: flex;
  flex-wrap: wrap;
  margin: 50px 0 0;
}
section#connection div.staffbox div.imgbox {
  width: 100%;
  background: url(../img/staff2.jpg) no-repeat center center;
  background-size: cover;
  min-height: 350px;
  margin: 0 0 30px;
}
section#connection div.staffbox div.textbox {
  width: 100%;
  padding: 0 3%;
}
section#connection div.staffbox img {
  margin: 0 0 30px;
}
section#connection div.more {
  text-align: center;
  margin: 80px 0 50px;
}
section#connection div.more a {
  padding: 15px 70px;
  background: #002d49;
  color: #fff;
  font-size: 21px;
}
/***************************/
section#staff {
  padding: 20px 0 120px;
}
section#staff h2 {
  background: #002d49;
  color: #fff;
  padding: 30px 0;
  margin: 0;
}
section#staff h3 {
  margin: 0 0 15px;
  font-size: 1.5em;
}
section#staff p {
  margin: 10px 0 20px;
}
section#staff div.staffbox1 {
  /* display: flex;
  justify-content: start; */
  margin: 0 0 0;
}
section#staff div.staffbox1 div.imgbox {
  /* order: 1; */
  width: 100%;
  background: url(../img/staff3.jpg) no-repeat center left;
  background-size: 100%;
  padding-top: calc(640 / 960 * 100%);
}
section#staff div.staffbox1 div.textbox {
  /* order: 2; */
  width: 100%;
  padding: 30px 3%;
}

section#staff div.staffbox2 {
  /* display: flex;
  justify-content: start; */
  margin: 0 0 0;
}
section#staff div.staffbox2 div.imgbox {
  /* order: 2; */
  width: 100%;
  background: url(../img/staff4-6.jpg) no-repeat center center;
  background-size: 100%;
  padding-top: calc(640 / 960 * 100%);
}
section#staff div.staffbox2 div.textbox {
  /* order: 1; */
  width: 100%;
  padding: 30px 3%;
}

section#staff div.staffbox3 {
  /* display: flex;
  justify-content: start; */
  margin: 0 0 0;
}
section#staff div.staffbox3 div.imgbox {
  /* order: 1; */
  width: 100%;
  background: url(../img/staff6.jpg) no-repeat center center;
  background-size: 100%;
  padding-top: calc(640 / 960 * 100%);
}
section#staff div.staffbox3 div.textbox {
  /* order: 2; */
  width: 100%;
  padding: 30px 3%;
}

section#staff div.staffbox4 {
  /* display: flex;
  justify-content: start; */
  margin: 0 0 0;
}
section#staff div.staffbox4 div.imgbox {
  /* order: 1; */
  width: 100%;
  background: url(../img/staff5.jpg) no-repeat center center;
  background-size: 100%;
  padding-top: calc(640 / 960 * 100%);
}
section#staff div.staffbox4 div.textbox {
  /* order: 2; */
  width: 100%;
  padding: 30px 3%;
}
section#staff div.chronology {
  width: 94%;
  margin: 50px auto 0;
}
section#staff div.more {
  text-align: center;
  margin: 30px 0 30px;
}
section#staff div.more a {
  padding: 8px 50px;
  background: #002d49;
  color: #fff;
  font-size: 21px;
}
/*********************************/
section#about {
  padding: 40px 0;
  background: #002d49;
  color: #fff;
}
section#about div.box {
  display: flex;
  flex-wrap: wrap;
}
section#about div.box div.imgbox {
  width: 100%;
  background: url(../img/about01.jpg) no-repeat center 70%;
  background-size: cover;
  min-height: 400px;
}
section#about div.box div.textbox {
  width: 100%;
  padding: 50px 3%;
}

section#about table {
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 0.9em;
  width: 100%;
}
section#about table th {
  padding: 5px 10px;
  vertical-align: top;
  white-space: nowrap;
  font-weight: 300;
  display: block;
  width: 100%;
  background: rgba(255, 255, 255, 0.2);
}
section#about table td {
  padding: 5px 10px 20px;
  vertical-align: top;
  font-weight: 300;
  display: block;
  width: 100%;
}
section#about a {
  color: #fff;
}
/*********************************/
section#access {
  padding: 40px 0;
}
section#access #map {
  height: 700px;
  width: 100%;
  opacity: 1;
  transition: opacity 1s ease;
  margin: 0 0 50px;
}
section#access div.accbox {
  width: 94%;
  max-width: 1200px;
  margin: 0 auto 50px;
  background: #f5f5f5;
  padding: 20px;
  text-align: center;
}
section#access div.accbox h3 {
  margin: 0 0 20px;
  text-align: center;
  padding: 0 0 10px;
}
section#access div.accbox img {
  width: 70%;
  max-width: 240px;
}
section#access div.accbox div.more {
  text-align: center;
  margin: 30px 0 50px;
}
section#access div.accbox div.more a {
  padding: 15px 70px;
  background: #002d49;
  color: #fff;
  font-size: 21px;
}
section#access div.accessBox {
  width: 94%;
  max-width: 1200px;
  margin: 0 auto 50px;
  padding: 50px 0 0;
}
section#access div.accessBox h4 {
  text-align: center;
  font-size: 24px;
  margin: 0 0 20px;
}
section#access div.more {
  text-align: center;
  margin: 80px 0 50px;
}
section#access div.more a {
  padding: 10px 40px;
  border: solid 1px #002d49;
  color: #002d49;
  font-size: 21px;
}
/*********************************/
section#chintai {
  padding: 40px 0;
  background: #002d49;
  color: #fff;
}
section#chintai h3 {
  text-align: center;
}
section#chintai div.box {
  width: 94%;
  max-width: 1280px;
  margin: 0 auto;
  /* display: flex;
  justify-content: space-between;
  gap: 40px;
  flex-wrap: wrap; */
}
section#chintai div.box div.imgbox {
  width: 80%;
  margin: 0 auto 50px;
  padding: 15px;
  background: rgba(255, 255, 255, 0.1);
}
section#chintai div.box p {
  text-align: center;
}
section#chintai div.box p.name {
  text-align: center;
}
section#chintai div.box p.price {
  text-align: center;
}
section#chintai div.more {
  text-align: center;
  margin: 50px 0 50px;
}
section#chintai div.more a {
  padding: 15px 10px;
  background: #ff8400;

  font-size: 21px;
  display: block;
  color: #fff !important;
}
/*************************/
section#chintai div.topbox {
  /* display: flex;
  justify-content: end; */
}
section#chintai div.topbox div.title{
	font-size: 1.5em;	
}
section#chintai div.box1 div.imgbox {
  width: 100%;
  background: url(../img/chintai.jpg) no-repeat center center;
  background-size: cover;
  min-height: 400px;
  margin: 0 0 20px;
 } 
section#chintai div.box2 div.imgbox {
  width: 100%;
  background: url(../img/chintai2a.jpg) no-repeat center center;
  background-size: cover;
  min-height: 400px;
  margin: 0 0 20px;
}
section#chintai div.box3 div.imgbox {
  width: 100%;
  background: url(../img/chintai3.jpg) no-repeat center center;
  background-size: cover;
  min-height: 400px;
  margin: 0 0 20px;
}
section#chintai div.topbox div.textbox {
  width: 100%;
  padding: 50px 3%;
}
section#chintai div.topbox div.textbox h3 {
  text-align: left;
}
/*********************************/
section#chintai-index {
  padding: 40px 0;
  background: #002d49;
  color: #fff;
}
section#chintai-index h3 {
  text-align: center;
}
section#chintai-index div.box {
  width: 94%;
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
}
section#chintai-index div.box div.imgbox {
  width: 100%;
  margin: 0 auto 20px;
  padding: 20px;
  background: rgba(255, 255, 255, 0.1);
}
section#chintai-index div.box p {
  font-size: 1.1rem;
}
section#chintai-index div.box p.name {
  text-align: center;
}
section#chintai-index div.box p.copy {
  text-align: center;
}
section#chintai-index div.box p.price {
  text-align: center;
}
section#chintai-index div.box a {
  color: #fff;
}
section#chintai-index div.box div.imgbox.sumi a {
  display: block;
  pointer-events: none;
  position: relative;
}
section#chintai-index div.box div.imgbox.sumi a .sumi {
  position: absolute;
  left: 0;
  top: 0;
}
section#chintai-index div.box div.full{
	width: 40%;
	max-width: 80px;
	margin: 0 auto;
}
section#chintai-index div.box div.akiari {
	width: 45%;
  max-width: 127px;
  margin: 0 auto;
}
/*********************************/
section#chintaiDetail {
  padding: 40px 0;
  background: #002d49;
  color: #fff;
}
section#chintaiDetail h3 {
  text-align: center;
  background: #fff;
  color: #000;
  padding: 20px 0;
  width: 94%;
  max-width: 1280px;
  margin: 0 auto 50px;
}
section#chintaiDetail div.box {
  width: 94%;
  max-width: 1280px;
  margin: 0 auto 50px;
  /* display: flex;
  justify-content: space-between;
  gap: 40px; */
}
section#chintaiDetail div.imgbox {
  width: 100%;
}
section#chintaiDetail div.textbox {
  width: 100%;
}
section#chintaiDetail div.gallery {
  width: 94%;
  max-width: 1280px;
  margin: 0 auto;
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
}
section#chintaiDetail div.gallery div.sbox {
  width: 48%;
  margin: 0 1% 10px;
}
section#chintaiDetail div.gallery div.sbox:nth-of-type(1),
section#chintaiDetail div.gallery div.sbox:nth-of-type(3),
section#chintaiDetail div.gallery div.sbox:nth-of-type(5),
section#chintaiDetail div.gallery div.sbox:nth-of-type(7),
section#chintaiDetail div.gallery div.sbox:nth-of-type(9) {
  margin: 0 1% 10px 0;
}
section#chintaiDetail div.gallery div.sbox:nth-of-type(2),
section#chintaiDetail div.gallery div.sbox:nth-of-type(4),
section#chintaiDetail div.gallery div.sbox:nth-of-type(6),
section#chintaiDetail div.gallery div.sbox:nth-of-type(8),
section#chintaiDetail div.gallery div.sbox:nth-of-type(10),
section#chintaiDetail div.gallery div.sbox:nth-of-type(12) {
  margin: 0 0 10px 1%;
}
section#chintaiDetail h4 {
  margin: 0 0 25px;
  font-size: 24px;
}
section#chintaiDetail table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  border: solid 1px #fff;
  border-width: 1px 1px 0 0;
  font-size: 0.9em;
}
section#chintaiDetail table th {
  padding: 7px;
  vertical-align: top;
  font-weight: 300;
  border: solid 1px #fff;
  border-width: 0 0 1px 1px;
  width: 18%;
  background: rgba(255, 255, 255, 0.2);
}
section#chintaiDetail table td {
  padding: 7px;
  vertical-align: top;
  font-weight: 300;
  border: solid 1px #fff;
  border-width: 0 0 1px 1px;
}
section#chintai-index div.back,
section#chintaiDetail div.back {
  text-align: center;
  margin: 80px 0 50px;
}
section#chintai-index div.back a,
section#chintaiDetail div.back a {
  padding: 12px 70px;
  background: #fff;
  color: #002d49;
  font-size: 24px;
}

/*********************************/
section#contact {
  padding: 0 0 40px;
  background: url(../img/contactBg3.jpg) no-repeat center center;
  background-size: cover;
}
section#contact div.contact-bg {
  background: url(../img/contactBg2.jpg) no-repeat center top #fff;
  background-size: 100%;
}
section#contact div.contactHead {
  width: 100%;
  /* max-width: 1280px; */
  background: url(../img/contactHead.jpg) no-repeat right top;
  background-size: cover;
  padding: 40px 3% 40px;
  margin: 0 auto 50px;
  color: #fff;
  text-align: center;
}
section#contact h3 {
  text-align: center;
}
section#contact div.box {
  width: 94%;
  max-width: 1080px;
  margin: 0 auto;
}
section#contact table {
  table-layout: fixed;
  border-collapse: collapse;
  border-spacing: 0;
  width: 100%;
}
section#contact table th {
  padding: 10px 10px 5px 10px;
  vertical-align: top;
  white-space: nowrap;
  font-weight: 300;
  width: 100%;
  display: block;
}
section#contact table td {
  padding: 10px;
  vertical-align: top;
  font-weight: 300;
  width: 100%;
  display: block;
}
section#contact table th i {
  font-style: normal;
  font-size: 0.9rem;
}
section#contact table th span {
  font-size: 0.9rem;
  color: #c00;
}
section#contact input {
  border: solid 1px #ccc;
  padding: 5px;
  background: #fff;
}
section#contact input#zip1 {
  width: 20%;
}
section#contact input#zip2 {
  width: 30%;
}
section#contact input.email,
section#contact input.introduce,
section#contact input.address,
section#contact input.phone{
  width: 100% !important;
}
section#contact input.name,
section#contact input.kana {
  width: 45%;
}
section#contact input.tel {
  width: 30%;
}
section#contact textarea {
  border: solid 1px #ccc;
  padding: 5px;
  width: 100% !important;
  height: 300px;
  background: #fff;
}
section#contact div.more {
  text-align: center;
  margin: 60px 0 50px;
}
section#contact div.more a {
  padding: 15px 70px;
  background: #002d49;
  color: #fff;
  font-size: 21px;
}
section#contact .mw_wp_form .error{
	display: inline-block !important;
}
/*********************************/
footer {
  background: #002d49;
  color: #fff;
  padding: 20px 0;
  text-align: center;
  font-size: 0.7rem;
}
/**GoTop**********************************/
#pageTop {
  position: fixed;
  width: 26px;
  bottom: 20px;
  right: 10px;
  z-index: 999;
}
