@charset "utf-8";

/* ===================================================================

CSS information

 file name	:common.css
 style info :全ページ共通CSS

=================================================================== */

/*------------------------------------------------------------
  リセットCSS
----------------------------------------------------------- */
html {
  overflow-y: scroll;
}
body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
  margin: 0;
  padding: 0;
}
address,caption,cite,code,dfn,em,strong,th,var {
  font-style: normal;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
caption,th {
  text-align: left;
}
q:before,q:after {
  content: '';
}
hr,legend {
  display: none;
}
h1,h2,h3,h4,h5,h6 {
  font-size: 100%;
  font-weight: normal;
}
img,abbr,acronym,fieldset {
  border: 0;
}
li {
  list-style-type: none;
}
img {
  vertical-align: bottom;
}

button {
  font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","MS Ｐゴシック","MS PGothic",sans-serif;
}


.spbr{
  display: none;
}

@media only screen and (max-width: 640px) {
.spbr{
  display: block;
}
}




/*------------------------------------------------------------
  レスポンシブCSS (1140px-Responsive-CSS-Grid 参考のオリジナル)
----------------------------------------------------------- */
.container12 {
  max-width: 1140px;
  width: 100%;
  margin:0 auto;
  padding:0;
  position:relative;
}

.container12 .wrap {
  padding: 0 2%;
  width: 96%;
}

.container12:before, .container12:after {
  content:'.';
  display:block;
  height:0;
  overflow:hidden;
  visibility:hidden;
  width:0;
}

.container12:after {clear:both;}

.col1, .col2, .col3, .col4, .col5, .col6, .col7, .col8, .col9, .col10, .col11, .col12 {
  display:inline;
  float:left;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
}

.container12 .col1 { width: 98%; margin: 0 1%; }
.container12 .col2 { width: 48%; margin: 0 1%; }
.container12 .col3 { width: 31.3%; margin: 0 1%; }
.container12 .col4 { width: 23%; margin: 0 1%; }
.container12 .col5 { width: 18%; margin: 0 1%; }

@media only screen and (max-width: 767px) {
  .container12 .col1 { width: 98%; margin: 0 1% 20px; }
  .container12 .col2 { width: 98%; margin: 0 1% 20px; }
  .container12 .col3 { width: 98%; margin: 0 1% 20px; }
  .container12 .col4 { width: 98%; margin: 0 1% 20px; }
  .container12 .col5 { width: 98%; margin: 0 1% 20px; }

  .container12 .last_col { width: 98%; margin: 0 1%; }
}


/*------------------------------------------------------------
  共通スタイル
----------------------------------------------------------- */
body {
  color: #3c3c3c;
  font-size: 94%;
  font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","MS Ｐゴシック","MS PGothic",sans-serif;
  line-height: 1.5;
  background: #fff;
}

/*------------------------------------------------------------
  フォントサイズ対応表 (基本16px)
  10px -> 63%, 11px -> 69%, 12px -> 75%,
  13px -> 82%, 14px -> 88%, 15px -> 94%,
  16px -> 100%, 17px -> 107%, 18px -> 113%,
  19px -> 119%, 20px -> 125%, 21px -> 132%,
  22px -> 138%, 23px -> 144%, 24px -> 150%,
  25px -> 157%, 26px -> 163%, 27px -> 169%,
  28px -> 175%, 29px -> 181%, 30px -> 188%,
  31px -> 194%, 32px -> 200%, 33px -> 206%,
  34px -> 213%, 35px -> 219%, 36px -> 225%,
  37px -> 231%, 38px -> 238%, 39px -> 244%,
  40px -> 250%, 41px -> 256%, 42px -> 263%,


@media only screen and (min-width: 960px) and (max-width: 1120px) {

}

@media only screen and (min-width: 768px) and (max-width: 959px) {

}

@media only screen and (max-width: 767px) {

}

------------------------------------------------------------*/

body a {
  color: #01487c;
  text-decoration: underline;
}

body a:hover {
  text-decoration: none;
}

body a:visited {
  color: #01487c;
}

body a:hover img {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
  opacity: 0.8;
}

button::-moz-focus-inner,
input::-moz-focus-inner {
  border: 0;
  padding: 0;
}

button {
  border: none;
  cursor: pointer;
  background: none;
  padding: 0;
  margin: 0;
  font-size: 100%;
}

textarea,
input[type="text"] {
  padding: 5px;
}

@media only screen and (max-width: 767px) {
  body a {
    color: #3c3c3c;
  }

  body a:link {
    text-decoration: none;
  }

  body a:hover {
    text-decoration: none;
  }

  body a:visited {
    color: #3c3c3c;
    text-decoration: none;
  }

  body a:active {
    text-decoration: none;
  }
}


/*------------------------------------------------------------
  汎用スタイル
----------------------------------------------------------- */
.btnw { width: 50%; margin: 0 auto; }

.col3 .btnw { width: 98%; margin: 0 1%; }
.col4 .btnw { width: 98%; margin: 0 1%; }

.mb_min { margin-bottom: 10px; }
.mb_small { margin-bottom: 20px; }
.mb_middle { margin-bottom: 30px; }
.mb_large { margin-bottom: 60px; }
.mb_row { margin-bottom: 20px; }


.p_min { padding: 5px; }
.p_small { padding: 10px; }
.p_middle { padding: 20px; }
.p_large { padding: 30px; }

@media only screen and (min-width: 768px) and (max-width: 959px) {
  .btnw { width: 98%; margin: 0 1%; }
}

@media only screen and (max-width: 767px) {
  .btnw { width: 98%; margin: 0 1%; }
  .col3 .btnw { width: 98%; margin: 0 1%; }
  .col4 .btnw { width: 98%; margin: 0 1%; }
  
  .mb_min { margin-bottom: 5px; }
  .mb_small { margin-bottom: 20px; }
  .mb_middle { margin-bottom: 15px; }
  .mb_large { margin-bottom: 30px; }
  .mb_row { margin-bottom: 0; }
}

.bll {
  display: block;
}

.bll:hover {
  filter:alpha(opacity=70);
  -moz-opacity: 0.7;
  opacity: 0.7;
}

.bll a {
  display: block;
}

.white_box {
  background: #fff;
  border-bottom: 1px solid #dfdfdf;
}

.white_box_img img {
  width: 100%;
  height: auto;
}

.white_box_plan_tit {
  font-size: 110%;
  font-weight: bold;
}

.white_box .plan_txt {
  /*font-size: 88%;*/
}

.white_box_tit {
  border-bottom: 1px solid #e2d8d2;
  text-align: center;
  background: url(/common/img/white_box_tit_bottom_line.png) center bottom no-repeat;
  padding: 20px 0;
  font-size: 163%;
}

.white_box_tit_en {
  text-align: center;
  font-size: 46%;
  color: #1281bf;
}

.white_box_tit .red_label {
  padding: 5px;
  background: #e83838;
  color: #fff;
  font-size: 56%;
  display: inline-block;
}

.col3 .white_box_tit {
  font-size: 119%;
}
.col3 .white_box_tit_en {
    text-align: center;
    font-size: 63%;
    color: #1281bf;
}
.white_box_tit i {
    font-size: 80%;
    font-style: normal;
    color: #e00;
}

.intro_txt {
  text-align: center;
  /*font-size: 88%;*/
}

.price th, .price td {
  padding: 6px 10px;
  color: #252525;
  background: #fff;
  font-size: 88%;
}

.price th {
  background: #01487c;
  color: #fff;
  word-break: keep-all;
  font-weight: normal;
}

.price_num {
  font-size: 125%;
  font-weight: bold;
}
.price .red_price {
  color: #a60c00;
  font-size: 110%;
  font-weight: bold;
}

@media only screen and (max-width: 767px) {
  .intro_txt {
    text-align: left;
  }

  .price {
    width: 100%;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
  }

  .price tr {
    display: block;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
  }

  .price th, .price td {
    display: list-item;
    list-style: none;
    width: 100%;
    text-align: center;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
  }
  
  .price th {
    display: list-item;
    list-style: none;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
  }
}

.btn_point {
  position: relative;
  /*text-align: center;*/
  border: 1px solid #ffdb00;
}

.btn_point i {
  margin-right: 0.5em;
}

.btn_point .fa-angle-right {
  background: #fff;
  padding: 1px 5px;
  color: #b2b2b2;
}

.btn_point a, .btn_point span {
  display: block;
  border-top: 1px solid #ffed00;
  background: #ffe000;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffe300), color-stop(100%, #ffe000));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #ffe300 0%, #ffe000 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe300', endColorstr='#ffe000',GradientType=0 );
  /* IE6-9 */
  padding: 15px 10px;
  color: #01487c;
  letter-spacing: 0.05em;
}

.btn_point a:link {
  text-decoration: none;
}

.btn_point a:hover {
  text-decoration: none;
}

.btn_point a:visited {
  color: #01487c;
  text-decoration: none;
}

.btn_point a:active {
  text-decoration: none;
}

#search .btn_point a, .btn_point span {
  white-space: nowrap;
}

