@charset "utf-8";
/* common
==================================*/
  section{
  	padding: 90px 15px;
  }
  h3{
  	font-size: 34px;
  	font-weight: normal;
  	text-align: center;
  }
  h3 span{
  	display: block;
  	color: #9c7715;
  	padding: 0 0 5px;
  	font-family: 'Oswald';
  	font-size: 14px;
  	font-weight: 400;
  }

/* message
==================================*/
  .message{
    text-align: center;
  }
  .message h3{
    margin: 0 0 56px;
  }
  .message p{
    line-height: 24px;
  }
  .message ul{
    width: 725px;
    margin: 28px auto 38px;
    text-align: left;
  }
  .message ul li{
    position: relative;
    padding: 0 0 0 16px;
    font-size: 26px;
    font-weight: 500;
    line-height: 44px;
  }
  .message ul li::before{
    position: absolute;
    top: 20px;
    left: 0;
    content: "";
    background: #a38025;
    width: 8px;
    height: 8px;
    border-radius: 50%;
  }


/* voice
==================================*/
  .voice{
    background: #000;
  }
  .voice h3{
    color: #fff;
    margin: 0 0 40px;
  }
  .voice .box{
    display: flex;
    max-width: 1100px;
    margin: 20px auto 0;
    overflow: hidden;
  }
  .voice .box .ph img{
    height: 100%;
  }
  .voice .box .text_wrap{
    background: #fff;
    padding: 48px 50px 26px;
  }
  .voice .box .text_wrap b{
    display: block;
    color: #9c7715;
    font-family: 'Oswald';
    font-size: 14px;
    font-weight: 400;
  }
  .voice .box .text_wrap p.tl{
    padding: 12px 0 14px;
    font-size: 24px;
    font-weight: 500;
  }
  .voice .box .text_wrap p.name{
    margin: 0 0 19px;
    padding: 0 0 24px;
    border-bottom: 1px solid #d9d9d9;
  }
  .voice .box .text_wrap p.text{
    line-height: 24px;
  }


/* requirements
==================================*/
  .requirements b{
    display: block;
    position: relative;
    max-width: 984px;
    margin: 30px auto 0;
    font-weight: normal;
    padding: 0 0 15px 16px;
  }
  .requirements .txt_every {
    line-height: 1.8;
    text-align: center;
    padding-top: 36px;
  }
  .requirements b::before{
    position: absolute;
    top: 5px;
    left: 3px;
    content: "";
    background: #a38025;
    width: 8px;
    height: 8px;
    border-radius: 50%;
  }
  .requirements table{
    width: 1000px;
    margin: 0 auto;
  }
  @media screen and (max-width: 1050px){
    .requirements table{
      width: auto;
    }
  }
  .requirements table tr th{
    background: #f2f2f2;
    width: 165px;
    padding: 0 0 0 25px;
    border-top: 1px solid #dcdcdc;
    font-weight: 500;
    text-align: left;
    vertical-align: middle;
  }
  .requirements table tr:last-child th{
    border-bottom: 1px solid #dcdcdc;
  }
  .requirements table tr td{
    padding: 15px 0 15px 30px;
    border-top: 1px solid #e8e8e8;
    line-height: 24px;
  }
  .requirements table tr:last-child td{
    border-bottom: 1px solid #e8e8e8;
  }
  .requirements table ul li{
    padding: 0 0 22px;
  }
  .requirements table ul li:last-child{
    padding: 0;
  }
  .requirements table tr td a{
    text-decoration: underline;
  }
  .requirements table tr td a.tel{
    text-decoration: none;
    pointer-events: none;
    cursor: default;
  }

/* requirements
==================================*/
  .entry{
    padding: 0 0 90px;
  }
  .entry > p{
    margin: 0 0 34px;
    font-size: 24px;
    font-weight: 500;
    text-align: center;
  }
  .entry .entry_wrap{
    display: flex;
    justify-content: center;
  }
  .entry .tel_wrap p{
    font-family: 'Oswald';
    font-size: 32px;
    font-weight: 300;
  }
  .entry .tel_wrap p a{
    font-size: 46px;
    pointer-events: none;
    cursor: default;
  }
  .entry .tel_wrap p.time{
    color: #7f7f7f;
    padding: 12px 0 0;
    font-family: 'Noto Sans CJK JP';
    font-size: 14px;
    font-weight: 700;
  }
  .entry .entry_wrap > a{
    position: relative;
    z-index: 1;
    display: block;
    color: #fff;
    border: 1px solid #9c7715;
    width: 353px;
    height: 58px;
    margin: 0 0 0 26px;
    font-size: 18px;
    font-weight: 700;
    line-height: 58px;
    text-align: center;
  }
  .entry .entry_wrap > a:hover{
    color: #9c7715;
  }
  .entry .entry_wrap > a::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -2;
    content: '';
    background: #9c7715;
  }
  .entry .entry_wrap > a::before {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: -1;
    content: '';
    background: #fff;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .3s;
  }
  .entry .entry_wrap > a:hover::before {
    transform-origin: left top;
    transform: scale(1, 1);
  }