@charset "UTF-8";
/*
Theme Name: カムイ株式会社（2020年）
Theme URI:
Author: grafix
Author URI: https://www.gd-system.jp/
Description:
Version: 1.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
*/
/*
YUI 3.18.1 (build f7e7bcb)
Copyright 2014 Yahoo! Inc. All rights reserved.
Licensed under the BSD License.
http://yuilibrary.com/license/
*/
html {
  color: #000;
  background: #FFF;
  font-size: 10px;
  font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, textarea, p, blockquote, th, td {
  margin: 0;
  padding: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

fieldset, img {
  border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal;
}

ol, ul {
  list-style: none;
}

caption, th {
  text-align: left;
}

h1, h2, h3, h4, h5, h6 {
  font-size: 100%;
  font-weight: normal;
}

q:before, q:after {
  content: "";
}

abbr, acronym {
  border: 0;
  font-variant: normal;
}

sup {
  vertical-align: text-top;
}

sub {
  vertical-align: text-bottom;
}

input, textarea, select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  *font-size: 100%;
}

legend {
  color: #000;
}

#yui3-css-stamp.cssreset {
  display: none;
}

/* html tag */
html {
  scroll-behavior: smooth;
  scroll-padding-top: 127px;
}

body {
  word-wrap: break-word;
  word-break: break-all;
  text-justify: inter-ideograph;
  -webkit-text-size-adjust: 100%; /*text-align:justify;*/
}

a {
  color: #2e93d4;
  text-decoration: none;
  transition: 0.2s;
}

a:hover {
  text-decoration: underline;
}

img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
  vertical-align: bottom;
  transition: opacity 0.2s ease-in-out;
}

*::after,
*::before {
  vertical-align: bottom;
}

a:hover,
a:hover img {
  opacity: 0.7;
  zoom: 1;
  text-decoration: none;
}

a[href^=tel] {
  color: #000;
  cursor: text;
  pointer-events: none;
}

a[href^=tel]:hover {
  text-decoration: none;
}

a[target=_blank]::after {
  content: "\f35d";
  font-family: "FontAwesome";
  display: inline-block;
  margin-left: 5px;
  font-size: 80%;
  vertical-align: text-bottom;
}

strong {
  font-weight: bold;
}

.has-huge-font-size {
  font-size: 3rem;
  line-height: 2;
}

.has-large-font-size {
  font-size: 2.6rem;
  line-height: 2;
}

.editor-area p {
  margin: 1.5rem 0 1.5rem;
}
.editor-area ul {
  margin: 1.5rem 0 1.5rem;
  list-style-type: decimal;
  padding-left: 1.5rem;
}
.editor-area ul li ul {
  margin: 0;
  list-style-type: square;
}
.editor-area ul li ul li ul {
  list-style-type: circle;
}
.editor-area ul li ol {
  margin: 0;
}
.editor-area ol {
  margin: 1.5rem 0 1.5rem;
  list-style-type: disc;
  padding-left: 1.5rem;
}
.editor-area ol li ol {
  margin: 0;
  list-style-type: lower-alpha;
}
.editor-area ol li ol li ol {
  list-style-type: lower-latin;
}
.editor-area ol li ul {
  margin: 0;
}
.editor-area .wp-block-image {
  margin-left: auto;
  margin-right: auto;
}
.editor-area .wp-block-media-text .wp-block-media-text__content {
  padding-left: 0;
  padding-right: 0;
  align-self: start;
}
.editor-area .wp-block-table {
  margin-left: auto;
  margin-right: auto;
}
.editor-area .wp-block-table table tr th {
  border: solid 1px #000;
  padding: 5px;
  background: #efefef;
}
.editor-area .wp-block-table table tr td {
  border: solid 1px #000;
  padding: 5px;
}
.editor-area .wp-block-media-text .wp-block-media-text__media {
  margin-right: 10px;
}
.editor-area .wp-block-media-text .wp-block-media-text__content {
  margin-left: 10px;
}
.editor-area .wp-block-media-text .wp-block-media-text__content .has-large-font-size {
  font-size: 1.8rem;
  line-height: 1.5;
}
.editor-area .wp-block-media-text.has-media-on-the-right .wp-block-media-text__media {
  margin-right: 0;
  margin-left: 10px;
}
.editor-area .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
  margin-left: 0;
  margin-right: 10px;
}

.page-navi {
  padding: 140px 0 100px;
}
.page-navi .page-navi__inner {
  max-width: 748px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: initial;
  flex-wrap: wrap;
  gap: 4.28%;
}
.page-navi .page-navi__inner .content {
  flex-basis: 47.86%;
  flex-shrink: 0;
  flex-grow: 0;
  margin-bottom: 40px;
}
.page-navi .page-navi__inner .content a {
  display: block;
  color: #fff;
}
.page-navi .page-navi__inner .content .img img {
  display: block;
  margin: 0 auto;
}
.page-navi .page-navi__inner .content h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  padding: 20px 30px;
  background: #82cbde;
}

.fix-shop-header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  transform: translateY(-100%);
  z-index: 99;
  background: #dd2723;
  padding: 10px 0;
  box-sizing: border-box;
  transition: 0.2s;
}
.fix-shop-header .inner {
  display: flex;
  justify-content: space-between;
  align-items: inherit;
  flex-wrap: nowrap;
  max-width: 950px;
  margin: 0 auto;
}
.fix-shop-header .inner h1 {
  flex-basis: 309px;
  flex-shrink: 0;
  flex-grow: 0;
}
.fix-shop-header .inner .shop-contact ul {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
}
.fix-shop-header .inner .shop-contact ul li {
  min-width: 114px;
  margin-left: 10px;
}
.fix-shop-header .inner .shop-contact ul li a {
  color: #fff;
  display: block;
  background: #fff;
  color: #dd2723;
  padding: 10px;
  border-radius: 7px;
  font-size: 1.8rem;
  line-height: 1.5;
  text-align: center;
  font-weight: 700;
}
.fix-shop-header .inner .shop-contact ul li a .icon {
  width: 22px;
  display: inline-block;
}
.fix-shop-header .inner .shop-contact ul li a .tel {
  font-size: 2rem;
  line-height: 1.5;
}

body.scroll .fix-header,
body.scroll .fix-shop-header {
  transform: translateY(0);
}

body.page-template-03_shop .header-wrap .inner nav .nav ul li a::after,
body.page-template-03_shop .fix-header .inner nav .nav ul li a::after,
body.page-template-03_shop_detail .header-wrap .inner nav .nav ul li a::after,
body.page-template-03_shop_detail .fix-header .inner nav .nav ul li a::after {
  background: #dd2723;
}
.sp {
  display: none;
}

.contents-header {
  background: #82cbde;
  color: #fff;
  font-size: 3.2rem;
  line-height: 1.5;
  padding: 56px 0;
}
.contents-header .inner {
  max-width: 950px;
  margin: 0 auto;
}

.contents-grouplink {
  margin: 70px 0 0;
}
.contents-grouplink .inner {
  max-width: 945px;
  margin: 0 auto;
}
.contents-grouplink .inner ul {
  display: flex;
  justify-content: flex-start;
  align-items: flex-end;
  flex-wrap: nowrap;
  font-size: 1.4rem;
  line-height: 1.5;
}
.contents-grouplink .inner ul li {
  flex-basis: 33.333%;
  flex-shrink: 0;
  flex-grow: 0;
}
.contents-grouplink .inner ul li a {
  display: block;
  padding: 20px;
  text-align: center;
  border-bottom: solid 3px #e1e1e1;
  color: #666;
}
.contents-grouplink .inner ul li.active a {
  border-bottom-color: #82cbde;
  color: #82cbde;
}

.contents-section,
.contents-bg-section {
  margin: 0 0 100px;
}
.contents-section .inner,
.contents-bg-section .inner {
  max-width: 750px;
  margin: 0 auto;
}
.contents-section .inner h2,
.contents-bg-section .inner h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.contents-section .inner h2::after,
.contents-bg-section .inner h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.contents-section .inner .img,
.contents-bg-section .inner .img {
  margin: 0 0 60px;
}
.contents-section .inner .text,
.contents-bg-section .inner .text {
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
}
.contents-section .inner .text h3,
.contents-bg-section .inner .text h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  margin: 0 0 20px;
}
.contents-section .inner .text h4,
.contents-bg-section .inner .text h4 {
  font-weight: 700;
  margin: 0 0 10px;
}
.contents-section .inner .text p,
.contents-bg-section .inner .text p {
  margin: 0 0 1.5em;
}
.contents-section .inner .text p:last-of-type,
.contents-bg-section .inner .text p:last-of-type {
  margin-bottom: 0;
}
.contents-section .inner .text .column,
.contents-bg-section .inner .text .column {
  display: flex;
  justify-content: space-between;
  align-items: inherit;
  flex-wrap: nowrap;
}
.contents-section .inner .text .column .one,
.contents-bg-section .inner .text .column .one {
  flex-basis: 48%;
  flex-shrink: 0;
  flex-grow: 0;
}
.contents-section .inner .text .column .one .more a,
.contents-bg-section .inner .text .column .one .more a {
  display: block;
  background: #fff;
  color: #82cbde;
  border: solid 2px #82cbde;
  padding: 10px;
  text-align: center;
  font-weight: 700;
}
.contents-section .inner .table,
.contents-bg-section .inner .table {
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
}
.contents-section .inner .table table tr th,
.contents-bg-section .inner .table table tr th {
  padding: 20px;
  border: solid 1px #e4e4e0;
}
.contents-section .inner .table table tr td,
.contents-bg-section .inner .table table tr td {
  padding: 20px;
  border: solid 1px #e4e4e0;
}
.contents-section .inner .more,
.contents-bg-section .inner .more {
  margin-top: 20px;
  text-align: center;
}

body.page-template-03_shop .contents-section .inner h2::after,
body.page-template-03_shop_detail .contents-section .inner h2::after {
  background: #dd2723;
}

.contents-bg-section {
  padding: 90px 0 40px;
  background: #efefed;
  margin: 0;
}
.contents-bg-section .inner .img {
  margin: 0;
}
.contents-bg-section .inner .text {
  position: relative;
  z-index: 1;
  background: #fff;
  max-width: 750px;
  margin: 0 auto 60px;
  box-sizing: border-box;
  padding: 40px 40px;
}

.editor-style {
  font-size: 1.8rem;
  line-height: 1.5;
}
.editor-style h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.editor-style h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.editor-style h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  margin: 40px 0 20px;
  font-weight: 700;
  color: #666;
  position: relative;
  padding-left: 15px;
}
.editor-style h3::before {
  content: "";
  display: block;
  background: #82cbde;
  width: 5px;
  height: 100%;
  left: 0;
  top: 0;
  position: absolute;
}
.editor-style h4 {
  font-size: 1.8rem;
  line-height: 1.5;
  margin: 40px 0 10px;
  font-weight: 700;
  color: #666;
  border-bottom: solid 1px #82cbde;
}
.editor-style h5 {
  font-size: 1.5rem;
  line-height: 1.5;
  margin: 40px 0 10px;
  font-weight: 700;
  color: #82cbde;
}
.editor-style h6 {
  font-size: 1.3rem;
  line-height: 1.5;
  margin: 40px 0 10px;
  font-weight: 700;
  color: #666;
}
.editor-style p {
  margin: 1.5em 0 1.5em;
}
.editor-style p:first-child {
  margin-top: 0;
}
.editor-style p:last-child {
  margin-bottom: 0;
}
.editor-style ul {
  margin: 0 0 10px 1.4em;
  list-style-type: disc;
}
.editor-style ul li ul {
  margin-bottom: 0;
  list-style-type: square;
}
.editor-style ul li ul li ul {
  list-style-type: circle;
}
.editor-style ul li ol {
  margin-bottom: 0;
}
.editor-style ol {
  margin: 0 0 10px 1.4em;
  list-style-type: decimal;
}
.editor-style ol li ol {
  margin-bottom: 0;
  list-style-type: lower-roman;
}
.editor-style ol li ol li ol {
  list-style-type: lower-alpha;
}
.editor-style ol li ul {
  margin-bottom: 0;
}
.editor-style table {
  border-top: solid 3px #e4e4e0;
  width: 100%;
  box-sizing: border-box;
}
.editor-style table tr th {
  border: solid 1px #e4e4e0;
  box-sizing: border-box;
  padding: 10px;
}
.editor-style table tr td {
  border: solid 1px #e4e4e0;
  box-sizing: border-box;
  padding: 10px;
}
.editor-style table tr:nth-child(even) {
  background: #f9fafa;
}