.btn_sub_2 {
  position: relative;
  text-align: center;
  border: 1px solid #d3c397;
}

.btn_sub_2 i {
  margin-right: 0.5em;
}

.btn_sub_2 .fa-angle-right {
  background: #fff;
  padding: 1px 5px;
  color: #d3c397;
}

.btn_sub_2 a {
  display: block;
  border-top: 1px solid #e5dbbe;
  background: #d3c397;
  /* Old browsers */
  background: -moz-linear-gradient(top, #d7c9a0 0%, #d3c397 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #d7c9a0), color-stop(100%, #d3c397));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #d7c9a0 0%, #d3c397 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #d7c9a0 0%, #d3c397 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #d7c9a0 0%, #d3c397 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #d7c9a0 0%, #d3c397 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#d7c9a0', endColorstr='#d3c397',GradientType=0 );
  /* IE6-9 */
  padding: 15px;
  color: #222;
  letter-spacing: 0.05em;
}

.btn_sub_2 button {
  display: block;
  border-top: 1px solid #0681ac;
  background: #013e70;
  /* Old browsers */
  background: -moz-linear-gradient(top, #046796 0%, #013e70 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #046796), color-stop(100%, #013e70));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #046796 0%, #013e70 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #046796 0%, #013e70 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #046796 0%, #013e70 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #046796 0%, #013e70 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#046796', endColorstr='#013e70',GradientType=0 );
  /* IE6-9 */
  padding: 15px;
  color: #222;
  letter-spacing: 0.05em;
  width: 100%;
}

.btn_sub_2 a:link {
  text-decoration: none;
}

.btn_sub_2 a:hover {
  text-decoration: none;
}

.btn_sub_2 a:visited {
  color: #222;
  text-decoration: none;
}

.btn_sub_2 a:active {
  text-decoration: none;
}

.btn_sub {
  position: relative;
  /*text-align: center;*/
  border: 1px solid #013e70;
}

.btn_sub i {
  margin-right: 0.5em;
}

.btn_sub .fa-angle-right {
  background: #fff;
  padding: 1px 5px;
  color: #b2b2b2;
}

.btn_sub a, .btn_sub span {
  display: block;
  border-top: 1px solid #0681ac;
  background: #013e70;
  /* Old browsers */
  background: -moz-linear-gradient(top, #046796 0%, #013e70 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #046796), color-stop(100%, #013e70));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #046796 0%, #013e70 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #046796 0%, #013e70 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #046796 0%, #013e70 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #046796 0%, #013e70 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#046796', endColorstr='#013e70',GradientType=0 );
  /* IE6-9 */
  padding: 15px 10px;
  color: #fff;
  letter-spacing: 0.05em;
}

.btn_sub a:link {
  text-decoration: none;
}

.btn_sub a:hover {
  text-decoration: none;
}

.btn_sub a:visited {
  color: #fff;
  text-decoration: none;
}

.btn_sub a:active {
  text-decoration: none;
}

.btn_base {
  position: relative;
  text-align: center;
  border: 1px solid #1b73bb;
}

.btn_base i {
  margin-right: 0.5em;
}

.btn_base .fa-angle-right {
  background: #fff;
  padding: 1px 5px;
  color: #b2b2b2;
}

.btn_base a ,
.btn_base button {
  display: block;
  border-top: 1px solid #59addb;
  background: #1b73bb;
  /* Old browsers */
  background: -moz-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2c8aca), color-stop(100%, #1b73bb));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #2c8aca 0%, #1b73bb 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2c8aca', endColorstr='#1b73bb',GradientType=0 );
  /* IE6-9 */
  padding: 15px;
  color: #fff;
  letter-spacing: 0.05em;
}

.btn_base button {
  width: 100%;
}

.btn_base a:link {
  text-decoration: none;
}

.btn_base a:hover {
  text-decoration: none;
}

.btn_base a:visited {
  color: #fff;
  text-decoration: none;
}

.btn_base a:active {
  text-decoration: none;
}

.btn_g {
  position: relative;
  text-align: center;
  border: 1px solid #c0c0c0;
}

.btn_g i {
  margin-right: 0.5em;
}

.btn_g .fa-angle-right {
  background: #fff;
  padding: 1px 5px;
  color: #b2b2b2;
}

.btn_g a ,
.btn_g button {
  display: block;
  border-top: 1px solid #c0c0c0;
  background: #999;
  /* Old browsers */
  background: -moz-linear-gradient(top, #a2a2a2 0%, #999 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #a2a2a2), color-stop(100%, #999));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #a2a2a2 0%, #999 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #a2a2a2 0%, #999 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #a2a2a2 0%, #999 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #a2a2a2 0%, #999 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#a2a2a2', endColorstr='#999',GradientType=0 );
  /* IE6-9 */
  padding: 15px;
  color: #fff;
  letter-spacing: 0.05em;
}

.btn_g button {
  width: 100%;
}

.btn_g a:link {
  text-decoration: none;
}

.btn_g a:hover {
  text-decoration: none;
}

.btn_g a:visited {
  color: #fff;
  text-decoration: none;
}

.btn_g a:active {
  text-decoration: none;
}

.btn_black {
  position: relative;
  text-align: center;
  border: 1px solid #2d2d2d;
}

.btn_black i {
  margin-right: 0.5em;
}

.btn_black .fa-times {
  background: #fff;
  padding: 1px 5px;
  color: #222;
}

.btn_black span {
  cursor: pointer;
  display: block;
  border-top: 1px solid #5a5a5a;
  background: #2d2d2d;
  /* Old browsers */
  background: -moz-linear-gradient(top, #2d2d2d 0%, #1c1c1c 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2d2d2d), color-stop(100%, #1c1c1c));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #2d2d2d 0%, #1c1c1c 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #2d2d2d 0%, #1c1c1c 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #2d2d2d 0%, #1c1c1c 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #2d2d2d 0%, #1c1c1c 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2d2d2d', endColorstr='#1c1c1c',GradientType=0 );
  /* IE6-9 */
  padding: 15px;
  color: #fff;
  letter-spacing: 0.05em;
}

.btn_red {
  position: relative;
  text-align: center;
  border: 1px solid #ea4545;
}

.btn_red i {
  margin-right: 0.5em;
}

.btn_red .fa-angle-right {
  background: #fff;
  padding: 1px 5px;
  color: #a60d0d;
}

.btn_red a {
  display: block;
  border-top: 1px solid #f17272;
  background: #ea4545;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ea4545 0%, #e42f2f 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ea4545), color-stop(100%, #e42f2f));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #ea4545 0%, #e42f2f 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #ea4545 0%, #e42f2f 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #ea4545 0%, #e42f2f 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #ea4545 0%, #e42f2f 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ea4545', endColorstr='#e42f2f',GradientType=0 );
  /* IE6-9 */
  padding: 15px;
  color: #fff;
  letter-spacing: 0.05em;
}

.btn_red a:link {
  text-decoration: none;
}

.btn_red a:hover {
  text-decoration: none;
}

.btn_red a:visited {
  color: #fff;
  text-decoration: none;
}

.btn_red a:active {
  text-decoration: none;
}

.table_normal {
  border-top: 2px solid #b2b2b2;
  width: 100%;
}

.table_normal th, .table_normal td {
  border-bottom: 1px dotted #b2b2b2;
  padding: 10px 20px;
}

@media only screen and (max-width: 767px) {
  .table_normal.vertically th, .table_normal.vertically td {
    display: block;
  }
}

.table_normal th {
  background: #f0f0f0;
  word-break: keep-all;
}

.table_normal td {
  background: #fff;
}

.icon_arrow {
  margin-right: 0.5em;
  color: #bba99d;
}

.h3_nomal {
  text-align: center;
  border-top: 1px solid #dfdfdf;
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  font-size: 163%;
  background: url(/common/img/h3_line.png) top center no-repeat;
  padding: 30px 0 0 0;
  margin-bottom: 30px;
  position:relative;
}

.h3_nomal_en {
  font-size: 55%;
  /*color: #9acde7;*/
  color: #1281bf;
  font-weight: bold;
}

.point_bg_img {
  background-position: 50% 50% !important;
}

@media only screen and (max-width: 767px) {
  .h3_nomal {
    text-align: center;
    border-top: 1px solid #e2d8d2;
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 163%;
    background: url(/common/img/h3_line.png) top center no-repeat;
    padding: 20px 0 0 0;
    margin-bottom: 20px;
  }

  .h3_nomal_en {
    font-size: 42%;
    color: #01487c;
  }
  
  .h3_nomal:after {
    width:100%;
    height:auto;
}
}


/*------------------------------------------------------------
  clearfix
------------------------------------------------------------*/
.cf:before,
.cf:after {
  content:"";
  display:table;
}
.cf:after {
  clear:both;
}
/* For IE 6/7 (trigger hasLayout) */
.cf {
  zoom:1;
}


/*------------------------------------------------------------
  header
------------------------------------------------------------*/
#header {
  position: relative;
}

#header .top {
  background-color: #01487c;
  border-bottom: 2px solid #9acde7;
}

#header .top_h1_txt {
  padding: 10px 0;
  font-size: 75%;
  text-align: right;
  color: #fff;
}

#header .top_logo {
  background: url(/common/img/header_logo-pc.png) repeat;
  width: 265px;
  height: 110px;
  text-indent: -9999px;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 100;
}

#header .top_logo a {
  width: 100%;
  height: 100%;
}

