@charset "UTF-8";
body {
  margin: 0;
  padding: 0;
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  line-height: 2;
  color: #333333;
  background: #ffffff; }

a {
  word-wrap: break-word; }
  a:link {
    color: #402618;
    text-decoration: underline; }
  a:visited {
    color: #402618;
    text-decoration: underline; }
  a:hover {
    color: #e6be43;
    text-decoration: underline; }
  a:active {
    color: #e6be43;
    text-decoration: underline; }
  a.disable {
    pointer-events: none; }

a img {
  border: none; }

#area_map {
  border: none; }

#Map {
  border: none; }

img {
  max-width: 100%;
  vertical-align: middle; }

area {
  outline: none;
  border: none; }

p {
  margin: 1em 0; }
  @media only screen and (max-width: 767px) {
    p {
      margin: 1em 5px; } }

hr {
  border: 0;
  border-top: 1px solid #cccccc;
  border-collapse: collapse; }

button {
  cursor: pointer; }

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

.alignLeft {
  text-align: left; }

.alignCenter {
  text-align: center; }

.alignRight {
  text-align: right; }

.caution {
  color: #ff3300; }

.notice {
  color: #402618; }

.clear {
  clear: both; }

.boder {
  border-bottom: dotted 2px #d9d6ce; }

.center {
  text-align: center; }

.red {
  color: #ff1616; }

.clearfix:after {
  content: "";
  display: block;
  clear: both; }

.content_section {
  margin-bottom: 100px; }
  @media only screen and (max-width: 767px) {
    .content_section {
      margin: 30px 0 50px; } }

.floatL {
  float: left; }
  @media only screen and (max-width: 767px) {
    .floatL {
      float: none; } }

.floatR {
  float: right; }
  @media only screen and (max-width: 767px) {
    .floatR {
      float: none; } }

.mb10 {
  margin-bottom: 10px; }

.mb20 {
  margin-bottom: 20px; }

.mb30 {
  margin-bottom: 30px; }

.mb40 {
  margin-bottom: 40px; }

.bold {
  font-weight: bold; }

.about_map {
  float: right;
  width: 51%; }
  @media only screen and (max-width: 767px) {
    .about_map {
      width: auto;
      float: none; } }

.loan_img {
  width: 240px;
  float: left;
  text-align: center;
  margin: 0 20px 15px 0; }
  @media only screen and (max-width: 767px) {
    .loan_img {
      width: auto;
      min-height: 0;
      float: none;
      margin: 20px 20px 15px 0; } }

.life_table {
  padding: 0 20%; }
  @media only screen and (max-width: 767px) {
    .life_table {
      padding: 0; } }

iframe {
  width: 100%;
  border: none;
  position: relative; }

.rice_txt {
  width: 240px;
  float: right; }
  @media only screen and (max-width: 767px) {
    .rice_txt {
      width: auto;
      float: none; } }

@media print, screen and (min-width: 768px) {
  .pc_none {
    display: none !important; } }

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

.root {
  overflow: hidden;
  min-width: 960px; }
  @media only screen and (max-width: 767px) {
    .root {
      min-width: 320px;
      padding-top: 50px; } }

/*** header ***/
header {
  position: relative;
  margin: auto;
  width: auto;
  background: #ffffff; }
  @media only screen and (max-width: 767px) {
    header {
      position: fixed;
      min-height: 0;
      top: 0;
      width: 100%;
      margin: 0;
      z-index: 100;
      background: #ffffff;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2); } }
  header .header_body {
    width: 960px;
    padding: 0;
    margin: auto;
    display: flex;
    align-items: center; }
    @media only screen and (max-width: 767px) {
      header .header_body {
        width: auto; } }
  header h1 {
    margin: 25px 0 15px;
    padding: 0;
    font-size: 100%;
    line-height: 1; }
    @media only screen and (max-width: 767px) {
      header h1 {
        margin: 0;
        padding: 0px; } }
    header h1 a {
      padding: 0;
      display: inline-block;
      vertical-align: middle; }
      @media only screen and (max-width: 767px) {
        header h1 a {
          padding: 5px; } }
    header h1 img {
      display: block;
      height: 35px; }
      @media only screen and (max-width: 767px) {
        header h1 img {
          height: 35px;
          padding: 4px 0; } }
  header .hmenu {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
    margin: 22px 0 0 auto;
    padding: 0;
    max-width: 660px; }
    @media only screen and (max-width: 767px) {
      header .hmenu {
        display: none; } }

.header_fontsize {
  padding: 0;
  display: none; }
  .header_fontsize img {
    display: block; }
  .header_fontsize ul {
    display: flex;
    margin: 0 0 0 10px;
    padding: 0;
    height: 28px;
    list-style-type: none;
    overflow: hidden;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3); }
  .header_fontsize li {
    margin: 0;
    padding: 0;
    height: 28px; }
    .header_fontsize li a {
      display: block;
      height: 28px;
      width: 40px;
      overflow: hidden;
      white-space: nowrap;
      background: #000000 url(../img/header_fontsize_btn.png) 0 0 no-repeat;
      text-indent: 200%;
      overflow: hidden;
      white-space: nowrap;
      transition: 0.2s background-color; }
      .header_fontsize li a img {
        display: block; }
    .header_fontsize li.fontsize-m a:hover,
    .header_fontsize li.fontsize-m a:active,
    .header_fontsize li.fontsize-l a:hover,
    .header_fontsize li.fontsize-l a:active {
      background-color: #e7ae00;
      background-position-y: -28px;
      padding: 0; }
    .header_fontsize li.fontsize-m a {
      background-position-x: 0;
      width: 50px; }
    .header_fontsize li.fontsize-l a {
      background-position-x: -50px;
      width: 40px; }

.header_search {
  margin-left: 12px;
  display: none; }
  .header_search .header_search_form > div {
    position: relative; }
  .header_search .searchBox {
    display: block;
    width: 188px;
    height: 28px;
    line-height: 28px;
    box-sizing: border-box;
    padding: 0 5px 0;
    margin: 0;
    border: 0;
    background: transparent;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3) inset; }
  .header_search .searchBtn {
    display: block;
    height: 28px;
    width: 28px;
    background-color: #e7ae00;
    border: none;
    padding: 0;
    cursor: pointer;
    transition: 0.2s all;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 1; }
    .header_search .searchBtn:hover,
    .header_search .searchBtn:active {
      background-color: #e7ae00; }

.hnav {
  margin: 5px 10px 9px 0;
  padding: 0;
  list-style-type: none;
  display: flex; }
  .hnav li {
    margin: 0;
    padding: 0 11px 0 10px;
    background: url("../img/hnav_splitter.png") 100% 50% no-repeat; }
    .hnav li a {
      color: #000000;
      text-decoration: none;
      display: block;
      vertical-align: middle; }
      .hnav li a img {
        max-height: 26px;
        display: block; }

.size {
  margin: 5px 0 9px;
  padding: 0;
  list-style-type: none;
  display: flex; }
  .size li {
    margin: 0; }
    .size li a {
      color: #000000;
      text-decoration: none;
      display: block;
      vertical-align: middle; }
      .size li a img {
        max-height: 26px;
        display: block; }

#header_menubtn {
  display: none; }
  @media only screen and (max-width: 767px) {
    #header_menubtn {
      display: block;
      width: 12px;
      height: 12px;
      position: absolute;
      right: 0;
      top: 0;
      margin: 11px;
      padding: 8px 9px 8px 55px;
      background: #e7ae00 url(../img/header_menu_btn.png) 50% 50% no-repeat;
      background-size: contain; }
      #header_menubtn > span {
        transition: all 0.4s;
        box-sizing: border-box;
        display: block;
        width: 12px;
        height: 12px;
        position: relative; }
        #header_menubtn > span span {
          display: inline-block;
          transition: all 0.4s;
          box-sizing: border-box;
          position: absolute;
          left: 0;
          width: 100%;
          height: 2px;
          background-color: #ffffff;
          border-radius: 2px; }
      #header_menubtn > span span:nth-of-type(1) {
        top: 0; }
      #header_menubtn > span span:nth-of-type(2) {
        top: 5px; }
      #header_menubtn > span span:nth-of-type(3) {
        top: 10px; }
      #header_menubtn:hover > span span:nth-of-type(1),
      #header_menubtn:active > span span:nth-of-type(1) {
        transform: translate3d(3px, 2px, 0) rotate(45deg) scale(0.7, 1); }
      #header_menubtn:hover > span span:nth-of-type(2),
      #header_menubtn:active > span span:nth-of-type(2) {
        transform: rotate(180deg); }
      #header_menubtn:hover > span span:nth-of-type(3),
      #header_menubtn:active > span span:nth-of-type(3) {
        transform: translate3d(3px, -2px, 0) rotate(135deg) scale(0.7, 1); } }

