@charset "UTF-8";
/* ===================================================================
CSS information

 file name  :common.css
 author     :Ability Consultant
 style info :基本・共通設定
=================================================================== */
/* -----------------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------------- */
/* line 15, ../scss/common.scss */
body {
  color: #343023;
  font-size: small;
  font-family: "メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","MS Ｐゴシック","MS PGothic",sans-serif;
  line-height: 1.5;
  background: #fff; }
  /* line 21, ../scss/common.scss */
  body a {
    color: #505050; }
    /* line 23, ../scss/common.scss */
    body a:link {
      text-decoration: underline; }
    /* line 26, ../scss/common.scss */
    body a:visited {
      text-decoration: underline; }
    /* line 29, ../scss/common.scss */
    body a:hover {
      text-decoration: none; }
    /* line 32, ../scss/common.scss */
    body a:active {
      text-decoration: underline; }

/* jquery.fittedのホバー設定 */
/* line 39, ../scss/common.scss */
.hovered {
  cursor: pointer;
  background-color: #666; }

/* line 45, ../scss/common.scss */
.sp {
  display: none; }
  @media screen and (max-width: 767px) {
    /* line 45, ../scss/common.scss */
    .sp {
      display: block; } }

/* line 51, ../scss/common.scss */
.pc {
  display: block; }
  @media screen and (max-width: 767px) {
    /* line 51, ../scss/common.scss */
    .pc {
      display: none; } }

/* line 57, ../scss/common.scss */
.container {
  width: 960px;
  margin: 0 auto; }
  @media screen and (max-width: 957px) {
    /* line 57, ../scss/common.scss */
    .container {
      width: 96%; } }

/* line 65, ../scss/common.scss */
.menu {
  background: #fff;
  padding: 10px;
  position: fixed;
  top: 0;
  right: 0;
  width: 40px;
  z-index: 999999; }
  /* line 73, ../scss/common.scss */
  .menu img {
    width: 40px;
    height: 35px; }

/* line 78, ../scss/common.scss */
.b_navi {
  width: 100%;
  min-height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  z-index: 99999999;
  -webkit-transition: height 0.35s;
  transition: height 0.35s;
  display: none;
  background: #fff; }
  /* line 89, ../scss/common.scss */
  .b_navi .close {
    background: #005862;
    position: absolute;
    top: 10px;
    left: 50%;
    margin-left: -20px; }
  /* line 96, ../scss/common.scss */
  .b_navi .button_close {
    padding: 10px;
    width: 33px;
    height: 36px;
    display: block;
    text-align: center;
    color: #fff;
    background: url(../images/ic_close.png) no-repeat center center; }
  /* line 106, ../scss/common.scss */
  .b_navi ul {
    padding-top: 90px; }
    /* line 108, ../scss/common.scss */
    .b_navi ul li {
      background: #fff;
      border-bottom: 1px solid #000; }
      /* line 111, ../scss/common.scss */
      .b_navi ul li:first-child {
        border-top: 1px solid #000; }
      /* line 114, ../scss/common.scss */
      .b_navi ul li a {
        color: #000;
        text-decoration: none;
        padding: 15px 10px;
        display: block; }

/* line 124, ../scss/common.scss */
.is-nav-active #contents {
  position: fixed;
  top: 0px;
  visibility: hidden;
  z-index: 1; }

/* -----------------------------------------------------------
	汎用class
----------------------------------------------------------- */
/* -----------------------------------------------------------
	#page

----------------------------------------------------------- */
/* line 141, ../scss/common.scss */
#page {
  width: 100%;
  background: url(../images/bg_page.jpg) repeat;
  text-align: left; }

/* -----------------------------------------------------------
	#header
		ヘッダ
----------------------------------------------------------- */
/* line 152, ../scss/common.scss */
#header .top_header {
  margin: 0 auto;
  position: relative;
  padding: 7px 0;
  background: url(../images/bg_line.png) repeat-x;
  background-position: bottom left; }
  /* line 42, ../scss/_settings.scss */
  #header .top_header:after {
    visibility: hidden;
    display: block;
    font-size: 0;
    content: " ";
    clear: both;
    height: 0; }
  @media screen and (max-width: 767px) {
    /* line 152, ../scss/common.scss */
    #header .top_header {
      padding: 20px 0; } }
  /* line 162, ../scss/common.scss */
  #header .top_header h1 {
    position: absolute;
    transform: translate(-50%, 0);
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    -moz-transform: translate(-50%, 0);
    left: 50%; }
    @media screen and (max-width: 957px) {
      /* line 170, ../scss/common.scss */
      #header .top_header h1 img {
        width: 320px; } }
    @media screen and (max-width: 767px) {
      /* line 162, ../scss/common.scss */
      #header .top_header h1 {
        position: static;
        text-align: center;
        left: 0;
        transform: translate(0, 0);
        -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
        -moz-transform: translate(0); }
        /* line 182, ../scss/common.scss */
        #header .top_header h1 img {
          width: 320px;
          display: block;
          margin: 0 auto; } }
        @media screen and (max-width: 767px) and (max-width: 480px) {
          /* line 182, ../scss/common.scss */
          #header .top_header h1 img {
            width: 200px; } }
  /* line 192, ../scss/common.scss */
  #header .top_header .tel {
    float: right;
    position: relative; }
    /* line 195, ../scss/common.scss */
    #header .top_header .tel:before {
      position: absolute;
      content: '';
      background: url(../images/img_tel_icon.png) no-repeat;
      width: 40px;
      height: 45px;
      right: -40px;
      bottom: -20px; }
    @media screen and (max-width: 957px) {
      /* line 192, ../scss/common.scss */
      #header .top_header .tel {
        margin-right: 3%; } }
    @media screen and (max-width: 767px) {
      /* line 192, ../scss/common.scss */
      #header .top_header .tel {
        float: none;
        margin-top: 20px;
        text-align: center; }
        /* line 211, ../scss/common.scss */
        #header .top_header .tel:before {
          right: 0; } }