#header .main {
  border-top: 1px solid #fff;
}

#header .main_inner {
  padding: 13px 0 14px;
}

#header .main_pnav {
  display: table;
  float: right;
}

#header .main_pnav_item {
  padding: 0 30px 0 0;
  display: table-cell;
  vertical-align: middle;
  position: relative;
}

#header .main_pnav_item a {
  color: #3c3c3c;
  font-size: 88%;
  text-decoration: none;
}

#header .main_pnav_item a:visited {
  color: #3c3c3c;
  text-decoration: none;
}

#header .main_pnav_item--last {
  padding: 0;
}

#header .main_pnav_item.drop a {
  display:inline-block;
  width: 100%;
  padding: 10px 15px;
  background: #217fc4;
  color: #fff;
  border-top: 1px solid #fff;
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#header .main_pnav_item ul {
  position: absolute;
  z-index: 9999;
  top: 100%;
  left: 0;
  width: 80%;
}

#header .main_pnav_item.drop > a:after {
  font-family: FontAwesome;
  content: "\f0d7";
  margin-left: 15px;
}

#header .main_pnav li.drop ul li {
  color: #fff;
  overflow: hidden;
  height: 0;
  transition: .2s;
}

#header .main_pnav li.drop:hover ul li {
  overflow: visible;
  height: 38px;
}