@media screen and (max-width: 768px) {
  a[href^=tel] {
    pointer-events: auto;
  }
  html {
    scroll-padding-top: 60px;
  }
  body.fixed {
    overflow: hidden;
  }
  .fix-shop-header {
    top: inherit;
    bottom: 0;
    transform: translateY(0);
    padding: 10px 5%;
  }
  .fix-shop-header .inner {
    display: block;
    max-width: inherit;
  }
  .fix-shop-header .inner h1 {
    display: none;
  }
  .fix-shop-header .inner .shop-contact ul {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: nowrap;
  }
  .fix-shop-header .inner .shop-contact ul li {
    min-width: inherit;
    margin-left: 0;
    flex-basis: 100%;
    flex-shrink: 1;
    flex-grow: 0;
  }
  .fix-shop-header .inner .shop-contact ul li + li {
    margin-left: 10px;
  }
  .fix-shop-header .inner .shop-contact ul li a {
    padding: 10px 0;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .fix-shop-header .inner .shop-contact ul li a .menu br {
    display: none;
  }
  .fix-shop-header .inner .shop-contact ul li a .icon {
    width: 22px;
    display: inline-block;
  }
  .fix-shop-header .inner .shop-contact ul li a .telnumber {
    display: none;
  }
  body.page-template-03_shop,
  body.page-template-03_shop_detail {
    padding-bottom: 60px;
  }
  .pc {
    display: none;
  }
  .sp {
    display: block;
  }
  .contents-header {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 20px 10px;
  }
  .contents-header .inner {
    max-width: inherit;
  }
  .contents-grouplink {
    margin: 30px 5% 0;
  }
  .contents-grouplink .inner {
    max-width: inherit;
  }
  .contents-grouplink .inner ul {
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .contents-grouplink .inner ul li a {
    padding: 10px;
  }
  .contents-section,
  .contents-bg-section {
    margin: 0 0 40px;
  }
  .contents-section .inner,
  .contents-bg-section .inner {
    max-width: inherit;
    margin: 0;
  }
  .contents-section .inner h2,
  .contents-bg-section .inner h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 20px;
    margin: 0 5% 28px;
  }
  .contents-section .inner .img,
  .contents-bg-section .inner .img {
    margin: 0 0 30px;
  }
  .contents-section .inner .text,
  .contents-bg-section .inner .text {
    font-size: 1.4rem;
    line-height: 1.5;
    color: #666;
    margin: 0 5%;
  }
  .contents-section .inner .text h3,
  .contents-bg-section .inner .text h3 {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .contents-section .inner .text h4,
  .contents-bg-section .inner .text h4 {
    margin: 0 0 5px;
  }
  .contents-section .inner .text .column,
  .contents-bg-section .inner .text .column {
    display: block;
  }
  .contents-section .inner .text .column .one,
  .contents-bg-section .inner .text .column .one {
    max-width: inherit;
  }
  .contents-section .inner .text .column .one + .one,
  .contents-bg-section .inner .text .column .one + .one {
    margin-top: 30px;
  }
  .contents-section .inner .table,
  .contents-bg-section .inner .table {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .contents-section .inner .table table tr th,
  .contents-bg-section .inner .table table tr th {
    padding: 10px;
  }
  .contents-section .inner .table table tr td,
  .contents-bg-section .inner .table table tr td {
    padding: 10px;
  }
  .contents-section .inner .more,
  .contents-bg-section .inner .more {
    margin-top: 20px;
    text-align: center;
  }
  body.page-template-03_shop .contents-section .inner h2::after,
  body.page-template-03_shop_detail .contents-section .inner h2::after {
    background: #dd2723;
  }
  .contents-bg-section {
    padding: 30px 0 20px;
  }
  .contents-bg-section .inner .img {
    margin: 0;
  }
  .contents-bg-section .inner .text {
    max-width: inherit;
    margin: 0 auto 30px;
    padding: 20px 20px;
  }
  .editor-style {
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .editor-style h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    color: #000;
    padding: 0 0 35px;
    margin: 0 0 60px;
    position: relative;
    text-align: center;
  }
  .editor-style h2::after {
    content: "";
    display: block;
    width: 60px;
    height: 3px;
    background: #82cbde;
    position: absolute;
    left: 50%;
    bottom: 0;
    transform: translateX(-50%);
  }
  .editor-style h3 {
    font-size: 1.6rem;
    line-height: 1.5;
    margin: 30px 0 20px;
  }
  .editor-style h4 {
    font-size: 1.4rem;
    line-height: 1.5;
    margin: 30px 0 10px;
  }
  .editor-style h5 {
    font-size: 1.2rem;
    line-height: 1.5;
    margin: 30px 0 10px;
  }
  .editor-style h6 {
    font-size: 1rem;
    line-height: 1.5;
    margin: 30px 0 10px;
  }
  .page-navi {
    padding: 60px 5% 40px;
  }
  .page-navi .page-navi__inner {
    max-width: initial;
    margin: 0 auto;
    display: block;
  }
  .page-navi .page-navi__inner .content {
    margin-bottom: 20px;
  }
  .page-navi .page-navi__inner .content h3 {
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 10px 20px;
  }
}
body {
  padding-top: 127px;
}

.fixed-navigation {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  background: #fff;
  z-index: 9;
}

.header-wrap .inner {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-wrap: nowrap;
  max-width: 960px;
  margin: 0 auto;
}
.header-wrap .inner .header {
  flex-basis: 22.3%;
  flex-shrink: 0;
  flex-grow: 0;
}
.header-wrap .inner .header a {
  display: block;
}
.header-wrap .inner .header a img {
  display: block;
}
.header-wrap .inner .header-contact {
  display: flex;
  justify-content: flex-end;
  align-items: initial;
  flex-wrap: nowrap;
}
.header-wrap .inner .header-contact .tel a {
  background: #13007c;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  padding: 7px;
  max-width: 178px;
  margin-left: auto;
  box-sizing: border-box;
}
.header-wrap .inner .header-contact .tel a .icon {
  font-size: 1.8rem;
  line-height: 1.5;
  margin-right: 5px;
}
.header-wrap .inner .header-contact .tel a .info {
  text-align: center;
  font-weight: 700;
}
.header-wrap .inner .header-contact .tel a .info .telephone {
  display: block;
  font-size: 1.4rem;
  line-height: 1.5;
}
.header-wrap .inner .header-contact .tel a .info .time {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
}
.header-wrap .inner .header-contact .contact a {
  background: #82cbde;
  color: #fff;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  padding: 7px 15px;
  max-width: 178px;
  margin-left: auto;
  box-sizing: border-box;
  height: 100%;
}
.header-wrap .inner .header-contact .contact a .icon {
  display: block;
  font-size: 1.8rem;
  line-height: 1.5;
  margin-right: 5px;
}
.header-wrap .inner .header-contact .contact a .name {
  display: block;
  font-size: 1.4rem;
  line-height: 1.5;
}

nav {
  font-size: 1.6rem;
  line-height: 1.5;
}
nav .nav {
  max-width: 960px;
  margin: 0 auto;
}
nav .nav > ul {
  display: flex;
  justify-content: flex-start;
  align-items: inherit;
  flex-wrap: nowrap;
  margin-right: -15px;
}
nav .nav > ul > li {
  flex-basis: 100%;
  flex-shrink: 1;
  flex-grow: 0;
  text-align: center;
  position: relative;
}
nav .nav > ul > li > a {
  color: #000;
  display: block;
  padding: 16px 15px;
  position: relative;
}
nav .nav > ul > li > a::after {
  content: "";
  display: block;
  width: 100%;
  height: 7px;
  background: #13007c;
  position: absolute;
  left: 0;
  bottom: 0;
  transform: scaleX(0);
  transition: 0.2s;
}
nav .nav > ul > li > a:hover {
  opacity: 1;
}
nav .nav > ul > li > a:hover::after {
  transform: scaleX(1);
}
nav .nav > ul > li.active a::after {
  transform: scaleX(1);
}
nav .nav > ul > li .submenu {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  background: #13007c;
  color: #fff;
  z-index: 1;
  margin-top: -8px;
  scale: 1 0;
  opacity: 0;
  visibility: hidden;
  transform-origin: center top;
  transition: 0.2s;
}
nav .nav > ul > li .submenu::before {
  content: "";
  display: block;
  border: solid 7px transparent;
  border-top-color: #fff;
  position: absolute;
  left: 50%;
  top: 0;
  margin-left: -3px;
  z-index: 2;
}
nav .nav > ul > li .submenu a {
  color: #fff;
  display: block;
  padding: 10px;
}
nav .nav > ul > li .submenu ul li {
  border-top: solid 1px #fff;
}
nav .nav > ul > li:hover .submenu {
  opacity: 1;
  visibility: visible;
  scale: 1 1;
}
nav .sp-navi {
  display: none;
}

.document-no {
  background: #82cbde;
  color: #fff;
  padding: 30px 0;
}
.document-no .inner {
  max-width: 940px;
  margin: 0 auto;
  font-size: 1.3rem;
  line-height: 1.5;
  text-align: right;
}

.footer-nav .inner {
  max-width: 940px;
  margin: 0 auto;
  padding: 30px 0;
  font-size: 1.3rem;
  line-height: 1.5;
  border-bottom: solid 1px #d0d0cf;
  display: flex;
  justify-content: space-between;
  align-items: inherit;
  flex-wrap: nowrap;
}
.footer-nav .inner .company {
  flex-basis: 25%;
  flex-shrink: 0;
  flex-grow: 0;
}
.footer-nav .inner .company h3 {
  font-weight: 700;
  margin: 0 0 15px;
}
.footer-nav .inner .company .addr {
  margin: 0;
}
.footer-nav .inner .company .tel {
  margin: 0;
}
.footer-nav .inner .nav-wrap {
  flex-basis: 72%;
  flex-shrink: 0;
  flex-grow: 0;
  margin-top: 33px;
  display: flex;
  justify-content: space-between;
  align-items: inherit;
  flex-wrap: nowrap;
}
.footer-nav .inner .nav-wrap .nav1 {
  flex-basis: 48%;
  flex-shrink: 0;
  flex-grow: 0;
}
.footer-nav .inner .nav-wrap .nav1 ul {
  display: flex;
  justify-content: flex-start;
  align-items: inherit;
  flex-wrap: wrap;
}
.footer-nav .inner .nav-wrap .nav1 ul li {
  flex-basis: 33.333%;
  flex-shrink: 0;
  flex-grow: 0;
  box-sizing: border-box;
  padding: 0 10px;
  margin: 0 0 15px;
  position: relative;
}
.footer-nav .inner .nav-wrap .nav1 ul li::before {
  content: "・";
  position: absolute;
  left: -4px;
  top: 0;
}
.footer-nav .inner .nav-wrap .nav1 ul li a {
  color: #0d0e6b;
}
.footer-nav .inner .nav-wrap .nav2 {
  flex-basis: 48%;
  flex-shrink: 0;
  flex-grow: 0;
}
.footer-nav .inner .nav-wrap .nav2 ul li {
  margin: 0 0 15px;
  padding-left: 10px;
  box-sizing: border-box;
  position: relative;
}
.footer-nav .inner .nav-wrap .nav2 ul li::before {
  content: "・";
  position: absolute;
  left: -4px;
  top: 0;
}
.footer-nav .inner .nav-wrap .nav2 ul li a {
  color: #0d0e6b;
}

.footer-rule .inner {
  max-width: 940px;
  margin: 0 auto;
  padding: 30px 0;
  font-size: 1.1rem;
  line-height: 1.5;
  border-bottom: solid 1px #d0d0cf;
}
.footer-rule .inner h3 {
  font-size: 1.2rem;
  line-height: 1.5;
  margin: 0 0 10px;
}
.footer-rule .inner ul {
  display: flex;
  justify-content: flex-start;
  align-items: inhrit;
  flex-wrap: wrap;
}
.footer-rule .inner ul li {
  margin-right: 1em;
}
.footer-rule .inner ul li a {
  display: block;
  color: #000;
}
.footer-rule .inner ul li a::before {
  content: "・";
  display: inline-block;
}

.copyright {
  padding: 30px 0;
}
.copyright .inner {
  max-width: 940px;
  margin: 0 auto;
  font-size: 1.2rem;
  line-height: 1.5;
  text-align: center;
}

body.page-template-03_shop .document-no,
body.page-template-03_shop_detail .document-no {
  background: #dd2723;
}

.bx-wrapper .bx-viewport {
  box-shadow: none;
  border: none;
  left: 0;
  background: transparent;
}

@media screen and (max-width: 768px) {
  body {
    padding-top: 60px;
  }
  body.fixed {
    overflow: hidden;
  }
  .header-wrap {
    padding: 8px 0 12px 15px;
    position: relative;
  }
  .header-wrap .inner {
    max-width: inherit;
    margin: 0;
    display: block;
  }
  .header-wrap .inner .header a img {
    width: auto;
    height: 40px;
  }
  .header-wrap .inner .header-contact .tel a {
    display: none;
  }
  .header-wrap .inner .header-contact .contact {
    display: none;
  }
  nav .nav {
    display: none;
  }
  nav .nav ul {
    display: none;
  }
  nav .sp-navi {
    display: block;
  }
  nav .sp-navi .sp-nav {
    position: absolute;
    right: 0;
    top: 8px;
    width: 40px;
    height: 40px;
    z-index: 100;
  }
  nav .sp-navi .sp-nav span {
    display: block;
    background: #85abd1;
    height: 3px;
    position: absolute;
    left: 10px;
    right: 10px;
    transition: 0.2s;
  }
  nav .sp-navi .sp-nav span:nth-of-type(1) {
    top: 12px;
  }
  nav .sp-navi .sp-nav span:nth-of-type(2) {
    top: 19px;
  }
  nav .sp-navi .sp-nav span:nth-of-type(3) {
    top: 26px;
  }
  nav .sp-navi .sp-nav.active span {
    background: #dd2723;
  }
  nav .sp-navi .sp-nav.active span:nth-of-type(1) {
    top: 19px;
    transform: rotate(-45deg);
  }
  nav .sp-navi .sp-nav.active span:nth-of-type(2) {
    transform: scale(0);
  }
  nav .sp-navi .sp-nav.active span:nth-of-type(3) {
    top: 19px;
    transform: rotate(45deg);
  }
  nav .sp-navi .sp-nav.active + .sp-menu {
    translate: 0;
  }
  nav .sp-navi .sp-menu {
    position: fixed;
    top: 50px;
    left: 0;
    right: 0;
    bottom: 0;
    background: #fff;
    z-index: 1;
    padding: 0 4.6875vw 20px;
    overflow-y: auto;
    transition: 0.2s;
    translate: 100% 0;
  }
  nav .sp-navi .sp-menu .sp-contact .tel {
    margin: 20px 0;
  }
  nav .sp-navi .sp-menu .sp-contact .tel a {
    background: #13007c;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    padding: 7px;
    box-sizing: border-box;
  }
  nav .sp-navi .sp-menu .sp-contact .tel a .icon {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-right: 5px;
  }
  nav .sp-navi .sp-menu .sp-contact .tel a .info {
    text-align: center;
    font-weight: 700;
  }
  nav .sp-navi .sp-menu .sp-contact .tel a .info .telephone {
    display: block;
  }
  nav .sp-navi .sp-menu .sp-contact .tel a .info .time {
    display: block;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  nav .sp-navi .sp-menu .sp-contact .contact {
    margin: 20px 0;
  }
  nav .sp-navi .sp-menu .sp-contact .contact a {
    background: #82cbde;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    padding: 7px 15px;
    box-sizing: border-box;
  }
  nav .sp-navi .sp-menu .sp-contact .contact a .icon {
    display: block;
    margin-right: 5px;
  }
  nav .sp-navi .sp-menu .sp-contact .contact a .name {
    display: block;
    font-size: 1.2rem;
    line-height: 1.5;
  }
  nav .sp-navi .sp-menu > ul > li {
    text-align: center;
    position: relative;
  }
  nav .sp-navi .sp-menu > ul > li > a {
    color: #000;
    display: block;
    padding: 16px 15px;
    position: relative;
  }
  nav .sp-navi .sp-menu > ul > li > a::after {
    content: "";
    display: block;
    width: 100%;
    height: 7px;
    background: #13007c;
    position: absolute;
    left: 0;
    bottom: 0;
    transform: scaleX(0);
    transition: 0.2s;
  }
  nav .sp-navi .sp-menu > ul > li > a:hover {
    opacity: 1;
  }
  nav .sp-navi .sp-menu > ul > li > a:hover::after {
    transform: scaleX(1);
  }
  nav .sp-navi .sp-menu > ul > li.active a::after {
    transform: scaleX(1);
  }
  .document-no {
    padding: 20px 7.5%;
  }
  .document-no .inner {
    max-width: inherit;
    font-size: 1.1rem;
    line-height: 1.5;
  }
  .footer-nav {
    padding: 0 7.5%;
  }
  .footer-nav .inner {
    max-width: inherit;
    display: block;
    padding: 0;
    border: none;
  }
  .footer-nav .inner .company {
    display: none;
  }
  .footer-nav .inner .nav-wrap {
    max-width: inherit;
    margin-top: 0;
    display: block;
  }
  .footer-nav .inner .nav-wrap .nav1 {
    display: none;
  }
  .footer-nav .inner .nav-wrap .nav2 {
    max-width: inherit;
  }
  .footer-nav .inner .nav-wrap .nav2 ul li {
    margin: 0;
    padding: 0;
    border-bottom: solid 1px #d0d0cf;
  }
  .footer-nav .inner .nav-wrap .nav2 ul li::before {
    display: none;
  }
  .footer-nav .inner .nav-wrap .nav2 ul li a {
    color: #828282;
    display: block;
    padding: 10px 15px 10px 0;
    position: relative;
  }
  .footer-nav .inner .nav-wrap .nav2 ul li a::after {
    content: "";
    display: block;
    width: 5px;
    height: 5px;
    border-top: solid 1px #828282;
    border-right: solid 1px #828282;
    transform: rotate(45deg) translate(-50%, -50%);
    position: absolute;
    right: 0;
    top: 50%;
  }
  .footer-rule {
    padding: 0 7.5%;
    background: #f4f4f2;
  }
  .footer-rule .inner {
    max-width: inherit;
    padding: 20px 0 20px;
    font-size: 1.1rem;
    line-height: 1.5;
    color: #828282;
  }
  .footer-rule .inner h3 {
    font-size: 1.2rem;
    line-height: 1.5;
    color: #828282;
  }
  .copyright {
    padding: 20px 0;
    font-size: 1rem;
    line-height: 1.5;
    color: #828282;
    background: #f4f4f2;
  }
  .copyright .inner {
    max-width: inherit;
  }
  body.page-template-03_shop .document-no,
  body.page-template-03_shop_detail .document-no {
    background: #dd2723;
  }
}
.front-slider .inner ul li {
  text-align: center;
}
.front-slider .inner ul li img {
  margin: 0 auto;
}
.front-slider .inner ul li:nth-of-type(n+2) {
  display: none;
}
.front-slider .inner .bx-wrapper .bx-viewport ul li:nth-of-type(n+2) {
  display: block;
}

.front-news {
  padding: 90px 0 40px;
}
.front-news .inner {
  max-width: 800px;
  margin: 0 auto;
}
.front-news .inner h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.front-news .inner h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.front-news .inner .archive .single {
  border-bottom: solid 1px #efefed;
}
.front-news .inner .archive .single a {
  color: #333;
  padding: 30px 0;
  display: block;
}
.front-news .inner .archive .single a .date {
  font-size: 1.2rem;
  line-height: 1.5;
  margin: 0 0 10px;
}
.front-news .inner .archive .single a h3 {
  font-size: 2rem;
  line-height: 1.5;
  font-weight: 700;
}
.front-news .inner .archive .single a:hover {
  background: #f5f5f5;
}
.front-news .inner .more {
  padding: 30px 0;
  text-align: center;
}
.front-news .inner .more a {
  display: inline-block;
  padding: 10px 30px;
  font-size: 1.3rem;
  line-height: 1.5;
  font-weight: 700;
  color: #508ac4;
  background: #efefed;
  border: solid 1px #508ac4;
}
.front-news .inner .more a:hover {
  background: #fff;
}

.front-business {
  position: relative;
}
.front-business h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  color: #000;
  padding: 90px 0 95px;
  position: relative;
  text-align: center;
  background: #efefed;
}
.front-business h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 60px;
  transform: translateX(-50%);
}
.front-business .bg {
  width: 100%;
}
.front-business .inner {
  max-width: 940px;
  margin: -50px auto 0;
  padding: 0 0 30px;
}
.front-business .inner .archive {
  display: flex;
  justify-content: center;
  align-items: inherit;
  flex-wrap: nowrap;
  margin: 0 0 30px;
}
.front-business .inner .archive .single {
  flex-basis: 30%;
  flex-shrink: 0;
  flex-grow: 0;
  color: #666;
  background: #fff;
  padding: 0 0 40px;
  box-sizing: border-box;
  background: #efefed;
  margin-left: 5%;
}
.front-business .inner .archive .single:nth-of-type(3n+1) {
  margin-left: 0;
}
.front-business .inner .archive .single h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  min-height: 3em;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  text-align: center;
  margin: 40px 30px 30px;
}
.front-business .inner .archive .single h3 img {
  flex-shrink: 0;
}
.front-business .inner .archive .single .text {
  font-size: 1.8rem;
  line-height: 1.5;
  margin: 0 30px;
}
.front-business .inner .more {
  padding: 30px 0;
  text-align: center;
}
.front-business .inner .more a {
  display: inline-block;
  padding: 10px 30px;
  font-size: 1.3rem;
  line-height: 1.5;
  font-weight: 700;
  color: #508ac4;
  background: #efefed;
  border: solid 1px #508ac4;
}
.front-business .inner .more a:hover {
  background: #fff;
}

.front-pagelink {
  padding: 114px 0;
}
.front-pagelink .inner {
  max-width: 578px;
  margin: 0 auto;
}
.front-pagelink .inner ul {
  display: flex;
  justify-content: space-between;
  align-items: inherit;
  flex-wrap: nowrap;
}
.front-pagelink .inner ul li {
  flex-basis: 16.3%;
  flex-shrink: 0;
  flex-grow: 0;
}
.front-pagelink .inner ul li a {
  display: block;
  color: #666;
  text-align: center;
}
.front-pagelink .inner ul li a .img {
  margin: 0 0 10px;
}
.front-pagelink .inner ul li a h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
}