/* line 217, ../scss/common.scss */
#header .slide {
  position: relative;
  padding-top: 34px; }
  /* line 220, ../scss/common.scss */
  #header .slide:after {
    position: absolute;
    content: '';
    background: url(../images/bg_flag.png) repeat-x;
    background-position: center top;
    width: 100%;
    height: 34px;
    left: 0;
    top: 0; }
  /* line 230, ../scss/common.scss */
  #header .slide .container {
    position: relative; }
    /* line 232, ../scss/common.scss */
    #header .slide .container #hnav {
      position: absolute;
      bottom: -60px;
      left: 0; }
      @media screen and (max-width: 957px) {
        /* line 232, ../scss/common.scss */
        #header .slide .container #hnav {
          bottom: 0;
          left: 50%;
          -webkit-transform: translate(-50%, 0);
          -moz-transform: translate(-50%, 0);
          -ms-transform: translate(-50%, 0);
          -o-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
          width: 776px; }
          /* line 241, ../scss/common.scss */
          #header .slide .container #hnav .container {
            width: 100%; } }
      @media screen and (max-width: 767px) {
        /* line 232, ../scss/common.scss */
        #header .slide .container #hnav {
          position: static;
          width: 100%;
          webkit-transform: translate(0, 0);
          -moz-transform: translate(0, 0);
          -ms-transform: translate(0, 0);
          -o-transform: translate(0, 0);
          transform: translate(0, 0);
          margin-top: 5%; } }
      @media screen and (max-width: 767px) {
        /* line 255, ../scss/common.scss */
        #header .slide .container #hnav ul {
          overflow: hidden;
          width: 100%;
          background: #066a6a; } }
      /* line 262, ../scss/common.scss */
      #header .slide .container #hnav ul li {
        float: left;
        height: 97px; }
        @media screen and (max-width: 957px) {
          /* line 262, ../scss/common.scss */
          #header .slide .container #hnav ul li {
            height: 77px; } }
        @media screen and (max-width: 767px) {
          /* line 262, ../scss/common.scss */
          #header .slide .container #hnav ul li {
            height: auto;
            width: 50%;
            -webkit-box-sizing: border-box;
            -moz-box-sizing: border-box;
            box-sizing: border-box;
            border-right: 1px dotted #fff;
            border-bottom: 1px dotted #fff; }
            /* line 272, ../scss/common.scss */
            #header .slide .container #hnav ul li:nth-child(2n+1) {
              clear: left; }
            /* line 277, ../scss/common.scss */
            #header .slide .container #hnav ul li:nth-child(2n+2) {
              border-right: 0; } }
        /* line 281, ../scss/common.scss */
        #header .slide .container #hnav ul li a {
          background: url(../images/bg_nav.png) no-repeat;
          height: 97px;
          display: block;
          text-indent: -999em; }
          @media screen and (max-width: 957px) {
            /* line 281, ../scss/common.scss */
            #header .slide .container #hnav ul li a {
              background-size: 768px auto;
              height: 77px; } }
          @media screen and (max-width: 767px) {
            /* line 281, ../scss/common.scss */
            #header .slide .container #hnav ul li a {
              background: none;
              text-indent: 0;
              color: #fff;
              height: auto;
              text-decoration: none;
              padding: 3%;
              width: auto !important; } }
        /* line 301, ../scss/common.scss */
        #header .slide .container #hnav ul li.about a {
          background-position: 0 0;
          width: 304px; }
          @media screen and (max-width: 957px) {
            /* line 301, ../scss/common.scss */
            #header .slide .container #hnav ul li.about a {
              width: 241px; } }
        /* line 310, ../scss/common.scss */
        #header .slide .container #hnav ul li.life_child a {
          background-position: -304px 0;
          width: 132px; }
          @media screen and (max-width: 957px) {
            /* line 310, ../scss/common.scss */
            #header .slide .container #hnav ul li.life_child a {
              background-position: -241px 0;
              width: 110px; } }
        /* line 320, ../scss/common.scss */
        #header .slide .container #hnav ul li.message a {
          background-position: -437px 0;
          width: 213px; }
          @media screen and (max-width: 957px) {
            /* line 320, ../scss/common.scss */
            #header .slide .container #hnav ul li.message a {
              background-position: -349px 0;
              width: 174px; } }
        /* line 330, ../scss/common.scss */
        #header .slide .container #hnav ul li.guidance a {
          background-position: -650px 0;
          width: 160px; }
          @media screen and (max-width: 957px) {
            /* line 330, ../scss/common.scss */
            #header .slide .container #hnav ul li.guidance a {
              background-position: -520px 0;
              width: 132px; } }
        /* line 340, ../scss/common.scss */
        #header .slide .container #hnav ul li.inquiry a {
          background-position: -816px 0;
          width: 150px; }
          @media screen and (max-width: 957px) {
            /* line 340, ../scss/common.scss */
            #header .slide .container #hnav ul li.inquiry a {
              background-position: -651px 0;
              width: 118px; } }

