@charset "utf-8";
/*----- common -----*/

html {
  overflow: auto;
}

body {
  overflow: hidden;
  background: #eee;
}

#contents {
  font-family: 'Helvetica', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro W3', 'Lucida Grande', 'Verdana', 'メイリオ', 'Meiryo', 'ＭＳ Ｐゴシック', sans-serif;
  width: 100%;
  background-color: #fff;
  text-align: center;
  margin: 0;
  padding: 0;
}

.wrapper {
  margin: 0 auto;
  width: 1000px;
}

a {
  color: #333;
}

a:link, a:visited {
  text-decoration: none;
  transition: .3s;
}

a:hover, a:active {
  text-decoration: underline;
}

a:hover img,
a:hover button{
  opacity: 0.6;
}


sup{
  font-size: 60%;
}

big{
  font-size: 170%;
  font-weight: bold;
}

.clearfix:before, .clearfix:after {
  content: " ";
  display: table;
}

.clearfix:after {
  clear: both;
}

.top h1, .title_logo {
  width: 100%;
  text-align: center;
  height: auto;
  position: relative;
  top: -9px;
  margin: 0 auto;
  z-index: 300;
  cursor: pointer;
}

.kv_inner {
  position: relative;
  height: 400px;
}

h1 {
  font-size: 32px;
}

h2 {
  font-size: 24px;
  text-align: left;
  font-weight: bold;
}

h3{
  font-size: 18px;
  text-align: left;
}

h4{
  font-size: 12px;
  text-align: left;
  font-weight: bold;
}

.txt_xs {
  font-size: 10px;
  line-height: 1.3;
  text-align: left;
  margin: 8px auto;
}

.txt_s {
  font-size: 12px;
  line-height: 1.3;
  text-align: left;
  margin: 8px auto;
}

.txt_m {
  font-size: 14px;
  line-height: 1.3;
  text-align: left;
  margin: 16px auto;
}

.txt_l {
  font-size: 18px;
  line-height: 1.2;
  text-align: left;
  margin: 24px auto;
}

.txt_xl {
  font-size: 28px;
  line-height: 1.2;
  text-align: center;
  margin: 24px auto;
}

.txt_xxl {
  font-size: 30px;
  margin: 24px auto;
}

.margin_8 {
  margin-bottom: 8px;
  font-size: 16px;
}

#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 77%;
}
#page-top a {
    text-decoration: none;
    color: #fff;
    width: 80px;
    padding: 10px 0;
    text-align: center;
    display: block;
    border-radius: 5px;
}
/*------------------------------------------------------
breadcrumb
------------------------------------------------------*/

.breadcrumb {
  width: 1000px;
  margin: 10px auto 7px;
}

.breadcrumb ol li {
  list-style-type: none;
  display: inline-block;
  text-indent: 5px;
  font-size: 10px;
}

.breadcrumb ol li:after {
  content: ">";
  margin: 0 0 0 10px;
}

.breadcrumb ol li.last:after {
  content: "";
  margin: 0;
}

.breadcrumb ol li a:link, .breadcrumb ol li a:visited, .breadcrumb ol li a:active {
  text-decoration: underline;
  color: #333;
}

.breadcrumb ol li a:hover {
  text-decoration: none;
  color: #333;
}

/*------------------------------------------------------
blankicon
------------------------------------------------------*/

.blankicon {
  position: relative;
  display: block;
  z-index: 1;
}

.blankicon p {
  position: relative;
  display: block;
}

.blankicon p>img, .blankicon>img, .blankicon img.alpha_hover {
  z-index: -1;
  /* ie8 fix */
  position: relative;
  display: block;
}

.blankicon:after {
  content: " ";
  background: url(../img/icon_blank.png) no-repeat top left;
  width: 20px;
  height: 20px;
  position: absolute;
  top: 5px;
  right: 5px;
  -ms-filter: "alpha(opacity=100)";
  opacity: 1;
  z-index: 4;
  display: block;
}

.link .blankicon:after {
  top: 12px;
  right: 20px;
}

/*------------------------------------------------------
description
------------------------------------------------------*/

.description {
    margin: 40px 0 72px;
}

.title_h2 {
  border-bottom: 1px solid;
}

.txt {
  margin: 24px auto;
}

.form1{
  width: 100%;
  max-width: 1000px;
  margin: 32px auto;

}

.form1 .txt_red span{
    font-size: 34px;
}

.form3{
  width: 80%;
  max-width: 1000px;
  margin: 16px 0 16px;
  text-align: left;

}

.form3 p{
text-align: left;
padding: 16px;

}

.form3 .border{
  border: 1px solid #000;
  text-align: center;
  padding: 6px;
}

.form1 td {
  padding: 20px 10px 20px 10px;
}


.form2 {
  width: 100%;
  max-width: 1000px;
  margin: 16px auto;
  border: 1px solid #cccccc;
}

.form2 th {
  padding: 20px 10px 20px 10px;
  width: 40%;
  border: 1px solid #cccccc;
}

.form2 td {
  padding: 20px 10px 20px 10px;
  min-height: 50px;
  height: 100%;
  border: 1px solid #cccccc;
}

.form2 th:first-child {
  width: 20%;
}

.form_blue {
  background: #005d95;
  text-align: center;
  color: #fff;
  font-size: 16px;
}

