/*!
 * jquery-drawer v3.2.2
 * Flexible drawer menu using jQuery, iScroll and CSS.
 * http://git.blivesta.com/drawer
 * License : MIT
 * Author : blivesta <design@blivesta.com> (http://blivesta.com/)
 */

/*!------------------------------------*\
    Base
\*!------------------------------------*/

.drawer-open {
  overflow: hidden !important;
}

.drawer-nav {
  position: fixed;
  z-index: 5000105;
  top: 40px;
  overflow: hidden;
  width: 220px;
  height: 100%;
  background-color:#fff;
  border-top:1px solid #ccc;
  border-left:1px solid #ccc;
  -webkit-box-shadow: -3px 0px 8px -1px rgba(0,0,0,0.21);
  -moz-box-shadow: -3px 0px 8px -1px rgba(0,0,0,0.21);
  box-shadow: -3px 0px 8px -1px rgba(0,0,0,0.21);
}

.drawer-brand {
  font-size: 24px;
  font-weight: bold;
  line-height: 60px;
  display: block;
  padding-right: 12px;
  padding-left: 12px;
  text-decoration: none;
  color: #222;
}

.drawer-menu {
  margin: 0;
  padding: 0;
  list-style: none;
}

.drawer-menu-item {
  font-size: 1.1em;
  display: block;
  padding: 10px;
  text-decoration: none;
  color: #222;
  background-color:#fff;
  border-bottom: 1px solid #ccc;
  cursor:pointer;
}

.drawer-menu-item-top {
  font-size: 1.1em;
  display: block;
  padding: 10px 10px 10px 50px ;
  text-decoration: none;
  color: #fff;
  background-color:#aacd12;
  background-image:url("../img/global/home_menu.png");
  background-size:25px;
  background-repeat:no-repeat;
  background-position: 8px 50%;
  border-bottom: 1px solid #ccc;
  cursor:pointer;
}

.drawer-menu-item:hover {
  text-decoration: none;
  color:#aacd12;
  background-color:rgba(132,187,60,0.15);
  /*background-image:url("../img/global/pelican_menu_green.png");*/
  background-size:38px;
  background-repeat:no-repeat;
  background-position: 5px 50%;
  padding:10px 10px 10px 10px;
}

.drawer-menu-item-top:hover {
  text-decoration: none;
  color: #fff;
}

.drawer-menu-item .drawer-link-icon,
.drawer-menu-item-top .drawer-link-icon,
.drawer-dropdown-menu-item .drawer-link-icon {
  position: absolute;
  /*left:170px;*/
  right:0.5em;
  display: inline-block;
  font-size: 0.8em
}


/*! overlay */

.drawer-overlay {
  position: fixed;
  z-index: 5000100;
  top: 0;
  left: 0;
  display: none;
  overflow: hidden;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
}

.drawer-open .drawer-overlay {
  display: block;
}

.drawer-end {
  /* margin-bottom: 5px; */
}

/*! pelican */
/*
.drawer-menu li#menu2s,
.drawer-menu li#menu3s,
.drawer-menu li#menu4s,
.drawer-menu li#menu6s,
.drawer-menu li#menu7s,
.drawer-menu li#menu8s,
.drawer-menu li#menu9s,
.drawer-menu li#menu10s,
.drawer-menu li#menu11s,
.drawer-menu li#menu12s,
.drawer-menu li#menu13s,
.drawer-menu li#menu14s,
.drawer-menu li#menu15s,
.drawer-menu li#pageDetail1s,
.drawer-menu li#pageDetail2s,
.drawer-menu li#pageDetail3s,
.drawer-menu li#pageDetail4s,
.drawer-menu li#pageDetail5s,
.drawer-menu li#pageDetail6s,
.drawer-menu li#pageDetail7s,
.drawer-menu li#pageDetail8s,
.drawer-menu li#pageDetail9s,
.drawer-menu li#pageDetail10s,
.drawer-menu li#pageDetail11s,
.drawer-menu li#pageDetail12s,
.drawer-menu li#pageDetail13s,
.drawer-menu li#pageDetail14s,
.drawer-menu li#pageDetail15s,
.drawer-menu li#pageDetail16s,
.drawer-menu li#pageDetail17s,
.drawer-menu li#pageDetail18s,
.drawer-menu li#pageDetail19s,
.drawer-menu li#pageDetail20s {
  color:#aacd12;
  background-color:rgba(132,187,60,0.15);
  background-image:url("../img/global/pelican_menu_green.png");
  background-size:38px;
  background-repeat:no-repeat;
  background-position: 5px 50%;
  padding:10px 10px 10px 10px;
}*/
/*!------------------------------------*\
    blank
\*!------------------------------------*/
.drawer-menu li.blank {
	background-color:#aacd12;
	color:#fff;
	padding: 2px 10px 2px 10px;
}
.drawer-menu li.blank:hover {
	background-image:none;
	padding: 2px 10px 2px 10px;

}