.front-navigation {
  padding: 120px 0 40px;
}
.front-navigation .front-navigation__inner {
  display: flex;
  justify-content: space-between;
  align-items: initial;
  flex-wrap: nowrap;
  max-width: 916px;
  margin: 0 auto;
}
.front-navigation .front-navigation__content {
  flex-basis: 31%;
  flex-shrink: 0;
  flex-grow: 0;
  padding: 46px 30px 54px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  box-sizing: border-box;
}
.front-navigation .front-navigation__content:nth-of-type(3n+1) {
  background: #fadcdc;
  border: solid 2px #c1272d;
}
.front-navigation .front-navigation__content:nth-of-type(3n+2) {
  background: #c9dbed;
  border: solid 2px #508ac4;
}
.front-navigation .front-navigation__content:nth-of-type(3n+3) {
  background: #dfefc9;
  border: solid 2px #8cc63f;
}
.front-navigation .front-navigation__content h2 {
  font-size: 3rem;
  line-height: 1.5;
  font-weight: 700;
  color: #000;
  text-align: center;
  line-height: 50px;
  margin-bottom: 30px;
}
.front-navigation .front-navigation__content .text {
  height: 4.5em;
}
.front-navigation .front-navigation__content .link {
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 30px;
}
.front-navigation .front-navigation__content .link a {
  color: #508ac4;
  border: solid 1px #508ac4;
  background: #fff;
  text-align: center;
  display: block;
  padding: 10px;
}

.front-events {
  padding: 90px 0 40px;
}
.front-events .inner {
  max-width: 960px;
  margin: 0 auto;
}
.front-events .inner h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.front-events .inner h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.front-events .inner .archive {
  display: flex;
  justify-content: center;
  align-items: initial;
  flex-wrap: nowrap;
  gap: 1em;
}
.front-events .inner .archive .single {
  text-align: center;
}
.front-events .inner .archive .single a {
  display: block;
  color: #000;
}
.front-events .inner .archive .single .img img {
  display: block;
  width: auto;
  max-height: 500px;
  margin: 0 auto;
}
.front-events .inner .archive .single h3 {
  font-size: 1.4rem;
  line-height: 1.5;
}

@media screen and (max-width: 768px) {
  .front-slider .inner ul li:nth-of-type(n+2) {
    display: none;
  }
  .front-slider .inner .bx-wrapper .bx-viewport ul li:nth-of-type(n+2) {
    display: block;
  }
  .front-news {
    padding: 10px 5% 40px;
  }
  .front-news .inner {
    max-width: inherit;
  }
  .front-news .inner h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 20px;
    margin: 0 0 28px;
  }
  .front-news .inner .archive {
    border-top: solid 1px #efefed;
  }
  .front-news .inner .archive .single a {
    padding: 40px 0;
  }
  .front-news .inner .archive .single a .date {
    font-size: 1.2rem;
    line-height: 1.5;
  }
  .front-news .inner .archive .single a h3 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .front-news .inner .more a {
    font-size: 1.3rem;
    line-height: 1.5;
    display: block;
  }
  .front-business {
    padding-top: 40px;
  }
  .front-business h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 20px 0 48px;
    margin: 0;
  }
  .front-business h2::after {
    bottom: 28px;
  }
  .front-business .bg {
    width: 100%;
  }
  .front-business .inner {
    max-width: inherit;
    margin: -50px auto 0;
    padding: 0 5% 10px;
    position: relative;
  }
  .front-business .inner .archive {
    display: block;
    margin: 0 0 10px;
  }
  .front-business .inner .archive .single {
    max-width: inherit;
    padding: 0 0 20px;
    margin: 0 0 30px;
  }
  .front-business .inner .archive .single h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    min-height: inherit;
    padding: 10px 10px 10px;
    margin: 0;
  }
  .front-business .inner .archive .single h3 img {
    height: 41px;
  }
  .front-business .inner .archive .single h3.img {
    margin: 0 0 20px;
  }
  .front-business .inner .archive .single .text {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .front-business .inner .more {
    padding: 0 0 40px;
  }
  .front-business .inner .more a {
    font-size: 1.3rem;
    line-height: 1.5;
    display: block;
  }
  .front-pagelink {
    padding: 30px 10px 0;
  }
  .front-pagelink .inner {
    max-width: inherit;
  }
  .front-pagelink .inner ul {
    display: flex;
    justify-content: space-between;
    align-items: inherit;
    flex-wrap: wrap;
  }
  .front-pagelink .inner ul li {
    flex-basis: 50%;
    flex-shrink: 0;
    flex-grow: 0;
    margin: 0 0 30px;
  }
  .front-pagelink .inner ul li a .img {
    max-width: 42px;
    margin: 0 auto 10px;
  }
  .front-pagelink .inner ul li a h3 {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .front-navigation {
    padding: 10px 5% 40px;
  }
  .front-navigation .front-navigation__inner {
    display: block;
    max-width: initial;
  }
  .front-navigation .front-navigation__content {
    padding: 12px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .front-navigation .front-navigation__content + .front-navigation__content {
    margin-top: 20px;
  }
  .front-navigation .front-navigation__content h2 {
    font-size: 2rem;
    line-height: 1.5;
    line-height: 35px;
    margin-bottom: 15px;
  }
  .front-navigation .front-navigation__content .text {
    height: auto;
  }
  .front-navigation .front-navigation__content .link {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-top: 15px;
  }
  .front-events {
    padding: 10px 5% 40px;
  }
  .front-events .inner {
    max-width: 960px;
    margin: 0 auto;
  }
  .front-events .inner h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 20px;
    margin: 0 0 28px;
  }
}
.inscom-text {
  padding-top: 100px;
}

.inscom-hokennomadoguchi {
  padding-top: 0;
}
.inscom-hokennomadoguchi .head {
  background: #dd2723;
  height: 330px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
}
.inscom-hokennomadoguchi .head h2 {
  flex-basis: 462px;
  flex-shrink: 0;
  flex-grow: 0;
}
.inscom-hokennomadoguchi .inner {
  background: #fff;
  padding: 40px;
  box-sizing: border-box;
  margin-top: -60px;
  font-size: 1.8rem;
  line-height: 1.5;
}
.inscom-hokennomadoguchi .inner ul {
  display: flex;
  justify-content: flex-start;
  align-items: inherit;
  flex-wrap: wrap;
}
.inscom-hokennomadoguchi .inner ul li {
  flex-basis: 50%;
  flex-shrink: 0;
  flex-grow: 0;
  padding-right: 10px;
  box-sizing: border-box;
}
.inscom-hokennomadoguchi .inner .more {
  margin: 30px 0 0;
  text-align: center;
}
.inscom-hokennomadoguchi .inner .more a {
  display: inline-block;
  background: #dd2723;
  color: #fff;
  padding: 12px 48px;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 700;
}

.inscom-other {
  padding: 60px 0 160px;
}
.inscom-other .head {
  height: 28vw;
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  z-index: 0;
}
.inscom-other .head h2 {
  font-size: 4.2rem;
  line-height: 1.5;
  color: #fff;
  position: relative;
  z-index: 1;
  text-shadow: 0 0 5px #000;
}
.inscom-other .head .bg {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 0;
}
.inscom-other .head .bg img {
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.inscom-other .inner {
  margin-top: -60px;
  position: relative;
  z-index: 1;
}
.inscom-other .inner .list {
  background: #fff;
  flex-basis: 48.9%;
  flex-shrink: 0;
  flex-grow: 0;
  padding: 38px;
  box-sizing: border-box;
}
.inscom-other .inner .list h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  margin: 0 0 25px;
}
.inscom-other .inner .list ul {
  font-size: 1.8rem;
  line-height: 1.5;
}
.inscom-other .inner .list ul li {
  padding-left: 1em;
  position: relative;
}
.inscom-other .inner .list ul li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
.inscom-other .inner .list .foot {
  text-align: right;
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
}
.inscom-other .inner .insurance-wrap {
  background: #fff;
}
.inscom-other .inner .insurance-wrap .subhead {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
  padding: 40px 30px 20px;
}
.inscom-other .inner .insurance-wrap .subhead h3 {
  margin: 0;
}
.inscom-other .inner .insurance-wrap .subhead .num {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
}

.insurance-wrap {
  margin-bottom: 60px;
}
.insurance-wrap h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  margin: 0 0 25px;
}
.insurance-wrap ul {
  display: flex;
  justify-content: flex-start;
  align-items: initial;
  flex-wrap: wrap;
  border-top: solid 1px #e4e4e0;
  border-left: solid 1px #e4e4e0;
}
.insurance-wrap ul li {
  flex-basis: 50%;
  flex-shrink: 0;
  flex-grow: 0;
  border-right: solid 1px #e4e4e0;
  border-bottom: solid 1px #e4e4e0;
  box-sizing: border-box;
}
.insurance-wrap ul li a {
  color: #666;
  font-weight: 700;
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.5;
  padding: 0 20px;
  height: 138px;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
}
.insurance-wrap ul li a::after {
  display: none;
}
.insurance-wrap ul li a:has(img) span.name {
  display: none;
}

