@charset "UTF-8";

#main{overflow-x:hidden;}

#main #about .about_title{font-size:36px;text-align:left;color:var(--main-color);letter-spacing:.2em;margin:0 0 80px;}

#main #about #message > .inner{padding:0 0 80px;position:relative;}
#main #about #message > .inner::before{content:"";height:1px;display:block;background:var(--gray-color);width:100%;position:absolute;left:0;bottom:0;}
#main #about #message > .inner::after{content:"";height:1px;display:block;background:var(--main-color);width:134px;position:absolute;left:0;bottom:0;}
#main #about #message .about_sub_title{font-size:24px;text-align:left;font-weight:700;margin:0 0 40px;}
#main #about #message .txt{font-size:20px;line-height:1.6;text-align:left;margin:0 0 40px;}
#main #about #message .sign{font-size:24px;line-height:1.6;text-align:left;text-align:right;}

#main #about #outline > .inner{padding:80px 0 100px;position:relative;}
#main #about #outline > .inner::before{content:"";height:1px;display:block;background:var(--gray-color);width:100%;position:absolute;left:0;bottom:0;}
#main #about #outline > .inner::after{content:"";height:1px;display:block;background:var(--main-color);width:134px;position:absolute;left:0;bottom:0;}
#main #about #outline table{width:100%;border-collapse:collapse;border-spacing:0;}
#main #about #outline table tr{border-bottom:1px solid #BCBCBC;}
#main #about #outline table th,
#main #about #outline table td{font-size:20px;line-height:1.6;text-align:left;padding:15px 0;}
#main #about #outline table th{width:310px;}
#main #about #outline table td a{color:#000;text-decoration:underline;}
@media screen and (min-width: 768px) {
  #main #about #outline table td a:hover{text-decoration:none;}
}

#main #history > .inner{padding:80px 0 100px;position:relative;}
#main #history > .inner::before{content:"";height:1px;display:block;background:var(--gray-color);width:100%;position:absolute;left:0;bottom:0;}
#main #history > .inner::after{content:"";height:1px;display:block;background:var(--main-color);width:134px;position:absolute;left:0;bottom:0;}
#main #history .img_box img{height:auto;width:1080px;white-space:nowrap;}

#main #office > .inner{padding:80px 0 0;}
#main #office ul{display:flex;flex-wrap:wrap;margin:0 -40px -70px;}
#main #office ul li{width:calc(33.333% - 80px);margin:0 40px 70px;}
#main #office ul li .office_name{font-size:24px;text-align:left;margin:0 0 15px;}
#main #office ul li .map{margin:0 0 15px;}
#main #office ul li .map img{font-size:1px;line-height:0;height:auto;width:100%;}
#main #office ul li p.adress{font-size:16px;line-height:1.6;text-align:left;margin:0;}

@media (max-width: 1280px) {  
  #main #about .about_title{font-size:2.812vw;margin:0 0 6.25vw;}

  #main #about #message > .inner{padding:0 0 6.25vw;}
  #main #about #message > .inner::after{width:10.468vw;}
  #main #about #message .about_sub_title{font-size:1.875vw;margin:0 0 3.125vw;}
  #main #about #message .txt{font-size:1.562vw;margin:0 0 3.125vw;}
  #main #about #message .sign{font-size:1.875vw;}

  #main #about #outline > .inner{padding:6.25vw 0 7.812vw;}
  #main #about #outline > .inner::after{width:10.468vw;}
  #main #about #outline table th,
  #main #about #outline table td{font-size:1.562vw;padding:15px 0;}
  #main #about #outline table th{width:24.218vw;}

  #main #history > .inner{padding:6.25vw 0 7.812vw;}
  #main #history > .inner::after{width:10.468vw;}
  #main #history .img_box img{width:84.375vw;}

  #main #office > .inner{padding:6.25vw 0 0;}
  #main #office ul{margin:0 -3.125vw -5.468vw;}
  #main #office ul li{width:calc(33.333% - 6.25vw);margin:0 3.125vw 5.468vw;}
  #main #office ul li .office_name{font-size:1.875vw;margin:0 0 1.171vw;}
  #main #office ul li .map{margin:0 0 1.171vw;}
  #main #office ul li p.adress{font-size:1.25vw;}
}

@media screen and (max-width: 767px) {
  #main #about .about_title{font-size:16px;font-weight:700;margin:0 0 30px;}

  #main #about #message > .inner{padding:0 0 35px;}
  #main #about #message > .inner::after{width:60px;}
  #main #about #message .about_sub_title{font-size:14px;margin:0 0 15px;}
  #main #about #message .txt{font-size:14px;margin:0 0 1.6em;}
  #main #about #message .sign{font-size:14px;}

  #main #about #outline > .inner{padding:20px 0 35px;}
  #main #about #outline > .inner::after{width:60px;}
  #main #about #outline table th,
  #main #about #outline table td{font-size:14px;padding:10px 0;}
  #main #about #outline table th{width:90px;}

  #main #history > .inner{padding:20px 0 35px;}
  #main #history > .inner::after{width:60px;}
  #main #history .img_box{width:calc(100% + 40px);
    margin: 0 -40px 0 0;
    overflow-x:scroll;white-space:nowrap;}
  #main #history .img_box img{height:290px;width:auto;margin:0 40px 0 0;}

  #main #office > .inner{padding:20px 0 0;}
  #main #office ul{margin:0 0 -30px;}
  #main #office ul li{width:100%;margin:0 0 30px;}
  #main #office ul li .office_name{font-size:14px;font-weight:700;margin:0 0 10px;}
  #main #office ul li .map{margin:0 0 15px;}
  #main #office ul li p.adress{font-size:16px;}
}
