@charset "UTF-8";
body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI","Noto Sans Japanese","ヒラギノ角ゴ ProN", Meiryo, sans-serif; }

@media only screen and (min-width: 768px) {
  .nopc {
    display: none; } }

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

img {
  max-width: 100%;
  height: auto; }

#head {
  margin-bottom: 0; }

.topBanner {
  background: #fff url("/dir/itaku/img/bg.gif") repeat-x;
  height: 30px; }

.local_nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  padding: 15px 0 0 0; }
  @media only screen and (max-width: 767px) {
    .local_nav {
      -webkit-flex-direction: column;
      flex-direction: column;
      margin: 0 0 20px; } }
  @media only screen and (min-width: 768px) {
    .local_nav {
      -webkit-flex-direction: row;
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-justify-content: space-between;
      justify-content: space-between;
      -webkit-align-items: stretch;
      align-items: stretch;
      -webkit-align-content: flex-start;
      align-content: flex-start;
      max-width: 1080px;
      margin: 0 auto 5px; } }
  @media only screen and (max-width: 767px) {
    .local_nav .local_logo {
      width: 90%;
      margin: 0 auto 5px;
      text-align: center; } }
  @media only screen and (min-width: 768px) {
    .local_nav .local_logo {
      width: 350px;
      margin: 0 20px 0 0; } }
  .local_nav .local_logo img {
    max-width: 100%;
    height: auto; }
  @media only screen and (max-width: 767px) {
    .local_nav .local_guide {
      width: 100%; } }
  @media only screen and (min-width: 768px) {
    .local_nav .local_guide {
      width: calc(100% - 370px); } }
  .local_nav .local_guide ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    margin: 0;
    padding: 0;
    list-style: none;
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: stretch;
    align-items: stretch;
    -webkit-align-content: flex-start;
    align-content: flex-start; }
    .local_nav .local_guide ul li {
      width: 33%;
      height: 48px;
      text-align: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: -webkit-flex;
      display: flex;
      -webkit-flex-direction: row;
      flex-direction: row;
      -webkit-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-justify-content: center;
      justify-content: center;
      -webkit-align-items: center;
      align-items: center;
      -webkit-align-content: center;
      align-content: center;
      background-color: #cc0000;
      position: relative;
      margin: 0; }
    .local_nav .local_guide ul a {
      display: block;
      width: 100%;
      color: #fff;
      border-top: 2px solid #fff;
      border-bottom: 2px solid #fff;
      font-weight: bold;
      line-height: 100%;
      padding: 5px 0 4px;
      font-feature-settings: "palt";
      text-decoration: none; }
      @media only screen and (max-width: 767px) {
        .local_nav .local_guide ul a {
          font-size: 13px; } }
      @media only screen and (min-width: 768px) {
        .local_nav .local_guide ul a {
          font-size: 18px; } }
      .local_nav .local_guide ul a::after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 1;
        pointer-events: auto;
        content: "";
        background-color: transparent; }
    .local_nav .local_guide ul .currentPage {
      background-color: #002398; }

.spFull {
  width: 90%; }
  @media only screen and (min-width: 768px) {
    .spFull {
      display: none; } }

.buttons {
  list-style-type: none;
  padding: 0;
  margin: 0 auto 0 auto; }
  .buttons li {
    display: inline-block;
    padding: 0;
    margin: 10px 10px;
    text-align: center;
    height: 50px;
    line-height: 50px;
    font-family: 'Rounded Mplus 1c';
    font-weight: bolder;
    font-size: 20px; }
    @media only screen and (max-width: 767px) {
      .buttons li {
        font-size: 14px;
        display: list-item; } }
    .buttons li a {
      padding: 0 20px;
      background-color: #dc0001;
      color: #FFF;
      display: block;
      border-radius: 20px;
      text-decoration: none; }
      .buttons li a:hover {
        text-decoration: underline; }

h1 {
  background-color: #002397;
  text-align: left;
  color: #FFF;
  font-family: 'Rounded Mplus 1c';
  font-size: 18px;
  font-weight: bolder;
  padding: 3px 0 3px 100px;
  margin-top: 0; }
  @media only screen and (max-width: 767px) {
    h1 {
      padding-left: 20px; } }

.tuyomiHolder {
  position: relative; }
  @media only screen and (max-width: 767px) {
    .tuyomiHolder {
      padding: 0 0 80px; } }
  .tuyomiHolder img {
    position: absolute;
    bottom: -10px;
    z-index: -1;
    right: 0;
    height: 350px; }
    @media only screen and (max-width: 767px) {
      .tuyomiHolder img {
        right: 10px;
        height: 100px; } }

.tuyomi {
  text-align: left;
  font-family: 'Rounded Mplus 1c';
  font-weight: bold;
  box-sizing: border-box;
  display: flex;
  justify-content: space-between;
  width: 100%;
  margin: 0 0 15px; }
  @media only screen and (max-width: 767px) {
    .tuyomi {
      padding: 0 10px; } }
  @media only screen and (min-width: 768px) {
    .tuyomi {
      padding: 0 30px; } }
  .tuyomi .number {
    background-color: #dc0001;
    color: #FFF;
    text-align: center;
    vertical-align: top;
    border-radius: 50%; }
    @media only screen and (max-width: 767px) {
      .tuyomi .number {
        width: 40px;
        height: 40px;
        line-height: 40px;
        font-size: 30px;
        margin: 0 10px 0 0; } }
    @media only screen and (min-width: 768px) {
      .tuyomi .number {
        width: 75px;
        height: 75px;
        line-height: 75px;
        font-size: 60px;
        margin: 0 20px 0 0; } }
  .tuyomi .information {
    text-align: left; }
    @media only screen and (max-width: 767px) {
      .tuyomi .information {
        width: calc(100% - 40px); } }
    @media only screen and (min-width: 768px) {
      .tuyomi .information {
        width: calc(100% - 75px); } }
    .tuyomi .information p, .tuyomi .information td {
      margin: 0;
      font-size: 20px;
      line-height: 1.2;
      font-family: inherit;
      font-weight: inherit; }
      @media only screen and (max-width: 767px) {
        .tuyomi .information p, .tuyomi .information td {
          font-size: 14px; } }
    .tuyomi .information p {
      text-shadow: 2px 0 0 #fff, 0 2px 0 #fff, -2px 0 0 #fff, 0 -2px 0 #fff; }
    .tuyomi .information p:nth-child(1) {
      font-size: 28px;
      color: #000;
      line-height: 1.2; }
      @media only screen and (max-width: 767px) {
        .tuyomi .information p:nth-child(1) {
          font-size: 20px;
          margin: 0 0 5px; } }
      .tuyomi .information p:nth-child(1) span {
        color: #dc0001; }
    @media only screen and (max-width: 767px) {
      .tuyomi .information p:nth-child(2) {
        line-height: 1.5; } }
    .tuyomi .information td {
      padding-left: 10px; }

@media only screen and (max-width: 767px) {
  .contact__container {
    margin: 0 10px 30px; } }
@media only screen and (min-width: 768px) {
  .contact__container {
    max-width: 1080px;
    margin: 0 auto 30px; } }
.contact__link {
  text-align: left;
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 10px; }
@media only screen and (min-width: 768px) {
  .contact__address {
    display: flex; } }
.contact__address-item {
  text-align: left;
  font-size: 14px;
  line-height: 1.6; }
  @media only screen and (min-width: 768px) {
    .contact__address-item {
      padding: 0 30px; } }
  @media only screen and (max-width: 767px) {
    .contact__address-item:first-of-type {
      border-bottom: solid #ccc 3px;
      padding: 0 0 12px; } }
  @media only screen and (min-width: 768px) {
    .contact__address-item:first-of-type {
      border-right: solid #ccc 3px;
      width: 300px; } }
  @media only screen and (max-width: 767px) {
    .contact__address-item:last-of-type {
      padding: 12px 0 0; } }

.staffChat {
  text-align: left;
  margin: 20px 0 0 0;
  display: flex;
  align-items: center; }
  @media only screen and (max-width: 767px) {
    .staffChat {
      padding-left: 5px; } }
  .staffChat img {
    display: inline-block;
    vertical-align: middle; }
    @media only screen and (max-width: 767px) {
      .staffChat img {
        vertical-align: bottom; } }
  .staffChat blockquote {
    background-color: #d5d5d6;
    padding: 15px;
    position: relative;
    border-radius: 20px;
    margin: 0 0 0 10px; }
  .staffChat blockquote:after {
    content: "";
    position: absolute;
    bottom: 0px;
    left: -15px;
    border: 15px solid transparent;
    border-right-color: #d5d5d6;
    border-bottom-color: #d5d5d6;
    display: block;
    width: 0px; }