@media screen and (max-width: 768px) {
  .inscom-text {
    padding-top: 40px;
  }
  .inscom-hokennomadoguchi {
    margin: 0;
  }
  .inscom-hokennomadoguchi .head {
    height: auto;
    padding: 20px 20px 40px;
  }
  .inscom-hokennomadoguchi .head h2 {
    flex-basis: 154px;
    flex-shrink: 0;
    flex-grow: 0;
  }
  .inscom-hokennomadoguchi .inner {
    padding: 20px;
    margin: -20px 5% 0;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .inscom-hokennomadoguchi .inner ul {
    display: block;
  }
  .inscom-hokennomadoguchi .inner ul li {
    max-width: inherit;
    padding-right: 0;
  }
  .inscom-hokennomadoguchi .inner .more {
    margin: 20px 0 0;
  }
  .inscom-hokennomadoguchi .inner .more a {
    padding: 12px 48px;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .inscom-other {
    padding: 30px 0 30px;
    margin: 0;
  }
  .inscom-other .head {
    height: 28vw;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: nowrap;
    z-index: 0;
  }
  .inscom-other .head h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    color: #fff;
    position: relative;
    z-index: 1;
  }
  .inscom-other .head .bg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    z-index: 0;
  }
  .inscom-other .head .bg img {
    -o-object-fit: cover;
       object-fit: cover;
    width: 100%;
    height: 100%;
  }
  .inscom-other .inner {
    display: block;
    margin: -20px 5% 0;
  }
  .inscom-other .inner .list {
    max-width: inherit;
    padding: 20px;
    margin: 0 0 20px;
  }
  .inscom-other .inner .list h3 {
    font-size: 1.6rem;
    line-height: 1.5;
    margin: 0 0 10px;
  }
  .inscom-other .inner .list ul {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .inscom-other .inner .list .foot {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .inscom-other .inner .insurance-wrap .subhead {
    padding: 20px 10px 10px;
  }
  .inscom-other .inner .insurance-wrap .subhead .num {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .insurance-wrap {
    margin: 0 5% 30px;
  }
  .insurance-wrap h3 {
    font-size: 1.6rem;
    line-height: 1.5;
    margin: 0 0 10px;
  }
  .insurance-wrap ul {
    display: block;
  }
  .insurance-wrap ul li a {
    font-size: 1.4rem;
    line-height: 1.5;
    padding: 15px 6.25vw;
    height: auto;
    display: block;
    text-align: center;
  }
}
.business-catch {
  padding: 90px 0 0;
  margin: 0 0 100px;
}
.business-catch .inner {
  font-size: 3.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #000;
  text-align: center;
}

.business-contents .inner .text {
  margin: -50px auto 60px;
}

@media screen and (max-width: 768px) {
  .business-catch {
    padding: 30px 0 0;
    margin: 0 0 30px;
  }
  .business-catch .inner {
    font-size: 2.2rem;
    line-height: 1.5;
  }
  .business-contents {
    margin-bottom: 0;
  }
  .business-contents .inner .text {
    margin: -50px 5% 30px;
  }
}
.company-origin {
  padding-top: 90px;
}

.company-informations.contents-bg-section .inner .text {
  padding: 0;
  background: transparent;
}
.company-informations.contents-bg-section .inner .text .column {
  margin: 0 0 40px;
}

.company-career {
  padding: 90px;
}
.company-career .inner .table {
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
}
.company-career .inner .table table {
  border-top: solid 3px #e4e4e0;
  width: 100%;
}
.company-career .inner .table table tr {
  border-bottom: solid 1px #e4e4e0;
}
.company-career .inner .table table tr th {
  border-left: none;
  width: 170px;
  box-sizing: border-box;
  position: relative;
  padding-left: 26px;
}
.company-career .inner .table table tr th::before {
  content: "";
  display: block;
  width: 6px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #13007c;
}
.company-career .inner .table table tr:nth-child(even) {
  background: #f9fafa;
}

@media screen and (max-width: 768px) {
  .company-origin {
    padding-top: 40px;
  }
  .company-informations.contents-bg-section .inner .text {
    padding: 0 5%;
  }
  .company-informations.contents-bg-section .inner .text .column {
    margin: 0 0 20px;
  }
  .company-career {
    padding: 0 10px;
  }
  .company-career .inner .table {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .company-career .inner .table .year {
    display: block;
  }
  .company-career .inner .table .month {
    display: block;
  }
  .company-career .inner .table table tr th {
    width: inherit;
    white-space: nowrap;
  }
}
body.page-template-03_shop .contents-header,
body.page-template-03_shop_detail .contents-header {
  background: #dd2723;
  padding: 10px 0;
}
body.page-template-03_shop .contents-header .inner h1,
body.page-template-03_shop_detail .contents-header .inner h1 {
  max-width: 309px;
}
body.page-template-03_shop .contents-header.shop-header .inner,
body.page-template-03_shop_detail .contents-header.shop-header .inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
}
body.page-template-03_shop .contents-header.shop-header .inner h1,
body.page-template-03_shop_detail .contents-header.shop-header .inner h1 {
  flex-basis: 309px;
  flex-shrink: 0;
  flex-grow: 0;
}
body.page-template-03_shop .contents-header.shop-header .inner .shop-contact ul,
body.page-template-03_shop_detail .contents-header.shop-header .inner .shop-contact ul {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
}
body.page-template-03_shop .contents-header.shop-header .inner .shop-contact ul li,
body.page-template-03_shop_detail .contents-header.shop-header .inner .shop-contact ul li {
  min-width: 114px;
  margin-left: 10px;
}
body.page-template-03_shop .contents-header.shop-header .inner .shop-contact ul li a,
body.page-template-03_shop_detail .contents-header.shop-header .inner .shop-contact ul li a {
  color: #fff;
  display: block;
  background: #fff;
  color: #dd2723;
  padding: 10px;
  border-radius: 7px;
  font-size: 1.8rem;
  line-height: 1.5;
  text-align: center;
  font-weight: 700;
}
body.page-template-03_shop .contents-header.shop-header .inner .shop-contact ul li a .icon,
body.page-template-03_shop_detail .contents-header.shop-header .inner .shop-contact ul li a .icon {
  width: 22px;
  display: inline-block;
}
body.page-template-03_shop .contents-header.shop-header .inner .shop-contact ul li a .tel,
body.page-template-03_shop_detail .contents-header.shop-header .inner .shop-contact ul li a .tel {
  font-size: 2rem;
  line-height: 1.5;
}
body.page-template-03_shop .contents-header.shop-header .inner .shop-contact ul li a[target=_blank]::after,
body.page-template-03_shop_detail .contents-header.shop-header .inner .shop-contact ul li a[target=_blank]::after {
  display: none;
}

.shop-list .inner .text .column {
  padding: 0 0 30px;
  margin: 0 0 30px;
  border-bottom: solid 1px #666;
}
.shop-list .inner .text .column:last-of-type {
  border-bottom: none;
}
.shop-list .inner .text .column .one {
  position: relative;
}
.shop-list .inner .text .column .one a {
  display: flex;
  justify-content: space-between;
  align-items: inherit;
  flex-wrap: nowrap;
  color: #666;
}
.shop-list .inner .text .column .one a:hover {
  opacity: 1;
}
.shop-list .inner .text .column .one a:hover .data .link {
  text-decoration: underline;
}
.shop-list .inner .text .column .one .img {
  flex-basis: 54%;
  flex-shrink: 0;
  flex-grow: 0;
  margin: 0;
}
.shop-list .inner .text .column .one .data {
  flex-basis: 41%;
  flex-shrink: 0;
  flex-grow: 0;
  display: flex;
  justify-content: space-between;
  align-items: inherit;
  flex-wrap: nowrap;
  flex-direction: column;
}
.shop-list .inner .text .column .one .data .link {
  color: #29a8df;
}
.shop-list .inner .text .column .one:nth-of-type(2)::before {
  content: "";
  display: block;
  width: 1px;
  height: 100%;
  background: #666;
  position: absolute;
  left: -18px;
  top: 0;
}

.shop-detail {
  margin-bottom: 60px;
  padding-top: 90px;
}
.shop-detail .inner .facility {
  margin: 0 0 40px;
}
.shop-detail .inner .facility h3 {
  font-size: 2rem;
  line-height: 1.5;
  color: #dd2723;
  font-weight: 700;
  margin: 0 0 5px;
}
.shop-detail .inner .facility ul {
  display: flex;
  justify-content: flex-start;
  align-items: inherit;
  flex-wrap: wrap;
}
.shop-detail .inner .facility ul li {
  flex-basis: 25%;
  flex-shrink: 0;
  flex-grow: 0;
  margin: 0 0 5px;
  padding-right: 10px;
  box-sizing: border-box;
  font-size: 1.8rem;
  line-height: 1.5;
}
.shop-detail .inner .facility ul li::before {
  content: "";
  display: inline-block;
  width: 20px;
  height: 20px;
  background: url(img/icon_check.png) no-repeat left top;
  background-size: cover;
  margin-right: 10px;
}
.shop-detail .inner .map {
  margin: 0 0 40px;
}
.shop-detail .inner .map h3 {
  font-size: 2rem;
  line-height: 1.5;
  color: #dd2723;
  font-weight: 700;
  margin: 0 0 5px;
}
.shop-detail .inner .map .map-wrap {
  padding-top: 440px;
  position: relative;
}
.shop-detail .inner .map .map-wrap iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.shop-detail .inner .table {
  font-size: 1.8rem;
  line-height: 1.5;
  color: #000;
}
.shop-detail .inner .table table {
  width: 100%;
}
.shop-detail .inner .table table tr th {
  padding: 5px 15px;
  box-sizing: border-box;
  border: solid 1px #ddd;
  width: 120px;
  background: #f5f5f5;
  text-align: center;
}
.shop-detail .inner .table table tr td {
  padding: 5px 15px;
  box-sizing: border-box;
  border: solid 1px #ddd;
}
.shop-detail .shop-text {
  position: relative;
  margin: 110px 0 100px;
}
.shop-detail .shop-text::before {
  content: "";
  width: 80%;
  height: calc(100% - 70px);
  background: #dd2723;
  display: block;
  position: absolute;
  left: 0;
  top: 70px;
  z-index: 0;
}
.shop-detail .shop-text .inner {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  flex-wrap: nowrap;
  position: relative;
  z-index: 1;
}
.shop-detail .shop-text .inner .slider {
  flex-basis: 50%;
  flex-shrink: 0;
  flex-grow: 0;
  order: 2;
}
.shop-detail .shop-text .inner .slider .bx-wrapper .bx-pager.bx-default-pager a {
  background: #fff;
}
.shop-detail .shop-text .inner .slider .bx-wrapper .bx-pager.bx-default-pager a.active {
  background: #000;
}
.shop-detail .shop-text .inner .text {
  flex-basis: 50%;
  flex-shrink: 0;
  flex-grow: 0;
  order: 1;
}
.shop-detail .shop-text .inner .text .text-inner {
  margin: 70px 0 0;
  padding: 80px 60px 30px 0;
  color: #fff;
}
.shop-detail .other-shop {
  background: #f1f1f1;
  padding: 40px 0 100px;
}
.shop-detail .other-shop .inner {
  display: flex;
  justify-content: flex-start;
  align-items: inherit;
  flex-wrap: wrap;
  max-width: 750px;
  margin: 0 auto;
}
.shop-detail .other-shop .inner .shop {
  flex-basis: 23.2%;
  flex-shrink: 0;
  flex-grow: 0;
  margin: 0 0 20px 2.4%;
}
.shop-detail .other-shop .inner .shop:nth-of-type(4n+1) {
  margin-left: 0;
}
.shop-detail .other-shop .inner .shop .img {
  margin: 0;
}
.shop-detail .other-shop .inner .shop h2 {
  font-size: 1.5rem;
  line-height: 1.5;
  font-weight: 400;
  color: #000;
  margin: 0 0 10px;
  text-align: left;
  padding: 0;
}
.shop-detail .other-shop .inner .shop h2 span {
  display: inline-block;
  padding: 5px;
  background: #fff;
  border-radius: 10px;
}
.shop-detail .other-shop .inner .shop h2::after {
  display: none;
}
.shop-detail .other-shop .inner .shop .text {
  padding: 15px;
  background: #dd2723;
  font-size: 1.5rem;
  line-height: 1.5;
  color: #fff;
}
.shop-detail .other-shop .link {
  margin: 40px 0 0;
  text-align: center;
}
.shop-detail .other-shop .link a {
  display: inline-block;
  font-size: 1.4rem;
  line-height: 1.5;
  background: #dd2723;
  color: #fff;
  padding: 12px 48px;
  border-radius: 3px;
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  body.page-template-03_shop .contents-header,
  body.page-template-03_shop_detail .contents-header {
    background: #dd2723;
    padding: 10px 0;
  }
  body.page-template-03_shop .contents-header .inner,
  body.page-template-03_shop_detail .contents-header .inner {
    padding: 0 5%;
  }
  body.page-template-03_shop .contents-header .inner h1,
  body.page-template-03_shop_detail .contents-header .inner h1 {
    max-width: 154px;
  }
  body.page-template-03_shop .contents-header.shop-header .inner h1,
  body.page-template-03_shop_detail .contents-header.shop-header .inner h1 {
    flex-basis: 154px;
    flex-shrink: 0;
    flex-grow: 0;
  }
  body.page-template-03_shop .contents-header.shop-header .inner .shop-contact,
  body.page-template-03_shop_detail .contents-header.shop-header .inner .shop-contact {
    display: none;
  }
  .shop-list .inner .text .column {
    padding: 0;
    margin: 0 0 20px;
    border-bottom: none;
    display: flex;
    justify-content: space-between;
    align-items: inherit;
    flex-wrap: nowrap;
  }
  .shop-list .inner .text .column:last-of-type {
    border-bottom: none;
  }
  .shop-list .inner .text .column .one {
    flex-basis: 48%;
    flex-shrink: 0;
    flex-grow: 0;
    border-bottom: solid 1px #666;
  }
  .shop-list .inner .text .column .one a {
    display: block;
    padding: 0 0 20px;
  }
  .shop-list .inner .text .column .one .img {
    max-width: inherit;
    margin: 0 0 5px;
  }
  .shop-list .inner .text .column .one .data {
    max-width: inherit;
    display: block;
  }
  .shop-list .inner .text .column .one:nth-of-type(2)::before {
    display: none;
  }
  .shop-list .inner .text .column .one + .one {
    margin-top: 0;
  }
  .shop-detail {
    margin-bottom: 30px;
    padding: 30px 0 0;
  }
  .shop-detail .inner {
    padding: 0 5%;
  }
  .shop-detail .inner .facility {
    margin: 0 0 40px;
  }
  .shop-detail .inner .facility h3 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .shop-detail .inner .facility ul {
    display: flex;
    justify-content: space-between;
    align-items: inherit;
    flex-wrap: wrap;
  }
  .shop-detail .inner .facility ul li {
    flex-basis: 48%;
    flex-shrink: 0;
    flex-grow: 0;
    margin: 0 0 5px;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .shop-detail .inner .facility ul li::before {
    width: 15px;
    height: 15px;
  }
  .shop-detail .inner .map {
    margin: 0 0 40px;
  }
  .shop-detail .inner .map h3 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .shop-detail .inner .map .map-wrap {
    padding-top: 200px;
  }
  .shop-detail .inner .table {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .shop-detail .inner .table table tr th {
    padding: 5px 5px;
    width: 100px;
  }
  .shop-detail .inner .table table tr td {
    padding: 5px 5px;
  }
  .shop-detail .shop-text {
    margin: 30px 0 30px;
    background: #dd2723;
    padding: 30px 5%;
  }
  .shop-detail .shop-text::before {
    display: none;
  }
  .shop-detail .shop-text .inner {
    display: block;
    padding: 0;
  }
  .shop-detail .shop-text .inner .slider {
    max-width: inherit;
  }
  .shop-detail .shop-text .inner .slider .bx-wrapper .bx-pager.bx-default-pager a {
    background: #fff;
  }
  .shop-detail .shop-text .inner .slider .bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #000;
  }
  .shop-detail .shop-text .inner .text {
    max-width: inherit;
    margin: 0;
  }
  .shop-detail .shop-text .inner .text .text-inner {
    margin: 0;
    padding: 0;
    color: #fff;
  }
  .shop-detail .other-shop {
    padding: 30px 0 30px;
  }
  .shop-detail .other-shop .inner {
    display: flex;
    justify-content: space-between;
    align-items: inherit;
    flex-wrap: wrap;
    max-width: inherit;
  }
  .shop-detail .other-shop .inner .shop {
    flex-basis: 48%;
    flex-shrink: 0;
    flex-grow: 0;
    margin: 0 0 20px;
  }
  .shop-detail .other-shop .inner .shop h2 {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .shop-detail .other-shop .inner .shop .text {
    padding: 10px;
    font-size: 1.3rem;
    line-height: 1.5;
    margin: 0;
  }
  .shop-detail .other-shop .link {
    margin: 0 5%;
  }
  .shop-detail .other-shop .link a {
    font-size: 1.3rem;
    line-height: 1.5;
    display: block;
  }
}
@media screen and (max-width: 768px) {
  body.page-template-03_shop .madoguchi-header,
  body.page-template-03_shop_detail .madoguchi-header {
    margin: 30px 5% 30px;
  }
  body.page-template-03_shop .madoguchi-header .inner,
  body.page-template-03_shop_detail .madoguchi-header .inner {
    font-size: 2rem;
    line-height: 1.5;
    max-width: initial;
    padding: 30px 10px;
  }
  body.page-template-03_shop .madoguchi-header .inner .sub,
  body.page-template-03_shop_detail .madoguchi-header .inner .sub {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  body.page-template-03_shop .madoguchi-header .inner h1,
  body.page-template-03_shop_detail .madoguchi-header .inner h1 {
    margin-bottom: 10px;
  }
  body.page-template-03_shop .madoguchi-header .inner h1 img,
  body.page-template-03_shop_detail .madoguchi-header .inner h1 img {
    height: 40px;
  }
}
body.page-template-03_shop .madoguchi-header,
body.page-template-03_shop_detail .madoguchi-header {
  margin: 74px 0 60px;
}
body.page-template-03_shop .madoguchi-header .inner,
body.page-template-03_shop_detail .madoguchi-header .inner {
  font-size: 2.8rem;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  max-width: 750px;
  margin: 0 auto;
  border-radius: 9999px;
  background: #dd2723;
  color: #fff;
  padding: 70px 20px;
}
body.page-template-03_shop .madoguchi-header .inner .sub,
body.page-template-03_shop_detail .madoguchi-header .inner .sub {
  font-size: 2.2rem;
  line-height: 1.5;
  margin-bottom: 15px;
}
body.page-template-03_shop .madoguchi-header .inner h1 img,
body.page-template-03_shop_detail .madoguchi-header .inner h1 img {
  width: auto;
  height: 54px;
  display: block;
  margin: 0 auto;
}
body.page-template-03_shop .shop-list,
body.page-template-03_shop_detail .shop-list {
  display: flex;
  justify-content: space-between;
  align-items: initial;
  flex-wrap: wrap;
}
body.page-template-03_shop .shop-list .shop,
body.page-template-03_shop_detail .shop-list .shop {
  border: solid 1px #dd2723;
  height: 100%;
  box-sizing: border-box;
  background: #dd2723;
  flex-basis: 360px;
  flex-shrink: 0;
  flex-grow: 0;
  margin-bottom: 30px;
}
body.page-template-03_shop .shop-list .shop .img,
body.page-template-03_shop_detail .shop-list .shop .img {
  margin-bottom: 0;
}
body.page-template-03_shop .shop-list .shop .img img,
body.page-template-03_shop_detail .shop-list .shop .img img {
  display: block;
  margin: 0 auto;
}
body.page-template-03_shop .shop-list .shop .data,
body.page-template-03_shop_detail .shop-list .shop .data {
  padding: 30px;
  color: #fff;
  font-size: 1.8rem;
  line-height: 1.5;
}
body.page-template-03_shop .shop-list .shop .data h3,
body.page-template-03_shop_detail .shop-list .shop .data h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 20px;
}
body.page-template-03_shop .shop-list .shop .data .tel,
body.page-template-03_shop_detail .shop-list .shop .data .tel {
  margin: 20px 30px 0;
  font-size: 1.6rem;
  line-height: 1.5;
}
body.page-template-03_shop .shop-list .shop .data .tel a,
body.page-template-03_shop_detail .shop-list .shop .data .tel a {
  display: block;
  border: solid 1px #dd2723;
  background: #fff;
  color: #dd2723;
  font-weight: 700;
  padding: 10px;
  text-align: center;
}
body.page-template-03_shop .shop-list .shop .data .tel .icon img,
body.page-template-03_shop_detail .shop-list .shop .data .tel .icon img {
  vertical-align: inherit;
}
body.page-template-03_shop .shop-list .shop .data .link,
body.page-template-03_shop_detail .shop-list .shop .data .link {
  margin: 20px 30px 0;
  font-size: 1.6rem;
  line-height: 1.5;
}
body.page-template-03_shop .shop-list .shop .data .link a,
body.page-template-03_shop_detail .shop-list .shop .data .link a {
  display: block;
  border: solid 1px #dd2723;
  background: #fff;
  color: #dd2723;
  font-weight: 700;
  padding: 10px;
  text-align: center;
}

@media screen and (max-width: 768px) {
  body.page-template-03_shop .madoguchi-header,
  body.page-template-03_shop_detail .madoguchi-header {
    margin: 30px 5% 30px;
  }
  body.page-template-03_shop .madoguchi-header .inner,
  body.page-template-03_shop_detail .madoguchi-header .inner {
    font-size: 2rem;
    line-height: 1.5;
    max-width: initial;
    padding: 30px 10px;
  }
  body.page-template-03_shop .madoguchi-header .inner .sub,
  body.page-template-03_shop_detail .madoguchi-header .inner .sub {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  body.page-template-03_shop .madoguchi-header .inner h1,
  body.page-template-03_shop_detail .madoguchi-header .inner h1 {
    margin-bottom: 10px;
  }
  body.page-template-03_shop .madoguchi-header .inner h1 img,
  body.page-template-03_shop_detail .madoguchi-header .inner h1 img {
    height: 40px;
  }
  body.page-template-03_shop .shop-list,
  body.page-template-03_shop_detail .shop-list {
    display: block;
    margin: 0 5%;
  }
  body.page-template-03_shop .shop-list .shop .data,
  body.page-template-03_shop_detail .shop-list .shop .data {
    padding: 10px;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  body.page-template-03_shop .shop-list .shop .data h3,
  body.page-template-03_shop_detail .shop-list .shop .data h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  body.page-template-03_shop .shop-list .shop .data .tel,
  body.page-template-03_shop_detail .shop-list .shop .data .tel {
    margin: 20px 0 0;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  body.page-template-03_shop .shop-list .shop .data .link,
  body.page-template-03_shop_detail .shop-list .shop .data .link {
    margin: 20px 0 0;
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
.recruit-text {
  padding-top: 100px;
}

.recruit-data {
  padding-bottom: 100px;
}
.recruit-data .inner .table {
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
}
.recruit-data .inner .table table {
  border-top: solid 3px #e4e4e0;
}
.recruit-data .inner .table table tr {
  border-bottom: solid 1px #fff;
}
.recruit-data .inner .table table tr th {
  border-left: none;
  width: 170px;
  box-sizing: border-box;
  position: relative;
  padding-left: 26px;
  font-weight: 700;
}
.recruit-data .inner .table table tr th::before {
  content: "";
  display: block;
  width: 6px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #13007c;
}
.recruit-data .inner .table table tr td ul li {
  padding-left: 1em;
  position: relative;
}
.recruit-data .inner .table table tr td ul li::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
.recruit-data .inner .table table tr:nth-child(even) {
  background: #f9fafa;
}

.recruit-nav {
  margin: 60px 0;
  display: flex;
  justify-content: flex-start;
  align-items: inherit;
  flex-wrap: nowrap;
  border: solid 1px #82cbde;
}
.recruit-nav .recruit-title {
  flex-basis: 100%;
  flex-shrink: 1;
  flex-grow: 0;
  font-size: 1.6rem;
  line-height: 1.5;
}
.recruit-nav .recruit-title + .recruit-title {
  border-left: solid 1px #82cbde;
}
.recruit-nav .recruit-title a {
  color: #000;
  padding: 10px;
  text-align: center;
  font-weight: 700;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  box-sizing: border-box;
}
.recruit-nav .recruit-title.active a {
  background: #82cbde;
  color: #fff;
}

.recruit-contents .recruit-content {
  display: none;
  color: #666;
}
.recruit-contents .recruit-content.active {
  display: block;
}
.recruit-contents .recruit-content .table {
  margin-top: 60px;
}

.recruit-footer.contents-bg-section .inner .text {
  background: transparent;
  padding: 0;
}
.recruit-footer.contents-bg-section .inner .text ul {
  margin: 0 0 10px 1.4em;
  list-style-type: disc;
}
.recruit-footer.contents-bg-section .inner .text ul li ul {
  margin-bottom: 0;
  list-style-type: square;
}
.recruit-footer.contents-bg-section .inner .text ul li ul li ul {
  list-style-type: circle;
}
.recruit-footer.contents-bg-section .inner .text ul li ol {
  margin-bottom: 0;
}
.recruit-footer.contents-bg-section .inner .corporate-contact__inner {
  max-width: 510px;
}

@media screen and (max-width: 768px) {
  .recruit-text {
    padding-top: 40px;
  }
  .recruit-data {
    padding: 20px 5% 40px;
  }
  .recruit-data .inner .table {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .recruit-data .inner .table table tr th {
    width: 100px;
    padding-left: 10px;
  }
  .recruit-data .inner .table table tr td ul li {
    padding-left: 10px;
  }
  .recruit-footer.contents-bg-section .inner {
    margin: 0 5%;
  }
  .recruit-footer.contents-bg-section .inner .corporate-contact__inner {
    max-width: initial;
  }
}
.property-text {
  padding-top: 100px;
}
.property-text .inner .table {
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
  margin-top: 50px;
}
.property-text .inner .table table {
  border-top: solid 3px #e4e4e0;
}
.property-text .inner .table table tr {
  border-bottom: solid 1px #fff;
}
.property-text .inner .table table tr th {
  border-left: none;
  width: 170px;
  box-sizing: border-box;
  position: relative;
  padding-left: 26px;
  font-weight: 700;
}
.property-text .inner .table table tr th::before {
  content: "";
  display: block;
  width: 6px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #13007c;
}
.property-text .inner .table table tr td ul li {
  padding-left: 1em;
  position: relative;
}
.property-text .inner .table table tr td ul li ul li::before {
  content: "・";
}
.property-text .inner .table table tr td ul li::before {
  content: "●";
  position: absolute;
  left: 0;
  top: 0;
}
.property-text .inner .table table tr:nth-child(odd) {
  background: #f9fafa;
}
.property-text .inner .link {
  margin: 30px 0 0;
  text-align: center;
}
.property-text .inner .link a {
  display: inline-block;
  background: #13007c;
  color: #fff;
  padding: 12px 48px;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 700;
}

@media screen and (max-width: 768px) {
  .property-text {
    padding-top: 40px;
  }
  .property-text .inner .table {
    font-size: 1.3rem;
    line-height: 1.5;
    margin: 30px 5% 0;
  }
  .property-text .inner .table table tr th {
    width: 100px;
    padding-left: 10px;
  }
  .property-text .inner .link {
    margin: 30px 5% 0;
  }
  .property-text .inner .link a {
    display: block;
    font-size: 1.3rem;
    line-height: 1.5;
  }
}
.policy-text {
  padding-top: 70px;
}
.policy-text .inner {
  max-width: 840px;
}
.policy-text .inner h2 {
  padding: 0;
  margin: 0 0 20px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  text-align: left;
}
.policy-text .inner h2::after {
  display: none;
}
.policy-text .inner .text {
  margin: 0 0 60px;
  max-width: initial;
}
.policy-text .inner .text ol {
  list-style-type: decimal;
  margin: 20px 0 0 2.4em;
}
.policy-header .link {
  margin: 30px 0 0;
  text-align: center;
}
.policy-header .link a {
  display: inline-block;
  background: #13007c;
  color: #fff;
  padding: 12px 48px;
  font-size: 1.4rem;
  line-height: 1.5;
  font-weight: 700;
}

.policy-text2 {
  padding-top: 70px;
}
.policy-text2 .inner {
  max-width: 840px;
}
.policy-text2 .inner .date {
  font-size: 1.6rem;
  line-height: 1.5;
  text-align: right;
  color: #666;
  margin: 0 0 1em;
}
.policy-text2 .inner h3 {
  padding: 0;
  margin: 0 0 20px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  text-align: left;
}
.policy-text2 .inner h3::after {
  display: none;
}
.policy-text2 .inner .text {
  margin: 0 0 60px;
  max-width: initial;
}
.policy-text2 .inner .text ol {
  list-style-type: decimal;
  margin: 20px 0 0 2.4em;
}
.policy-text2 .inner .remark {
  padding: 1.5em;
  background: #f0f0f0;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
}

.initiatives-text2 {
  padding-top: 70px;
}
.initiatives-text2 .inner {
  max-width: 840px;
}
.initiatives-text2 .inner h2 {
  margin: 0 -10px 60px;
}
.initiatives-text2 .inner h3 {
  padding: 0;
  margin: 0 0 20px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  text-align: left;
}
.initiatives-text2 .inner h3::after {
  display: none;
}
.initiatives-text2 .inner .text {
  margin: 0 0 60px;
  padding: 0;
  background: none;
  max-width: initial;
}
.initiatives-text2 .inner table {
  width: 100%;
  margin: 2em 0;
  font-size: 1.6rem;
  line-height: 1.5;
  background: #f9fafa;
}
.initiatives-text2 .inner table th, .initiatives-text2 .inner table td {
  border: solid 1px #e4e4e0;
  padding: 0.5em;
}
.initiatives-text2 .inner table tbody tr th {
  text-align: center;
}
.initiatives-text2 .inner table tr th {
  box-sizing: border-box;
  position: relative;
  font-weight: 700;
  background: #e4e4e0;
  border-left: solid 1px #f9fafa;
  border-right: solid 1px #f9fafa;
}
.initiatives-text2 .inner table tr th span {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
}
.initiatives-text2 .inner table tr th:first-child {
  border-left: solid 1px #e4e4e0;
}
.initiatives-text2 .inner table tr th:last-child {
  border-right: solid 1px #e4e4e0;
}
.initiatives-text2 .inner table tr td span {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
}
.initiatives-text2 .inner .remark {
  padding: 1.5em;
  background: #fff;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
}

@media screen and (max-width: 768px) {
  .policy-text {
    padding-top: 40px;
  }
  .policy-text .inner {
    max-width: inherit;
    margin: 0 5%;
  }
  .policy-text .inner h2 {
    padding: 0 0 10px;
    margin: 0 0 15px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .policy-text .inner .text {
    margin: 0 0 30px;
  }
  .policy-text .inner .text ol {
    margin: 10px 0 0 1.4em;
  }
  .policy-text2 {
    padding-top: 40px;
  }
  .policy-text2 .inner {
    max-width: inherit;
    margin: 0 5%;
  }
  .policy-text2 .inner h3 {
    padding: 0 0 10px;
    margin: 0 0 15px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .policy-text2 .inner .text {
    margin: 0 0 30px;
  }
  .policy-text2 .inner .text ol {
    margin: 10px 0 0 1.4em;
  }
  .policy-text2 .inner .link {
    margin: 30px 5% 0;
  }
  .policy-text2 .inner .link a {
    display: block;
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .policy-text2 .inner .remark {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .initiatives-text2 {
    padding-top: 40px;
  }
  .initiatives-text2 .inner {
    max-width: inherit;
    margin: 0 5%;
  }
  .initiatives-text2 .inner h3 {
    padding: 0 0 10px;
    margin: 0 0 15px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .initiatives-text2 .inner .text {
    margin: 0 0 30px;
  }
  .initiatives-text2 .inner table {
    font-size: 1.3rem;
    line-height: 1.5;
  }
  .initiatives-text2 .inner .remark {
    font-size: 1.3rem;
    line-height: 1.5;
  }
}
.initiatives-text {
  padding-top: 70px;
}
.initiatives-text .inner h2 {
  padding: 0;
  margin: 0 0 20px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  text-align: left;
}
.initiatives-text .inner h2::after {
  display: none;
}
.initiatives-text .inner .text {
  margin: 0 0 60px;
}
.initiatives-text .inner .table {
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
  margin-bottom: 35px;
}
.initiatives-text .inner .table table {
  border-top: solid 3px #e4e4e0;
  width: 100%;
}
.initiatives-text .inner .table table thead tr {
  background: #f9fafa;
}
.initiatives-text .inner .table table thead tr th:first-of-type::before {
  content: "";
  display: block;
  width: 6px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #13007c;
}
.initiatives-text .inner .table table tbody tr th::before {
  content: "";
  display: block;
  width: 6px;
  height: 100%;
  position: absolute;
  left: 0;
  top: 0;
  background: #13007c;
}
.initiatives-text .inner .table table tr {
  border-bottom: solid 1px #fff;
}
.initiatives-text .inner .table table tr th {
  border-left: none;
  box-sizing: border-box;
  position: relative;
  padding-left: 26px;
  font-weight: 700;
}
.initiatives-text .inner .table table tr th span {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
}
.initiatives-text .inner .table table tr td span {
  display: block;
  font-size: 1rem;
  line-height: 1.5;
}
.initiatives-text .inner .table table tr:nth-child(even) {
  background: #f9fafa;
}

@media screen and (max-width: 768px) {
  .initiatives-text {
    padding-top: 40px;
  }
  .initiatives-text .inner {
    max-width: inherit;
    margin: 0 5%;
  }
  .initiatives-text .inner h2 {
    padding: 0 0 10px;
    margin: 0 0 15px;
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .initiatives-text .inner .text {
    margin: 0 0 30px;
  }
  .initiatives-text .inner .table {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-bottom: 20px;
  }
  .initiatives-text .inner .table table tr th {
    padding-left: 10px;
  }
}
.privacy-text {
  padding-top: 70px;
}
.privacy-text .inner h3 {
  padding: 0;
  margin: 0 0 20px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  text-align: left;
}
.privacy-text .inner h3::after {
  display: none;
}
.privacy-text .inner .text {
  margin: 0 0 60px;
}

.privacy-handling .inner h3 {
  padding: 0;
  margin: 0 0 20px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  text-align: left;
}
.privacy-handling .inner h3::after {
  display: none;
}
.privacy-handling .inner .text {
  margin: 0 0 60px;
  padding: 0;
  background: transparent;
}

.privacy-solicitation {
  padding-top: 70px;
}
.privacy-solicitation .inner h3 {
  padding: 0;
  margin: 0 0 20px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  text-align: left;
}
.privacy-solicitation .inner h3::after {
  display: none;
}
.privacy-solicitation .inner .catch {
  font-size: 1.8rem;
  line-height: 1.5;
  color: #82cbde;
  text-align: center;
  font-weight: 700;
  margin: 0 0 50px;
}
.privacy-solicitation .inner .text {
  margin: 0 0 60px;
}

@media screen and (max-width: 768px) {
  .privacy-text {
    padding-top: 40px;
  }
  .privacy-text .inner {
    margin: 0 5%;
  }
  .privacy-text .inner h3 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .privacy-text .inner .text {
    margin: 0 0 30px;
  }
  .privacy-handling .inner {
    margin: 0 5%;
  }
  .privacy-handling .inner h2 {
    margin: 0 0 28px;
  }
  .privacy-handling .inner h3 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .privacy-handling .inner .text {
    margin: 0 0 30px;
    padding: 0;
  }
  .privacy-solicitation {
    padding-top: 40px;
  }
  .privacy-solicitation .inner {
    margin: 0 5%;
  }
  .privacy-solicitation .inner h3 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .privacy-solicitation .inner .catch {
    font-size: 1.4rem;
    line-height: 1.5;
    margin: 0 0 30px;
  }
  .privacy-solicitation .inner .text {
    margin: 0 0 30px;
  }
}
.contact-tel {
  padding-top: 70px;
}
.contact-tel .inner .contact {
  display: flex;
  justify-content: space-between;
  align-items: inherit;
  flex-wrap: nowrap;
  font-size: 1.8rem;
  line-height: 1.5;
  margin-top: 30px;
}
.contact-tel .inner .contact h3 {
  padding: 20px;
  border: solid 1px #e4e4e0;
  flex-basis: 210px;
  flex-shrink: 0;
  flex-grow: 0;
  color: #666;
  text-align: center;
  box-sizing: border-box;
}
.contact-tel .inner .contact .tel {
  flex-basis: 100%;
  flex-shrink: 1;
  flex-grow: 0;
  margin-left: 5px;
}
.contact-tel .inner .contact .tel a {
  display: block;
  background: #82cbde;
  border: solid 1px #82cbde;
  padding: 20px 60px;
  color: #fff;
  height: 100%;
  box-sizing: border-box;
}

.contact-form {
  padding-bottom: 100px;
}
.contact-form .inner .text {
  padding: 0;
  background: transparent;
}
.contact-form .inner .text h3 {
  font-size: 1.8rem;
  line-height: 1.5;
  margin: 0 0 5px;
}
.contact-form .inner .form {
  font-size: 1.4rem;
  line-height: 1.5;
}
.contact-form .inner .form h3 {
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: 700;
  margin: 50px 0 10px;
  color: #666;
}
.contact-form .inner .form h3 .hissu {
  color: #ea0000;
  font-weight: 400;
  display: inline-block;
  border: solid 1px #ea0000;
  font-size: 1.4rem;
  line-height: 1;
  padding: 3px 5px 2px;
  margin-left: 5px;
}
.contact-form .inner .form input[type=text],
.contact-form .inner .form input[type=email],
.contact-form .inner .form textarea {
  background: #fff;
  border: solid 1px #666;
  font-size: 1.8rem;
  line-height: 1.5;
  padding: 5px;
  width: 100%;
  box-sizing: border-box;
}
.contact-form .inner .form .form-action {
  margin: 50px 0 0;
  text-align: center;
}
.contact-form .inner .form .form-action button {
  display: inline-block;
  background: #13007c;
  color: #fff;
  border: none;
  padding: 12px 12px;
  cursor: pointer;
  width: 290px;
  box-sizing: border-box;
  font-size: 1.4rem;
  line-height: 1.5;
}
.contact-form .inner .form .form-action button.btn-back {
  background: #999;
}

@media screen and (max-width: 768px) {
  .contact-tel {
    padding-top: 40px;
  }
  .contact-tel .inner {
    margin: 0 5%;
  }
  .contact-tel .inner .contact {
    font-size: 1.3rem;
    line-height: 1.5;
    margin-top: 20px;
    display: block;
  }
  .contact-tel .inner .contact h3 {
    padding: 10px;
    max-width: inherit;
    margin: 0 0 5px;
  }
  .contact-tel .inner .contact .tel {
    margin-left: 0;
    text-align: center;
  }
  .contact-tel .inner .contact .tel a {
    padding: 10px 10px;
  }
  .contact-form {
    padding-bottom: 40px;
  }
  .contact-form .inner {
    margin: 0 5%;
  }
  .contact-form .inner h2 {
    margin: 0 0 28px;
  }
  .contact-form .inner .text {
    padding: 0;
  }
  .contact-form .inner .text h3 {
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .contact-form .inner .form h3 {
    font-size: 1.4rem;
    line-height: 1.5;
    margin: 30px 0 10px;
  }
  .contact-form .inner .form input[type=text],
  .contact-form .inner .form input[type=email],
  .contact-form .inner .form textarea {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .contact-form .inner .form .form-action {
    margin: 30px 0 0;
  }
  .contact-form .inner .form .form-action button {
    display: block;
    width: 100%;
    font-size: 1.3rem;
    line-height: 1.5;
    margin: 0 0 10px;
  }
}
.archive-news {
  padding: 90px 0 40px;
}
.archive-news .inner {
  max-width: 800px;
  margin: 0 auto;
}
.archive-news .inner h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.archive-news .inner h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.archive-news .inner .archive .single {
  border-bottom: solid 1px #efefed;
}
.archive-news .inner .archive .single a {
  color: #333;
  padding: 30px 0;
  display: block;
}
.archive-news .inner .archive .single a .date {
  font-size: 1.1rem;
  line-height: 1.5;
  margin: 0 0 10px;
}
.archive-news .inner .archive .single a h3 {
  font-size: 1.8rem;
  line-height: 1.5;
  font-weight: 700;
}
.archive-news .inner .archive .single a:hover {
  background: #f5f5f5;
}

.nav-links {
  text-align: center;
  margin: 50px 0;
}
.nav-links .page-numbers {
  display: inline-block;
  border: solid 1px #ccc;
  color: #666;
  padding: 10px 5px;
  width: 40px;
  box-sizing: border-box;
  text-align: center;
}
.nav-links .page-numbers.current {
  background: #ccc;
}
.nav-links .page-numbers.next, .nav-links .page-numbers.prev {
  border: solid 1px #fff;
}

.single-news {
  padding: 90px 0 100px;
}
.single-news .inner {
  max-width: 800px;
  margin: 0 auto;
}
.single-news .inner h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.single-news .inner h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.single-news .inner .meta {
  margin: 0 0 30px;
}
.single-news .inner .meta .date {
  text-align: right;
  font-size: 1.4rem;
  line-height: 1.5;
  margin: 0 0 10px;
}

@media screen and (max-width: 768px) {
  .archive-news {
    padding: 40px 0 40px;
  }
  .archive-news .inner {
    max-width: inherit;
    margin: 0 5%;
  }
  .archive-news .inner h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0;
    margin: 0 0 30px;
  }
  .archive-news .inner .archive .single a h3 {
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .single-news {
    padding: 40px 0 40px;
  }
  .single-news .inner {
    max-width: inherit;
    margin: 0 5%;
  }
  .single-news .inner h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 15px;
    margin: 0 0 20px;
  }
  .single-news .inner .meta {
    margin: 0;
  }
  .single-news .inner .meta .date {
    font-size: 1.3rem;
    line-height: 1.5;
  }
}
.corporate-navi {
  margin: 90px 0;
}
.corporate-navi ul {
  max-width: 940px;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: initial;
  flex-wrap: nowrap;
  font-size: 1.6rem;
  line-height: 1.5;
}
.corporate-navi ul li {
  flex-basis: 29.8%;
  flex-shrink: 0;
  flex-grow: 0;
}
.corporate-navi ul li a {
  display: block;
  background: #508ac4;
  color: #fff;
  padding: 10px;
  text-align: center;
}

.corporate-catch {
  max-width: 940px;
  margin: 60px auto;
  display: flex;
  justify-content: space-between;
  align-items: initial;
  flex-wrap: nowrap;
  font-size: 1.6rem;
  line-height: 1.5;
}
.corporate-catch .data {
  flex-basis: 73.4%;
  flex-shrink: 0;
  flex-grow: 0;
  color: #666;
}
.corporate-catch .data h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 10px;
}
.corporate-catch .link {
  flex-basis: 23.4%;
  flex-shrink: 0;
  flex-grow: 0;
  text-align: center;
}
.corporate-catch .link a {
  display: block;
  background: #ff7121;
  color: #fff;
  padding: 10px;
}

.corporate-contents {
  margin: 60px 0 110px;
}
.corporate-contents__inner {
  max-width: 940px;
  margin: 0 auto;
}
.corporate-contents__inner .content {
  display: flex;
  justify-content: space-between;
  align-items: initial;
  flex-wrap: nowrap;
}
.corporate-contents__inner .content + .content {
  margin-top: 90px;
}
.corporate-contents__inner .content .data {
  flex-basis: 52%;
  flex-shrink: 0;
  flex-grow: 0;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
  order: 1;
}
.corporate-contents__inner .content .data .sub {
  color: #508ac4;
  margin-bottom: 10px;
}
.corporate-contents__inner .content .data h3 {
  font-size: 3rem;
  line-height: 1.5;
  font-weight: 700;
  color: #000;
  margin-bottom: 20px;
}
.corporate-contents__inner .content .data .link {
  font-size: 1.6rem;
  line-height: 1.5;
  margin-top: 20px;
}
.corporate-contents__inner .content .data .link a {
  display: block;
  text-align: center;
  border: solid 1px #508ac4;
  color: #508ac4;
  padding: 10px;
}
.corporate-contents__inner .content .img {
  flex-basis: 42.5%;
  flex-shrink: 0;
  flex-grow: 0;
  order: 2;
}
.corporate-contents__inner .content .img img {
  display: block;
}

.corporate-contact {
  margin: 110px 0 100px;
}
.corporate-contact__inner {
  max-width: 470px;
  margin: 0 auto;
}
.corporate-contact__inner .link {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
}
.corporate-contact__inner .link + .link {
  margin-top: 40px;
}
.corporate-contact__inner .link a {
  background: #13007c;
  color: #fff;
  display: block;
  padding: 20px;
  text-align: center;
}
.corporate-contact__inner .link a .icon {
  display: block;
  margin-bottom: 10px;
}
.corporate-contact__inner .link a .name {
  display: block;
}
.corporate-contact__inner .link.soudan a {
  background: #508ac4;
}
.corporate-contact__inner .data {
  text-align: center;
  margin-top: 50px;
  color: #666;
}
.corporate-contact__inner .data .text {
  font-size: 1.8rem;
  line-height: 1.5;
  margin-bottom: 10px;
}
.corporate-contact__inner .data .tel {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 10px;
}
.corporate-contact__inner .data .tel a {
  color: #508ac4;
}
.corporate-contact__inner .data .time {
  font-size: 1.6rem;
  line-height: 1.5;
}

@media screen and (max-width: 768px) {
  .corporate-navi {
    margin: 40px 5%;
  }
  .corporate-navi ul {
    max-width: initial;
    display: block;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .corporate-navi ul li + li {
    margin-top: 15px;
  }
  .corporate-catch {
    max-width: initial;
    margin: 30px 5%;
    display: block;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .corporate-catch .data h3 {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .corporate-catch .link {
    margin-top: 20px;
  }
  .corporate-contents {
    margin: 30px 5% 50px;
  }
  .corporate-contents__inner {
    max-width: initial;
  }
  .corporate-contents__inner .content {
    display: block;
  }
  .corporate-contents__inner .content + .content {
    margin-top: 40px;
  }
  .corporate-contents__inner .content .data {
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .corporate-contents__inner .content .data h3 {
    font-size: 2rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .corporate-contents__inner .content .data .link {
    font-size: 1.4rem;
    line-height: 1.5;
    margin-top: 10px;
  }
  .corporate-contents__inner .content .img {
    margin-bottom: 10px;
  }
  .corporate-contact {
    margin: 50px 5% 50px;
  }
  .corporate-contact__inner {
    max-width: initial;
  }
  .corporate-contact__inner .link {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .corporate-contact__inner .link a {
    padding: 10px;
  }
  .corporate-contact__inner .data {
    margin-top: 20px;
  }
  .corporate-contact__inner .data .text {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .corporate-contact__inner .data .tel {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .corporate-contact__inner .data .time {
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
.industry-insurance {
  display: flex;
  justify-content: space-between;
  align-items: inherit;
  flex-wrap: wrap;
  margin: 0 0 100px;
}
.industry-insurance .industry-type {
  flex-basis: 48%;
  flex-shrink: 0;
  flex-grow: 0;
  font-size: 1.8rem;
  line-height: 1.5;
  margin-bottom: 50px;
}
.industry-insurance .industry-type h3 {
  font-size: 3rem;
  line-height: 1.5;
  font-weight: 700;
  padding-left: 14px;
  position: relative;
  margin-bottom: 15px;
}
.industry-insurance .industry-type h3::before {
  content: "";
  display: block;
  width: 3px;
  height: 30px;
  background: #82cbde;
  position: absolute;
  left: 0;
  top: 8px;
}
.industry-insurance .industry-type .img {
  margin-bottom: 20px;
}
.industry-insurance .industry-type .catch {
  color: #508ac4;
  margin-bottom: 15px;
}
.industry-insurance .industry-type .text {
  color: #666;
}

@media screen and (max-width: 768px) {
  .industry-insurance {
    margin: 0 5% 50px;
    display: block;
  }
  .industry-insurance .industry-type {
    display: block;
    font-size: 1.4rem;
    line-height: 1.5;
    margin-bottom: 40px;
  }
  .industry-insurance .industry-type h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    padding-left: 12px;
    margin-bottom: 10px;
  }
  .industry-insurance .industry-type h3::before {
    width: 2px;
    height: 1em;
    top: 0.25em;
  }
  .industry-insurance .industry-type .catch {
    color: #508ac4;
    margin-bottom: 15px;
  }
  .industry-insurance .industry-type .text {
    color: #666;
  }
}
.harassment-content.contents-section,
.harassment-content.contents-bg-section {
  padding-top: 40px;
}
.harassment-content.contents-section .inner .text,
.harassment-content.contents-bg-section .inner .text {
  background: transparent;
  padding: 0;
}

.harassment-content .inner h3 {
  padding: 0;
  margin: 0 0 20px;
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  text-align: left;
}
.harassment-content .inner p {
  margin: 1.5rem 0 1.5rem;
}
.harassment-content .inner ul {
  margin: 1.5rem 0 1.5rem;
  list-style-type: disc;
  padding-left: 2.5rem;
}
.harassment-content .inner ul li ul {
  margin: 0;
  list-style-type: square;
}
.harassment-content .inner ul li ul li ul {
  list-style-type: circle;
}
.harassment-content .inner ul li ol {
  margin: 0;
}
.harassment-content .inner ol {
  margin: 1.5rem 0 1.5rem;
  list-style-type: decimal;
  padding-left: 2.5rem;
}
.harassment-content .inner ol li ol {
  margin: 0;
  list-style-type: lower-alpha;
}
.harassment-content .inner ol li ol li ol {
  list-style-type: lower-latin;
}
.harassment-content .inner ol li ul {
  margin: 0;
}

@media screen and (max-width: 768px) {
  .harassment-content.contents-section .inner,
  .harassment-content.contents-bg-section .inner {
    margin: 0 5%;
  }
  .harassment-content.contents-section .inner .text,
  .harassment-content.contents-bg-section .inner .text {
    max-width: initial;
    margin: 0 0 30px;
  }
  .harassment-content .inner h3 {
    font-size: 1.6rem;
    line-height: 1.5;
  }
}
.page-template-40_hokennomadoguchi .madoguchi-header {
  margin: 74px 0 60px;
}
.page-template-40_hokennomadoguchi .madoguchi-header .inner {
  font-size: 2.8rem;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  max-width: 750px;
  margin: 0 auto;
  border-radius: 9999px;
  background: #dd2723;
  color: #fff;
  padding: 20px;
}
.page-template-40_hokennomadoguchi .madoguchi-header .inner .sub {
  font-size: 2.2rem;
  line-height: 1.5;
  margin-bottom: 15px;
}
.page-template-40_hokennomadoguchi .madoguchi-header .inner h1 {
  margin-bottom: 20px;
}
.page-template-40_hokennomadoguchi .madoguchi-header .inner h1 img {
  width: auto;
  height: 54px;
  display: block;
  margin: 0 auto;
}
.page-template-40_hokennomadoguchi .contents-section,
.page-template-40_hokennomadoguchi .contents-bg-section {
  padding-bottom: 100px;
}
.page-template-40_hokennomadoguchi .contents-section .head h2,
.page-template-40_hokennomadoguchi .contents-bg-section .head h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.page-template-40_hokennomadoguchi .contents-section .head h2::after,
.page-template-40_hokennomadoguchi .contents-bg-section .head h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #dd2723;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-point + .hoken-point,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point + .hoken-point {
  margin-top: 60px;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-point .img,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point .img {
  margin-bottom: 30px;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-point .point_no,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point .point_no {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #dd2723;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-point .point_no em,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point .point_no em {
  border-bottom: solid 2px #dd2723;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-point .point_no span,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point .point_no span {
  font-weight: 700;
  border-top: solid 2px #dd2723;
  line-height: 1;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-point .point_no strong,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point .point_no strong {
  font-size: 4rem;
  line-height: 1;
  font-weight: 700;
  font-family: "Mukta", sans-serif;
  display: inline-block;
  margin-left: 0.2em;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-point h2,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point h2 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #666;
  padding: 0;
  margin: 1em 0;
  text-align: initial;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-point h2::after,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point h2::after {
  display: none;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider {
  display: flex;
  justify-content: flex-start;
  align-items: initial;
  flex-wrap: nowrap;
  gap: 30px;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide {
  flex-basis: 360px;
  flex-shrink: 0;
  flex-grow: 0;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide-wrap,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide-wrap {
  border: solid 1px #82cbde;
  height: 100%;
  box-sizing: border-box;
  background: #82cbde;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide-wrap .img img,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide-wrap .img img {
  display: block;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide-wrap .data,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide-wrap .data {
  padding: 30px;
  color: #333;
  font-size: 1.8rem;
  line-height: 1.5;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide-wrap .data h3,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide-wrap .data h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 20px;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide-wrap .data .link,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide-wrap .data .link {
  margin: 30px 30px 0;
  font-size: 1.6rem;
  line-height: 1.5;
}
.page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide-wrap .data .link a,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide-wrap .data .link a {
  display: block;
  border: solid 1px #508ac4;
  background: #fff;
  color: #508ac4;
  font-weight: 700;
  padding: 10px;
  text-align: center;
}
.page-template-40_hokennomadoguchi .contents-section .inner .bx-wrapper .bx-controls-direction a,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .bx-wrapper .bx-controls-direction a {
  width: 50px;
  height: 50px;
  margin-top: -25px;
  transition: 0;
}
.page-template-40_hokennomadoguchi .contents-section .inner .bx-wrapper .bx-prev,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .bx-wrapper .bx-prev {
  left: -90px;
  background: url(img/slider_prev.png);
}
.page-template-40_hokennomadoguchi .contents-section .inner .bx-wrapper .bx-next,
.page-template-40_hokennomadoguchi .contents-bg-section .inner .bx-wrapper .bx-next {
  right: -90px;
  background: url(img/slider_next.png);
}
.page-template-40_hokennomadoguchi .personal-contact {
  margin: 110px 0 100px;
}
.page-template-40_hokennomadoguchi .personal-contact__inner {
  max-width: 470px;
  margin: 0 auto;
}
.page-template-40_hokennomadoguchi .personal-contact__inner .link {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-top: 50px;
}
.page-template-40_hokennomadoguchi .personal-contact__inner .link a {
  background: #dd2723;
  color: #fff;
  display: block;
  padding: 20px;
  text-align: center;
}
.page-template-40_hokennomadoguchi .personal-contact__inner .link a .icon {
  display: block;
  margin-bottom: 10px;
}
.page-template-40_hokennomadoguchi .personal-contact__inner .link a .name {
  display: block;
}
.page-template-40_hokennomadoguchi .personal-contact__inner .data {
  text-align: center;
  color: #666;
}
.page-template-40_hokennomadoguchi .personal-contact__inner .data .text {
  font-size: 1.8rem;
  line-height: 1.5;
  margin-bottom: 10px;
}
.page-template-40_hokennomadoguchi .personal-contact__inner .data .tel {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 10px;
}
.page-template-40_hokennomadoguchi .personal-contact__inner .data .tel a {
  color: #508ac4;
}
.page-template-40_hokennomadoguchi .personal-contact__inner .data .time {
  font-size: 1.6rem;
  line-height: 1.5;
}
.page-template-40_hokennomadoguchi .document-no {
  background: #dd2723;
}

@media screen and (max-width: 768px) {
  .page-template-40_hokennomadoguchi .madoguchi-header {
    margin: 30px 5% 30px;
  }
  .page-template-40_hokennomadoguchi .madoguchi-header .inner {
    font-size: 2rem;
    line-height: 1.5;
    max-width: initial;
    padding: 20px 10px;
  }
  .page-template-40_hokennomadoguchi .madoguchi-header .inner .sub {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .page-template-40_hokennomadoguchi .madoguchi-header .inner h1 {
    margin-bottom: 10px;
  }
  .page-template-40_hokennomadoguchi .madoguchi-header .inner h1 img {
    height: 40px;
  }
  .page-template-40_hokennomadoguchi .contents-section,
  .page-template-40_hokennomadoguchi .contents-bg-section {
    padding-bottom: 20px;
  }
  .page-template-40_hokennomadoguchi .contents-section .head h2,
  .page-template-40_hokennomadoguchi .contents-bg-section .head h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 20px;
    margin: 0 5% 28px;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner:has(.hoken-slider),
  .page-template-40_hokennomadoguchi .contents-bg-section .inner:has(.hoken-slider) {
    padding-left: 5%;
    padding-right: 5%;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-point,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point {
    margin-left: 5%;
    margin-right: 5%;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-point + .hoken-point,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point + .hoken-point {
    margin-top: 30px;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-point .img,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point .img {
    margin-bottom: 15px;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-point .point_no,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point .point_no {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-point .point_no strong,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point .point_no strong {
    font-size: 2rem;
    line-height: 1;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-point h2,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point h2 {
    font-size: 1.8rem;
    line-height: 1.5;
    margin: 0.5em 0;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-point .text,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-point .text {
    margin: 0;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider {
    gap: 10px;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide {
    flex-basis: 90vw;
    flex-shrink: 0;
    flex-grow: 0;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide-wrap .data,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide-wrap .data {
    padding: 10px;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide-wrap .data h3,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide-wrap .data h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .hoken-slider .slide-wrap .data .link,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .hoken-slider .slide-wrap .data .link {
    margin: 20px 0 0;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .bx-wrapper .bx-controls-direction a,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .bx-wrapper .bx-controls-direction a {
    width: 25px;
    height: 25px;
    margin-top: -25px;
    transition: 0;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .bx-wrapper .bx-prev,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .bx-wrapper .bx-prev {
    left: 10px;
    background-size: contain;
  }
  .page-template-40_hokennomadoguchi .contents-section .inner .bx-wrapper .bx-next,
  .page-template-40_hokennomadoguchi .contents-bg-section .inner .bx-wrapper .bx-next {
    right: 10px;
    background-size: contain;
  }
  .page-template-40_hokennomadoguchi .personal-contact {
    margin: 50px 5% 50px;
  }
  .page-template-40_hokennomadoguchi .personal-contact__inner {
    max-width: initial;
  }
  .page-template-40_hokennomadoguchi .personal-contact__inner .link {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-top: 20px;
  }
  .page-template-40_hokennomadoguchi .personal-contact__inner .link a {
    padding: 10px;
  }
  .page-template-40_hokennomadoguchi .personal-contact__inner .data .text {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .page-template-40_hokennomadoguchi .personal-contact__inner .data .tel {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .page-template-40_hokennomadoguchi .personal-contact__inner .data .time {
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
.post-type-archive-voice .madoguchi-header {
  margin: 74px 0 60px;
}
.post-type-archive-voice .madoguchi-header .inner {
  font-size: 2.8rem;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  max-width: 750px;
  margin: 0 auto;
  border-radius: 9999px;
  background: #dd2723;
  color: #fff;
  padding: 70px 20px;
}
.post-type-archive-voice .madoguchi-header .inner .sub {
  font-size: 2.2rem;
  line-height: 1.5;
  margin-bottom: 15px;
}
.post-type-archive-voice .madoguchi-header .inner h1 img {
  width: auto;
  height: 54px;
  display: block;
  margin: 0 auto;
}
.post-type-archive-voice .contents-section .head h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.post-type-archive-voice .contents-section .head h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #dd2723;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.post-type-archive-voice .hoken-voice {
  display: flex;
  justify-content: space-between;
  align-items: initial;
  flex-wrap: wrap;
}
.post-type-archive-voice .hoken-voice .voice {
  flex-basis: 360px;
  flex-shrink: 0;
  flex-grow: 0;
  margin-bottom: 30px;
}
.post-type-archive-voice .hoken-voice .voice-wrap {
  border: solid 1px #82cbde;
  height: 100%;
  box-sizing: border-box;
  background: #82cbde;
}
.post-type-archive-voice .hoken-voice .voice-wrap .img {
  margin-bottom: 0;
}
.post-type-archive-voice .hoken-voice .voice-wrap .img img {
  display: block;
}
.post-type-archive-voice .hoken-voice .voice-wrap .data {
  padding: 30px;
  color: #333;
  font-size: 1.8rem;
  line-height: 1.5;
}
.post-type-archive-voice .hoken-voice .voice-wrap .data h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 20px;
}
.post-type-archive-voice .hoken-voice .voice-wrap .data .link {
  margin: 30px 30px 0;
  font-size: 1.6rem;
  line-height: 1.5;
}
.post-type-archive-voice .hoken-voice .voice-wrap .data .link a {
  display: block;
  border: solid 1px #508ac4;
  background: #fff;
  color: #508ac4;
  font-weight: 700;
  padding: 10px;
  text-align: center;
}
.post-type-archive-voice .personal-contact {
  margin: 110px 0 100px;
}
.post-type-archive-voice .personal-contact__inner {
  max-width: 470px;
  margin: 0 auto;
}
.post-type-archive-voice .personal-contact__inner .link {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-top: 50px;
}
.post-type-archive-voice .personal-contact__inner .link a {
  background: #dd2723;
  color: #fff;
  display: block;
  padding: 20px;
  text-align: center;
}
.post-type-archive-voice .personal-contact__inner .link a .icon {
  display: block;
  margin-bottom: 10px;
}
.post-type-archive-voice .personal-contact__inner .link a .name {
  display: block;
}
.post-type-archive-voice .personal-contact__inner .data {
  text-align: center;
  color: #666;
}
.post-type-archive-voice .personal-contact__inner .data .text {
  font-size: 1.8rem;
  line-height: 1.5;
  margin-bottom: 10px;
}
.post-type-archive-voice .personal-contact__inner .data .tel {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 10px;
}
.post-type-archive-voice .personal-contact__inner .data .tel a {
  color: #508ac4;
}
.post-type-archive-voice .personal-contact__inner .data .time {
  font-size: 1.6rem;
  line-height: 1.5;
}
.post-type-archive-voice .document-no {
  background: #dd2723;
}

@media screen and (max-width: 768px) {
  .post-type-archive-voice .madoguchi-header {
    margin: 30px 5% 30px;
  }
  .post-type-archive-voice .madoguchi-header .inner {
    font-size: 2rem;
    line-height: 1.5;
    max-width: initial;
    padding: 30px 10px;
  }
  .post-type-archive-voice .madoguchi-header .inner .sub {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .post-type-archive-voice .madoguchi-header .inner h1 {
    margin-bottom: 10px;
  }
  .post-type-archive-voice .madoguchi-header .inner h1 img {
    height: 40px;
  }
  .post-type-archive-voice .contents-section .head h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 20px;
    margin: 0 5% 28px;
  }
  .post-type-archive-voice .hoken-voice {
    gap: 10px;
  }
  .post-type-archive-voice .hoken-voice .voice {
    flex-basis: 90vw;
    flex-shrink: 0;
    flex-grow: 0;
    margin: 0 auto 30px;
  }
  .post-type-archive-voice .hoken-voice .voice-wrap .data {
    padding: 10px;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .post-type-archive-voice .hoken-voice .voice-wrap .data h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .post-type-archive-voice .hoken-voice .voice-wrap .data .link {
    margin: 20px 0 0;
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .post-type-archive-voice .personal-contact {
    margin: 50px 5% 50px;
  }
  .post-type-archive-voice .personal-contact__inner {
    max-width: initial;
  }
  .post-type-archive-voice .personal-contact__inner .link {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-top: 20px;
  }
  .post-type-archive-voice .personal-contact__inner .link a {
    padding: 10px;
  }
  .post-type-archive-voice .personal-contact__inner .data .text {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .post-type-archive-voice .personal-contact__inner .data .tel {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .post-type-archive-voice .personal-contact__inner .data .time {
    font-size: 1.4rem;
    line-height: 1.5;
  }
}
.page-template-40_flow .madoguchi-header {
  margin: 74px 0 60px;
}
.page-template-40_flow .madoguchi-header .inner {
  font-size: 2.8rem;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  max-width: 750px;
  margin: 0 auto;
  border-radius: 9999px;
  background: #dd2723;
  color: #fff;
  padding: 70px 20px;
}
.page-template-40_flow .madoguchi-header .inner .sub {
  font-size: 2.2rem;
  line-height: 1.5;
  margin-bottom: 15px;
}
.page-template-40_flow .madoguchi-header .inner h1 img {
  width: auto;
  height: 54px;
  display: block;
  margin: 0 auto;
}
.page-template-40_flow .contents-section .head h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.page-template-40_flow .contents-section .head h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #dd2723;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.page-template-40_flow .contents-section .inner .flow-wrap .flow {
  display: flex;
  justify-content: flex-start;
  align-items: inherit;
  flex-wrap: nowrap;
  margin-bottom: 60px;
}
.page-template-40_flow .contents-section .inner .flow-wrap .flow .img {
  flex-basis: 44.266%;
  flex-shrink: 0;
  flex-grow: 0;
  margin-right: -5.6%;
}
.page-template-40_flow .contents-section .inner .flow-wrap .flow .img img {
  display: block;
}
.page-template-40_flow .contents-section .inner .flow-wrap .flow .data {
  flex-basis: 61.333%;
  flex-shrink: 0;
  flex-grow: 0;
  border: solid 1px #666666;
  background: #fff;
  padding: 70px;
  box-sizing: border-box;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
  margin-top: 60px;
}
.page-template-40_flow .contents-section .inner .flow-wrap .flow .data .num {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #dd2723;
}
.page-template-40_flow .contents-section .inner .flow-wrap .flow .data .num em {
  border-bottom: solid 2px #dd2723;
}
.page-template-40_flow .contents-section .inner .flow-wrap .flow .data .num span {
  font-weight: 700;
  border-top: solid 2px #dd2723;
  line-height: 1;
}
.page-template-40_flow .contents-section .inner .flow-wrap .flow .data .num strong {
  font-size: 4rem;
  line-height: 1;
  font-weight: 700;
  font-family: "Mukta", sans-serif;
  display: inline-block;
  margin-left: 0.2em;
}
.page-template-40_flow .contents-section .inner .flow-wrap .flow .data h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin: 20px 0;
}
.page-template-40_flow .personal-contact {
  margin: 110px 0 100px;
}
.page-template-40_flow .personal-contact__inner {
  max-width: 470px;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  align-items: initial;
  flex-wrap: nowrap;
  gap: 10em;
}
.page-template-40_flow .personal-contact__inner .data {
  text-align: center;
  color: #666;
  white-space: nowrap;
}
.page-template-40_flow .personal-contact__inner .data .text {
  font-size: 1.8rem;
  line-height: 1.5;
  margin-bottom: 10px;
}
.page-template-40_flow .personal-contact__inner .data .tel {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin-bottom: 10px;
}
.page-template-40_flow .personal-contact__inner .data .tel a {
  color: #508ac4;
}
.page-template-40_flow .personal-contact__inner .data .time {
  font-size: 1.6rem;
  line-height: 1.5;
}
.page-template-40_flow .document-no {
  background: #dd2723;
}

.page-template-12_flow .contents-section {
  padding-top: 100px;
}
.page-template-12_flow .contents-section .head h2 {
  font-size: 3.2rem;
  line-height: 1.5;
  font-weight: 700;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.page-template-12_flow .contents-section .head h2::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.page-template-12_flow .contents-section .inner .flow-wrap .flow {
  display: flex;
  justify-content: flex-start;
  align-items: inherit;
  flex-wrap: nowrap;
  margin-bottom: 60px;
}
.page-template-12_flow .contents-section .inner .flow-wrap .flow .img {
  flex-basis: 44.266%;
  flex-shrink: 0;
  flex-grow: 0;
  margin-right: -5.6%;
}
.page-template-12_flow .contents-section .inner .flow-wrap .flow .img img {
  display: block;
}
.page-template-12_flow .contents-section .inner .flow-wrap .flow .data {
  flex-basis: 61.333%;
  flex-shrink: 0;
  flex-grow: 0;
  border: solid 1px #666666;
  background: #fff;
  padding: 70px;
  box-sizing: border-box;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #666;
  margin-top: 60px;
}
.page-template-12_flow .contents-section .inner .flow-wrap .flow .data .num {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 1.8rem;
  line-height: 1.5;
  color: #508ac4;
}
.page-template-12_flow .contents-section .inner .flow-wrap .flow .data .num em {
  border-bottom: solid 2px #508ac4;
}
.page-template-12_flow .contents-section .inner .flow-wrap .flow .data .num span {
  font-weight: 700;
  border-top: solid 2px #508ac4;
  line-height: 1;
}
.page-template-12_flow .contents-section .inner .flow-wrap .flow .data .num strong {
  font-size: 4rem;
  line-height: 1;
  font-weight: 700;
  font-family: "Mukta", sans-serif;
  display: inline-block;
  margin-left: 0.2em;
}
.page-template-12_flow .contents-section .inner .flow-wrap .flow .data h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin: 20px 0;
}

@media screen and (max-width: 768px) {
  .page-template-40_flow .madoguchi-header {
    margin: 30px 5% 30px;
  }
  .page-template-40_flow .madoguchi-header .inner {
    font-size: 2rem;
    line-height: 1.5;
    max-width: initial;
    padding: 30px 10px;
  }
  .page-template-40_flow .madoguchi-header .inner .sub {
    font-size: 1.8rem;
    line-height: 1.5;
    margin-bottom: 10px;
  }
  .page-template-40_flow .madoguchi-header .inner h1 {
    margin-bottom: 10px;
  }
  .page-template-40_flow .madoguchi-header .inner h1 img {
    height: 40px;
  }
  .page-template-40_flow .contents-section .head h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 20px;
    margin: 0 5% 28px;
  }
  .page-template-40_flow .contents-section .inner .flow-wrap {
    margin: 0 5%;
  }
  .page-template-40_flow .contents-section .inner .flow-wrap .flow {
    display: block;
    margin-bottom: 30px;
  }
  .page-template-40_flow .contents-section .inner .flow-wrap .flow .img {
    margin: 0 15vw 0;
  }
  .page-template-40_flow .contents-section .inner .flow-wrap .flow .data {
    padding: 20px;
    font-size: 1.4rem;
    line-height: 1.5;
    margin-top: 0;
  }
  .page-template-40_flow .contents-section .inner .flow-wrap .flow .data .num {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .page-template-40_flow .contents-section .inner .flow-wrap .flow .data .num strong {
    font-size: 2rem;
    line-height: 1;
  }
  .page-template-40_flow .contents-section .inner .flow-wrap .flow .data h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    margin: 10px 0;
  }
  .page-template-40_flow .personal-contact {
    margin: 50px 5% 50px;
  }
  .page-template-40_flow .personal-contact__inner {
    max-width: initial;
    display: block;
  }
  .page-template-40_flow .personal-contact__inner .data + .data {
    margin-top: 5em;
  }
  .page-template-40_flow .personal-contact__inner .data .text {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .page-template-40_flow .personal-contact__inner .data .tel {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .page-template-40_flow .personal-contact__inner .data .time {
    font-size: 1.4rem;
    line-height: 1.5;
  }
  .page-template-12_flow .contents-section {
    padding-top: 100px;
  }
  .page-template-12_flow .contents-section .head h2 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 20px;
    margin: 0 5% 28px;
  }
  .page-template-12_flow .contents-section .inner .flow-wrap {
    margin: 0 5%;
  }
  .page-template-12_flow .contents-section .inner .flow-wrap .flow {
    display: block;
    margin-bottom: 30px;
  }
  .page-template-12_flow .contents-section .inner .flow-wrap .flow .img {
    margin: 0 15vw 0;
  }
  .page-template-12_flow .contents-section .inner .flow-wrap .flow .data {
    padding: 20px;
    font-size: 1.4rem;
    line-height: 1.5;
    margin-top: 0;
  }
  .page-template-12_flow .contents-section .inner .flow-wrap .flow .data .num {
    font-size: 1.6rem;
    line-height: 1.5;
  }
  .page-template-12_flow .contents-section .inner .flow-wrap .flow .data .num strong {
    font-size: 2rem;
    line-height: 1;
  }
  .page-template-12_flow .contents-section .inner .flow-wrap .flow .data h3 {
    font-size: 1.8rem;
    line-height: 1.5;
    margin: 10px 0;
  }
}
.post-type-archive-useful .contents-section {
  padding: 90px 0 100px;
}
.post-type-archive-useful .contents-section .head h1 {
  font-size: 3.2rem;
  line-height: 1.5;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.post-type-archive-useful .contents-section .head h1::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.post-type-archive-useful .archive-useful {
  display: flex;
  justify-content: space-between;
  align-items: initial;
  flex-wrap: wrap;
}
.post-type-archive-useful .archive-useful .useful {
  flex-basis: 360px;
  flex-shrink: 0;
  flex-grow: 0;
  margin-bottom: 30px;
}
.post-type-archive-useful .archive-useful a {
  display: block;
  color: #666;
}
.post-type-archive-useful .archive-useful .wrap .img {
  margin-bottom: 0;
}
.post-type-archive-useful .archive-useful .wrap .img img {
  display: block;
}
.post-type-archive-useful .archive-useful .wrap h3 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  margin: 10px 0 20px;
}
.post-type-archive-useful .nav-links {
  text-align: center;
  margin: 50px 0;
}
.post-type-archive-useful .nav-links .page-numbers {
  display: inline-block;
  border: solid 1px #ccc;
  color: #666;
  padding: 10px 5px;
  width: 40px;
  box-sizing: border-box;
  text-align: center;
}
.post-type-archive-useful .nav-links .page-numbers.current {
  background: #ccc;
}
.post-type-archive-useful .nav-links .page-numbers.next, .post-type-archive-useful .nav-links .page-numbers.prev {
  border: solid 1px #fff;
}

.single-useful .single-news {
  padding: 90px 0 100px;
}
.single-useful .single-news .inner {
  max-width: 800px;
  margin: 0 auto;
}
.single-useful .single-news .inner h1 {
  font-size: 3.2rem;
  line-height: 1.5;
  color: #000;
  padding: 0 0 35px;
  margin: 0 0 60px;
  position: relative;
  text-align: center;
}
.single-useful .single-news .inner h1::after {
  content: "";
  display: block;
  width: 60px;
  height: 3px;
  background: #82cbde;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
}
.single-useful .single-news .inner h2 {
  font-size: 2.2rem;
  line-height: 1.5;
  font-weight: 700;
  text-align: initial;
  color: #666;
  padding: 0;
  margin: 2em 0 1em;
}
.single-useful .single-news .inner h2::after {
  display: none;
}
.single-useful .single-news .inner .text {
  color: #666;
}

@media screen and (max-width: 768px) {
  .post-type-archive-useful .contents-section {
    padding: 40px 5% 50px;
  }
  .post-type-archive-useful .contents-section .head h1 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 15px;
    margin: 0 0 20px;
  }
  .post-type-archive-useful .archive-useful {
    display: block;
  }
  .post-type-archive-useful .archive-useful .useful {
    margin-bottom: 30px;
  }
  .post-type-archive-useful .archive-useful .wrap h3 {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .single-useful .single-news {
    padding: 40px 0 40px;
  }
  .single-useful .single-news .inner {
    max-width: inherit;
    margin: 0 5%;
  }
  .single-useful .single-news .inner h1 {
    font-size: 2.2rem;
    line-height: 1.5;
    padding: 0 0 15px;
    margin: 0 0 20px;
  }
  .single-useful .single-news .inner h2 {
    font-size: 1.8rem;
    line-height: 1.5;
  }
  .single-useful .single-news .inner .meta {
    margin: 0;
  }
  .single-useful .single-news .inner .meta .date {
    font-size: 1.3rem;
    line-height: 1.5;
  }
}
.page-template-default .contents-section .inner {
  font-size: 1.8rem;
  line-height: 1.75;
}
.page-template-default .contents-section .inner h2 {
  margin-top: 100px;
}

.business-greeting .img {
  text-align: center;
}/*# sourceMappingURL=style.css.map */