.mm-menu {
  z-index: 100; }
  .mm-menu .mm-breadcrumbs {
    text-align: center; }
  .mm-menu a {
    text-decoration: none; }

nav.gnav {
  width: 100%;
  box-sizing: border-box;
  z-index: 100;
  height: 50px;
  /*
	&.minimize{
		@media screen{
			background: rgba(255, 255, 255, 0.95);
			position: fixed;
			top: 0;
			>ul>li>a{
				padding: 3px 0;
			}
		}
	}
*/ }
  @media only screen and (max-width: 767px) {
    nav.gnav {
      display: none;
      width: auto;
      height: auto; } }
  nav.gnav > ul {
    width: 960px;
    margin: 0 auto;
    padding: 0 0;
    box-sizing: border-box;
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    justify-content: center; }
    @media only screen and (max-width: 767px) {
      nav.gnav > ul {
        width: auto; } }
    nav.gnav > ul > li {
      position: relative;
      margin: 0;
      padding: 0 2.3em;
      background-size: 2px auto; }
      nav.gnav > ul > li > a {
        display: block;
        padding: 15px 0;
        transition: padding 0.2s; }
      nav.gnav > ul > li img {
        height: 100%; }
      nav.gnav > ul > li.active > a {
        border-bottom: 4px solid #e6be43; }
      nav.gnav > ul > li::after {
        content: "";
        display: block;
        background: url(../img/gnav_splitter.png) 50% 50% no-repeat;
        background-size: contain;
        position: absolute;
        right: -1px;
        top: 0;
        width: 2px;
        height: 100%; }
      nav.gnav > ul > li:last-child::after {
        content: none; }
      nav.gnav > ul > li > a {
        position: relative;
        z-index: 1;
        transition: 0.3s all;
        display: block;
        text-decoration: none;
        position: relative; }
        nav.gnav > ul > li > a:hover,
        nav.gnav > ul > li > a:active {
          border-bottom: 4px solid #e6be43; }
          nav.gnav > ul > li > a:hover::after,
          nav.gnav > ul > li > a:active::after {
            transform: scaleX(1); }
        nav.gnav > ul > li > a img {
          display: block; }
      nav.gnav > ul > li.hover .subnav {
        transform: perspective(2000px) rotateX(0deg);
        opacity: 1; }
  nav.gnav .subnav {
    position: absolute;
    top: 100%;
    width: 200%;
    left: 0;
    z-index: 100;
    transform-origin: top center;
    transform: perspective(2000px) rotateX(89.9deg);
    opacity: 0;
    transition: all 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955); }
    nav.gnav .subnav > a {
      display: none; }
    nav.gnav .subnav > ul {
      position: relative;
      left: -25%; }
      nav.gnav .subnav > ul > li.hover ul {
        transform: perspective(2000px) rotateX(0deg);
        opacity: 1; }
      nav.gnav .subnav > ul > li > ul {
        position: absolute;
        top: 0;
        left: 100%;
        width: 200px;
        margin: -1ex 0 0;
        transform-origin: center left;
        transform: perspective(2000px) rotateY(-89.9deg);
        transition: all 0.3s cubic-bezier(0.455, 0.03, 0.515, 0.955);
        opacity: 0; }
        nav.gnav .subnav > ul > li > ul::before {
          top: 0.8em;
          left: -4px;
          transform: scaleY(0.717) translate(0, 0) rotate(45deg); }
    nav.gnav .subnav ul {
      width: 200px;
      border-radius: 3px;
      background: #222222;
      margin: 13px auto 0;
      padding: 1ex 0;
      list-style-type: none;
      display: flex;
      flex-direction: column; }
      nav.gnav .subnav ul::before {
        content: "";
        display: block;
        position: absolute;
        background-color: #222222;
        top: 0;
        left: 50%;
        width: 20px;
        height: 20px;
        transform: scaleX(0.717) translate(-14px, -5px) rotate(45deg);
        z-index: 1; }
      nav.gnav .subnav ul li {
        margin: 0;
        padding: 0;
        position: relative;
        z-index: 2; }
        nav.gnav .subnav ul li a {
          display: block;
          padding: 1ex 15px 1ex 28px;
          background: url(../img/subnav_arrow.png) 15px 50% no-repeat;
          background-size: 6px 9px;
          text-decoration: none;
          color: #ffffff;
          line-height: 1.2;
          background-color: #222222;
          transition: 0.2s all;
          font-family: "M PLUS 1p", "Mplus 1p", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
          font-display: swap;
          font-weight: 500;
          font-size: 90%; }
          nav.gnav .subnav ul li a > span {
            display: block;
            transform: rotate(0.05deg); }
          nav.gnav .subnav ul li a:hover,
          nav.gnav .subnav ul li a:active {
            background-color: #e7ae00; }

.gnav_sp {
  display: none;
  margin: 0 10px 5px;
  border: 1px solid #cccccc;
  border-radius: 5px;
  overflow: hidden; }
  @media only screen and (max-width: 767px) {
    .gnav_sp {
      display: block; } }
  .gnav_sp ul {
    list-style-type: none;
    margin: 0;
    padding: 0;
    display: flex;
    justify-content: stretch;
    align-items: stretch;
    width: 100%; }
    .gnav_sp ul li {
      text-align: center;
      display: flex;
      flex-grow: 1;
      justify-content: stretch;
      align-items: stretch;
      border-right: 1px solid #cccccc; }
      .gnav_sp ul li:last-child {
        border-right: 0; }
      .gnav_sp ul li:nth-child(n+4):not(:last-child) {
        display: none; }
      .gnav_sp ul li a {
        flex-grow: 1;
        display: block;
        text-decoration: none;
        padding: 5px;
        line-height: 120%;
        color: #444444;
        transition: 0.2s all; }
        .gnav_sp ul li a i {
          display: block;
          text-align: center;
          font-size: 180%;
          line-height: 120%;
          margin-bottom: 5px; }
        .gnav_sp ul li a:hover,
        .gnav_sp ul li a:active {
          color: #ffffff;
          background: #333333; }

.mm-menu.mm-offcanvas {
  z-index: 10; }

@media only screen and (max-width: 767px) {
  #sp_nav_close {
    display: block;
    width: 20px;
    height: 24px;
    position: absolute;
    top: 0;
    left: 0;
    padding: 8px; }
    #sp_nav_close > span {
      transition: all 0.4s;
      box-sizing: border-box;
      display: block;
      width: 20px;
      height: 24px;
      margin-top: 5px;
      position: relative; }
      #sp_nav_close > span span {
        display: inline-block;
        transition: all 0.4s;
        box-sizing: border-box;
        position: absolute;
        left: 0;
        width: 100%;
        height: 2px;
        background-color: #00b390;
        border-radius: 2px; }
    #sp_nav_close > span span:nth-of-type(1) {
      top: 0;
      transform: translate3d(3px, 3px, 0) rotate(-45deg) scale(0.55, 1); }
    #sp_nav_close > span span:nth-of-type(2) {
      top: 6px;
      transform: rotate(45deg); }
    #sp_nav_close > span span:nth-of-type(3) {
      top: 12px;
      transform: translate3d(-3px, -3px, 0) rotate(-45deg) scale(0.55, 1); }
    #sp_nav_close:hover,
    #sp_nav_close:active {
      background: transparent !important; }
      #sp_nav_close:hover > span span,
      #sp_nav_close:active > span span {
        background-color: #e57613; } }

#hmenu_overlay {
  display: none; }
  @media only screen and (max-width: 767px) {
    #hmenu_overlay {
      position: fixed;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.4);
      top: 0;
      left: 0;
      display: none;
      z-index: 4000;
      /* nappa */ } }

