@charset "UTF-8";
/*------------------------------------------------------------------------------------------------*/
/*reset----------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font: inherit;
  font-size: 100%;
  vertical-align: baseline; }

html {
  line-height: 1; }

ol, ul {
  list-style: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

caption, th, td {
  text-align: left;
  font-weight: normal;
  vertical-align: middle; }

q, blockquote {
  quotes: none; }

q:before, q:after, blockquote:before, blockquote:after {
  content: "";
  content: none; }

a img {
  border: none; }

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block; }

a {
  text-decoration: none; }

.pc_block {
  display: none !important; }

@media screen and (min-width: 768px) {
  .pc_block {
    display: block !important; }
  .sp_block {
    display: none !important; } }

.ml10 {
  margin-left: 10px; }

.mr10 {
  margin-right: 10px; }

/*------------------------------------------------------------------------------------------------*/
/*body--------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------*/
body {
  font-size: 14px;
  color: #000000;
  font-family: "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "游ゴシック体", "Yu Gothic", YuGothic, "MS P Gothic", "ＭＳ Ｐゴシック", arial, helvetica, sans-serif;
  line-height: 1.8;
  -webkit-text-size-adjust: 100%;
     -moz-text-size-adjust: 100%;
      -ms-text-size-adjust: 100%;
          text-size-adjust: 100%;
  overflow-x: hidden; }

/*------------------------------------------------------------------------------------------------*/
/*共通部分----------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------*/
.head, .main, .footer {
  width: 100%; }

@media screen and (min-width: 768px) {
  .utility_out, .content_rap, .bunner_link_inner, .info_out_inner, .footer_contents {
    width: 768px;
    margin: 0 auto;
    position: relative; } }

@media screen and (min-width: 1140px) {
  .utility_out, .content_rap, .bunner_link_inner, .info_out_inner, .footer_contents {
    width: 1140px;
    margin: 0 auto; } }

@media screen and (max-width: 767px) {
  .utility_out, .content_rap, .footer_contents {
    width: 92%;
    margin: 0 auto; } }

/*------------------------------------------------------------------------------------------------*/
/*.head-------------------------------------------------------------------------------------------*/
/*-----------------------------------------------------------------------------------------------*/
.head {
  position: relative; }

.head_contents {
  background: #fff;
  width: 99%;
  z-index: 150; }
  .head_contents h1 {
    padding: 8px 0 0 4%;
    width: 56.4%; }
    .head_contents h1 img {
      max-width: 100%; }
  @media screen and (min-width: 768px) {
    .head_contents {
      width: 100%;
      *zoom: 1; }
      .head_contents h1 {
        float: left;
        padding: 13px 0 0 2%;
        width: 20%; }
        .head_contents h1 img {
          max-width: 100%; }
      .head_contents:after {
        content: "";
        display: table;
        clear: both; } }
  @media screen and (min-width: 1140px) {
    .head_contents h1 {
      width: 281px; }
      .head_contents h1 img {
        max-width: 100%; } }
  .head_contents nav {
    margin: 4px 0;
    padding: 0 4%; }
    @media screen and (min-width: 768px) {
      .head_contents nav {
        float: right;
        width: 78%;
        margin: 0;
        padding: 0; } }
    @media screen and (min-width: 1140px) {
      .head_contents nav {
        width: 70%;
        max-width: 900px; } }

/*------------------------------------------------------------------------------------------------*/
/*.main-------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------*/
/*.footer-----------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------*/
.footer {
  border-bottom: #eeeeee 1px solid;
  padding-bottom: 24px; }

.footer_links {
  background-color: #e5e5e5;
  text-align: center; }
  .footer_links li {
    text-align: center;
    border-bottom: #d7d7d7 1px solid;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding: 13.5px 0;
    -webkit-transition: all .5s;
    transition: all .5s; }
    .footer_links li:hover {
      opacity: .5; }
    @media screen and (min-width: 768px) {
      .footer_links li {
        display: inline-block;
        margin-right: 10px;
        border-bottom: none; } }
    .footer_links li a {
      color: #000000;
      font-size: 15px; }
      @media screen and (min-width: 768px) {
        .footer_links li a {
          font-size: 13px; } }
      .footer_links li a span {
        display: none; }
        @media screen and (min-width: 768px) {
          .footer_links li a span {
            display: inline-block;
            margin-left: 10px; } }
    .footer_links li:last-child {
      border-bottom: none; }