#header .main_tel_btn {
  display: none;
}

.main_h2 {
  width: 100%;
  -webkit-background-size: cover;
  background-size: cover;
  text-align: center;
}

.main_h2_tit {
  background: url(/common/img/bg_blue.png) repeat;
  padding: 60px;
  margin: 0 auto;
  text-align: center;
  color: #fff;
  font-size: 188%;
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  display: inline-block;
}

.main_h2_tit_en {
  color: #9acde7;
  font-size: 46%;
}

@media only screen and (max-width: 767px) {
  #header .main {
    /*padding: 0 10px;*/
    width: 40%;
    float: right;
    position: relative;
  }

  #header .main_inner {
    padding: 4px 0 5px;
  }

  #header .top {
    padding: 4px 0;
  }

  #header .top_inner {
    width: 60%;
    float: left;
    position: relative;
  }

  #header .top_h1_txt {
    display: none;
  }

  #header .top_logo {
    background: url(/common/img/header_logo-sp.png) no-repeat #01487c;
    -webkit-background-size: 190px 70px;
    background-size: 190px 70px;
    width: 190px;
    height: 70px;
    text-indent: -9999px;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    overflow: hidden;
    display: block;
  }

  #header .main_pnav {
    display: none;
  }

  #header .main_tel_btn {
    display: block;
    float: right;
    text-align: center;
    /*border: 1px solid #1b73bb;*/
  }

  #header .main_tel_btn i {
    padding: 0 0.5em 0 0;
    font-size: 113%;
    color: #ffe6a0;
  }

  #header .main_tel_btn a {
    display: block;
    border-radius: 4px;
    border-top: 1px solid #59addb;
    background: #1b73bb;
    /* Old browsers */
    background: -moz-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
    /* FF3.6+ */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2c8aca), color-stop(100%, #1b73bb));
    /* Chrome,Safari4+ */
    background: -webkit-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
    /* Chrome10+,Safari5.1+ */
    background: -o-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
    /* Opera 11.10+ */
    background: -ms-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
    /* IE10+ */
    background: linear-gradient(to bottom, #2c8aca 0%, #1b73bb 100%);
    /* W3C */
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2c8aca', endColorstr='#1b73bb',GradientType=0 );
    /* IE6-9 */
    padding: 15px;
    color: #fff;
    letter-spacing: 0.05em;
  }

  .main_h2 {
    width: 100%;
    -webkit-background-size: cover;
    background-size: cover;
    text-align: center;
  }

  .main_h2_tit {
    background: none;
    padding: 30px 0;
    margin: 0 auto;
    text-align: center;
    color: #222222;
    font-size: 188%;
    font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    display: inline-block;
    text-shadow: 2px 2px 3px #fff,
          -2px 2px 3px #fff,
          2px -2px 3px #fff,
          -2px -2px 3px #fff,
          2px -2px 3px #fff,
          -2px -2px 3px #fff;
  }

  .main_h2_tit_en {
    color: #55321e;
    font-size: 46%;
    text-shadow: 2px 2px 3px #fff,
          -2px 2px 3px #fff,
          2px -2px 3px #fff,
          -2px -2px 3px #fff,
          2px -2px 3px #fff,
          -2px -2px 3px #fff;
  }
}