.form_gray {
  background: #f4f4f4;
  text-align: center;
  font-size: 16px;
}

.form_darkgray {
  background: #787676;
  text-align: center;
  font-size: 16px;
  color: #fff;
}

.form_white {
  background: #fff;
  text-align: center;
  font-size: 16px;
}

.txt_red {
  color: #ca2a34;
  font-size: 20px;
  font-weight: 600;
}

.form1 .txt_left {
  text-align: left;
  padding-left: 58px;
  padding-right: 0;
  width: 360px;
}

.form_white span {
  color: #ca2a34;
}

/*------------------------------------------------------
target
------------------------------------------------------*/
.target {
  margin: 40px 0 72px;
  clear: both;
}

.target .car_form1{
  width: 72%;
margin: 16px 0 16px;
float: left;
}

.car_form1 th,.car_form2 th,.car_form3 th{
      padding: 12px;
}

.target .car_form2{
  width: 24%;
  margin: 16px 0 16px;
  float: right;
}
.form_darkblue{
  background: #00456e;
  color: #fff;
  text-align: center;
  font-size: 16px;
}

.target .car_form3{
  width: 100%;
  margin: 16px 0 16px;
}

.form_green{
  background: #00616f;
  color: #fff;
  text-align: center;
  font-size: 16px;

}

.remark{
  width: 100%;
  max-width: 1000px;
  background: #f4f4f4;
}

.remark p{
  padding:30px;
}
.txt_center{
  text-align: center;
}

/*------------------------------------------------------
link
------------------------------------------------------*/
.link {
  margin: 40px 0 72px;
  clear: both;
}
.ocher_color{
  position: relative;
  margin: 32px auto;
  width: 100%;
  max-width: 1000px;
  height: 880px;
  background: #f3f0e5;
  border: 15px solid #e3decc;
  box-sizing:border-box;
}

.ocher_color p{
  position: absolute;
  top: 30px;
  left: 0;
  right: 0;
}
/* .ocher_color img{
  position: absolute;
  top: 130px;
  left: 0;
  right: 0;
  margin: 0 auto;
} */
.ocher_color .txt_s{
  position: absolute;
  width: 100%;
  max-width: 780px;
  top: 620px;
  left: 0;
  right: 0;
  line-height:18px;
}

.ocher_color ul{
  width: 100%;
      max-width: 790px;
      margin: 0 auto;
      top: 116px;
      left: 0;
      position: absolute;
      right: 0;
}
.ocher_color ul li{
  width: 100%;
  max-width: 260px;
  height: 240px;
      display: inline-block;
}

button{
  width: 600px;
  height: 64px;
  border-radius: 40px;
  background: #08387d;
  color: #fff;
  cursor: pointer;
  position: absolute;
  top: 680px;
  left: 0;
top: 680px;
right: 0;
text-align: center;
}

/*------------------------------------------------------
search
------------------------------------------------------*/

.search{
  width: 100%;
  text-align: center;
  margin: 0 -500%;
  padding: 55px 500%;
  background: #f4f4f4;
}

.search .txt_l{
  text-align: center;
  font-size: 16px;
  line-height: 24px;
}
.search h2 span{
  color:#bb3a3f;
}

.btn_lg a {
  display: block;
  width: 100%;
  height: 100%;

}
.btn_lg a:link {
    transition: .3s;
}
.btn_lg a:hover,
.btn_lg a:active {
  text-decoration: none;
  opacity: 0.6;
}
.icon {
  display: inline-block;
  padding: 11px 10px 8px 15px;

}
.shop_btn_tit {
  display: inline-block;
  font-size: 24px;
  width:145px;
  text-align: left;

}
.shop_btn_tit {
  display: inline-block;
  font-size: 24px;
  width:145px;
  text-align: left;
}
.btn_lg {
    background: url(../img/btn_l.png) no-repeat;
    width: 470px;
    height: 93px;
    margin-left: 20px;
margin: 0 auto;
  }
  .shop_btn_txt {
    display: block;
    padding-top: 7px;
    padding-left: 45px;
    border-top: solid 1px #ccc;
    margin: 0 15px;
    text-align: left;
  }

  /*------------------------------------------------------
sponsor
  ------------------------------------------------------*/
  .sponsor{
    width: 100%;
    text-align: center;
    margin: 0 -500%;
    padding: 30px 500%;
    background: #e8e8e8;
      margin-bottom: -42px;
  }
  .company{
    width: 1000px;
    height: 200px;
    background: #fcfcfc;
  }
  .company ul{
    width: 100%;
        max-width: 1000px;
        margin: 0 auto;
        margin: 20px auto 40px;
  }
  .company ul li{
    width: 100%;
    max-width: 330px;
    display: inline-block;
    margin: 20px auto;
  }
.company ul li h4,
.company ul li p{
  font-size: 12px;
  padding: 0 0 0 49px;
      text-align: left;
      line-height: 20px;
}
.company ul li img{
  margin-bottom: 15px;
}
.company ul li a{
	text-decoration: underline;
}

.company ul li:nth-child(2){
  border-left: 1px solid #cccccc;
  border-right: 1px solid #cccccc;
}

.annotation {
  font-size: 12px;
  text-align: left;
  margin: 20px auto;
}