.footer_contents {
  overflow: hidden; }
  .footer_contents .logo {
    width: 58%;
    margin: 17px auto; }
    .footer_contents .logo img {
      max-width: 100%; }
    @media screen and (min-width: 768px) {
      .footer_contents .logo {
        margin: 13px 0 0;
        width: 216px;
        float: left; } }
  .footer_contents address {
    position: relative;
    line-height: 1.8;
    font-size: 13px;
    text-align: center; }
    @media screen and (min-width: 768px) {
      .footer_contents address {
        margin: 36px 0 0; } }
    .footer_contents address a {
      display: block;
      color: #000; }
      @media screen and (min-width: 768px) {
        .footer_contents address a {
          display: inline-block;
          margin-left: 20px; } }
  .footer_contents .fb {
    display: none; }
    @media screen and (min-width: 768px) {
      .footer_contents .fb {
        display: inline-block;
        width: 18px; }
        .footer_contents .fb img {
          max-width: 100%; } }
    .footer_contents .fb img {
      display: inline-block;
      vertical-align: middle; }
  .footer_contents .seitetu_logo {
    display: block;
    width: 100px;
    margin: 15px auto; }
    .footer_contents .seitetu_logo img {
      max-width: 100%; }
    @media screen and (min-width: 1140px) {
      .footer_contents .seitetu_logo {
        margin-top: -15px;
        float: right; } }

.copyright {
  padding: 15px 0 20px;
  font-size: 11px;
  text-align: center; }

/*------------------------------------------*/
/*g_menu-----------------------------------*/
/*------------------------------------------*/
.gnav {
  float: right;
  text-align: center;
  max-width: 100%; }
  @media screen and (min-width: 768px) {
    .gnav {
      margin: 11px 0 0; } }
  .gnav li {
    display: inline-block;
    -webkit-transition: all .5s;
    transition: all .5s; }
    .gnav li:last-child {
      margin-right: 0; }
    .gnav li:hover {
      opacity: .5; }
  .gnav a {
    font-size: 14px;
    color: #000;
    font-weight: 700;
    display: block;
    width: 100%; }
    .gnav a span {
      display: block;
      font-size: 11px;
      color: #98003f; }

.menu_inner {
  width: 100%;
  border-top: #e5e5e5 solid 1px; }

.drawer-menu {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #fff;
  width: 100%;
  height: 0;
  opacity: 0;
  visibility: hidden;
  background-color: #fff;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.menu_inner li {
  position: relative;
  text-align: left;
  padding: 20px 0;
  border-bottom: #e5e5e5 solid 1px; }

.menu_inner li a {
  font-weight: 700;
  display: block;
  font-size: 15px;
  color: #000000;
  text-decoration: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s; }

.menu_inner li:after {
  content: "";
  position: absolute;
  top: 24px;
  right: 0px;
  width: 7.5px;
  height: 11.5px;
  background: url(../images/link_after_arrow_sp.png) no-repeat;
  background-size: 100%; }

.check {
  display: none; }

.menu-btn, .close-menu {
  position: absolute; }

.menu-btn {
  width: 10%;
  cursor: pointer;
  visibility: visible;
  opacity: 1;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  top: 20px;
  right: 4%;
  z-index: 2; }
  .menu-btn img {
    max-width: 100%; }

.close-menu {
  width: 5%;
  cursor: pointer;
  visibility: hidden;
  opacity: 0;
  -webkit-transition-property: all;
  transition-property: all;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  top: 26px;
  right: 5.73%;
  z-index: 0; }
  .close-menu img {
    max-width: 100%; }

.check:checked ~ .drawer-menu {
  opacity: 1;
  visibility: visible;
  z-index: 2;
  height: 100%; }

.check:checked ~ .menu-btn {
  visibility: hidden;
  opacity: 0;
  z-index: 0; }

.check:checked ~ .close-menu {
  visibility: visible;
  opacity: 1;
  z-index: 2; }

.menu_utilitys {
  margin: 10px 0 26.5px;
  text-align: center; }
  @media screen and (min-width: 768px) {
    .menu_utilitys {
      float: left;
      text-align: right;
      max-width: 100%;
      margin: 19px 0 0;
      padding-right: 20px; } }
  .menu_utilitys li {
    display: inline-block;
    -webkit-transition: all .5s;
    transition: all .5s; }
    .menu_utilitys li:hover {
      opacity: .5; }
    @media screen and (min-width: 768px) {
      .menu_utilitys li {
        margin: 0 5px;
        vertical-align: middle; } }
    @media screen and (min-width: 1260px) {
      .menu_utilitys li {
        margin: 0 15px; } }
    .menu_utilitys li a {
      font-size: 13px;
      color: #000000; }
    .menu_utilitys li:nth-child(1) {
      padding: 0 12.5px 0 0; }
      @media screen and (min-width: 768px) {
        .menu_utilitys li:nth-child(1) {
          padding: 0; } }
      .menu_utilitys li a {
        text-decoration: underline; }
        @media screen and (min-width: 768px) {
          .menu_utilitys li a {
            text-decoration: none; } }
    .menu_utilitys li:nth-child(2) {
      padding: 0 12.5px; }
      @media screen and (min-width: 768px) {
        .menu_utilitys li:nth-child(2) {
          padding: 0; } }
    .menu_utilitys li:nth-child(3) {
      padding: 0 0 0 12.5px; }
      @media screen and (min-width: 768px) {
        .menu_utilitys li:nth-child(3) {
          padding: 0; } }
  .menu_utilitys .fb {
    display: block;
    margin: 20px auto 0;
    width: 30px; }
    .menu_utilitys .fb img {
      max-width: 100%; }
    @media screen and (min-width: 768px) {
      .menu_utilitys .fb {
        display: inline-block;
        margin: 0;
        width: 18px; }
        .menu_utilitys .fb img {
          max-width: 100%; } }

.menu_blocklink {
  margin: 0 -5%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end; }
  @media screen and (min-width: 768px) {
    .menu_blocklink {
      margin: 0; } }
  .menu_blocklink li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    width: 50%;
    padding: 30px;
    text-align: center;
    -webkit-transition: all .5s;
    transition: all .5s; }
    .menu_blocklink li:hover {
      opacity: .5; }
    @media screen and (min-width: 768px) {
      .menu_blocklink li {
        height: 114px; } }
    .menu_blocklink li img {
      display: inline-block;
      vertical-align: middle; }
    @media screen and (min-width: 768px) {
      .menu_blocklink li {
        display: block;
        position: relative;
        padding: 10px;
        padding: 32px 5px; } }
    @media screen and (min-width: 1140px) {
      .menu_blocklink li {
        width: 50%;
        padding: 32px 30px;
        max-width: 165px; } }
    .menu_blocklink li:nth-child(1) {
      background-color: #cb7f9f; }
      @media screen and (min-width: 768px) {
        .menu_blocklink li:nth-child(1) {
          background-image: url(../images/saiyoujyouhou.png);
          background-position: 50% 50%;
          background-repeat: no-repeat;
          background-size: 50%; } }
      @media screen and (min-width: 1140px) {
        .menu_blocklink li:nth-child(1) {
          background-size: 45%; } }
    .menu_blocklink li:nth-child(2) {
      background-color: #b54774; }
      @media screen and (min-width: 768px) {
        .menu_blocklink li:nth-child(2) {
          background-image: url(../images/cat_log.png);
          background-position: 50% 50%;
          background-repeat: no-repeat;
          background-size: 50%; } }
      @media screen and (min-width: 1140px) {
        .menu_blocklink li:nth-child(2) {
          background-size: 60%; } }
    .menu_blocklink li:nth-child(3) {
      background-color: #98003f; }
      @media screen and (min-width: 768px) {
        .menu_blocklink li:nth-child(3) {
          background-image: url(../images/cont_ct.png);
          background-position: 50% 50%;
          background-repeat: no-repeat;
          background-size: 50%; } }
      @media screen and (min-width: 1140px) {
        .menu_blocklink li:nth-child(3) {
          background-size: 60%; } }
    .menu_blocklink li span {
      display: block;
      margin: 12px auto 0;
      color: #fff; }
      @media screen and (min-width: 768px) {
        .menu_blocklink li span {
          font-size: 14px; } }
      .menu_blocklink li span img {
        max-width: 100%; }
    .menu_blocklink li a {
      display: block;
      width: 100%;
      height: 100%;
      color: #fff;
      text-align: center; }
      @media screen and (min-width: 768px) {
        .menu_blocklink li a {
          position: absolute;
          top: 0;
          left: 0; } }
      .menu_blocklink li a img {
        display: inline-block;
        max-width: 50%; }
        @media screen and (min-width: 768px) {
          .menu_blocklink li a img {
            width: 20px; } }

/*------------------------------------------------------------------------------------------------*/
/*.TOPへ戻る--------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------*/
#pageTop {
  display: block;
  position: fixed;
  right: 36px;
  bottom: 30px; }

/*------------------------------------------------------------------------------------------------*/
/*.ブロックLINK-----------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------*/
.block_link, .block_link_window {
  background-color: #ffffff;
  position: relative;
  font-size: 15px;
  border: #e5e5e5 1px solid;
  border-radius: 5px;
  padding: 18px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  text-align: center;
  -webkit-transition: all .5s;
  transition: all .5s; }
  .block_link:hover, .block_link_window:hover {
    -webkit-box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6);
            box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.6); }
  @media screen and (min-width: 768px) {
    .block_link, .block_link_window {
      width: 360px;
      display: block;
      margin: 0 auto; } }
  .block_link a, .block_link_window a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%; }
  .block_link:after, .block_link_window:after {
    content: "";
    position: absolute;
    top: 21px;
    right: -8px;
    background: url(../images/red_arrow.png) no-repeat;
    background-size: 100%;
    width: 17px;
    height: 17px; }

.block_link_window:after {
  background: url(../images/icons/other_window_icon.png) no-repeat; }

/*------------------------------------------------------------------------------------------------*/
/*.下層ページ共通-------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------------------*/
.utility_out {
  font-family: "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }

.utility_head {
  position: relative;
  max-width: 100%;
  background: url(../images/utility_heading.jpg) no-repeat;
  background-size: cover;
  height: 120px; }
  @media screen and (min-width: 768px) {
    .utility_head {
      height: 180px; } }
  .utility_head h2 {
    text-align: center;
    font-weight: 700;
    padding-top: 40px;
    font-size: 22px; }
    @media screen and (min-width: 768px) {
      .utility_head h2 {
        padding-top: 70px;
        font-size: 32px;
        letter-spacing: 3px; } }

.breadcrumb {
  position: absolute;
  bottom: -12px;
  text-align: left;
  vertical-align: middle;
  color: #ffffff;
  background-color: #98003f;
  padding: 9px 10px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }
  .breadcrumb span:last-child {
    display: inline-block; }
  .breadcrumb a {
    color: #fff;
    padding: 0 8px;
    font-size: 13px; }

.utility_head2 {
  text-align: center;
  font-size: 24px;
  margin: 85px 0 55px; }

.utility_inner_head {
  display: block;
  max-width: 100%;
  border-left: #98003f 3px solid;
  color: #98003f;
  font-size: 18px;
  padding: 6px 15px;
  font-weight: 700;
  margin-bottom: 22px; }
  .utility_inner_head span {
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    background-color: #98003f;
    font-size: 12px;
    border-radius: 20px;
    padding: 4px 19px;
    margin-top: 10px; }
    @media screen and (min-width: 768px) {
      .utility_inner_head span {
        margin-top: 0;
        margin-left: 20px; } }

.utility_inner {
  margin-bottom: 59px;
  font-size: 15px; }

.utility_inner_bold {
  margin-top: 20px;
  font-weight: 700;
  display: block; }

.utility_inner_small {
  display: block;
  font-size: 13px; }

.utility_inner_smallct {
  display: block;
  margin: 0 auto;
  width: 100%;
  text-align: center; }