/*!------------------------------------*\
    Right
\*!------------------------------------*/

.drawer--right .drawer-nav {
  right: -220px;
  -webkit-transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: right .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
}

.drawer--right.drawer-open .drawer-nav,
.drawer--right .drawer-hamburger,
.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
  right: 0;
  cursor:pointer;
}

.drawer--right.drawer-open .drawer-hamburger {
  margin-right: 220px;
}


/*!------------------------------------*\
    Hamburger
\*!------------------------------------*/

.drawer-hamburger {
  position: fixed;
  z-index: 5000107;
  top: 40px;
  float: right;
  display: block;
  box-sizing: content-box;
  width: 40px;
  height: 160px;
  padding: 5px;
  -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  border: 0;
  outline: 0;
  background-color: #aacd12;
  border-radius:5px 0 0 5px;
  box-shadow: -1px 1px 3px 1px rgba(0,0,0,0.15);
  }

.drawer-hamburger-icon {
  position: absolute;
  display: block;
  top: 30px;
  left: 10px;
  content: ' ';
  cursor:pointer;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
  width: 100%;
  height: 3px;
  width: 32px;
  -webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
  background-color: #fff;
}

.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
  position: absolute;
  top: -10px;
  left: 0;
  content: ' ';
}


.drawer-hamburger-icon:after {
  top: 10px;
}

.drawer-open .drawer-hamburger-icon {
  background-color: transparent;
}

.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
  top: 0;
}

.drawer-open .drawer-hamburger-icon:before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.drawer-open .drawer-hamburger-icon:after {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}

/*!------------------------------------*\
    accessibility
\*!------------------------------------*/

/*!
 * Only display content to screen readers
 * See: http://a11yproject.com/posts/how-to-hide-content
 */

.drawer-hamburger-text {
  position: relative;
  right: 20px;
  top: 2px;
  width: auto;
  height: auto;
  margin: 0;
  color: #fff;
  font-size:1.4em;
  letter-spacing:5px;
}

.drawer-hamburger-text-small {
  position:relative;
  right: 10px;
  top: -2px;
  width: auto;
  height: auto;
  margin: 0;
  color: #fff;
  font-size:0.7em;
  letter-spacing:1.5px;
}

.drawer-hamburger-text-v {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  position:absolute;
  top:60%;
  left:50%;
  display:inline-block;
  transform:translate(-50%, -40%);
  color: #fff;
  font-size:1.4em;
  letter-spacing:5px;
  white-space: nowrap;
}


/*!------------------------------------*\
    Drawer-Scroll
\*!------------------------------------*/

.drawer-scroll {
  width: 44px !important;
}

.drawer-scroll .drawer-hamburger-icon {
  left: 12px;
}