/*------------------------------------------------------------
  gnav
------------------------------------------------------------*/
#gnav {
  border-top: 1px solid #dcebff;
  border-bottom: 1px solid #9acde7;
  background: #dcebff;
}

#gnav .inner {
  border-top: 1px solid #fff;
  padding: 4px 0;
}

#gnav .nav {
  display: table;
  table-layout:fixed;
  width:100%;
}

#gnav .nav .nav_item {
  display: table-cell;
  width:17%;
  text-align:center;
  vertical-align:middle;
}

#gnav .nav .nav_item a {
  display:block;
  padding:15px 0;
  color:#01487c;
  font-size: 107%;
  font-weight: bold;
  /*font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;*/
}

#gnav .nav .nav_item a:link {
  text-decoration: none;
}

#gnav .nav .nav_item a:hover {
  text-decoration: none;
}

#gnav .nav .nav_item a:visited {
  color:#01487c;
  text-decoration: none;
}

#gnav .nav .nav_item a:active {
  text-decoration: none;
}

#gnav .nav .reservation a {
  display: block;
  border-top: 1px solid #ffed00;
  background: #ffe000;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffe300), color-stop(100%, #ffe000));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #ffe300 0%, #ffe000 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe300', endColorstr='#ffe000',GradientType=0 );
  /* IE6-9 */
  padding:15px 0;
  color: #281e1c;
  letter-spacing: 0.05em;
}

#gnav .nav .reservation a:visited {
  color:#281e1c;
}

#gnav .nav .nav_item a .nav_item_inner {
  display:block;
  border-right: 1px solid #9acde7;
  border-left: 1px solid #fff;
}

#gnav .nav .sightseeing a .nav_item_inner {
  border-right: none;
}

#gnav .nav .reservation a .nav_item_inner {
  border:none;
}

#gnav .nav .nav_item a .nav_item_en {
  display: block;
  font-size: 80%;
  /*color: #9acde7;*/
  color: #1281bf;
}
#gnav .nav .reservation a .nav_item_en {
  color: #217fc4;
}


@media only screen and (min-width: 768px) and (max-width: 959px) {
  
  #gnav .nav .nav_item{
    width: 100%;
    white-space: nowrap;
  }
  
  #gnav .nav{
    width: 100%;
  }
  
  .nav_item.access {
    width: 10em !important;
  }
  .nav_item.sightseeing {
    width: 10em !important;
  }
  
  .vertically_tb th, .vertically_tb td {
      display: block;
    }

  
}

@media only screen and (max-width: 767px) {
  #gnav {
    display: none;
  }
}

/* -----------------------------------------
 スマートフォン用 グローバルナビゲーション
----------------------------------------- */
#fixed_nav {
  display: none;
}

#fixed_nav .nav_list {
  font-size: 88%;
  padding: 7px;
  background-color: #01487c;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
  width: 100%;
}

#fixed_nav .menu_fixed {
  position: fixed;
  bottom: 0;
  z-index: 100;
}

#fixed_nav .nav_list_item {
  float: left;
  width: 25%;
  padding-right: 5px;
  display: block;
  position: relative;
  text-align: center;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
}

#fixed_nav .nav_list li:last-child {
  padding-right: 0;
}

#fixed_nav .nav_list_item i {
  display: block;
  font-size: 200%;
}

#fixed_nav .nav_list_item a {
  display: block;
  padding: 10px 0 5px;
  color: #fff;
  text-align: center;
  word-break: break-all;
}

#fixed_nav .nav_list .base a {
  border-radius: 4px;
  border-top: 1px solid #59addb;
  /* box-shadow */
  box-shadow:rgba(0, 0, 0, 0.5) 0px 3px 3px 0px;
  -webkit-box-shadow:rgba(0, 0, 0, 0.5) 0px 3px 3px 0px;
  -moz-box-shadow:rgba(0, 0, 0, 0.5) 0px 3px 3px 0px;
  background: #01487c;
  /* Old browsers */
  background: -moz-linear-gradient(top, #025587 0%, #01487c 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #025587), color-stop(100%, #01487c));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #025587 0%, #01487c 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #025587 0%, #01487c 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #025587 0%, #01487c 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #025587 0%, #01487c 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#025587', endColorstr='#01487c',GradientType=0 );
  /* IE6-9 */
}

