@charset "UTF-8";
/*------------------------------------
 company
------------------------------------*/
.company {
  width:100%;
  height:auto;
  padding:150px 0 200px 0;
  position:relative;
}
.company-body {
  width:90%;
  max-width:896px;
  height:auto;
  margin:0 auto;
  position:relative;
  z-index:1;
}
.company-col {
  width:100%;
  display:flex;
  justify-content:space-between;
  margin-bottom:100px;
}
.company-inner {
  width:100%;
}
.company-inner > dl {
  width:100%;
  display:flex;
  flex-wrap:wrap;
}
.company-inner > dl > dt {
  width:27.5%;
  display:flex;
  align-items:stretch;
  font-weight:bold;
  padding:30px 5px;
  line-height:1.4;
  box-sizing:border-box;
  border-bottom:1px solid #ccc;
}
.company-inner > dl > dt::before {
  display:block;
  content:'';
  width:calc(14px * 1);
  height:calc(14px * 1);
  background:url('../img/common/icon-dia.svg');
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center;
  margin-right:5px;
  padding-top:2px;
}
.company-inner > dl > dd {
  width:72.5%;
  padding:30px 5px;
  line-height:1.6;
  box-sizing:border-box;
  border-bottom:1px solid #ccc;
}
.company-inner > dl > dd br:nth-of-type(2) {
  display:none;
}
.spacer2 {
  font-size:1.2rem;
  margin-left:20px;
} 
.spacer {
  padding:0 5px;
}
.cp-ruby {
  font-size:1.2rem;
}
.company-inner > dl > dd > ul {
  width:100%;
  padding-left:20px;
  box-sizing:border-box;
}
.company-inner > dl > dd > ul > li:nth-of-type(n+2) {
  margin-top:10px;
}
.company-tel {
  font-size:1.3rem;
  margin-left:10px;
}
/*--- access ---*/
.access {
  width:100%;
  height:auto;
}
.access-body {
  width:90%;
  max-width:1280px;
  margin:0 auto;
}
.access-col {
  width:100%;
  display:flex;
  justify-content:space-between;
  position:relative;
}
.access-col::after {
  display:block;
  content:'';
  width:92.5%;
  height:100%;
  position:absolute;
  top:50px;
  left:0;
  background:#f3f0ee;
}
.access-inner {
  width:35%;
  height:auto;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding-left:5%;
  padding-top:100px;
  box-sizing:border-box;
  position:relative;
  z-index:1;
}
.access-inner__corp {
  width:100%;
  margin-bottom:20px;
  font-weight:bold;
}
.access-inner__corp > span {
  display:flex;
  align-items:center;
  font-size:1.2rem;
  margin-left:auto;
  color:#CD0000;
}
.access-inner__corp > span::after {
  display:block;
  content:'';
  flex:1;
  border-top:1px solid #ccc;
  margin-left:10px;
}
.access-inner__corp > p:nth-of-type(1) {
  font-weight:bold;
  line-height:1.2;
}
.access-inner__corp > p > span {
  font-size:2.4rem;
}
.access-inner__add {
  line-height:1.8;
  margin-bottom:20px;
}
.access-info {
  width:100%;
  font-size:1.4rem;
  padding-left:14px;
  box-sizing:border-box;
}
.access-info {
  background:rgba(0,0,0,.1);
  width:100%;
  padding:20px 20px 20px 30px;
  margin-bottom:30px;
  box-sizing:border-box;
}
.access-link {
  width:180px;
  height:48px;
}
.access-link > a {
  display:flex;
  justify-content:center;
  align-items:center;
  width:100%;
  height:100%;
  color:#fff;
  background:#1a1a1a;
  font-size:1.3rem;
  border-radius:50vh;
}
.access-link > a > i {
  margin-left:5px;
}
#map {
  width:60%;
  height:auto;
  position:relative;
  z-index:1;
}
#map::after {
  display:block;
  content:'';
  width:100%;
  height:0;
  padding-top:75%;
}
#map iframe {
  display:block;
  width:100%;
  height:100%;
  position:absolute;
  top:0;
  right:0;
  bottom:0;
  left:0;
}
@media screen and (max-width:1280px) {
}
@media screen and (max-width:1024px) {
  .access-inner {
    width:45%;
  }
  #map {
    width:50%;
  }
}
@media screen and (max-width:896px) {
}
@media screen and (max-width:786px) {
  .access-col {
    flex-direction:column-reverse;
  }
  .access-col::after {
    width:100%;
    height:calc(100% - 150px);
    top:200px;
  }
  #map {
    width:90%;
    margin:0 auto 50px auto;
  }
  .access-inner {
    padding:0;
    width:75%;
    margin:0 auto;
  }
}
@media screen and (max-width:680px) {
}
@media screen and (max-width:480px) {
  .company {
    padding:50px 0 100px 0;
  }
  .company-body {
    width:85%;
  }
  .company-col {
    margin-bottom:60px;
  }
  .company-inner > dl > dt {
    width:100%;
    padding:30px 5px 10px 5px;
    border-bottom:none;
  }
  .company-inner > dl > dd {
    width:100%;
    line-height:1.8;
    padding:0 10px 30px 10px;
  }
  .company-inner > dl > dd br:nth-of-type(2) {
    display:block;
  }
  .spacer {
    padding:0;
  }
  #map {
    width:100%;
  }
  .access-col::after {
    width:105%;
    height:calc(100% - 50px);
    top:100px;
    left:50%;
    transform:translate(-50%,0);
  }
  .access-inner {
    width:85%;
  }
}