.drawer-scroll .drawer-hamburger-text {
  position: absolute;
  overflow: hidden;
  clip: rect(0,0,0,0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

.drawer-scroll .drawer-hamburger-text-small {
  position: absolute;
  overflow: hidden;
  clip: rect(0,0,0,0);
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
}

/*!------------------------------------*\
    Sidebar
\*!------------------------------------*/

.drawer--sidebar {
  background-color: #fff;
}

.drawer--sidebar .drawer-contents {
  background-color: #fff;
}

@media (min-width: 64em) {
  .drawer--sidebar .drawer-hamburger {
    display: none;
    visibility: hidden;
  }

  .drawer--sidebar .drawer-nav {
    display: block;
    -webkit-transform: none;
            transform: none;
    position: fixed;
    width: 220px;
    height: 100%;
  }

  /*! Right */
  .drawer--sidebar.drawer--right .drawer-nav {
    right: 0;
    border-left: 1px solid #ddd;
  }

  .drawer--sidebar.drawer--right .drawer-contents {
    margin-right: 220px;
  }

  /*! container */
  .drawer--sidebar .drawer-container {
    max-width: 768px;
  }
}

@media (min-width: 75em) {
  .drawer--sidebar .drawer-nav {
    width: 220px;
  }

  .drawer--sidebar.drawer--right .drawer-contents {
    margin-right: 220px;
  }

  /*! container */
  .drawer--sidebar .drawer-container {
    max-width: 960px;
  }
}

/*!------------------------------------*\
    Navbar
\*!------------------------------------*/

.drawer--navbarTopGutter {
  padding-top: 60px;
}

.drawer-navbar .drawer-navbar-header {
  border-bottom: 1px solid #ddd;
  background-color: #fff;
}

.drawer-navbar {
  z-index: 5000102;
  top: 0;
  width: 100%;
}

/*! .drawer-navbar modifier */

.drawer-navbar--fixed {
  position: fixed;
}

.drawer-navbar-header {
  position: relative;
  z-index: 5000102;
  box-sizing: border-box;
  width: 100%;
  height: 60px;
  padding: 0 12px;
  text-align: center;
}

.drawer-navbar .drawer-brand {
  line-height: 60px;
  display: inline-block;
  padding-top: 0;
  padding-bottom: 0;
  text-decoration: none;
}

.drawer-navbar .drawer-brand:hover {
  background-color: transparent;
}

.drawer-navbar .drawer-nav {
  padding-top: 60px;
}

.drawer-navbar .drawer-menu {
  padding-bottom: 120px;
}

@media (min-width: 64em) {
  .drawer-navbar {
    height: 60px;
    border-bottom: 1px solid #ddd;
    background-color: #fff;
  }

  .drawer-navbar .drawer-navbar-header {
    position: relative;
    display: block;
    float: left;
    width: auto;
    padding: 0;
    border: 0;
  }

  .drawer-navbar .drawer-menu--right {
    float: right;
  }

  .drawer-navbar .drawer-menu li {
    float: left;
  }

  .drawer-navbar .drawer-menu-item {
    line-height: 60px;
    padding-top: 0;
    padding-bottom: 0;
  }

  .drawer-navbar .drawer-hamburger {
    display: none;
  }

  .drawer-navbar .drawer-nav {
    position: relative;
    left: 0;
    overflow: visible;
    width: auto;
    height: 60px;
    padding-top: 0;
    -webkit-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
  }

  .drawer-navbar .drawer-menu {
    padding: 0;
  }

  /*! dropdown */
  .drawer-navbar .drawer-dropdown-menu {
    position: absolute;
    width: 220px;
    border: 0px solid #ddd;
  }

  .drawer-navbar .drawer-dropdown-menu-item {
    padding-left: 12px;
    cursor:pointer;
  }
}

/*!------------------------------------*\
    Dropdown
\*!------------------------------------*/

.drawer-dropdown .drawer-menu-item:hover {
  color:#222;
  background-color:#fff;
  background-image:none;
  padding:10px;
}

.drawer-dropdown-menu {
  display: none;
  box-sizing: border-box;
  width: 100%;
  margin: 0;
  padding: 0;
}

.drawer-dropdown-menu > li {
  width: 100%;
  list-style: none;
}

.drawer-dropdown-menu-item {
  display: block;
  padding: 10px 10px 10px 24px;
  font-size: 1.1em;
  text-decoration: none;
  color: #222;
  background-color:#fff;
  border-bottom: 1px solid #ccc;
}

.drawer-dropdown-menu-item:hover {
  text-decoration: none;
  color:#aacd12;
  background-color:rgba(132,187,60,0.15);
  background-image:url("../img/global/pelican_menu_green.png");
  background-size:38px;
  background-repeat:no-repeat;
  background-position: 5px 50%;
  padding:10px 10px 10px 50px;
  cursor:pointer;
}

/*! open */

.drawer-dropdown.open > .drawer-dropdown-menu {
  display: block;
}

/*! drawer-dropdown-icon */

.drawer-dropdown .drawer-dropdown-icon {
  position: absolute;
  /*left:170px;*/
  right:0.6em;
  margin-top: 8px;
  display: inline-block;
  width: 10px;
  height: 1px;
  background-color: #222;
  -webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: transform .2s ease, opacity .2s ease;
  transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease;
  -webkit-transform: rotate(0deg);
          transform: rotate(0deg);
}

.drawer-dropdown .drawer-dropdown-icon-2 {
  position: absolute;
  /*left:170px;*/
  right:0.6em;
  margin-top: 8px;
  display: inline-block;
  width: 10px;
  height: 1px;
  background-color: #222;
  -webkit-transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: opacity .2s ease, -webkit-transform .2s ease;
  transition: transform .2s ease, opacity .2s ease;
  transition: transform .2s ease, opacity .2s ease, -webkit-transform .2s ease;
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}

/*! open */

.drawer-dropdown.open .drawer-dropdown-icon {
  display:none;
}

.drawer-dropdown.open .drawer-dropdown-icon-2 {
   -webkit-transform: rotate(180deg);
          transform: rotate(180deg);
}

/*!------------------------------------*\
    Container
\*!------------------------------------*/

.drawer-container {
  margin-right: auto;
  margin-left: auto;
}

@media (min-width: 64em) {
  .drawer-container {
    max-width: 960px;
  }
}

@media (min-width: 75em) {
  .drawer-container {
    max-width: 1120px;
  }
}

.drawer-menu-item-empty {
  height:220px;
  cursor:auto;
}


/*!------------------------------------*\
    2025/5/29 新メニュー
\*!------------------------------------*/
#carousel-bnr {
    background: #ffffff52;
    padding: 10px 15px;
    box-sizing: border-box;
    margin-bottom: 20px;
    display: flex;
    align-items: center;
}
button {
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  border: 0;
  background: transparent;
  padding: 0;
  margin: 0;
  outline: none;
  border-radius: 0;
}
.carousel {
  width: 950px;
  height: 64px;
  position: relative;
  margin: 0 auto;
  overflow: hidden;
}
.carousel-area {
  /* リスト数×リスト幅を計算してwidth指定してもいいが、汎用性を考慮してjQueryで計算代入する */
  height: 100%;
  position: absolute;
  display: flex;
    justify-content: space-evenly;
}
/* object-fitを使用せずに画像トリミングさせるためにbackgroundで指定 */
.carousel-list {
  width: 220px;
  height: auto;
  margin: 0 10px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  list-style: none;
  padding: 0;
}
.carousel-list img {
	width: 100%;
}
/* clipで非表示指定（スクリーンリーダー対策） */
.carousel-img {
  width: 1px;
  height: 1px;
  clip: rect(1px, 1px, 1px, 1px);
  -webkit-clip-path: inset(50%);
  clip-path: inset(50%);
  margin: -1px;
  padding: 0;
  overflow: hidden;
  position: absolute;
}
/*********** スライド送りボタン ***********/
/* 共有パーツ */
.arow-wrap {
  width: 100%;
  height: 100%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.arrow-btn {
    width: 24px;
    height: 24px;
    background-color: rgb(102 102 102 / 80%);
    border-radius: 50%;
    transition: .2s;
}
.arrow-btn:focus {
  box-shadow: 0px 1px 10px -2px rgba(0, 0, 0, 0.8);
}
.arrow-btn:hover {
  background-color: rgb(51, 79, 216);
  box-shadow: 0px 1px 10px -2px rgba(0, 0, 0, 0.8);
}
/* 左 */
.arrow-left {
  position: relative
}
.arrow-left .arrow-btn:before {
  content: "";
	width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-30%, -50%)rotate(-45deg);
}
/* 右 */
.arrow-right {
  position: relative
}
.arrow-right .arrow-btn:before {
  content: "";
	width: 7px;
    height: 7px;
    border-top: 2px solid #fff;
    border-left: 2px solid #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-70%, -50%)rotate(135deg);
}



/*********************************/
/**メニュー**/
/*********************************/
ul#menu {
    list-style: none;
    padding: 0;
    position: relative;
    display: flex;
    justify-content: space-between;
    width: 980px;
    margin: 0 auto;
}
ul#menu:after {
    display: none;
}
ul#menu>li {
    color: #282828;
    background: linear-gradient(#ffffff, #c1e7f2);
    border: 1px solid #e2e2e2;
    border-radius: 3px;
    cursor: pointer;
    font-size: 15px;
    font-weight: 700;
    font-family: "ヒラギノ丸ゴ Pro W4", "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "HG丸ｺﾞｼｯｸM-PRO", "HGMaruGothicMPRO";
    list-style: none;
    line-height: 3em;
    margin: 0 1px 20px;
    padding: 0;
    text-align: center;
    width: 16.6666%;
}
ul#menu>li span {
    display: block;
    position: relative;
}
li.new_badge > span:after,
.menuSub ul li.new_badge:after {
    content: url(/img/top/new_icon.png);
    position: absolute;
    top: -18px;
    right: 6px;
    width: 24px;
    height: 24px;
}
li.new_badge.badge2 > span:after, .menuSub ul li.new_badge.badge2:after {
    content: url(/img/top/new_icon2.png);
}
li.new_badge.badge3 > span:after, .menuSub ul li.new_badge.badge3:after {
    content: url(/img/top/new_icon3.png);
}
li.new_badge.badge4 > span:after, .menuSub ul li.new_badge.badge4:after {
    content: url(/img/top/new_icon4.png);
}
.menuSub ul li.small_menu_btn.new_badge:after {
    top: -15px;
    right: -10px;
}
.menuSub {
	cursor: default;
    background: #d5e7ec;
    box-sizing: border-box;
    display: none;
    height: auto;
    left: 1px;
    list-style: none;
    margin-top: 2px;
    padding: 20px;
    position: absolute;
    width: 978px;
    z-index: 9999;
}
.menuSub:after {
    content: "▲閉じる";
    color: #004ba2;
    position: absolute;
    bottom: 0;
    left: 46%;
    cursor: pointer;
}
.menuSub ul {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    padding: 0;
}
.menuSub ul li {
    width: 220px;
    margin-right: 17px;
    margin-bottom: 20px;
    position: relative;
}
.menuSub ul li:nth-child(4n) {
    margin-right: 0;
}
.menuSub ul li a {
    align-items: center;
    background: #fff;
    border: 1px solid #c3c3c3;
    border-radius: 10px;
    box-shadow: 2px 2px 3px #ccc;
    color: #000;
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1em;
    height: 60px;
    padding-left: 50px;
    position: relative;
    text-decoration: none;
}
.menuSub ul li.hoken_menu a{
    padding-left: 0;
}
.menuSub ul li a span {
    font-size: 12px;
    margin-left: -72px;
}
.menuSub ul li a img {
    max-height: 40px;
    max-width: 55px;
    position: absolute;
    left: 10px;
}

.menuSub ul li.hoken_menu a img {
    max-height: 98%;
    max-width: 98%;
    position: relative;
    left: 0;	
}
.menuSub ul li.small_menu_btn {
    width: 120px;
}
.menuSub ul li.small_menu_btn a {
    background: #0e78a3;
    color: #fff;
    font-size: 14px;
    height: 25px;
    padding-left: 0;
    margin-bottom: 8px;
}