#fixed_nav .nav_list .base i {
  color: #ffe6a0;
}

#fixed_nav .nav_list .point a {
  border-radius: 4px;
  color: #01487c;
  /* box-shadow */
  box-shadow:rgba(0, 0, 0, 0.5) 0px 3px 3px 0px;
  -webkit-box-shadow:rgba(0, 0, 0, 0.5) 0px 3px 3px 0px;
  -moz-box-shadow:rgba(0, 0, 0, 0.5) 0px 3px 3px 0px;
  border-top: 1px solid #ffed00;
  background: #ffe000;
  /* Old browsers */
  background: -moz-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #ffe300), color-stop(100%, #ffe000));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #ffe300 0%, #ffe000 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #ffe300 0%, #ffe000 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffe300', endColorstr='#ffe000',GradientType=0 );
  /* IE6-9 */
}

#fixed_nav .nav_list .point i {
  color: #01487c;
}

#fixed_nav .nav_list .sub a {
  border-radius: 4px;
  /* box-shadow */
  box-shadow:rgba(0, 0, 0, 0.5) 0px 3px 3px 0px;
  -webkit-box-shadow:rgba(0, 0, 0, 0.5) 0px 3px 3px 0px;
  -moz-box-shadow:rgba(0, 0, 0, 0.5) 0px 3px 3px 0px;
  border-top: 1px solid #59addb;
  background: #1b73bb;
  /* Old browsers */
  background: -moz-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #2c8aca), color-stop(100%, #1b73bb));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #2c8aca 0%, #1b73bb 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #2c8aca 0%, #1b73bb 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#2c8aca', endColorstr='#1b73bb',GradientType=0 );
  /* IE6-9 */
}

#fixed_nav .nav_list .sub i {
  color: #ffe6a0;
}

/* メニュー モーダルウィンドウ */
.modal { display: none; }

.modal_body {
  font-size: 88%;
  position: fixed;
  z-index: 1000;
  width: 100%;
  height: 100%;
  top: 0;
  padding: 10px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
}

.modal_body_inner {
  width: 100%;
  background: #fffcf4;
  padding: 10px;
  box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -ms-box-sizing: border-box;
  -o-box-sizing: border-box;
}

.modal_body_inner .btn_base {
  text-align: left;
}

.modal_body_inner .btn_base a{
  padding: 15px 10px;
}

.modal_bg {
  background: none repeat scroll 0 0 rgba(1, 72, 124, 0.9);
  height: 100%;
  left: 0;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
  cursor: pointer;
  display: block;
  padding: 10px;
}

.modal.menu {
  position: absolute;
  top: 0;
  width: 100%;
  height: 120%;
  z-index: 9999;
}


.l_2col {
  width: 100%;
}

.l_2col li {
  width: 48%;
  float: left;
  list-style: none;
  margin-right: 1%;
}

.l_2col li:last-child {
  margin-left: 1%;
  margin-right: 0;
}

@media only screen and (max-width: 767px) {
  #fixed_nav {
    display: block;
  }
}


/*------------------------------------------------------------
  topic_path
------------------------------------------------------------*/
#topic_path {
  padding: 20px 0;
}

#topic_path .list {
  float: left;
}

#topic_path .sns_list {
  float: right;
  margin: 0;
}

#topic_path .list_item {
  float: left;
  position: relative;
  padding: 0 16px 0 0;
  margin: 0 8px 0 0;
}

#topic_path .list_item a,
#topic_path .list_item a:visited {
  color: #3c3c3c;
  text-decoration: none;
}

#topic_path .list_item a:hover {
  text-decoration: underline;
}

#topic_path .list_item a:before {
  content: ">";
  position: absolute;
  right: 0;
  color: #bba99d;
}

#topic_path .list_item i {
  margin-right: 0.5em;
}

#topic_path .sns {
  float: right;
  display: table;
}

#topic_path .sns_item {
  display: table-cell;
  vertical-align: top;
  padding-left: 10px;
}

@media only screen and (max-width: 767px) {
  #topic_path .sns_list {
    display: none;
  }

  #topic_path {
    padding: 10px 0;
  }
}

.sns_list {
  display: table;
  margin: 10px 0;
  float: left;
}

.sns_list_item {
  display: table-cell;
  padding: 0 5px;
}

.sns_list_item a {
  color: #fff;
  display: block;
  padding: 4px 8px;
  -webkit-border-radius: 2px;
  -moz-border-radius: 2px;
  border-radius: 2px;
  font-size: 76%;
  font-weight: bold;
}

.sns_list_item a:link {
  text-decoration: none;
}

.sns_list_item a:hover {
  text-decoration: none;
}

.sns_list_item a:visited {
  color: #fff;
  text-decoration: none;
}

.sns_list_item a:active {
  text-decoration: none;
}

.sns_list_item i {
  margin-right: 0.5em;
  font-size: 110%;
}