/* line 359, ../scss/common.scss */
.header_sp h1 {
  text-align: center;
  padding: 18px 0 13px; }
/* line 363, ../scss/common.scss */
.header_sp .main_img {
  width: 100%; }
  /* line 365, ../scss/common.scss */
  .header_sp .main_img img {
    width: 100%; }

/* #gnav 	グローバルナビ
----------------------------------------------------------- */
/* line 42, ../scss/_settings.scss */
#gnav ul:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: " ";
  clear: both;
  height: 0; }
/* line 375, ../scss/common.scss */
#gnav ul li {
  float: left;
  height: 50px; }
  /* line 378, ../scss/common.scss */
  #gnav ul li a {
    height: 0;
    padding: 50px 0 0 0;
    display: block;
    overflow: hidden;
    background: left top no-repeat; }
    /* line 384, ../scss/common.scss */
    #gnav ul li a:hover {
      background-position: left -50px; }

/* line 393, ../scss/common.scss */
#gnav ul li.xxx a {
  background-image: url(../images/header/xxx.png); }

/* line 393, ../scss/common.scss */
#gnav ul li.xxxx a {
  background-image: url(../images/header/xxxx.png); }

/* line 393, ../scss/common.scss */
#gnav ul li.xxxxx a {
  background-image: url(../images/header/xxxxx.png); }

/* line 393, ../scss/common.scss */
#gnav ul li.xxxxx a {
  background-image: url(../images/header/xxxxx.png); }

/* line 393, ../scss/common.scss */
#gnav ul li.xxxxx a {
  background-image: url(../images/header/xxxxx.png); }

/* #hnav 	サブナビ
----------------------------------------------------------- */
/* line 405, ../scss/common.scss */
#hnav ul li.xxx a {
  background-image: url(../images/header/xxx.png); }

/* line 405, ../scss/common.scss */
#hnav ul li.xxxx a {
  background-image: url(../images/header/xxxx.png); }

/* line 405, ../scss/common.scss */
#hnav ul li.xxxxx a {
  background-image: url(../images/header/xxxxx.png); }

/* line 405, ../scss/common.scss */
#hnav ul li.xxxxx a {
  background-image: url(../images/header/xxxxx.png); }

/* line 405, ../scss/common.scss */
#hnav ul li.xxxxx a {
  background-image: url(../images/header/xxxxx.png); }

/* -----------------------------------------------------------
	#contents
		コンテンツ
----------------------------------------------------------- */
/* line 416, ../scss/common.scss */
#contents {
  margin: 60px auto 0;
  width: 100%;
  overflow: hidden;
  position: relative; }
  @media screen and (max-width: 957px) {
    /* line 416, ../scss/common.scss */
    #contents {
      margin-top: 1%; } }

