@charset "UTF-8";

/* ==========================================================
 html5 elements
========================================================== */
article, aside, figure, figcaption, footer, header, nav, section
{ display: block;}
/* ==========================================================
 reseting
========================================================== */
body {
  line-height: 1.6;
  color: #404040;
  font-size: 14px;
  -webkit-text-size-adjust: 100%;
}

body, input, textarea, button, .txt-title {
  /* font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; */
  /* 明朝フォント */
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}
p, label, .label, header, select, h3, h4, .table-cmn, .list-cmn-02 {
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
body, div, pre, p, blockquote, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, form, fieldset, th, td, button, figure, figcaption
{ margin: 0; padding: 0;}
input, textarea
{ margin: 0; font-size: 100%;}
input, textarea, select
{ /*-webkit-appearance: none;*/}
p {
  vertical-align: bottom;
  line-height: 1.95em;
}
textarea
{ resize: none;}
button
{ border: none; overflow: visible; background: none; vertical-align: top;  font-size: 100%; color: inherit; cursor: pointer; -webkit-appearance: none;}
label
{ display: inline-block;}
.label {
  display: inline-block;
  font-size: 16px;
  padding: 10px 20px;
  letter-spacing: 3px;
  font-weight: 700;
  color: #fff;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  background: #998676;
}
table
{ border-collapse: collapse; border-spacing: 0; font-size: 100%;}
fieldset, img
{ border: 0;}
img
{ height: auto; vertical-align: top;}
address, caption, code, em, th
{ font-style: normal; font-weight: normal;}
ol, ul
{ list-style: none;}
caption, th
{ text-align: left;}
h1, h2, h3, h4, h5, h6, strong, em
{ font-size: 100%; font-weight: normal;}
hr {
  display: block;
  height: 1px;
  border: 0;
  border-top: 1px solid #998676;
  margin: 1.6em 0;
  padding: 0;
}
a, input
{/* outline: none; -webkit-tap-highlight-color:rgba(0,0,0,0);*/}
sup, sub
{ font-size: 63%;}
sup
{ vertical-align: top;}
sub
{ vertical-align: baseline;}
*
{ box-sizing: border-box; -webkit-box-sizing: border-box;}
/* ==========================================================
 base Link
========================================================== */
a {
  color: #404040;
  text-decoration: none;
}
a:hover {
  color: #998676;
}
a:visited {}
a:hover,
a:active,
a:focus { text-decoration: none;}
/* ==========================================================
 clearfix
========================================================== */
.clearfix:before, .clearfix:after,
.contents:before, .contents:after,
.contents-main:before, .contents-main:after,
.box-cmn:before, .box-cmn:after,
.header:before, .header:after,
.footer:before, .footer:after,
.footer-in:before, .footer-in:after,
.footer-utility:before, .footer-utility:after
{
  content: "";
  display: table;
}
.clearfix:after,
.contents:after,
.contents-main::after,
.box-cmn:after,
.header:after,
.footer:after,
.footer-in:after,
.footer-utility:after
{
  clear: both;
}
/* For IE 6/7
---------------------------------------------------------- */
.clearfix,
.contents
{
  *zoom: 1;
}
/* ==========================================================
 layout
========================================================== */
html { overflow-y: scroll;}
body { text-align: center;}
/* ==========================================================
 wrapper
========================================================== */
.wrapper {
  width: 100%;
}
/* ==========================================================
 header
========================================================== */
.header {
  width: 1240px;
  margin: 0 auto;
  position: relative;
}
  .header-in {
    width: 1040px;
    margin: 0 auto;
    text-align: left;
    float: right;
    position: relative;
    line-height: 45px;
    font-weight: bold;
    font-size: 12px;
  }
    .header-in .txt-header {
      float: left;
      line-height: 45px;
      letter-spacing: 2px;
    }
    .header-in .menu.left {
      float: left;
    }
    .header-in .menu.right {
      float: right;
    }
/* ==========================================================
 nav-global
========================================================== */
.nav-global {

}
  .nav-global li {
    display: inline-block;
  }
    .nav-global li a {
      padding: 0 5px;
      margin-left: 30px;
      letter-spacing: 2px;
    }
    .nav-global li a:hover {
      text-decoration: none;
    }
/* ==========================================================
 nav-local
========================================================== */
.nav-local {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
  .nav-local li {
  }
    .nav-local li a {
      display: block;
      margin-bottom: 18px;
      font-weight: bold;
      font-size: 12px;
      line-height: 14px;
    }
    .nav-local li a:hover {
      text-decoration: none;
      color: #998676;
    }
    .nav-local li a.active {
      text-decoration: none;
      color: #998676
    }
/* ==========================================================
 contents
========================================================== */

.contents {
  width: 1240px;
  margin: 0 auto;
  text-align: left;
}
.contents-main {
  float: right;
  width: 1040px;
}
.contents-sub {
  /*
  float: left;
  */
  position: fixed;
  left: auto;
  top: 0px;
  padding-top: 1.5%;
  width: 200px;
  background-color: #FFF;
  z-index: 2;
}
  .contents-sub .logo {
    margin: 5px 0 0 36px;
  }
  .contents-sub .logo:hover {
    opacity: 0.7;
  }
/* ==========================================================
 footer
========================================================== */
.footer {
  width: 100%;
  position: relative;
  margin-top: 80px;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
  .footer-in {
    width: 1240px;
    margin: 0 auto;
  }
  .footer-contents {
    background: #fff;
    width: 1040px;
    float: right;
    text-align: left;
  }
    .footer-contents ul li {
      width: 50%;
      float: left;
    }
    .footer-contents .footer-logo {
      margin: 44px 0 62px 62px;
    }
    .footer-contents .footer-logo:hover {
      opacity: 0.7;
    }
    .footer-contents .box-contact {
      margin-top: 10px;
    }
    .footer-contents .box-contact p {
      display: inline-block;
      margin-right: 30px;
    }
    .footer-contents .box-contact img{
      margin-right: 5px;
    }
    .footer-contents .box-contact p:first-child{
    font-size: 24px;
    line-height: 25px;
    color: #998676;
    font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    }

  .footer-utility {
    background: #4D433B;
    color: #fff;
    line-height: 64px;
  }
    .footer-utility .footer-utility-in {
      width: 1240px;
      margin: 0 auto;
    }
      .footer-utility .footer-utility-in .inner {
        background: #4D433B;
        width: 1040px;
        float: right;
      }

    .footer-utility .footer-links {
      margin-left: 58px;
      float: left;
    }
      .footer-utility .footer-links li {
        margin-right: 25px;
        float: left;
      }
        .footer-utility .footer-links li a{
          color: #fff;
          font-size: 12px;
        }
          .footer-utility .footer-links li a:hover{
            color: #998676;
            text-decoration: none;
          }
  .footer-copyright {
    font-size: 9px;
    float: right;
    margin-right: 35px;
  }
/* ==========================================================
 grid
========================================================== */
/* grid-cmn
---------------------------------------------------------- */
.box-grid-cmn {
  -webkit-flex: 1; /* Safari 6.1+ */
    -ms-flex: 1; /* IE 10 */
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-content: flex-start;
}
  .box-grid-cmn .box-col-cmn-2 {
    display: inline-block;
    margin-bottom: 5px;
    width: calc(50% - 25px);
    margin-right: 25px;
  }
  .box-grid-cmn .box-col-cmn-3 {
    display: inline-block;
    margin-bottom: 40px;
    width: calc(33.33% - 25px);
    margin-right: 25px;
  }
  .box-grid-cmn .box-col-cmn-4 {
    display: inline-block;
    width: calc(25% - 25px);
    margin-right: 25px;
  }


/* ==========================================================
 section
========================================================== */
/* sec-cmn
---------------------------------------------------------- */
.sec-cmn-01 {
}
/* section last margin */
section:last-of-type {
  margin-bottom: 0;
}
/* ==========================================================
 box
========================================================== */
/* box-cmn
---------------------------------------------------------- */
.box-cmn {
  padding: 20px 15px;
  position: relative;
}
  .box-cmn.box-footer {
    padding: 20px 50px 0 5px;
    font-size: 12px;
    font-weight: 500;
  }
.box-col-cmn {
  float: left;
  width: 50%;
}
.box-row-cmn-01 {
  width: 100%;
  margin: 0 auto;
}
.box-row-cmn-02 {
  width: 100%;
  padding: 0 60px;
}
.box-row-cmn-03 {
  width: 100%;
  padding: 0 200px;
}
  .box-row-cmn-01:before, .box-row-cmn-01:after,
  .box-row-cmn-02:before, .box-row-cmn-02:after,
  .box-row-cmn-03:before, .box-row-cmn-03:after  {
    content: '';
    display: table;
  }
  .box-row-cmn-01:after,
  .box-row-cmn-02:after,
  .box-row-cmn-03:after {
    clear: both;
  }


/* ==========================================================
 card
========================================================== */
.card-cmn {
  position: relative;
  display: flex;
  flex-direction: column;
  min-width: 0;
  word-wrap: break-word;
  background-clip: border-box;
}
.card-cmn:hover {
  opacity: 0.7;
}
.card-cmn:hover .card-cmn-body:hover{
  opacity: 1;
}
  .img-card-cmn {
    width: 280px;
  }
  .card-cmn-body {
    width: 260px;
    flex: 1 1 auto;
    padding: 10px 5px 0 0;
    line-height: 1.6em;
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
  }
    .card-cmn-body .txt-title {
      margin-bottom: 5px;
      font-size: 16px;
      color: #998676;
      font-weight: bold;
      font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    }
    .card-cmn-body .txt-subtitle {
      font-size: 13px;
      margin-bottom: 10px;
      font-weight: bold;
    }
    .card-cmn-body .txt-detail {
      font-size: 11px;
    }
    .card-cmn-body .txt-date {
      color: #000;
      margin-bottom: 5px;
      display: inline-block;
      vertical-align: middle;
      font-size: 12px;
    }
    .card-cmn-body .txt-catagory {
      color: #998676;
      display: inline-block;
      vertical-align: middle;
      font-size: 12px;
    }
    .card-cmn-body .txt-detail p:hover {
      text-decoration: none;
    }
.card-cmn-02 {
  padding: 38px;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
  .card-cmn-02 ul li {
    margin-bottom: 30px;
  }
/* ==========================================================
 hero
========================================================== */
/* hero-cmn
---------------------------------------------------------- */
.hero-cmn {
  width: 1040px;
  margin-bottom: 50px;
  position: relative;
}
  .hero-cmn .txt-header {
    text-align: center;
    font-size: 28px;
    font-family: 'Cinzel', "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: 10px;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-47%, -50%);
    text-indent: 10px;
    padding-left: 10px;
  }
    .hero-cmn .txt-header span{
      font-family: "ヒラギノ角ゴ Pro W6", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
      display: block;
      line-height: 24px;
      font-size: 18px;
      letter-spacing: 2px;
      margin-top: 10px;
      font-weight: 600;
      text-indent: 2px;
    }

/* ==========================================================
 module
========================================================== */
.modules-button-group {
  width: 100%;
}
  .modules-button-group.center {
    padding: 0 70px;
    text-align: center;
  }
  .modules-button-group:before, .modules-button-group:after {
    content: '';
    display: table;
  }
  .modules-button-group:after {
    clear: both;
  }
  .modules-button-group > ul {
    margin: 0 -10px 10px;
    list-style: none;
    padding: 0;
    display: block;
  }
  .modules-button-group > ul:after {
    clear: both;
  }
  /*
    .modules-button-group > ul > li {
      width: 33.33%;
      padding: 0 10px;
      float: left;
      display: table;
      min-height: 1px;
    }
  */
  .modules-button-group > ul > li {
    width: 33.33%;
    padding: 0 10px;
    float: left;
    display: table;
    min-height: 1px;
  }
      .modules-button-group > ul.page > li {
        padding: 0 20px;
      }

/* ==========================================================
 title
========================================================== */
/* ttl-cmn-01
---------------------------------------------------------- */
.ttl-cmn-01 {
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
  display: block;
  color: #998676;
  font-size: 18px;
  padding-top: 20px;
  margin-bottom: 30px;
  text-align: center;
  font-weight: bold;
  letter-spacing: 3px;
}
/* ttl-cmn-02
---------------------------------------------------------- */
.ttl-cmn-02 {
  display: block;
  color: #404040;
  margin-bottom: 60px;
  text-align: center;
  font-weight: bold;
}
/* ttl-cmn-03
---------------------------------------------------------- */
.ttl-cmn-03 {
  display: block;
  color: #998676;
  font-size: 18px;
  margin-bottom: 20px;
  font-weight: bold;
  font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "游明朝体", "Yu Mincho", YuMincho, serif;
}
/* ==========================================================
 text
========================================================== */
/* txt-cmn
---------------------------------------------------------- */
.txt-cmn {
}
/* ==========================================================
 list
========================================================== */
/* list-cmn
---------------------------------------------------------- */
.list-cmn-01 {
}
  .list-cmn-01 >ul> li {
    padding-bottom: 60px;
    margin-bottom: 30px;
    background: url('../../img/flow/list_arrow-down.png') bottom center no-repeat;
    background-position-x: calc(600px - 50%);
    display: flex;
  }
  .list-cmn-01 li:last-child {
    background: none;
    padding-bottom: 0px;
    margin-bottom: 0px;
  }
  .list-cmn-01 li .box-left {
    width: 120px;
    float: left;
    margin-right: 20px;
    text-align: center;
  }
  .list-cmn-01 li .box-right {
    float: left;
    width: 515px;
  }
  .list-cmn-01 li h3 {
    font-size: 19px;
    font-weight: bold;
    margin-bottom: 5px;

  }
.list-cmn-02 {
  text-align: left;
  margin-bottom: 5px;
  line-height: 18px;
}
  .list-cmn-02 dt {
    float: left;
    width: 80px;
    overflow: hidden;
    clear: left;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .list-cmn-02 dd {
    margin-left: 80px;
    letter-spacing: 2px;
  }
    .list-cmn-02 dd::before {
      display: table;
      content: " ";
    }
    .list-cmn-02 dd::after {
      clear: both;
    }
/* ==========================================================
 table
========================================================== */
/* table-cmn
---------------------------------------------------------- */
.table-cmn {
  width: 100%;
  margin-bottom: 10px;
}
  .table-cmn thead th {
    font-weight: bold;
  }
  .table-cmn th,
  .table-cmn td {
    text-align: center;
    padding: 6px 0px;
    vertical-align: top;
    font-size: 16px;
  }
  .table-cmn td {
    border-bottom: 1px solid #998677;
    font-weight: normal;
    font-size: 14px;
  }
  .table-cmn tbody tr th {
    background: #ede7e7;
    border-right: 1px dotted #998677;
    border-bottom: 1px solid #998677;
  }
  /*
  .table-cmn tbody tr th:first-child {
    font-size: 17px;
    font-weight: bold;
  }
  */
  .table-cmn tbody tr th {
    font-size: 16px;
    font-weight: bold;
  }
  .table-cmn tbody tr th:last-of-type{
    border-right: 1px solid #998677;
  }
  .table-cmn tr:last-child {
    border-bottom:2px solid #4D433B;
  }
  .table-cmn tbody tr th.rank{
    border-bottom: 2px solid #4D433B;
    border-right: 1px solid #998677;
    vertical-align: middle;
  }
  .table-cmn tbody tr th.rank_middle{
    border-bottom: 1px solid #998677;
  }
/* ==========================================================
 button
========================================================== */
/* btn-cmn
---------------------------------------------------------- */
a.btn-cmn {
  text-decoration: none;
}
.btn-cmn {
  text-align: center;
  width: 100%;
  color: #404040;
  border: 1px solid #998676;
  padding: 8px 10px;
  line-height: 24px;
  display: inline-block;
  margin-bottom: 0;
  font-weight: bold;
  touch-action: manipulation;
  cursor: pointer;
  background-image: none;
  position: relative;
  font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
}
  .btn-cmn:hover {
    background: #998676;
    color: #404040;
  }
  .btn-cmn.btn-01 {
    border: none;
  }
  .btn-cmn.btn-01.prev::before {
    content: "";
    position: absolute;
    display: inline-block;
    top: 14px;
    left: 35px;
    border-top: 6px solid transparent;
    border-right: 6px solid #998676;
    border-bottom: 6px solid transparent;
    border-left: 11px solid transparent;
  }
  .btn-cmn.btn-01.next::after {
    content: "";
    position: absolute;
    display: inline-block;
    top: 14px;
    right: 35px;
    border-top: 6px solid transparent;
    border-right: 6px solid transparent;
    border-bottom: 6px solid transparent;
    border-left: 11px solid #998676;
  }
    .btn-cmn.btn-01:hover {
      background: none;
      color: #998676;
    }

/* pagination
---------------------------------------------------------- */
.pagination-cmn {
  display: inline-block;
  padding-left: 0;
  margin: 25px 0 8px 0;
  border-radius: 4px;
}
.pagination-cmn li {
  display: inline;
}
  .pagination-cmn li > a {
    font-size: 14px;
    line-height: 25px;
    position: relative;
    text-align: center;
    float: left;
    text-decoration: underline;
    margin-left: 10px;
    color: #fff;
    width: 25px;
    height: 25px;
    background-color: #BCAAA4;
    border-radius: 50%;
    text-decoration: none;
  }
  .pagination-cmn li > a:hover {
    color: #fff;
    background-color: #4D433B;
  }
  .pagination-cmn li  a.current {
    background-color: #4D433B;
    text-decoration: none;
  }
/* pagetop
---------------------------------------------------------- */
.btn-cmn-pagetop {
  text-align: right;
}
/* ==========================================================
 link
========================================================== */
/* link-cmn
---------------------------------------------------------- */
.link-cmn {
}
/* ==========================================================
 icon
========================================================== */
.ico-arow-left {
  position: absolute;
  display: inline-block;
  top: 11px;
  left: 15px;
  border-top: 8px solid transparent;
  border-right: 8px solid #998676;
  border-bottom: 8px solid transparent;
  border-left: 13px solid transparent;
}
.ico-arow-right {
  position: absolute;
  display: inline-block;
  top: 11px;
  right: 15px;
  border-top: 8px solid transparent;
  border-right: 8px solid transparent;
  border-bottom: 8px solid transparent;
  border-left: 13px solid #998676;
}
/* ==========================================================
 figure
========================================================== */
/* fig-cmn
---------------------------------------------------------- */
.fig-cmn {
}
/* ==========================================================
 image
========================================================== */
/* img-cmn-adjust
---------------------------------------------------------- */
.img-cmn-adjust {
}
/* ==========================================================
 form
========================================================== */
/* base Form
---------------------------------------------------------- */
/* type="text" */
input[type="text"] {
  color: #404040;
  border: 1px solid #998676;
  padding: 8px;
  margin-left: 5px;
  width: 165px;
}
/* type="checkbox" */
input[type="checkbox"] {
  color: #404040;
}
/* type="radio" */
input[type="radio"] {
  color: #404040;
}
/* select */
select {
  cursor: pointer;
  color: #404040;
  border: 1px solid #998676;
  padding: 8px;
  margin-left: 5px;
  width: 165px;
  font-weight: bold;
  text-overflow: "";
  appearance:none;
  -moz-appearance:none; /* Firefox */
  -webkit-appearance:none; /*Safari and Chrome */
  border-radius: 0px;
  -webkit-border-radius: 0px;
  background: url('../img/ico_arrow-down.png') center right 10px no-repeat;
}
select::-ms-expand {
  display: none;
  /* IE 8 */
 -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
 /* IE 5-7 */
 filter: alpha(opacity=0);
 /* Good browsers :) */
 opacity:0;
}
select:focus {
  outline: none;
}
  select option {
    font-weight: bold;
  }
/* textarea */
textarea {
}
/* button */
button {
}
/* class Form
---------------------------------------------------------- */
/* form-cmn-input
---------------------------------------------------------- */
.form-cmn-input {
}
/* form-cmn-check
---------------------------------------------------------- */
.form-cmn-check {
}
/* form-cmn-radio
---------------------------------------------------------- */
.form-cmn-radio {
}
/* form-cmn-select
---------------------------------------------------------- */
.form-cmn-select {
  color: #404040;
  margin-right: 30px;
}
/* form-cmn-textarea
---------------------------------------------------------- */
.form-cmn-textarea {
}
/* form-cmn-button
---------------------------------------------------------- */
.form-cmn-button {
}
.form-inline .form-cmn-select{
  display: inline-block;
  margin-bottom: 50px;
  vertical-align: middle;
  font-weight: bold;
  font-size: 12px;
}
/* ==========================================================
 Text Align
========================================================== */
.text-left {
  text-align: left !important; }
.text-right {
  text-align: right !important; }
.text-center {
  text-align: center !important; }
/* ==========================================================
 Margin Helpers
========================================================== */
.mt-0 {
  margin-top: 0px !important; }
.mt-5 {
  margin-top: 5px !important; }
.mt-10 {
  margin-top: 10px !important; }
.mt-15 {
  margin-top: 15px !important; }
.mt-20 {
  margin-top: 20px !important; }
.mt-25 {
  margin-top: 25px !important; }
.mt-30 {
  margin-top: 30px !important; }
.mt-35 {
  margin-top: 35px !important; }
.mt-40 {
  margin-top: 40px !important; }
.mr-0 {
  margin-right: 0px !important; }
.mr-5 {
  margin-right: 5px !important; }
.mr-10 {
  margin-right: 10px !important; }
.mr-15 {
  margin-right: 15px !important; }
.mr-20 {
  margin-right: 20px !important; }
.mr-25 {
  margin-right: 25px !important; }
.mr-30 {
  margin-right: 30px !important; }
.mb-0 {
  margin-bottom: 0px !important; }
.mb-5 {
  margin-bottom: 5px !important; }
.mb-10 {
  margin-bottom: 10px !important; }
.mb-15 {
  margin-bottom: 15px !important; }
.mb-20 {
  margin-bottom: 20px !important; }
.mb-25 {
  margin-bottom: 25px !important; }
.mb-30 {
  margin-bottom: 30px !important; }
.ml-0 {
  margin-left: 0px !important; }
.ml-5 {
  margin-left: 5px !important; }
.ml-10 {
  margin-left: 10px !important; }
.ml-15 {
  margin-left: 15px !important; }
.ml-20 {
  margin-left: 20px !important; }
.ml-25 {
  margin-left: 25px !important; }
.ml-30 {
  margin-left: 30px !important; }
/* ==========================================================
 Padding Helpers
========================================================== */
.pt-0 {
  padding-top: 0px !important; }
.pt-5 {
  padding-top: 5px !important; }
.pt-10 {
  padding-top: 10px !important; }
.pt-15 {
  padding-top: 15px !important; }
.pt-20 {
  padding-top: 20px !important; }
.pt-25 {
  padding-top: 25px !important; }
.pt-30 {
  padding-top: 30px !important; }
.pr-0 {
  padding-right: 0px !important; }
.pr-5 {
  padding-right: 5px !important; }
.pr-10 {
  padding-right: 10px !important; }
.pr-15 {
  padding-right: 15px !important; }
.pr-20 {
  padding-right: 20px !important; }
.pr-25 {
  padding-right: 25px !important; }
.pr-30 {
  padding-right: 30px !important; }
.pb-0 {
  padding-bottom: 0px !important; }
.pb-5 {
  padding-bottom: 5px !important; }
.pb-10 {
  padding-bottom: 10px !important; }
.pb-15 {
  padding-bottom: 15px !important; }
.pb-20 {
  padding-bottom: 20px !important; }
.pb-25 {
  padding-bottom: 25px !important; }
.pb-30 {
  padding-bottom: 30px !important; }
.pl-0 {
  padding-left: 0px !important; }
.pl-5 {
  padding-left: 5px !important; }
.pl-10 {
  padding-left: 10px !important; }
.pl-15 {
  padding-left: 15px !important; }
.pl-20 {
  padding-left: 20px !important; }
.pl-25 {
  padding-left: 25px !important; }
.pl-30 {
  padding-left: 30px !important; }

/* ==========================================================
 is
========================================================== */
/* opacity hover
---------------------------------------------------------- */
.is-opacity
{
  -ms-filter: 'alpha( opacity=100)';
  opacity: 1;
}
.is-opacity:hover
{
  -ms-filter: 'alpha( opacity=70)';
  filter: alpha( opacity=70);
  opacity: 0.7;
}
/* css animation
---------------------------------------------------------- */
.is-animate
{
  -webkit-transition: all 0.2s ease 0s;
  transition: all 0.2s ease 0s;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
}
/* ==========================================================
 style
========================================================== */
.s-fw-n     { font-weight: normal;}
.s-fw-b     { font-weight: bold;}
.s-ta-l     { text-align: left !important;}
.s-ta-c     { text-align: center !important;}
.s-ta-r     { text-align: right !important;}
.s-va-t     { vertical-align: top !important;}
.s-va-m     { vertical-align: middle !important;}
.s-va-b     { vertical-align: bottom !important;}
.s-ov-h     { overflow: hidden;}
.s-clear    { clear: both;}
.s-hide     { display: none;}
.s-txt-hide { text-indent: 100%; white-space: nowrap; overflow: hidden;}
.s-bg-n     { background: none !important;}
.s-mt-00    { margin-top: 0 !important;}
.s-mb-00    { margin-bottom: 0 !important;}
.s-ml-00    { margin-left: 0 !important;}
.s-mr-00    { margin-right: 0 !important;}

/* ==========================================================
 tool
========================================================== */
.txt-bold { font-weight: bold !important;}
.txt-sm { font-size: 12px !important;}
.txt-lg { font-size: 18px !important;}

/* 404 */
.content_404{
  height: 450px;
  padding: 200px 0px;
}

.content_404 strong{
  font-size: 22px;
  line-height: 32px;
  font-weight: bold;
}

.blog_tit{
  margin-bottom: 10px;
  page-break-after: 10px;
  border-bottom: 1px solid #000;
  margin-top: 30px;
}
.blog_tit h2{
  font-size: 22px;
  line-height: 32px;
  font-weight: bold;
}
.blog_tit span{
  font-size: 10px;
  line-height: 32px;
}
.blog_memo{
  font-size: 14px;
  line-height: 26px;
  padding-bottom: 20px;
}
.blog_memo p{padding-bottom: 15px;}

.contact_tit{font-size: 22px; line-height: 32px; text-align: center; margin-bottom: 35px; margin-top: 70px;}
.contact_form{padding: 2.5%; background-color: #FFF;}
.contact_form p{text-align: center; padding-bottom: 25px;}
.contact_form div{margin-bottom: 2.5%; font-size: 12px; line-height: 26px;}
.contact_form table{width: 100%; height: auto;}
.contact_form table th{padding-bottom: 20px; font-size: 12px; vertical-align: top; width: 25%;}
.contact_form table th span{background-color: #d32552; padding: 1.5px 5px; color: #FFF;}
.contact_form table td{padding-bottom: 20px; font-size: 14px; line-height: 35px; width: 75%;}
.contact_form table td p{display: block; padding-top: 1.5px; font-size: 10px; line-height: 18px; padding-bottom: 0px; text-align: left;}
.contact_form table td select{width: 40%; height: 35px; line-height: 35px; background: none transparent;　border: 1px solid #000;}
.contact_form table td input{height: 35px; width: 100%; border: 1px solid #000; font-size: 14px;}
.contact_form table td div{float: left; width: 50%; text-align: left; margin-bottom: 0px;}
.contact_form table td input{width: 70%;}
.contact_form table td input[type="tel"]{width: 70%; margin-left: 0px;}
.contact_form table td input[type="email"]{width: 70%; margin-left: 0px;}
.contact_form table td textarea{width: 100%; height: 150px; border: 1px solid #000; padding: 5px; font-size: 14px;}
.contact_form table td input[type="checkbox"]{width: 10px; height: 10px;}
.contact_form table td a{text-decoration: underline;}
.contact_form table td input[type="submit"]{width: 50%; height: auto; display: block; padding: 2.5% 0px; text-align: center; color: #FFF; border: none; background-color: #222c31; font-size: 16px; margin: 2.5% auto 0 auto;}
.contact_form table td input[type="submit"]:hover{cursor: pointer;}
.contact_form table td input[name="text-ad01"]{width: 15%; margin-bottom: 10px;}
.contact_form table td input[name="text-ad02"]{width: 30%; margin-bottom: 10px;}
.contact_form table td input[type="radio"]{width: auto; height: auto;}
.contact_form table td input[name="text-houmon01"],.contact_form table td input[name="text-houmon02"],.contact_form table td input[name="text-houmon03"]{width: 10%;}
.contact_form table td input[name="estimate-01"],.contact_form table td input[name="estimate-02"],.contact_form table td input[name="estimate-03"],.contact_form table td input[name="estimate-04"],.contact_form table td input[name="estimate-05"],.contact_form table td input[name="estimate-06"],.contact_form table td input[name="estimate-07"],.contact_form table td input[name="estimate-08"],.contact_form table td input[name="estimate-09"],.contact_form table td input[name="estimate-10"]{width:10%; margin-bottom:10px;}
.contact_form table td input[name="yosan"]{width: 20%;}

.company_memo table{width: 100%; border-top: 1px solid #998676;}
.company_memo table tr th{width: 150px; padding: 15px 0px 15px 10px; border-bottom: 1px solid #998676; vertical-align: top;}
.company_memo table tr td{padding: 15px 0px 15px 10px; border-bottom: 1px solid #998676;}
.company_memo table tr td span{font-size: 15px; font-weight: bold;}