.sns_list .facebbok a {
  background: #2d4581;
  /* Old browsers */
  background: -moz-linear-gradient(top, #4d74b8 0%, #2d4581 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #4d74b8), color-stop(100%, #2d4581));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #4d74b8 0%, #2d4581 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #4d74b8 0%, #2d4581 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #4d74b8 0%, #2d4581 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #4d74b8 0%, #2d4581 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#4d74b8', endColorstr='#2d4581',GradientType=0 );
  /* IE6-9 */
}

.sns_list .twitter a {
  background: #4298ec;
  /* Old browsers */
  background: -moz-linear-gradient(top, #6fc5f4 0%, #4298ec 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #6fc5f4), color-stop(100%, #4298ec));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #6fc5f4 0%, #4298ec 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #6fc5f4 0%, #4298ec 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #6fc5f4 0%, #4298ec 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #6fc5f4 0%, #4298ec 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#6fc5f4', endColorstr='#4298ec',GradientType=0 );
  /* IE6-9 */
}

.sns_list .google a {
  background: #cf3728;
  /* Old browsers */
  background: -moz-linear-gradient(top, #e45c44 0%, #cf3728 100%);
  /* FF3.6+ */
  background: -webkit-gradient(linear, left top, left bottom, color-stop(0%, #e45c44), color-stop(100%, #cf3728));
  /* Chrome,Safari4+ */
  background: -webkit-linear-gradient(top, #e45c44 0%, #cf3728 100%);
  /* Chrome10+,Safari5.1+ */
  background: -o-linear-gradient(top, #e45c44 0%, #cf3728 100%);
  /* Opera 11.10+ */
  background: -ms-linear-gradient(top, #e45c44 0%, #cf3728 100%);
  /* IE10+ */
  background: linear-gradient(to bottom, #e45c44 0%, #cf3728 100%);
  /* W3C */
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#e45c44', endColorstr='#cf3728',GradientType=0 );
  /* IE6-9 */
}



/*------------------------------------------------------------
  search
------------------------------------------------------------*/
#search {
  border-top: 1px solid #9acde7;
  border-bottom: 1px solid #9acde7;
}

#search .inner {
  margin: 1px 0;
  border-top: 1px solid #75afcd;
  border-bottom: 1px solid #75afcd;
  padding: 30px 1%;
  background: #e6f6ff;
}

#search .tit {
  margin: 0 0 20px 0;
}

#search .box_left {
  float: left;
  width: 59.7%;
}

#search .box_form_tit {
  margin: 0 0 10px 0;
  font-size: 88%;
}

#search .box_form_tit i {
  color: #b2b2b2;
  margin-right: 0.5em;
}

#search .box_form {
  margin-bottom: 20px;
  border-bottom: 1px solid #dcebff;
}

#search .box_form_box {
  float: left;
  margin: 0 20px 20px 0;
}

#search .pending_day {
  text-align:center;
}

#search .box_form_box label , #search .box_form_box input {
  cursor:pointer;
}

#search .box_form_btm {
  display: table;
}

#search .box_form_btm_item {
  display: table-cell;
  padding-right: 20px;
  vertical-align: middle;
}

#search .txt_link{
  vertical-align: middle;
}
#search .txt_link li p{
  padding-left: 8px;
}

#search .txt_link li:before{
  font-family: FontAwesome;
  content: "\f105";
  position: absolute;
}

#search .box_right {
  float: right;
  width: 39.3%;
  display: table;
    border-collapse: separate;
    border-spacing: 10px 0;
    table-layout: fixed;
}

#search .best_rate {
  display: table-cell;
  vertical-align: top;
  background: #01487c url(/common/img/best_rate_light.png) no-repeat center bottom;
  background-size: cover;
  border: 1px solid #606060;
  font-family: "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HG明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
  text-align: center;
}

#search .best_rate_inner {
  background: url(/common/img/best_rate_bg.png) no-repeat right bottom;
}

#search .best_rate_en {
  font-size: 88%;
  color: #ffe000;
  padding: 10px 10px 5px;
}

#search .best_rate_main {
  font-size: 125%;
  color: #fff;
    background: rgba(154,205,231,0.25);
  padding: 5px 0;
}

#search .best_rate_ja {
  font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","MS Ｐゴシック","MS PGothic",sans-serif;
  padding: 12px 10px;
  color: #fff;
    font-size: 88%;
}

#search .benefits {
  background: #ffe000 url(/common/img/benefits_bg.png) no-repeat right bottom;
    display: table-cell;
    vertical-align: middle;
    border: 1px solid #606060;
    padding: 0 10px;
}

#search .benefits_txt {
  font-size: 88%;
    color: #01487c;
    font-weight: bold;
    letter-spacing: 0.025em;
}

#search .benefits_txt strong {
  font-size: 163%;
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
  #search .box_left {
    width: 100%;
    float: inherit;
    margin-bottom: 20px;
  }

  #search .box_right {
    width: 100%;
    float: inherit;
  }
  #search .benefits_txt {
    text-align: center;
  }
}

@media only screen and (max-width: 767px) {
  #search {
    display: none;
  }
}


/*------------------------------------------------------------
  cta
------------------------------------------------------------*/
.cta {
  border: 1px solid #9acde7;
  width: 98%;
  background: #dcebff;
}

.cta_wrap {
  margin: 1px;
  border: 1px solid #75afcd;
  padding: 20px;
  background: #e6f6ff;
}

.cta_tit {
  text-align: center;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #e2d8d2;
}

.cta_btn {
  display: table;
  margin: 0 auto;
}

.cta_btn_item {
  display: table-cell;
  padding-right: 30px;
  text-align: center;
  width: 15%;
}
li.cta_btn_item:first-child{
  text-align: right;
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
  .cta_btn {
    display: block;
  }


  .cta_btn_item:first-child {
    margin-bottom: 20px;
  }

  li.cta_btn_item:first-child{
    text-align: center;
  }

  .cta_btn_item {
    text-align: center;
    display: block;
    padding-right: 0;
    width: 100%;
    margin-bottom: 10px;
  }
}