/*** main ***/
.main {
  margin: 0 auto 0;
  padding: 0;
  position: relative;
  z-index: 1; }
  .main:after {
    content: "";
    display: block;
    clear: both; }
  @media only screen and (max-width: 767px) {
    .main {
      width: auto;
      margin: 0 auto 0px;
      padding: 0 0 0;
      min-width: 320px;
      box-sizing: border-box;
      overflow: hidden;
      background: none; } }
  .main h2 {
    color: #333333;
    font-size: 210%;
    font-family: "M PLUS 1p", "Mplus 1p", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-display: swap;
    font-weight: 500;
    letter-spacing: 0.3ex;
    text-align: center; }
    @media only screen and (max-width: 767px) {
      .main h2 {
        font-size: 160%;
        letter-spacing: 0; } }
    .main h2 img.h2_icon {
      display: inline-block;
      vertical-align: -50%;
      height: 80px;
      width: 80px;
      background-size: contain;
      margin-right: 1ex; }
      @media only screen and (max-width: 767px) {
        .main h2 img.h2_icon {
          height: 2em;
          width: 2em;
          margin-right: 0.5ex; } }
  .main h2:first-child,
  .main .h2:first-child {
    margin-top: 0em;
    margin-bottom: 0em; }
  .main h3,
  .main .h3 {
    font-size: 160%;
    color: #402618;
    padding: 0 1ex;
    margin: 2.5em 10px 1em;
    font-family: "M PLUS 1p", "Mplus 1p", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-display: swap;
    font-weight: 500;
    line-height: 160%;
    position: relative; }
    .main h3::before,
    .main .h3::before {
      content: "";
      position: absolute;
      display: block;
      top: 0;
      left: 0;
      width: 6px;
      height: 100%;
      background-color: #e7ae00; }
    .main h3 > span,
    .main .h3 > span {
      display: inline-block;
      padding-right: 1ex;
      background-color: #ffffff; }
    @media only screen and (max-width: 767px) {
      .main h3,
      .main .h3 {
        font-size: 136%; } }
  .main h2 + h3,
  .main h2 + .h3 {
    margin-top: 20px; }
  .main h3:first-child,
  .main .h3:first-child {
    margin-top: 0em; }
  .main h4,
  .main .h4 {
    position: relative;
    padding: 0.5ex 1ex;
    margin: 2em 0 20px;
    font-size: 133.3%;
    color: #402618;
    background-color: #ffefc2;
    line-height: 1.5;
    border-radius: 3px; }
    @media only screen and (max-width: 767px) {
      .main h4,
      .main .h4 {
        font-size: 112%; } }
  .main h4:first-child,
  .main .h4:first-child,
  .main h3 + h4,
  .main h3 + .h4,
  .main .h3 + h4,
  .main .h3 + .h4 {
    margin-top: 0;
    margin-bottom: 20px; }
  .main .columned h4,
  .main .columned .h4 {
    margin-left: 0; }
  .main h5,
  .main .h5 {
    position: relative;
    font-size: 105%;
    color: #402618;
    border-bottom: 1px solid #402618;
    line-height: 1.5; }
    @media only screen and (max-width: 767px) {
      .main h5,
      .main .h5 {
        font-size: 100%; } }
  .main h5:first-child,
  .main .h5:first-child,
  .main h3 + h5,
  .main .h3 + h5,
  .main h4 + h5,
  .main .h4 + h5,
  .main h3 + .h5,
  .main .h3 + .h5,
  .main h4 + .h5,
  .main .h4 + .h5 {
    margin-top: 0; }
  .main h6,
  .main .h6 {
    margin: 1ex 15px 0.5ex;
    font-size: 100%;
    color: #666666; }
    @media only screen and (max-width: 767px) {
      .main h6,
      .main .h6 {
        font-size: 100%; } }
  .main h6:first-child,
  .main .h6:first-child,
  .main h5 + h6,
  .main .h5 + h6,
  .main h5 + .h6,
  .main .h5 + .h6 {
    margin-top: 0; }
  .main .main_body {
    width: 960px;
    padding: 5px 40px 100px;
    background: #ffffff;
    margin: auto;
    min-height: 480px; }
    @media only screen and (max-width: 767px) {
      .main .main_body {
        width: auto;
        padding: 5px 15px 0; } }
    .main .main_body .header_img {
      margin-bottom: 2em; }
  .main .main_content_wrapper {
    margin-top: 3em;
    display: flex;
    justify-content: space-between; }
    @media only screen and (max-width: 767px) {
      .main .main_content_wrapper {
        display: block; } }
    .main .main_content_wrapper .main_content {
      width: 960px;
      margin: 0; }
      @media only screen and (max-width: 767px) {
        .main .main_content_wrapper .main_content {
          width: auto;
          min-height: 0;
          float: none;
          margin-bottom: 40px; } }
      .main .main_content_wrapper .main_content > p {
        margin: 1em 15px; }
    .main .main_content_wrapper .side {
      display: none;
      width: 220px;
      float: right; }
      @media only screen and (max-width: 767px) {
        .main .main_content_wrapper .side {
          display: block; } }
      @media only screen and (max-width: 767px) {
        .main .main_content_wrapper .side {
          width: auto;
          float: none; } }
      .main .main_content_wrapper .side .snav_only {
        display: block; }
      .main .main_content_wrapper .side .snav a {
        text-decoration: none;
        display: block; }
      .main .main_content_wrapper .side .snav > a,
      .main .main_content_wrapper .side .snav > span {
        display: block;
        border-bottom: 1px solid #00c11e;
        padding: 1em 1ex;
        color: #333333;
        background: #f2fcf4;
        text-align: center;
        font-size: 110%;
        line-height: 1.4;
        font-family: "M PLUS 1p", "Mplus 1p", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
        font-display: swap;
        font-weight: 500;
        letter-spacing: 0.1ex;
        margin-bottom: 5px; }
      .main .main_content_wrapper .side .snav ul {
        margin: 0;
        padding: 0 0 0 10px;
        list-style-type: none; }
        .main .main_content_wrapper .side .snav ul li {
          margin: 0 0;
          padding: 0 0;
          display: block;
          border-top: 1px dotted #cccccc; }
          .main .main_content_wrapper .side .snav ul li ul {
            padding: 0 0;
            display: none; }
          .main .main_content_wrapper .side .snav ul li.active > a {
            font-weight: bold;
            background-color: #f2fac8; }
          .main .main_content_wrapper .side .snav ul li.active ul {
            display: block; }
          .main .main_content_wrapper .side .snav ul li > a {
            background: url(../img/btn_arrow.png) 6px 50% no-repeat;
            background-size: 6px 6px;
            padding: 1ex 0 1ex 18px;
            font-size: 95%;
            line-height: 1.4;
            color: #333333;
            transition: 0.2s all; }
            .main .main_content_wrapper .side .snav ul li > a:hover,
            .main .main_content_wrapper .side .snav ul li > a:active {
              background-color: #ffefc2; }
          .main .main_content_wrapper .side .snav ul li li {
            margin: 0 0 0 15px; }
      .main .main_content_wrapper .side .snav > ul {
        padding: 0; }
        .main .main_content_wrapper .side .snav > ul > li:first-child {
          border-top: none; }

.snav_only {
  display: none; }

.main_header {
  display: flex;
  width: 960px;
  margin: auto;
  align-items: center;
  justify-content: space-between; }
  @media only screen and (max-width: 767px) {
    .main_header {
      width: auto;
      display: block; } }

.sns_btn {
  min-height: 20px;
  vertical-align: middle;
  margin: 0;
  padding: 0;
  list-style-type: none;
  display: flex;
  min-width: 250px;
  justify-content: flex-end; }
  .sns_btn > li {
    margin: 0 3px;
    padding: 0; }
  .sns_btn .fb_iframe_widget > span {
    vertical-align: baseline !important; }

.breadcrumbs {
  width: 960px;
  margin: 0 0 30px 0;
  padding: 10px 0;
  border-bottom: 1px solid #ddd;
  list-style-type: none;
  display: flex;
  flex-wrap: wrap;
  font-size: 85%; }
  @media only screen and (max-width: 767px) {
    .breadcrumbs {
      width: auto;
      margin: 1ex 0 4ex;
      padding: 0 10px; } }
  .breadcrumbs li {
    margin: 0;
    padding: 0;
    display: inline-block;
    vertical-align: middle;
    color: #000000; }
    .breadcrumbs li:first-child img {
      height: 13px;
      vertical-align: middle; }
    .breadcrumbs li a {
      color: #000000;
      text-decoration: none; }
      .breadcrumbs li a:hover,
      .breadcrumbs li a:active {
        text-decoration: underline; }
    .breadcrumbs li:not(:last-child)::after {
      content: ">";
      margin: 0 1ex;
      font-size: 100%;
      color: #444444;
      display: inline-block;
      vertical-align: baseline; }

/*** footer ***/
footer {
  text-align: center;
  margin: 5px 0 9px;
  padding: 0;
  list-style-type: none; }
  @media only screen and (max-width: 767px) {
    footer {
      padding: 50px 10px 100px; } }
  footer .footer_banners {
    box-sizing: border-box;
    padding: 5px 25px;
    width: 960px;
    margin: 0 auto 30px;
    background-color: #524a46; }
    @media only screen and (max-width: 767px) {
      footer .footer_banners {
        width: auto;
        margin: 0 auto 20px; } }
    footer .footer_banners ul {
      width: 840px;
      margin: 0 auto;
      padding: 0 10px;
      list-style-type: none; }
      @media only screen and (max-width: 767px) {
        footer .footer_banners ul {
          width: auto; } }
      footer .footer_banners ul li {
        margin: 0;
        padding: 10px 5px;
        display: inline-block;
        vertical-align: middle;
        text-align: center; }
        footer .footer_banners ul li img {
          margin: auto; }
  footer .slick-prev,
  footer .slick-next {
    display: block;
    width: 25px;
    height: 26px; }
  footer .slick-prev:before {
    background: url(../img/footer_banners_arrow_l.png) 50% 50% no-repeat;
    background-size: contain; }
  footer .slick-next:before {
    background: url(../img/footer_banners_arrow_r.png) 50% 50% no-repeat;
    background-size: contain; }
  footer .slick-prev:before,
  footer .slick-next:before {
    content: "";
    display: block;
    width: 25px;
    height: 26px; }
  footer .footer_body {
    margin: auto;
    width: 960px;
    background: rgba(255, 255, 255, 0.86);
    padding: 25px;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      footer .footer_body {
        width: auto; } }
  footer .fnav {
    background-color: #faf8f4;
    text-align: left;
    margin-bottom: 1em;
    padding: 1.5em 0;
    width: 100%;
    margin: auto;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    @media only screen and (max-width: 767px) {
      footer .fnav {
        width: auto; } }
    footer .fnav .fnav_none {
      display: none; }
    footer .fnav > ul {
      list-style-type: none;
      margin: 0;
      padding: 0 0 1ex;
      display: flex;
      justify-content: center; }
      @media only screen and (max-width: 767px) {
        footer .fnav > ul {
          display: block; } }
      footer .fnav > ul a {
        background-size: 7px 10px;
        padding: 0.5ex 0 0.5ex 10px;
        line-height: 1.3;
        color: #ffffff;
        display: block;
        text-decoration: none;
        font-family: "M PLUS 1p", "Mplus 1p", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
        font-display: swap;
        font-weight: 500; }
        @media only screen and (max-width: 767px) {
          footer .fnav > ul a {
            padding: 1em;
            border-top: 1px solid rgba(229, 192, 62, 0.2); } }
        footer .fnav > ul a:hover,
        footer .fnav > ul a:active {
          text-decoration: underline; }
      footer .fnav > ul > li {
        background: url(../img/hnav_splitter.png) 100% 50% no-repeat;
        margin: 0;
        padding: 0 1.3em; }
        @media only screen and (max-width: 767px) {
          footer .fnav > ul > li {
            background: none; } }

.footer_content {
  width: 800px;
  margin: 30px auto;
  padding-bottom: 50px; }
  @media only screen and (max-width: 767px) {
    .footer_content {
      width: 100%; } }

footer .footer_logo {
  float: left;
  width: 50%; }
  @media only screen and (max-width: 767px) {
    footer .footer_logo {
      width: 100%;
      margin-bottom: 30px; } }

footer .footer_copy {
  float: right;
  width: 50%;
  font-size: 85%;
  text-align: left; }
  @media only screen and (max-width: 767px) {
    footer .footer_copy {
      width: 100%;
      text-align: center; } }

.totop {
  z-index: 100;
  position: relative;
  padding: 0 20px;
  margin: 0 auto; }
  @media only screen and (max-width: 767px) {
    .totop {
      width: auto;
      height: 0px; } }
  .totop > div {
    width: 84px;
    margin: 0 0 0 auto; }
    @media only screen and (max-width: 767px) {
      .totop > div {
        margin: 0 auto; } }
  .totop a {
    display: block;
    position: fixed;
    bottom: -80px;
    margin: 0 0 0 auto;
    width: 84px;
    height: 84px;
    border-radius: 50%;
    border: 1px solid #ffffff;
    background: rgba(236, 211, 174, 0.7) url(../img/arrow_totop.svg) 50% 50% no-repeat;
    background-size: 28px 16px;
    white-space: nowrap;
    text-indent: 200%;
    overflow: hidden;
    transition: background 0.2s; }
    @media only screen and (max-width: 767px) {
      .totop a {
        margin: 0 auto; } }
    .totop a.finished {
      position: absolute;
      bottom: 20px !important; }
    .totop a img {
      width: 100%;
      display: block;
      margin: auto; }
    .totop a:hover,
    .totop a:active {
      background-color: rgba(223, 169, 88, 0.7); }

.wp_wrapper .side-by-side {
  display: flex;
  margin: 0;
  padding: 0;
  list-style-type: none;
  justify-content: center; }
  .wp_wrapper .side-by-side li {
    margin: 0;
    padding: 0; }
  @media only screen and (max-width: 767px) {
    .wp_wrapper .side-by-side {
      display: block; }
      .wp_wrapper .side-by-side img {
        margin: auto;
        display: block; }
      .wp_wrapper .side-by-side figure {
        margin: auto; } }

.wp_wrapper figure {
  margin: 1em; }
  @media only screen and (max-width: 767px) {
    .wp_wrapper figure {
      margin: auto; } }

@media only screen and (max-width: 767px) {
  .wp_wrapper .alignleft,
  .wp_wrapper .alignright {
    display: block;
    width: auto;
    height: auto;
    margin: auto;
    float: none; }
  .wp_wrapper #wpadminbar {
    display: none; } }

.ttl_img {
  padding: 0;
  margin-bottom: 30px; }

.ttl_text {
  font-size: 105%;
  font-weight: bold;
  float: none; }

@media print {
  #totop {
    display: none; } }

/*** column ***/
.floatImgR, .floatImgL, .floatColumnR, .floatColumnL {
  max-width: 320px;
  display: block; }
  .mini_column.floatImgR, .mini_column.floatImgL, .mini_column.floatColumnR, .mini_column.floatColumnL {
    max-width: 180px; }

.floatImgR {
  margin: 0 0 15px 15px;
  float: right;
  text-align: center; }
  .floatImgR img {
    display: block; }

.floatImgL {
  margin: 0 15px 15px 0px;
  float: left;
  text-align: center; }
  .floatImgL img {
    display: block; }

.floatColumnR {
  margin: 0 0 15px 15px;
  float: right; }
  .floatColumnR img {
    display: block; }

.floatColumnL {
  margin: 0 15px 15px 0px;
  float: left; }
  .floatColumnL img {
    display: block; }

@media only screen and (max-width: 767px) {
  .floatImgR,
  .floatImgL,
  .floatColumnR,
  .floatColumnL {
    max-width: 100%;
    float: none;
    margin: 1ex auto; } }

.wp_wrapper img {
  height: auto !important; }

/*** table ***/
.wp_wrapper table,
.bordered_table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid #c1c1c1;
  box-sizing: border-box;
  margin: 1em 15px; }
  @media only screen and (max-width: 767px) {
    .wp_wrapper table,
    .bordered_table {
      margin: 1ex 5px;
      width: 100%; } }
  .wp_wrapper table td,
  .bordered_table td {
    padding: 0.8ex 1ex;
    vertical-align: middle;
    border: 1px solid #dddddd;
    background: #ffffff; }
  .wp_wrapper table th,
  .bordered_table th {
    width: 40%;
    color: #000000;
    padding: 0.8ex 1ex;
    vertical-align: middle;
    text-align: center;
    border: 1px solid #dddddd;
    background: #fff9e8;
    font-weight: normal; }
    .wp_wrapper table th.alignRight,
    .bordered_table th.alignRight {
      text-align: right; }
    .wp_wrapper table th.alignCenter,
    .bordered_table th.alignCenter {
      text-align: center; }
  .wp_wrapper table thead th,
  .bordered_table thead th {
    color: #ffffff;
    padding: 0.8ex 1em;
    background: #e7ae00;
    text-align: center;
    border: 1px solid #b99738;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
  .wp_wrapper table caption,
  .bordered_table caption {
    text-align: right;
    caption-side: bottom; }
  .wp_wrapper table td.icon-cell,
  .bordered_table td.icon-cell {
    vertical-align: middle; }
    .wp_wrapper table td.icon-cell img,
    .bordered_table td.icon-cell img {
      width: 60px;
      display: block;
      margin: 2px auto; }
  .wp_wrapper table td.num-cell,
  .bordered_table td.num-cell {
    text-align: right; }
  .wp_wrapper table.simple,
  .bordered_table.simple {
    /*
		@media only screen and (max-width: 767px){
			width: auto;
			th{
				width: auto;
			}
		}
		*/ }
    .wp_wrapper table.simple th,
    .bordered_table.simple th {
      width: 45%; }
  .wp_wrapper table.standard,
  .bordered_table.standard {
    /*
		@media only screen and (max-width: 767px){
			width: auto;
			tbody th{
				width: auto;
			}
		}
		*/ }
    .wp_wrapper table.standard tbody th,
    .bordered_table.standard tbody th {
      width: 30%; }
  .wp_wrapper table table,
  .bordered_table table {
    margin: 0;
    width: 100%; }
    .wp_wrapper table table th,
    .bordered_table table th {
      background: #f1f2f2; }
  @media only screen and (max-width: 767px) {
    .wp_wrapper table.responsive_table_nojs,
    .bordered_table.responsive_table_nojs {
      border-bottom: none;
      border-left: none;
      border-right: none;
      display: block;
      box-sizing: border-box; }
      .wp_wrapper table.responsive_table_nojs thead,
      .wp_wrapper table.responsive_table_nojs tbody,
      .wp_wrapper table.responsive_table_nojs tr,
      .bordered_table.responsive_table_nojs thead,
      .bordered_table.responsive_table_nojs tbody,
      .bordered_table.responsive_table_nojs tr {
        display: block;
        width: 100%; }
      .wp_wrapper table.responsive_table_nojs th,
      .wp_wrapper table.responsive_table_nojs td,
      .bordered_table.responsive_table_nojs th,
      .bordered_table.responsive_table_nojs td {
        display: block;
        box-sizing: border-box;
        width: 100%;
        border-top: none;
        white-space: normal; }
      .wp_wrapper table.responsive_table_nojs.simple th,
      .wp_wrapper table.responsive_table_nojs.standard th,
      .bordered_table.responsive_table_nojs.simple th,
      .bordered_table.responsive_table_nojs.standard th {
        width: 100%; } }
  .wp_wrapper table ul,
  .bordered_table ul {
    margin: 1ex 0;
    padding: 0 0 0 2em; }
  .wp_wrapper table .cell_middle,
  .bordered_table .cell_middle {
    vertical-align: middle; }

.info_table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid #c1c1c1;
  box-sizing: border-box; }
  @media only screen and (max-width: 767px) {
    .info_table {
      width: 100%; } }
  .info_table td {
    padding: 0.8ex 1ex;
    vertical-align: middle;
    border: 1px solid #dddddd;
    background: #ffffff; }
  .info_table th {
    width: 5%;
    color: #000000;
    padding: 0.8ex 1ex;
    vertical-align: middle;
    text-align: center;
    border: 1px solid #dddddd;
    background: #fff9e8;
    font-weight: normal; }
    .info_table th.alignRight {
      text-align: right; }
    .info_table th.alignCenter {
      text-align: center; }
  .info_table thead th {
    color: #ffffff;
    padding: 0.8ex 1em;
    background: #e7ae00;
    text-align: center;
    border: 1px solid #b99738;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
  .info_table caption {
    text-align: right;
    caption-side: bottom; }
  .info_table td.icon-cell {
    vertical-align: middle; }
    .info_table td.icon-cell img {
      width: 60px;
      display: block;
      margin: 2px auto; }
  .info_table td.num-cell {
    text-align: right; }
  .info_table.simple {
    /*
		@media only screen and (max-width: 767px){
			width: auto;
			th{
				width: auto;
			}
		}
		*/ }
    .info_table.simple th {
      width: 45%; }
  .info_table.standard {
    /*
		@media only screen and (max-width: 767px){
			width: auto;
			tbody th{
				width: auto;
			}
		}
		*/ }
    .info_table.standard tbody th {
      width: 30%; }
  .info_table table {
    margin: 0;
    width: 100%; }
    .info_table table th {
      background: #f1f2f2; }
  @media only screen and (max-width: 767px) {
    .info_table.responsive_table_nojs {
      border-bottom: none;
      border-left: none;
      border-right: none;
      display: block;
      box-sizing: border-box; }
      .info_table.responsive_table_nojs thead,
      .info_table.responsive_table_nojs tbody,
      .info_table.responsive_table_nojs tr {
        display: block;
        width: 100%; }
      .info_table.responsive_table_nojs th,
      .info_table.responsive_table_nojs td {
        display: block;
        box-sizing: border-box;
        width: 100%;
        border-top: none;
        white-space: normal; }
      .info_table.responsive_table_nojs.simple th,
      .info_table.responsive_table_nojs.standard th {
        width: 100%; } }
  .info_table ul {
    margin: 1ex 0;
    padding: 0 0 0 2em; }
  .info_table .cell_middle {
    vertical-align: middle; }

.life_table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid #c1c1c1;
  box-sizing: border-box;
  margin: 1em 15px; }
  @media only screen and (max-width: 767px) {
    .life_table {
      margin: 1ex 5px;
      width: 98%; } }
  .life_table td {
    padding: 0.8ex 1ex;
    vertical-align: middle;
    border: 1px solid #dddddd;
    background: #ffffff; }
  .life_table th {
    width: 30%;
    color: #000000;
    padding: 0.8ex 1ex;
    vertical-align: middle;
    text-align: center;
    border: 1px solid #dddddd;
    background: #fff9e8;
    font-weight: normal; }
    .life_table th.alignRight {
      text-align: right; }
    .life_table th.alignCenter {
      text-align: center; }
  .life_table thead th {
    color: #ffffff;
    padding: 0.8ex 1em;
    background: #e7ae00;
    text-align: center;
    border: 1px solid #b99738;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
  .life_table caption {
    text-align: right;
    caption-side: bottom; }
  .life_table td.icon-cell {
    vertical-align: middle; }
    .life_table td.icon-cell img {
      width: 60px;
      display: block;
      margin: 2px auto; }
  .life_table td.num-cell {
    text-align: right; }
  .life_table.simple {
    /*
		@media only screen and (max-width: 767px){
			width: auto;
			th{
				width: auto;
			}
		}
		*/ }
    .life_table.simple th {
      width: 45%; }
  .life_table.standard {
    /*
		@media only screen and (max-width: 767px){
			width: auto;
			tbody th{
				width: auto;
			}
		}
		*/ }
    .life_table.standard tbody th {
      width: 30%; }
  .life_table table {
    margin: 0;
    width: 100%; }
    .life_table table th {
      background: #f1f2f2; }
  @media only screen and (max-width: 767px) {
    .life_table.responsive_table_nojs {
      border-bottom: none;
      border-left: none;
      border-right: none;
      display: block;
      box-sizing: border-box; }
      .life_table.responsive_table_nojs thead,
      .life_table.responsive_table_nojs tbody,
      .life_table.responsive_table_nojs tr {
        display: block;
        width: 100%; }
      .life_table.responsive_table_nojs th,
      .life_table.responsive_table_nojs td {
        display: block;
        box-sizing: border-box;
        width: 100%;
        border-top: none;
        white-space: normal; }
      .life_table.responsive_table_nojs.simple th,
      .life_table.responsive_table_nojs.standard th {
        width: 100%; } }
  .life_table ul {
    margin: 1ex 0;
    padding: 0 0 0 2em; }
  .life_table .cell_middle {
    vertical-align: middle; }

.life_table_wrapper {
  width: 50%;
  margin: 0 0 1em;
  padding: 0 20%; }
  .main_content > .life_table_wrapper {
    margin: 0 0 1em; }
  .life_table_wrapper .bordered_table {
    margin: 0; }

.magazine_table {
  width: 56%;
  border-collapse: collapse;
  border-spacing: 0;
  border: 1px solid #c1c1c1;
  box-sizing: border-box;
  margin: 1em 15px; }
  @media only screen and (max-width: 767px) {
    .magazine_table {
      margin: 1ex 5px;
      width: 98%; } }
  .magazine_table td {
    width: 10%;
    text-align: center;
    padding: 0.8ex 1ex;
    vertical-align: middle;
    border: 1px solid #dddddd;
    background: #ffffff; }
  .magazine_table th {
    width: 60%;
    text-align: left;
    color: #000000;
    padding: 0.8ex 1ex;
    vertical-align: middle;
    border: 1px solid #dddddd;
    background: #fff9e8;
    font-weight: normal; }
    .magazine_table th.alignRight {
      text-align: right; }
    .magazine_table th.alignCenter {
      text-align: center; }
  .magazine_table thead th {
    color: #ffffff;
    padding: 0.8ex 1em;
    background: #e7ae00;
    text-align: center;
    border: 1px solid #b99738;
    font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; }
  .magazine_table caption {
    text-align: right;
    caption-side: bottom; }
  .magazine_table td.icon-cell {
    vertical-align: middle; }
    .magazine_table td.icon-cell img {
      width: 60px;
      display: block;
      margin: 2px auto; }
  .magazine_table td.num-cell {
    text-align: right; }
  .magazine_table.simple {
    /*
		@media only screen and (max-width: 767px){
			width: auto;
			th{
				width: auto;
			}
		}
		*/ }
    .magazine_table.simple th {
      width: 45%; }
  .magazine_table.standard {
    /*
		@media only screen and (max-width: 767px){
			width: auto;
			tbody th{
				width: auto;
			}
		}
		*/ }
    .magazine_table.standard tbody th {
      width: 30%; }
  .magazine_table table {
    margin: 0;
    width: 100%; }
    .magazine_table table th {
      background: #f1f2f2; }
  @media only screen and (max-width: 767px) {
    .magazine_table.responsive_table_nojs {
      border-bottom: none;
      border-left: none;
      border-right: none;
      display: block;
      box-sizing: border-box; }
      .magazine_table.responsive_table_nojs thead,
      .magazine_table.responsive_table_nojs tbody,
      .magazine_table.responsive_table_nojs tr {
        display: block;
        width: 100%; }
      .magazine_table.responsive_table_nojs th,
      .magazine_table.responsive_table_nojs td {
        display: block;
        box-sizing: border-box;
        width: 100%;
        border-top: none;
        white-space: normal; }
      .magazine_table.responsive_table_nojs.simple th,
      .magazine_table.responsive_table_nojs.standard th {
        width: 100%; } }
  .magazine_table ul {
    margin: 1ex 0;
    padding: 0 0 0 2em; }
  .magazine_table .cell_middle {
    vertical-align: middle; }

.magazine_table_wrapper {
  float: right;
  padding: 0;
  width: 66%; }
  .main_content > .magazine_table_wrapper {
    margin: 0 0 1em; }
  .magazine_table_wrapper .bordered_table {
    margin: 0; }
  .magazine_table_wrapper .main_content > .table_wrapper {
    padding: 0 15px; }

@media only screen and (max-width: 767px) {
  .life_table_wrapper {
    width: auto;
    padding: 0;
    margin: 1ex 0 1em;
    overflow-x: auto; }
    .life_table_wrapper .sp_fix {
      width: 710px; }
    .main_content > .life_table_wrapper {
      margin: 1ex 0 1em; }
  .life_table_wrapper .bordered_table {
    margin: 0; } }

.table_wrapper {
  width: 40%;
  margin: 0 0 1em;
  padding: 0 0; }
  .main_content > .table_wrapper {
    margin: 0 0 1em; }
  .table_wrapper .bordered_table {
    margin: 0; }

.main_content > .table_wrapper {
  padding: 0 15px; }

@media only screen and (max-width: 767px) {
  .table_wrapper {
    width: auto;
    padding: 0;
    margin: 1ex 0 1em;
    overflow-x: auto; }
    .table_wrapper .sp_fix {
      width: 710px; }
    .main_content > .table_wrapper {
      margin: 1ex 0 1em; }
  .table_wrapper .bordered_table {
    margin: 0; } }

.contents_table {
  width: 100%; }
  .main_content > .contents_table {
    margin: 0 0 1em; }
  .contents_table .bordered_table {
    margin: 0; }
  .contents_table .main_content > .table_wrapper {
    padding: 0 15px; }

.store_table {
  float: left;
  width: 625px;
  padding: 0; }
  .main_content > .store_table {
    margin: 0 0 1em; }
  .store_table .bordered_table {
    margin: 0; }
  .store_table .main_content > .table_wrapper {
    padding: 0 15px; }

@media only screen and (max-width: 767px) {
  .store_table {
    width: 100%;
    padding: 0;
    margin: 1ex 0 1em;
    overflow-x: auto; }
    .store_table .sp_fix {
      width: 710px; }
    .main_content > .store_table {
      margin: 1ex 0 1em; }
  .store_table .bordered_table {
    margin: 0; } }

.magazine_list {
  width: 100%;
  opacity: 1;
  transition: opacity 0.4s ease-in-out; }
  .magazine_list.slick-initialized {
    opacity: 1; }
  .magazine_list .slick-slide,
  .magazine_list a,
  .magazine_list img {
    width: 180px;
    display: block; }
  .magazine_list .slick-slide {
    padding: 30px 5px;
    transition: all 0.2s ease-out; }
  .magazine_list a {
    transition: transform 0.2s ease-out;
    position: relative;
    top: 0;
    left: 0; }
    .magazine_list a::before {
      content: '';
      display: block;
      width: 100%;
      height: 100%;
      position: absolute;
      top: 0;
      left: 0;
      background-color: rgba(0, 0, 0, 0.3);
      transition: opacity 0.2s ease-in-out; }
  .magazine_list .slick-slide:hover,
  .magazine_list .slick-center {
    padding-left: 15px;
    padding-right: 15px; }
    .magazine_list .slick-slide:hover a,
    .magazine_list .slick-center a {
      transform: scale(1.1);
      box-shadow: 0 0 13px 0 rgba(0, 0, 0, 0.4); }
      .magazine_list .slick-slide:hover a::before,
      .magazine_list .slick-center a::before {
        opacity: 0; }

.top_magazine__slider {
  width: 100%; }
  .top_magazine__slider .magazine_slider__box {
    width: 200px;
    padding: 20px; }
  .top_magazine__slider .slick-center {
    width: 240px;
    padding-top: 0px; }

/*** misc ***/
.related_link > ul,
.link_list {
  margin: 1em 0;
  padding: 0;
  list-style-type: none;
  line-height: 140%; }
  @media only screen and (max-width: 767px) {
    .related_link > ul,
    .link_list {
      border-bottom: 1px dotted #99d0d2; } }
  .related_link > ul ul,
  .link_list ul {
    margin: 0;
    padding: 0 0 0 0;
    list-style-type: none; }
  ul .related_link > ul,
  ul .link_list {
    margin: 0 0 1ex;
    padding: 0;
    list-style-type: none; }
  .related_link > ul li,
  .link_list li {
    margin: 1ex 0;
    padding: 0 15px 0 20px;
    list-style-type: none; }
    @media only screen and (max-width: 767px) {
      .related_link > ul li,
      .link_list li {
        margin: 0 0;
        padding: 0 0;
        border-top: 1px dotted #99d0d2; } }
  .related_link > ul a,
  .link_list a {
    padding: 0 0 0 20px;
    margin: 0;
    background: url(../img/btn_arrow.png) 0 50% no-repeat;
    background-size: 10px 14px;
    text-decoration: none;
    font-weight: bold; }
    .related_link > ul a:hover,
    .related_link > ul a:active,
    .link_list a:hover,
    .link_list a:active {
      text-decoration: underline; }
    @media only screen and (max-width: 767px) {
      .related_link > ul a,
      .link_list a {
        display: block;
        padding: 1.2ex 15px 1.2ex 28px;
        background-position: 10px 50%; } }

.ext::after,
.pdf::after {
  content: "";
  display: inline-block;
  vertical-align: middle;
  background-size: contain;
  margin-left: 0.5ex; }

.ext::after {
  width: 16px;
  height: 16px;
  background: url(../img/icon_ext.png) 50% 50% no-repeat;
  background-size: contain; }

.pdf::after {
  width: 16px;
  height: 16px;
  background: url(../img/icon_pdf.svg) 50% 50% no-repeat;
  background-size: contain; }

a.btn,
.btn {
  display: inline-block;
  padding: 0.6ex 2.2em;
  color: #0b0b0b;
  text-decoration: none;
  transition: 0.2s all;
  background-color: #ffffff;
  border: 2px solid #e7ae00;
  font-weight: bold; }
  a.btn::before,
  .btn::before {
    content: "";
    display: inline-block;
    margin: 0 1ex 0 0;
    width: 9px;
    height: 12px;
    background: url(../img/btn_arrow.png) 50% 50%;
    background-size: contain;
    background-size: 9px 12px;
    vertical-align: middle; }
  a.btn:link,
  a.btn:visited,
  .btn:link,
  .btn:visited {
    text-decoration: none; }
  a.btn:hover,
  a.btn:active,
  a:hover a.btn,
  a:active a.btn,
  .btn:hover,
  .btn:active,
  a:hover .btn,
  a:active .btn {
    background-color: #e7ae00; }
  a.btn.ext::after,
  .btn.ext::after {
    width: 16px;
    height: 16px;
    background: url(../img/icon_ext.png) 50% 50% no-repeat;
    background-size: contain; }
  a.btn.btn_label,
  .btn.btn_label {
    font-size: 85%;
    padding: 0.3ex 1.2em; }
    a.btn.btn_label::before,
    .btn.btn_label::before {
      content: none; }
    a.btn.btn_label.pdf,
    .btn.btn_label.pdf {
      background-color: #f35540; }
      a.btn.btn_label.pdf a :hover,
      a.btn.btn_label.pdf a :active,
      a.btn.btn_label.pdf:hover,
      a.btn.btn_label.pdf:active,
      .btn.btn_label.pdf a :hover,
      .btn.btn_label.pdf a :active,
      .btn.btn_label.pdf:hover,
      .btn.btn_label.pdf:active {
        background-color: #ff6c6c; }
  a.btn.large_btn,
  .btn.large_btn {
    box-sizing: border-box;
    padding: 0.8em 1ex;
    font-size: 115%;
    border: none;
    display: block;
    text-align: center;
    width: 100%; }
    a.btn.large_btn:link,
    a.btn.large_btn:visited,
    .btn.large_btn:link,
    .btn.large_btn:visited {
      text-decoration: none; }

.icon_new {
  display: inline-block;
  border: 1px solid #ed1c24;
  color: #ed1c24;
  vertical-align: middle;
  margin: 0 1ex;
  font-size: 70%;
  line-height: 110%;
  padding: 0.2ex 1ex;
  font-family: arial, sans-serif;
  background-color: #ffffff;
  font-weight: bold; }

.textarea_full {
  font-family: "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  display: block;
  width: 100%;
  padding: 0.5ex;
  box-sizing: border-box; }

.anchor_link {
  margin: 1em 0;
  padding: 1ex 0 1ex 2em;
  list-style-type: none;
  background: #fff9e8;
  border-radius: 2px;
  border: 1px solid #e7ae00; }
  .anchor_link:first-child {
    margin-top: 0; }
  .anchor_link:after {
    display: block;
    clear: both;
    content: ""; }
  .anchor_link ul {
    margin: 0;
    padding: 0;
    list-style-type: none; }
  .anchor_link li {
    margin: 0 0 0 0;
    padding: 0 2em 0 0;
    display: inline-block; }
  .anchor_link a {
    padding: 0 0 0 15px;
    background: url(../img/arrow_anchor.png) 0 50% no-repeat;
    background-size: 10px 5px;
    text-decoration: none;
    color: #333333; }
    .anchor_link a:hover,
    .anchor_link a:active {
      text-decoration: underline; }
    .anchor_link a.ext {
      background-image: url(../img/icon_ext_white.png); }

.boxed {
  padding: 20px;
  background: #fff9e8;
  margin-bottom: 10px; }
  .boxed *:first-child {
    margin-top: 0; }
  .boxed *:last-child {
    margin-bottom: 0; }
  .main_content > .boxed {
    margin-right: 15px;
    margin-left: 15px; }

.bordered_box {
  padding: 20px;
  border: 3px solid #e6f1fa;
  margin-bottom: 10px; }
  .bordered_box *:first-child {
    margin-top: 0; }
  .bordered_box *:last-child {
    margin-bottom: 0; }
  .main_content > .bordered_box {
    margin-right: 15px;
    margin-left: 15px; }

.box_head {
  font-size: 130%;
  color: #008e68;
  border-bottom: 1px solid #b4c89f;
  padding: 0 1ex 1ex;
  margin: 0 0 1em;
  font-family: "M PLUS 1p", "Mplus 1p", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  font-display: swap;
  font-weight: 500;
  line-height: 160%;
  position: relative;
  text-align: center; }

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%; }
  @media print, screen and (min-width: 768px) {
    .youtube {
      margin: 5px auto; } }
  .youtube iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important; }

.topics_list {
  list-style-type: none;
  padding: 0;
  margin: 0; }
  .topics_list.no_thumb > li > a .topics_list_img {
    display: none; }
  .topics_list > li {
    padding: 0;
    margin: 0;
    line-height: 170%;
    border-bottom: 1px solid #cccccc; }
    .topics_list > li:last-child {
      border-bottom: none; }
    .topics_list > li > a,
    .topics_list > li > span {
      display: flex;
      color: #333333;
      text-decoration: none;
      box-sizing: border-box;
      transition: 0.2s all; }
      @media only screen and (max-width: 767px) {
        .topics_list > li > a,
        .topics_list > li > span {
          padding: 0; } }
      .topics_list > li > a.disable,
      .topics_list > li > span.disable {
        cursor: default;
        pointer-events: none; }
        .topics_list > li > a.disable .topics_list_title,
        .topics_list > li > span.disable .topics_list_title {
          width: 100%;
          text-decoration: none; }
      .topics_list > li > a > *,
      .topics_list > li > span > * {
        display: table-cell;
        padding: 10px;
        line-height: 120%; }
        @media only screen and (max-width: 767px) {
          .topics_list > li > a > *,
          .topics_list > li > span > * {
            padding: 10px; } }
      .topics_list > li > a:hover:not(.disable),
      .topics_list > li > a:active:not(.disable),
      .topics_list > li > span:hover:not(.disable),
      .topics_list > li > span:active:not(.disable) {
        background-color: #e7ae00;
        color: #ffffff; }
      .topics_list > li > a .topics_list_img,
      .topics_list > li > span .topics_list_img {
        display: block;
        width: 80px;
        flex-shrink: 0; }
        .topics_list > li > a .topics_list_img img,
        .topics_list > li > span .topics_list_img img {
          display: block;
          width: 80px; }
      .topics_list > li > a .topics_list_desc,
      .topics_list > li > span .topics_list_desc {
        display: block;
        flex-shrink: 1; }
        @media only screen and (max-width: 767px) {
          .topics_list > li > a .topics_list_desc,
          .topics_list > li > span .topics_list_desc {
            padding-left: 0; } }
      .topics_list > li > a .topics_list_attr,
      .topics_list > li > span .topics_list_attr {
        display: flex;
        padding: 1ex 0;
        align-items: center; }
        @media only screen and (max-width: 767px) {
          .topics_list > li > a .topics_list_attr,
          .topics_list > li > span .topics_list_attr {
            display: block;
            padding: 0 0 1ex; } }
      .topics_list > li > a .topics_list_date,
      .topics_list > li > span .topics_list_date {
        font-size: 85%;
        white-space: nowrap;
        margin-right: 1ex; }
        @media only screen and (max-width: 767px) {
          .topics_list > li > a .topics_list_date,
          .topics_list > li > span .topics_list_date {
            display: inline-block;
            border: none;
            padding: 0; } }
      @media only screen and (max-width: 767px) {
        .topics_list > li > a .topics_list_cat,
        .topics_list > li > span .topics_list_cat {
          display: inline-block;
          border: none;
          padding: 0; } }
      .topics_list > li > a .topics_list_title,
      .topics_list > li > span .topics_list_title {
        width: 100%; }
        @media only screen and (max-width: 767px) {
          .topics_list > li > a .topics_list_title,
          .topics_list > li > span .topics_list_title {
            clear: both;
            display: block;
            border: none;
            padding: 0.3ex 0 0 1em; } }

.topics_card_list {
  margin: 0 -15px;
  padding: 0;
  list-style-type: none;
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (max-width: 767px) {
    .topics_card_list {
      margin: 0 -10px; } }
  .topics_card_list li {
    margin: 0;
    padding: 15px;
    width: 25%;
    box-sizing: border-box; }
    @media only screen and (max-width: 767px) {
      .topics_card_list li {
        padding: 10px;
        width: 50%; } }
    .topics_card_list li a {
      text-decoration: none;
      color: #333333;
      display: block;
      transition: 0.2s all; }
      .topics_card_list li a:hover,
      .topics_card_list li a:active {
        transform: translateY(3px); }
    .topics_card_list li .topics_list_img {
      display: block;
      background: #ffffff; }
      .topics_card_list li .topics_list_img img {
        display: block;
        max-width: 100%;
        margin: auto;
        vertical-align: middle; }
    .topics_card_list li .topics_list_attr {
      align-items: center; }
    .topics_card_list li .topics_list_date {
      display: block;
      color: #6d6d6d;
      font-size: 90%;
      margin-top: 1ex;
      line-height: 1.6; }
    .topics_card_list li .topics_list_cat {
      display: block; }
    .topics_card_list li .topics_list_title {
      display: block;
      color: #000000;
      line-height: 1.6; }

.label_cat {
  min-width: 78px;
  height: 20px;
  display: inline-block;
  font-size: 85%;
  text-align: center;
  padding: 0.3ex 0;
  vertical-align: middle;
  line-height: 1.2; }
  .label_cat.label_new {
    background-color: #ee6557; }
  .label_cat.label_recommend {
    background-color: #a672e6; }
  .label_cat.label_seisounen {
    background-color: #4db8ef; }
  .label_cat.label_woman {
    background-color: #e97288; }
  .label_cat.label_child {
    background-color: #e3960f; }
  .label_cat.label_recruit {
    background-color: #58d177; }
  .label_cat.label_finished {
    background-color: #504c55; }
  .label_cat.label_complete {
    background-color: #a672e6; }
  .label_cat.label_news {
    background-image: url(../../top/img/tag_news.png);
    text-indent: -9999px; }
  .label_cat.label_event {
    background-image: url(../../top/img/tag_event.png);
    text-indent: -9999px; }
  .label_cat.label_campaign {
    background-image: url(../../top/img/tag_campaign.png);
    text-indent: -9999px; }
  .label_cat + .label_cat {
    margin-top: 2px; }

.columned.pickup_list {
  list-style-type: none;
  align-items: stretch; }
  .columned.pickup_list li {
    margin: 0;
    padding: 0 15px 30px;
    display: flex;
    flex-direction: column; }

a.pickup_btn {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  width: 100%;
  box-sizing: border-box;
  overflow: hidden;
  text-decoration: none;
  transition: 0.2s all cubic-bezier(0.455, 0.03, 0.515, 0.955);
  transform: translateY(0);
  background-color: #ffffff;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); }
  a.pickup_btn:hover,
  a.pickup_btn:active {
    transform: translateY(2px); }
    a.pickup_btn:hover .pickup_img img,
    a.pickup_btn:active .pickup_img img {
      transform: scale(1.1); }
    a.pickup_btn:hover .pickup_label,
    a.pickup_btn:active .pickup_label {
      background: #e7ae00;
      color: #ffffff; }
      a.pickup_btn:hover .pickup_label::before,
      a.pickup_btn:active .pickup_label::before {
        background-image: url(../img/btn_arrow.png); }
  a.pickup_btn .pickup_img {
    display: block;
    overflow: hidden; }
    a.pickup_btn .pickup_img img {
      vertical-align: middle;
      transition: 0.4s all cubic-bezier(0.455, 0.03, 0.515, 0.955);
      width: 100%; }
  a.pickup_btn .pickup_label {
    color: #e7ae00;
    flex-glow: 1;
    display: block;
    text-align: center;
    padding: 0.5ex;
    transition: 0.2s all cubic-bezier(0.455, 0.03, 0.515, 0.955);
    background-color: #ffffff;
    font-weight: bold;
    font-size: 100%; }
    a.pickup_btn .pickup_label::before {
      content: "";
      display: inline-block;
      width: 10px;
      height: 14px;
      background: url(../img/btn_arrow.png) 0 50% no-repeat;
      background-size: 9px 13px;
      vertical-align: middle;
      margin: 0 1ex 0.3ex 0;
      line-height: 1; }

.pic_column {
  margin: 1em 10px;
  padding: 0;
  list-style-type: none;
  display: flex; }
  .pic_column > li {
    margin: 0;
    padding: 5px;
    box-sizing: border-box;
    text-align: center; }
    .pic_column > li img {
      display: block; }

.tabled_list {
  margin: 1ex 0;
  padding: 0;
  list-style-type: none;
  display: table; }
  .main_content > .tabled_list {
    margin-left: 15px;
    margin-right: 15px; }
  .tabled_list > li {
    margin: 0;
    padding: 0;
    display: table-row; }
    .tabled_list > li > div,
    .tabled_list > li > span {
      display: table-cell; }
      .tabled_list > li > div:first-child,
      .tabled_list > li > span:first-child {
        width: 1ex;
        white-space: nowrap;
        padding-right: 1ex; }

.article_date {
  text-align: right;
  font-style: italic; }

.main_content > .columned {
  padding-left: 15px;
  padding-right: 15px; }

.columned {
  display: flex;
  margin: 0 -15px 1em;
  padding: 0;
  list-style-type: none; }
  .columned > * {
    margin: 0 0 1em;
    box-sizing: border-box;
    padding-left: 15px;
    padding-right: 15px;
    width: 100%; }
    @media print, screen and (min-width: 768px) {
      .columned > * > *:first-child {
        margin-top: 0; } }
  .columned.standard > *:first-child {
    margin: 0 0 0;
    width: 35%; }
    @media only screen and (max-width: 767px) {
      .columned.standard > *:first-child {
        width: 100%; } }
  .columned.standard > *:last-child {
    margin: 0 0 0;
    width: 65%; }
    @media only screen and (max-width: 767px) {
      .columned.standard > *:last-child {
        width: 100%; } }
  .columned.reverse {
    flex-direction: row-reverse; }

.no_pad {
  padding: 0 !important; }

.pc_column1,
.pc_column2,
.pc_column3,
.pc_column4,
.pc_column5 {
  flex-wrap: wrap; }

.pc_column2 > * {
  width: 50%; }

.pc_column3 > * {
  width: 33.33%; }

.pc_column4 > * {
  width: 25.00%; }

.pc_column5 > * {
  width: 20.00%; }

@media only screen and (max-width: 767px) {
  .sp_column1,
  .sp_column2,
  .sp_column3 {
    flex-wrap: wrap; }
  .sp_column1 > * {
    width: 100%; }
  .sp_column2 > * {
    width: 50%; }
  .sp_column3 > * {
    width: 33.33%; }
  .sp_column4 > * {
    width: 25.00%; }
  .sp_column5 > * {
    width: 20.00%; } }

.huge_tel_number {
  font-size: 180%;
  font-family: Tahoma, Geneva, sans-serif;
  font-weight: bold;
  color: #38b44f;
  white-space: nowrap;
  line-height: 1.2; }
  .huge_tel_number::before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    background: url(../img/icon_tel.svg) 50% 50% no-repeat;
    background-size: contain;
    margin-right: 0.5ex;
    height: 1em;
    width: 1em; }
  .huge_tel_number.freedial::before {
    background: url(../img/icon_freedial.svg) 50% 50% no-repeat;
    background-size: contain;
    width: 1.75em; }

img.roundImg
.roundImg img {
  border-radius: 5px; }

.shadowed {
  box-shadow: 0 3px 4px rgba(0, 0, 0, 0.3);
  transition: 0.2s all; }
  .shadowed img {
    vertical-align: middle; }

.maximize {
  width: 100%; }

img.bordered_img {
  border: 1px solid #cccccc;
  padding: 1px;
  box-sizing: border-box; }

a:hover .shadowed,
a:active .shadowed,
a.shadowed:hover,
a.shadowed:active {
  box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); }

.sinker {
  display: inline-block;
  transition: 0.2s all;
  transform: translateY(0); }
  .sinker:hover,
  .sinker:active {
    transform: translateY(3px); }

.lead {
  margin: 1ex 90px; }
  @media only screen and (max-width: 767px) {
    .lead {
      margin: 1ex 15px; } }

.campaign_section {
  padding: 25px;
  background: #faf8ec;
  margin-top: 1ex;
  margin-bottom: 1ex; }
  @media only screen and (max-width: 767px) {
    .campaign_section {
      padding: 10px; } }
  .main_content > .campaign_section {
    margin-left: 15px;
    margin-right: 15px; }
  .campaign_section .campaign_title {
    font-family: "M PLUS 1p", "Mplus 1p", "游明朝", "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
    font-display: swap;
    font-weight: 500;
    font-size: 130%;
    transform: rotate(0.1deg); }
    .campaign_section .campaign_title::before {
      content: "";
      display: inline-block;
      background: #8accb9;
      border-radius: 50% 50%;
      height: 0.7em;
      width: 0.7em;
      line-height: 0;
      vertical-align: baseline;
      margin-right: 1ex; }
  .campaign_section .campaign_body {
    padding-top: 1em;
    display: flex;
    flex-wrap: nowrap; }
    @media only screen and (max-width: 767px) {
      .campaign_section .campaign_body {
        display: block; } }
    .campaign_section .campaign_body .campaign_img {
      width: 20%;
      box-sizing: border-box;
      text-align: center; }
      @media only screen and (max-width: 767px) {
        .campaign_section .campaign_body .campaign_img {
          width: 80%;
          margin-left: auto;
          margin-right: auto; } }
      .campaign_section .campaign_body .campaign_img img {
        margin-bottom: 1ex; }
    .campaign_section .campaign_body .campaign_content {
      width: 80%;
      padding-left: 20px;
      box-sizing: border-box; }
      @media only screen and (max-width: 767px) {
        .campaign_section .campaign_body .campaign_content {
          width: 100%;
          padding-left: 0;
          margin-top: 1em; } }
      .campaign_section .campaign_body .campaign_content > *:first-child {
        margin-top: 0; }
      .campaign_section .campaign_body .campaign_content > *:last-child {
        margin-bottom: 0; }
    .campaign_section .campaign_body.campaign_em .campaign_img {
      width: 30%; }
    .campaign_section .campaign_body.campaign_em .campaign_content {
      width: 70%; }
    .campaign_section .campaign_body.campaign_selfreform .campaign_img {
      width: 40%; }
      .campaign_section .campaign_body.campaign_selfreform .campaign_img img {
        padding: 2px;
        background: #ffffff;
        border: 1px solid #cccccc; }
      @media only screen and (max-width: 767px) {
        .campaign_section .campaign_body.campaign_selfreform .campaign_img {
          width: 80%;
          margin-left: auto;
          margin-right: auto; } }
    .campaign_section .campaign_body.campaign_selfreform .campaign_content {
      width: 60%; }
    @media only screen and (max-width: 767px) {
      .campaign_section .campaign_body {
        display: block; }
        .campaign_section .campaign_body.campaign_selfreform > .campaign_content,
        .campaign_section .campaign_body > .campaign_content {
          width: auto; } }

.columned.rside_bnr > *:first-child {
  width: 66%;
  padding: 0 5px 0 10px;
  margin-bottom: 0; }

.columned.rside_bnr > *:last-child {
  width: 33%;
  padding: 0 10px 0 5px;
  text-align: right;
  margin-bottom: 0; }

@media only screen and (max-width: 767px) {
  .columned.rside_bnr {
    display: block; }
    .columned.rside_bnr > *:first-child,
    .columned.rside_bnr > *:last-child {
      width: auto; } }
