@charset "UTF-8";
/*--- import -------------------------------------*/
/*------------------------------------- import ---*/
#contact {
  padding: 140px 0 100px;
  text-align: left; }
  #contact .box_in .ttl .item {
    top: -88px;
    left: -8px;
    width: 322px; }
  #contact .box_in .ttl:after {
    background: #000; }
  #contact .box_in ul {
    background: #fff;
    padding: 20px;
    margin-top: 40px;
    display: flex;
    justify-content: center;
    align-items: center; }
    #contact .box_in ul .tel_area {
      width: 48%;
      margin-right: 40px;
      padding: 10px;
      text-align: center; }
      #contact .box_in ul .tel_area a {
        font-weight: bold;
        color: #000;
        display: inline-block;
        font-size: 52px;
        line-height: 1; }
        #contact .box_in ul .tel_area a .min {
          font-size: 26px; }
      #contact .box_in ul .tel_area .p1 {
        color: #fff;
        background: #000;
        padding: 10px;
        margin-top: 10px; }
      @media screen and (max-width: 1200px) {
        #contact .box_in ul .tel_area a {
          font-size: 4.3333333333vw; }
          #contact .box_in ul .tel_area a .min {
            font-size: 2.1666666667vw; } }

@media screen and (max-width: 960px) {
  #contact .box_in ul {
    display: block; }
    #contact .box_in ul .tel_area {
      margin: 0 auto;
      max-width: 520px;
      width: 100%; }
      #contact .box_in ul .tel_area a {
        font-size: 6.333333vw; }
    #contact .box_in ul .right {
      margin-top: 20px;
      text-align: center; } }
@media screen and (max-width: 750px) {
  #contact {
    padding: 18.6666666667vw 0 13.3333333333vw; }
    #contact .box_in .ttl .item {
      left: -1.0666666667vw; }
    #contact .box_in ul {
      margin-top: 8vw;
      padding: 8vw 5.3333333333vw 5.3333333333vw 5.3333333333vw; }
      #contact .box_in ul li {
        max-width: 580px; }
      #contact .box_in ul .tel_area {
        white-space: nowrap;
        padding: 0; }
        #contact .box_in ul .tel_area a {
          font-size: 7.5vw; }
          #contact .box_in ul .tel_area a .min {
            font-size: 5vw; }
        #contact .box_in ul .tel_area .p1 {
          padding: 1.3333333333vw;
          margin-top: 1.3333333333vw;
          font-size: 14px; } }
#form {
  padding: 140px 0 100px;
  text-align: left;
  background: #000;
  color: #fff; }
  #form .box_in .ttl .item {
    top: -88px;
    left: -8px;
    width: 210px; }
  #form .box_in .form_area .mailform {
    background: #fff;
    padding: 45px 60px;
    color: #000; }
    #form .box_in .form_area .mailform ul {
      padding: 25px 15px;
      text-align: left;
      display: flex;
      justify-content: center; }
      #form .box_in .form_area .mailform ul:not(:last-child) {
        border-bottom: 1px solid #e3e9e9; }
      #form .box_in .form_area .mailform ul .form_ttl {
        width: 280px; }
      #form .box_in .form_area .mailform ul .con {
        width: calc(100% - 280px); }
    #form .box_in .form_area .mailform .post .con .num_post input {
      width: 150px; }
    #form .box_in .form_area .mailform .post .con .adress {
      margin-top: 10px; }
      #form .box_in .form_area .mailform .post .con .adress input {
        /*width: calc(100% - 50px);*/ }

@media screen and (max-width: 960px) {
  #form .box_in .form_area .mailform ul {
    display: block; }
    #form .box_in .form_area .mailform ul .form_ttl {
      width: 100%; }
    #form .box_in .form_area .mailform ul .con {
      width: 100%;
      margin-top: 15px; }
  #form .box_in .form_area .mailform .post .con .num_post input {
    width: 150px; }
  #form .box_in .form_area .mailform .post .con .adress {
    margin-top: 10px; }
    #form .box_in .form_area .mailform .post .con .adress input {
      /*width: calc(100% - 50px);*/ } }
@media screen and (max-width: 750px) {
  #form {
    padding: 24vw 0 13.3333333333vw; }
    #form .box_in .ttl .item {
      left: -1.0666666667vw; }
    #form .box_in .form_area .mailform {
      padding: 2.6666666667vw; }
      #form .box_in .form_area .mailform ul {
        padding: 0 2vw;
        padding-top: 4vw; }
        #form .box_in .form_area .mailform ul .con {
          margin-top: 0;
          border-bottom: none; }
      #form .box_in .form_area .mailform .post .con .num_post input {
        width: 150px; }
      #form .box_in .form_area .mailform .post .con .adress {
        margin-top: 1.3333333333vw; }
        #form .box_in .form_area .mailform .post .con .adress input {
          /*width: calc(100% - 50px);*/ } }
.any {
  position: relative; }
  .any:after {
    content: '任意';
    background: #e3e9e9;
    color: #444;
    font-size: 13px;
    display: inline-block;
    padding: 2px 15px;
    position: absolute;
    right: 10px;
    font-weight: bold;
    top: 5px; }
  @media screen and (max-width: 960px) {
    .any:after {
      top: 0;
      position: relative;
      right: -10px; } }

.need {
  position: relative; }
  .need:after {
    content: '必須';
    background: #f34141;
    color: #ffffff;
    font-size: 13px;
    display: inline-block;
    padding: 2px 15px;
    position: absolute;
    right: 10px;
    font-weight: bold;
    top: 5px; }
  @media screen and (max-width: 960px) {
    .need:after {
      top: 0;
      position: relative;
      right: -10px; } }