/* -----------------------------------------------------------
	#main	メインコンテンツ
----------------------------------------------------------- */
/*	.topicpath		パンクズ
----------------------------------------------------------- */
/* line 434, ../scss/common.scss */
.topicpath {
  margin-bottom: 20px;
  width: 950px; }
  /* line 438, ../scss/common.scss */
  .topicpath ul li {
    display: -moz-inline-stack;
    display: inline-block;
    vertical-align: middle;
    *vertical-align: auto;
    zoom: 1;
    *display: inline; }
    /* line 440, ../scss/common.scss */
    .topicpath ul li a {
      padding-right: 10px;
      background: url(../images/ic_topicpath.png) right 3px no-repeat; }

/* -----------------------------------------------------------
	#side	サイド
----------------------------------------------------------- */
/* line 451, ../scss/common.scss */
#side {
  width: 220px;
  float: right; }

/* line 458, ../scss/common.scss */
#snav ul li.xxx a {
  background-image: url(../images/header/xxx.png); }

/* line 458, ../scss/common.scss */
#snav ul li.xxxx a {
  background-image: url(../images/header/xxxx.png); }

/* line 458, ../scss/common.scss */
#snav ul li.xxxxx a {
  background-image: url(../images/header/xxxxx.png); }

/* line 458, ../scss/common.scss */
#snav ul li.xxxxx a {
  background-image: url(../images/header/xxxxx.png); }

/* line 458, ../scss/common.scss */
#snav ul li.xxxxx a {
  background-image: url(../images/header/xxxxx.png); }

/* -----------------------------------------------------------
	.btn_ptop	PAGE TOPボタン
----------------------------------------------------------- */
/* line 468, ../scss/common.scss */
#contents {
  background: url(../images/bg_line.png) repeat-x;
  background-position: left bottom; }
  /* line 471, ../scss/common.scss */
  #contents .container {
    position: relative; }
  /* line 474, ../scss/common.scss */
  #contents .btn_ptop {
    text-align: right;
    clear: both;
    position: absolute;
    bottom: 0;
    right: -160px; }

/* -----------------------------------------------------------
	#footer
		フッタ
----------------------------------------------------------- */
/* line 486, ../scss/common.scss */
#footer .fo_group {
  padding: 30px 0 20px; }

/* line 490, ../scss/common.scss */
#footer .fo_group p.st {
  text-align: center;
  margin-bottom: 20px;
  color: #005862;
  font-size: 16px;
  text-transform: uppercase; }

/* line 498, ../scss/common.scss */
#footer .fo_group ul {
  width: 863px;
  margin: 0 auto 5px;
  overflow: hidden; }
  @media screen and (max-width: 957px) {
    /* line 498, ../scss/common.scss */
    #footer .fo_group ul {
      width: 96%; } }

/* line 507, ../scss/common.scss */
#footer .fo_group ul.gr_bottom {
  width: 1035px;
  margin-bottom: 0; }
  @media screen and (max-width: 957px) {
    /* line 507, ../scss/common.scss */
    #footer .fo_group ul.gr_bottom {
      width: 96%; }
      /* line 512, ../scss/common.scss */
      #footer .fo_group ul.gr_bottom li {
        width: 16.66%; } }
  @media screen and (max-width: 767px) {
    /* line 517, ../scss/common.scss */
    #footer .fo_group ul.gr_bottom li {
      width: 50%;
      float: left; } }

@media screen and (max-width: 767px) {
  /* line 524, ../scss/common.scss */
  #footer .fo_group ul {
    text-align: center; } }
/* line 528, ../scss/common.scss */
#footer .fo_group ul li {
  float: left;
  padding-right: 13px;
  margin-bottom: 15px; }
  @media screen and (max-width: 957px) {
    /* line 528, ../scss/common.scss */
    #footer .fo_group ul li {
      width: 20%;
      -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
      box-sizing: border-box; }
      /* line 535, ../scss/common.scss */
      #footer .fo_group ul li img {
        width: 100%; } }
  @media screen and (max-width: 767px) {
    /* line 528, ../scss/common.scss */
    #footer .fo_group ul li {
      width: 49%;
      display: inline-block;
      float: none; } }

/* line 548, ../scss/common.scss */
#footer .fo_group p.copyright,
#footer .fo_group p.copyright a {
  color: #86572d;
  font-size: 85%;
  text-align: center; }