@media only screen and (max-width: 767px) {
  .cta {
    display: none;
  }
}


/*------------------------------------------------------------
  footer
------------------------------------------------------------*/
#footer {

}

#footer .top {
  background: #01487c;
  border-bottom: 2px solid #c8d0d4;
  position: relative;
}

#footer .top_logo {
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -132px;
  z-index: 100;
}

#footer .top_sns {
  float: left;
  display: table;
  margin: 10px 0;
}

#footer .top_sns_item {
  display: table-cell;
  vertical-align: top;
  padding-left: 10px;
}

#footer .sp_sns {
  display: none;
}

#footer .top_page_top {
  float: right;
  border-left: 1px solid #41769d;
  border-right: 1px solid #41769d;
  color: #fff;
  padding: 14px;
}

#footer .top_page_top a {
  display: block;
  color: #fff;
  letter-spacing: 0.05em;
  font-size: 88%;
}

#footer .top_page_top a:link {
  text-decoration: none;
}

#footer .top_page_top a:hover {
  text-decoration: none;
}

#footer .top_page_top a:visited {
  color: #fff;
  text-decoration: none;
}

#footer .top_page_top a:active {
  text-decoration: none;
}

#footer .top_page_top i {
  margin-right: 0.5em;
}

#footer .top_page_top .fa-angle-up {
  background: #fff;
  padding: 1px 5px;
  color: #b2b2b2;
}

#footer .main {
  border-top: 1px solid #fff;
  background: #e6f6ff;
  margin-bottom: 30px;
}

#footer .main_inner {
  padding-top: 80px;
  padding-bottom: 20px;
}

#footer .sisetsu {
  float: left;
  width: 48%;
}

#footer .sisetsu_left {
  float: left;
  width: 35%;
}

#footer .sisetsu_right {
  float: right;
  width: 61.5%;
}

#footer .sisetsu_img {
  width: 100%;
}

@media only screen and (max-width: 640px) {
  #footer .sisetsu {
    width: 100%;
  }
}

#footer .p48l { width: 48%; float: left; }
#footer .p48r { width: 48%; float: right; }

#footer .pt0 {
  padding-top: 0;
}

#footer .map {
  float: right;
  width: 48%;
  height: 260px;
  border: 1px solid #fff;
}

#footer .sitemap {
  display: table;
}

#footer .sitemap .wrap {
  display: table;
}

#footer .sitemap_box {
  width: 20%;
  display: table-cell;
}

#footer .sitemap_box .sitemap_list {
  margin-bottom: 5px;
}

#footer .sitemap_box .sitemap_list i {
  color: #b2b2b2;
  margin-right: 0.5em;
}

#footer .sitemap_box .sitemap_list  a {
  color: #3c3c3c;
  text-decoration: none;
}
#footer .sitemap_box .sitemap_list  a:link {
  text-decoration: none;
}

#footer .sitemap_box .sitemap_list  a:hover {
  text-decoration: none;
}

#footer .sitemap_box .sitemap_list  a:visited {
  color: #3c3c3c;
  text-decoration: none;
}

#footer .sitemap_box .sitemap_list  a:active {
  text-decoration: none;
}

#footer .copyright {
  text-align: center;
  border-top: 1px solid #dfdfdf;
  padding: 14px;
  background: #e6f6ff;
}

#footer .btn_point a,
#footer .btn_sub a{
  text-align: center;
}

@media only screen and (min-width: 768px) and (max-width: 959px) {
  #footer .p48l { width: 100%; float: inherit; margin-bottom: 10px; }
  #footer .p48r { width: 100%; float: inherit; }
}

@media only screen and (max-width: 767px) {
  #footer .top_logo {
    display: none;
  }

  #footer .top_page_top {
    border: none;
    width: 100%;
    text-align: center;
    padding: 14px 0;
  }

  #footer .top .sns_list {
    display: none;
  }

  #footer .sp_sns {
    display: block;
  }

  #footer .main {
    margin-bottom: 0;
  }

  #footer .main_inner {
    padding-top: 10px;
    padding-bottom: 10px;
  }

  #footer .sisetsu {
    width: 100%;
  }

  #footer .p48l { display: none; }
  #footer .p48r { width: 100%; float: inherit; }

  #footer .map {
    display: none;
  }

  #footer .sitemap {
    display: none;
  }
}



/*------------------------------------------------------------
CMS 編集用ボタン
------------------------------------------------------------*/
.post-edit-link {
  background: #f90 none repeat scroll 0 0 !important;
  border: 2px solid #f60 !important;
  border-radius: 5px !important;
  color: #fff !important;
  display: inline-block;
  font-size: 14px !important;
  font-weight: normal !important;
  padding: 1px 3px !important;
  text-decoration: none !important;
  transition: all ease 0.3s;
}

.post-edit-link:hover {
  background-color: #ffff00 !important;
}


/*------------------------------------------------------------
  489pro用
------------------------------------------------------------*/

.yoyakupro p{
  text-align: center;
  margin-top: 25px;
  margin-bottom: 30px;
}



/*------------------------------

  テキスト装飾

------------------------------*/

.txt_caution{
  font-size: 1.2em;
  font-weight: bold;
}


.txt_small{
  font-size: 0.5em;
}