/* -----------------------------------------------------------
	Table		表設定
----------------------------------------------------------- */
/* line 557, ../scss/common.scss */
table.tbl_basic {
  border: 3px solid #e0cbb0;
  background: url(../images/bg_table.png) repeat;
  width: 100%; }
  /* line 561, ../scss/common.scss */
  table.tbl_basic th, table.tbl_basic td {
    padding: 15px 17px;
    border: 1px solid #e0cbb0;
    border-top: none;
    text-align: left; }
    @media screen and (max-width: 480px) {
      /* line 561, ../scss/common.scss */
      table.tbl_basic th, table.tbl_basic td {
        display: block;
        width: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box; } }
  /* line 572, ../scss/common.scss */
  table.tbl_basic th {
    font-weight: normal;
    padding: 15px 20px;
    vertical-align: middle;
    font-size: 14px;
    width: 20%;
    color: #7e5c38;
    text-align: center; }
    @media screen and (max-width: 480px) {
      /* line 572, ../scss/common.scss */
      table.tbl_basic th {
        display: block;
        width: 100%;
        font-weight: bold;
        text-align: left; } }
  /* line 587, ../scss/common.scss */
  table.tbl_basic td {
    width: 80%;
    line-height: 22px; }
    @media screen and (max-width: 480px) {
      /* line 587, ../scss/common.scss */
      table.tbl_basic td {
        display: block;
        width: 100%; } }
    /* line 595, ../scss/common.scss */
    table.tbl_basic td.spec {
      position: relative;
      padding-top: 80px; }
      @media screen and (max-width: 480px) {
        /* line 595, ../scss/common.scss */
        table.tbl_basic td.spec {
          padding-top: 110px; } }
      /* line 602, ../scss/common.scss */
      table.tbl_basic td.spec .top_tr {
        background: url(../images/bg_td_pink.jpg) repeat;
        color: #000000;
        overflow: hidden;
        position: absolute;
        top: 0;
        left: 0;
        width: 100%; }
        /* line 610, ../scss/common.scss */
        table.tbl_basic td.spec .top_tr p {
          float: left;
          width: 50%;
          text-align: center;
          font-size: 22px;
          padding: 20px 0;
          border-right: 1px solid #fff;
          -webkit-box-sizing: border-box;
          -moz-box-sizing: border-box;
          box-sizing: border-box; }
          /* line 618, ../scss/common.scss */
          table.tbl_basic td.spec .top_tr p.last {
            border-right: 0; }
      /* line 623, ../scss/common.scss */
      table.tbl_basic td.spec .txt {
        padding-bottom: 25px; }
        /* line 625, ../scss/common.scss */
        table.tbl_basic td.spec .txt span {
          font-weight: bold; }
      /* line 630, ../scss/common.scss */
      table.tbl_basic td.spec ul li {
        color: #d02222;
        text-decoration: underline;
        padding-bottom: 15px; }
      /* line 636, ../scss/common.scss */
      table.tbl_basic td.spec .note {
        position: absolute;
        top: 77px;
        right: 0;
        background: url(../images/txt_note.png) no-repeat;
        width: 209px;
        height: 132px;
        color: #7e5c38;
        font-size: 12px;
        line-height: 16px;
        padding: 40px 0 40px 30px; }

/* line 653, ../scss/common.scss */
input, textarea {
  border: 1px solid #e4e4e4; }

/* line 656, ../scss/common.scss */
input {
  height: 24px; }

/* line 661, ../scss/common.scss */
#footer .box_links li.group {
  border-top: 1px solid #666666;
  border-bottom: 1px solid #666666;
  width: 100%;
  padding-right: 0; }
  /* line 666, ../scss/common.scss */
  #footer .box_links li.group a.grouptitle {
    background: #5a5a5a url(../images/ic_plus.gif) no-repeat 96% center;
    background-size: 4.0625%;
    display: block;
    color: #fff;
    text-decoration: none;
    padding: 3%; }
  /* line 674, ../scss/common.scss */
  #footer .box_links li.group ul {
    display: none;
    width: 100%; }
    /* line 677, ../scss/common.scss */
    #footer .box_links li.group ul li {
      border-top: 1px solid #666666;
      border-bottom: 1px solid #666666;
      background: #5a5a5a;
      width: 100%;
      margin-bottom: 0; }
      /* line 683, ../scss/common.scss */
      #footer .box_links li.group ul li a {
        display: block;
        padding: 3%;
        color: #fff;
        font-size: 96%;
        text-decoration: none; }
