@charset "utf-8";

/* ==========================================================================
Foundation [ reset / base ]
========================================================================== */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 114%;
  font: inherit;
  vertical-align: baseline;
}
table, caption, tbody, tfoot, thead, tr, th, td {
  font-size: 114%;
  font: inherit;
  vertical-align: baseline;
}
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  background: #ffffff;
  font-size: 16px;
  font-family: "Noto Sans JP","游ゴシック", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  /*letter-spacing: 0.05em;*/
  font-weight: 400;
  font-style: normal;
  line-height: 1.8;
  color: #333333;
  min-width: 1200px;
  position: relative;
}

body.sub {
  min-width: 1100px;
}
ol, ul {
  list-style: none;
}
select {
  font-size: 16px;
  background-color: #fff;
  height: 26px;
  box-sizing: border-box;
  font-family: "Noto Sans JP","游ゴシック", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
input, textarea {
  font-family: "Noto Sans JP","游ゴシック", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
*,
*:before,
*:after {
  box-sizing: inherit;
}
a {
  color: #333333;
  transition: opacity .15s ease;
}
a:hover {
  text-decoration: none;
}
a:focus {
  text-decoration: none;
}
a,
a:focus,
a:active,
a:hover,
a:visited,
:focus,
:active,
:hover,
:visited {
  text-decoration: none;
}
img {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}
a img:hover {
  opacity: .75;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

a:hover, a:active, a:focus {
  text-decoration: inherit;
}

a:hover {
  opacity: 1.0;
}
a[href]:hover {
  opacity: .8;
}

a {
  text-decoration: inherit;
  color: inherit;
}

a[href] {
  text-decoration: none;
  color: #095DA3;
}

/* ==========================================================================
Component [ grid / button / form / media... ]
========================================================================== */

/*btn*/
.c-btn {
  display: inline-block;
  padding: 9px 30px;
  margin-top: 20px;
  font-size: 100%;
  font-weight: 700;
  line-height: 1.42857143;
  text-align: center;
  vertical-align: middle;
  -ms-touch-action: manipulation;
  touch-action: manipulation;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  color: #095DA3;
  width: 100%;
  border: 1px solid #095DA3;
  max-width: 280px;
  border-radius: 40px;
  position: relative;
  -webkit-transition: .3s;
  -o-transition: .3s;
  transition: .3s;
}

.c-btn:before {
  content: '';
  position: absolute;
  right: 12px;
  top: 41%;
  width: 6px;
  height: 6px;
  border-top: 2px solid #095DA3;
  border-right: 2px solid #095DA3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-btn:hover {
  background: #095DA3;
  color: #fff;
}

.c-btn[href]:hover {
  opacity: 1;
}

.c-btn:hover:before {
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
}

.c-btn.c-btn-block {
  margin: 32px auto 0;
  display: block;
  width: 90%;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.c-btn.c-btn-middle {
  max-width: 210px;
  padding: 4px 30px;
}

.c-btn.c-btn-small {
  max-width: 160px;
  padding: 4px 30px;
}

/* c-wrap */
.c-wrap {
  width: 100%;
  clear: both;
}

/* content */
.c-center {
  max-width: 1040px;
  padding: 40px 20px;
  margin: 0 auto;
  box-sizing: border-box;
}

.c-center-type02 {
  max-width: 960px;
  padding: 0px 15px 30px;
  margin: 0 auto 30px;
  box-sizing: border-box;
}

/* grid */
.grid {
  clear: both;
  overflow: hidden;
  display: flex;
  flex-wrap: wrap;
}

/* column */
.col-1 { width: 8.33333333%; }
.col-2 { width: 16.66666667%; }
.col-3 { width: 25%; }
.col-4 { width: 33.33333333%; }
.col-5 { width: 41.66666667%; }
.col-6 { width: 50%; }
.col-7 { width: 58.33333333%; }
.col-8 { width: 66.66666667%; }
.col-9 { width: 75%; }
.col-10 { width: 83.33333333%; }
.col-11 { width: 91.66666667%; }
.col-12 { width: 100%; }

/* breadcrumbs */
.c-breadcrumbs {
  overflow: hidden;
  color: #095DA3;
  box-sizing: border-box;
}

.c-breadcrumbs .c-center {
  padding: 6px 20px;
}

.c-breadcrumbs span {
  font-weight: 400;
  font-size: .75rem;
  color: #333;
}

.c-breadcrumbs img {
  margin-top: -3px;
}

.c-breadcrumbs .arw {
  width: 20px;
  height: 20px;
  vertical-align: middle;
  position: relative;
  display: inline-block;
}

.c-breadcrumbs .arw:before {
  content: '';
  position: absolute;
  right: 6px;
  top: 6px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #095DA3;
  border-right: 2px solid #095DA3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.c-breadcrumbs .c-breadcrumbs-link:hover ,
.c-breadcrumbs .c-breadcrumbs-link:hover span {
  color: #095DA3;
}

/*simple page bread*/

.p-simple-lnavi .u-lnavi-item {
  margin-bottom: 20px!important;
}

.l-wrapper.page-simple .c-breadcrumbs .c-center {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  align-items: flex-end;
}
.l-wrapper.page-simple .p-simple-bread {
  background-color: rgba(9,93,163,.9);
  border-radius: 100px;
  margin-left: auto;
  padding: 2px 16px 5px;
}

.c-breadcrumbs .p-simple-bread span {
  font-weight: 400;
  color: #fff;
}

.c-breadcrumbs .p-simple-bread .c-breadcrumbs-link:hover, 
.c-breadcrumbs .p-simple-bread .c-breadcrumbs-link:hover span {
  color: #fff;
  text-decoration: underline;
}

.c-breadcrumbs .p-simple-bread .arw:before {
  content: '';
  position: absolute;
  right: 6px;
  top: 6px;
  width: 6px;
  height: 6px;
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

/*title*/
#body_sub h1:not(.p-lv-inner__ttl) ,
.p-temp-page h1 {
  color: #095DA3;
  font-size: 2.25rem;
  font-weight: 700;
  padding-bottom: 10px;
  margin-bottom: 24px;
  position: relative;
  line-height: 1.73;
}

#body_sub h1:not(.p-lv-inner__ttl):before ,
.p-temp-page h1:before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0;
  width: 100%;
  height: 6px;
  background: #095DA3;
}

#body_sub h1.noborder {
  padding-bottom: 0;
}
#body_sub h1.noborder:before {
  display: none;
}

#body_sub h2 {
  font-size: 1.875rem;
  color: #095DA3;
  background-color: #EFF6FC;
  padding: 5px 20px 5px 38px ;
  margin-bottom: 15px;
  position: relative;
  margin-top: 20px;
  margin-bottom: 10px;
  line-height: 1.5;
  font-weight: 700;
}
#body_sub h2:before {
  content: "";
  display: block;
  background-color: #095DA3;
  width: 6px;
  height: calc(100% - 20px);
  position: absolute;
  left: 16px;
  top: 50%;
  transform: translateY(-50%);
}

#body_sub h2 a ,
#body_sub h3 a ,
#body_sub h4 a ,
#body_sub h5 a ,
#body_sub h6 a {
  font-size: 100%;
}

#body_sub h3 {
  color: #095DA3;
  margin-top: 20px;
  font-size: 1.5rem;
  padding-bottom: 6px;
  font-weight: 700;
  margin-bottom: 10px;
  position: relative;
  line-height: 1.5;
}

#body_sub h3 a {
  color: #095DA3;
}

#body_sub h3:before {
  content: '';
  position: absolute;
  left: 0;
  bottom: 0px;
  width: 100%;
  height: 4px;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#095da3+0,ffffff+100 */
  background: rgb(9,93,163); /* Old browsers */
  background: -moz-linear-gradient(left, rgba(9,93,163,1) 0%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(left, rgba(9,93,163,1) 0%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, rgba(9,93,163,1) 0%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#095da3', endColorstr='#ffffff',GradientType=1 ); /* IE6-9 */
}

#body_sub h4 {
  color: #095DA3;
  margin-top: 20px;
  font-size: 1.4375rem;
  padding-left: 14px;
  margin-bottom: 10px;
  position: relative;
  font-weight: 400;
  line-height: 1.5;
}

#body_sub h4:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 4px;
  height: 100%;
  background-color: #095DA3;
}

#body_sub h5 {
  color: #095DA3;
  position: relative;
  margin-top: 15px;
  font-size: 1.25rem;
  padding-left: 14px;
  margin-bottom: 10px;
  font-weight: 400;
}

#body_sub h5:before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  width: 4px;
  height: 100%;
  /* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#095da3+0,ffffff+100 */
  background: rgb(9,93,163); /* Old browsers */
  background: -moz-linear-gradient(top, rgba(9,93,163,1) 0%, rgba(255,255,255,1) 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(top, rgba(9,93,163,1) 0%,rgba(255,255,255,1) 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to bottom, rgba(9,93,163,1) 0%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#095da3', endColorstr='#ffffff',GradientType=0 ); /* IE6-9 */
}

#body_sub h6 {
  color: #333;
  position: relative;
  margin-top: 15px;
  font-size: 1.25rem;
  font-weight: bold;
  margin-bottom: 10px;
}

.p-temp-page {
  font-size: 1rem;
  overflow-wrap: anywhere;
}
.p-temp-page p {
  margin-bottom: 0.5em;
}
.p-temp-page p:empty::before {
  content: "\00a0";
}

.p-temp-page a {
  color: #095DA3;
  font-size: 100%;
  text-decoration: underline;
}

.p-temp-page a:hover {
  text-decoration: none;
}

.p-temp-page a.c-btn.externalLinkIcon {
  background: inherit!important;
  padding: 9px 28px!important;
}

.p-temp-page a.c-btn.externalLinkIcon:hover {
  background: #095DA3!important;
}

.p-temp-page a.c-btn.externalLinkIcon ,
.p-temp-page a.c-btn {
  font-size: 100%;
  text-decoration: none;
  display: inline-block!important;
  margin: 32px auto 0!important;
}

.p-temp-page a.c-btn.externalLinkIcon:after ,
.p-temp-page a.c-btn:after {
  display: none;
}
.p-temp-page a.c-btn.externalLinkIcon.c-btn-down {
  margin: 16px auto 0 !important;
  padding: 13px 32px !important;
  max-width: unset;
  transition: background .3s;
}
.p-temp-page a.c-btn.externalLinkIcon.c-btn-down:before {
  top: 38%;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
@media screen and (max-width: 768px) {
  .p-temp-page a.c-btn.externalLinkIcon.c-btn-down {
    margin: 0 auto!important;
  }
}

.p-temp-page p > a.c-btn {
  font-size: 87%;
}

#body_sub h2 a {
  text-decoration: none;
}

#body_sub h3 a ,
#body_sub h4 a ,
#body_sub h5 a {
  text-decoration: none;
}

/* color dblue*/
.u-color-dblue {
  color: #095DA3!important;
}

/* color red*/
.u-color-red {
  color: #E60012!important;
}

/* color white*/
.u-color-white {
  color: #ffffff!important;
}

/* color white*/
.u-color-black {
  color: #333!important;
}

/*background-color water blue*/
.u-bg-wblue {
  background-color: #EFF6FC;
}

/*background-color white*/
.u-bg-white {
  background-color: #ffffff;
}

/*background-color glay*/
.u-bg-glay {
  background-color: #F2F2F2;
}

/*background-color blue*/
.u-bg-blue {
  background-color: #095DA3;
}

/*table type01*/
.p-temp-page table {
  margin-top: 15px;
  margin-bottom: 20px;
  border-color: #095DA3;
  border-collapse: collapse;
}

table.br-color-black {
  border-color: #333;
}

table.br-color-glay {
  border-color: #ccc;
}

table.br-color-blue {
  border-color: #095DA3;
}

table.br-color-red {
  border-color: #BB1A1A;
}

.p-temp-page table thead,
.p-temp-page table tbody {
  text-align: left;
}

.p-temp-page table tr th {
  background-color: #EFF6FC;
  border-color: #095DA3;
}

.p-temp-page table tr th {
  color: #004C96;
  text-align: center;
  font-size: 100%;
  font-weight: 700;
}

.p-temp-page table tr td {
  border-color: #095DA3;
  text-align: left;
}


/*丸リスト*/

.p-temp-page ul {
  margin:0 0 14px;
  padding:0;
}

.p-temp-page ul li {
  padding-left: 20px;
  position: relative;
}

.p-temp-page ul li + li {
  margin-top: 7px;
}

.p-temp-page ul li:before {
  content: '';
  position: absolute;
  left: 0;
  top: 9px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #095DA3;
}

/*italic*/

em {
  font-style: italic;
}

/*番号付きリスト*/

.p-temp-page ol {
  counter-reset: item;
  list-style-type: none;
  margin:0 0 14px;
  padding:0;
}

.p-temp-page ol li {
  padding-left: 26px;
  position: relative;
}

.p-temp-page ol li + li {
  margin-top: 7px;
}

.p-temp-page ol li:before {
  counter-increment: item;
  content: counter(item)'.';
  position: absolute;
  left: 0;
  width: 22px;
  text-align: center;
  top: -1px;
  color: #0A518B;
  font-size: 114%;
}


/*下層メニュー*/

.u-lnavi-item {
  overflow: hidden;
  margin-bottom: 40px!important;
}
.u-lnavi-item li {
  width: 25%;
  max-width: 246px;
  margin-bottom: 4px;
  margin-right: 4px;
  padding: 0!important;
  border: 1px solid #095DA3;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}

.u-lnavi-item li + li {
  margin-top: 0!important;
}

.u-lnavi-item li:nth-child(4n) {
  margin-right: 0;
}

.u-lnavi-item li a {
  display: block;
  padding: 5px 22px;
  min-height: 54px;
  position: relative;
  color: #095DA3;
  line-height: 1.3;
  text-align: center;
  font-weight: bold;
  width: 100%;
  height: 100%;
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-size: 1rem;
  background-color: #fff;
  text-align: left;
}

.u-lnavi-item li a:hover {
  cursor: pointer;
}

.u-lnavi-item li:before {
  display: none!important;
}
.u-lnavi-item li a:after {
  content: '';
  position: absolute;
  right: 10px;
  top: 50%;
  width: 8px;
  height: 8px;
  margin-top: -4px;
  border-top: 2px solid #095DA3;
  border-right: 2px solid #095DA3;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.u-lnavi-item li:hover a,
.u-lnavi-item li.is-active a {
  background-color: #EAF2FB;
}

.u-lnavi-item.u-lnavi-bottomitem li a:before {
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}

.u-lnavi-item.u-lnavi-headitem {
  margin-top: 80px;
  margin-bottom: 0;
}
.u-lnavi-item.u-lnavi-headitem li a:before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.c-body-wrap p {
  margin-bottom: 25px;
}

.l-wrapper.page-simple .u-lnavi-item li {
  border-radius: 100px;
  overflow: hidden;
}

/*太字*/
strong {
  font-weight: bold;
}

.c-body-wrap img {
  margin-bottom: 20px;
}

/*お問い合わせボックス*/

div#inquiry {
  max-width: 100%;
  margin: 0 auto 50px;
  padding: 32px 40px;
  box-sizing: border-box;
  background-color: #fff;
  border: 6px solid #EFF6FC;
}

div#inquiry-title {
  font-size: 142.8%;
  margin-bottom: 15px;
  color: #095DA3;
  font-weight: normal;
  line-height: 1.2;
}

div#inquiry strong {
  display: block;
  margin-bottom: 15px;
}

div#inquiry span {
  margin-left: 20px;
}

div#inquiry .c-btn {
  margin-left: 20px;
  margin-bottom: 0;
  font-size: 100%;
  text-decoration: none;
}

.p-map-container,
.p-info-container {
  margin: 0px auto 40px;
}

.p-info-type02 {
  padding: 30px 40px 20px;
}

.p-temp-page a[href$=".xls"], 
.p-temp-page a[href$=".xlsx"] {
  padding-right: 30px;
  background: url(../../images/common/ico-excel.png) no-repeat right center;
  display: inline;
  background-size: 14px auto;
}

.p-temp-page a.externalLinkIcon[href$=".pdf"] {
  padding-right: 30px;
  background: url(../../images/common/ico-pdf.png) no-repeat right center;
  display: inline;
  background-size:  14px auto;
}

.p-temp-page a[href$=".doc"]:after, 
.p-temp-page a[href$=".docx"]:after,
.p-temp-page a[href$=".xls"]:after, 
.p-temp-page a[href$=".xlsx"]:after,
.p-temp-page a[href$=".pdf"]:after {
  display: none;
}

.p-temp-page a[href$=".doc"], 
.p-temp-page a[href$=".docx"] {
  padding-right: 30px;
  background: url(../../images/common/ico-word.png) no-repeat right center;
  display: inline;
  background-size:  14px auto;
}

.p-temp-page a.externalLinkIcon[href^="http"] ,
.p-temp-page a.externalLinkIcon[href^="//"] {
  position: relative;
  display: inline;
  background: url(../../images/common/ico-target.svg) no-repeat right center;
  padding-right: 27px;
}

/*.p-temp-page a.externalLinkIcon[href^="http"]:after ,
.p-temp-page a.externalLinkIcon[href^="//"]:after {
  content: '';
  position: absolute;
  right: -25px;
  width: 22px;
  height: 22px;
  background: url(../../images/common/ico-target.svg) no-repeat right center;
}*/

.p-temp-page a.externalLinkIcon[href^="http://nh.kanagawa-museum.jp/"] ,
.p-temp-page a[href^="http://nh.kanagawa-museum.jp/"] {
  display: inline-block;
  margin: 0;
}

.p-temp-page a[href^="http://nh.kanagawa-museum.jp/"]:after {
  display: none;
}

.p-temp-page a[href^="http://nh.kanagawa-museum.jp/"]:not(:has(img)) {
  background: inherit;
}




#body_sub .p-info-container__download {
  color: #095DA3;
  font-size: 142%;
  padding-left: 40px;
  margin-bottom: 15px;
  padding-top: 5px;
  background: url(../../images/common/ico-download.svg) no-repeat left center;
  background-size: 30px auto;
}

#body_sub .p-info-container__download:before {
  display: none;
}

#body_sub .p-info-container__map {
  color: #095DA3;
  font-size: 142%;
  padding-left: 40px;
  margin-bottom: 15px;
  padding-top: 5px;
  background: url(../../images/common/ico-map.svg) no-repeat left center;
  background-size: 30px auto;
}

#body_sub .p-info-type02 h2:before,
#body_sub .p-info-container__map:before {
  display: none;
}

.p-map-container strong {
  margin-left: 30px;
  display: block;
  margin-bottom: 30px;
  font-size: 114%;
}

.p-map-container iframe {
  width: 800px;
  height: 360px;
  margin-left: 30px;
}

#body_sub .p-info-type02 h2 {
  color: #095DA3;
  font-size: 142%;
  margin-top: 0;
  padding: 0;
  background-color: inherit;
  margin-bottom: 15px;
}


/* ==========================================================================
Utility [ display / margin / padding / device... ]
========================================================================== */

/* vertical-align - utility
--------------------------------------------------------- */
.u-va-t{
  vertical-align: top !important;
}
.u-va-m{
  vertical-align: middle !important;
}
.u-va-b{
  vertical-align: bottom !important;
}

/* border - utility
--------------------------------------------------------- */
/* border-radius */
.u-br-4{
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px;
  -ms-border-radius: 4px;
}

.u-br-8{
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  -ms-border-radius: 8px;
}

.u-br-12{
  -webkit-border-radius: 12px;
  -moz-border-radius: 12px;
  border-radius: 12px;
  -ms-border-radius: 12px;
}

.u-br-16{
  -webkit-border-radius: 16px;
  -moz-border-radius: 16px;
  border-radius: 16px;
  -ms-border-radius: 16px;
}

/* border-none */
.u-br-0{
  border: none;
}

.u-br-t-0{
  border-top: none;
}

.u-br-r-0{
  border-right: none;
}

.u-br-b-0{
  border-bottom: none;
}

.u-br-l-0{
  border-left: none;
}

/* clearfix - utility
--------------------------------------------------------- */
.u-cf{
  *zoom: 1;
}

.u-cf:after{
  display: table;
  clear: both;
  content: '';
}

/* display - utility
--------------------------------------------------------- */
.u-d-tb{
  display: table !important;
}

.u-d-tbc{
  display: table-cell !important;
}

.u-d-b{
  display: block !important;
}

.u-d-ib{
  display: inline-block !important;
}

.u-d-n{
  display: none !important;
}

/* float - utility
--------------------------------------------------------- */
.u-fl-l{
  float: left !important;
}

.u-fl-r{
  float: right !important;
}

/* font-size - utility
--------------------------------------------------------- */
.u-fz-10{
  font-size: 10px !important;
}

.u-fz-12{
  font-size: 12px !important;
}

.u-fz-14{
  font-size: 14px !important;
}

.u-fz-16{
  font-size: 16px !important;
}

.u-fz-18{
  font-size: 18px !important;
}

.u-fz-20{
  font-size: 20px !important;
}

.u-fz-22{
  font-size: 22px !important;
}

.u-fz-24{
  font-size: 24px !important;
}

.u-fz-26{
  font-size: 26px !important;
}

.u-mini {
  font-size: 80%;
}

/* line-clamp - utility
--------------------------------------------------------- */
.u-lc{
  display:         box;
  display: -webkit-box;
  overflow: hidden;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}

/* margin - utility
--------------------------------------------------------- */
/* auto margin */
.u-m-c{
  margin-right: auto !important;
  margin-left: auto !important;
}

/* Top margin */
.u-mt-0{
  margin-top: 0 !important;
}

.u-mt-8{
  margin-top: 8px !important;
}

.u-mt-16{
  margin-top: 16px !important;
}

.u-mt-24{
  margin-top: 24px !important;
}

.u-mt-32{
  margin-top: 32px !important;
}

.u-mt-40{
  margin-top: 40px !important;
}

.u-mt-48{
  margin-top: 48px !important;
}

.u-mt-56{
  margin-top: 56px !important;
}

.u-mt-64{
  margin-top: 64px !important;
}

/* Right margin */
.u-mr-0{
  margin-right: 0 !important;
}

.u-mr-8{
  margin-right: 8px !important;
}

.u-mr-16{
  margin-right: 16px !important;
}

.u-mr-24{
  margin-right: 24px !important;
}

.u-mr-32{
  margin-right: 32px !important;
}

.u-mr-40{
  margin-right: 40px !important;
}

.u-mr-48{
  margin-right: 48px !important;
}

.u-mr-56{
  margin-right: 56px !important;
}

.u-mr-64{
  margin-right: 64px !important;
}

/* Bottom margin */
.u-mb-0{
  margin-bottom: 0 !important;
}

.u-mb-8{
  margin-bottom: 8px !important;
}

.u-mb-16{
  margin-bottom: 16px !important;
}

.u-mb-24{
  margin-bottom: 24px !important;
}

.u-mb-32{
  margin-bottom: 32px !important;
}

.u-mb-40{
  margin-bottom: 40px !important;
}

.u-mb-48{
  margin-bottom: 48px !important;
}

.u-mb-56{
  margin-bottom: 56px !important;
}

.u-mb-64{
  margin-bottom: 64px !important;
}

/* Left margin */
.u-ml-0{
  margin-left: 0 !important;
}

.u-ml-8{
  margin-left: 8px !important;
}

.u-ml-16{
  margin-left: 16px !important;
}

.u-ml-24{
  margin-left: 24px !important;
}

.u-ml-32{
  margin-left: 32px !important;
}

.u-ml-40{
  margin-left: 40px !important;
}

.u-ml-48{
  margin-left: 48px !important;
}

.u-ml-56{
  margin-left: 56px !important;
}

.u-ml-64{
  margin-left: 64px !important;
}

/* misc - utility
--------------------------------------------------------- */
.u-ws-nowrap{
  white-space: nowrap;
}

.u-mx-img{
  max-width: 100%;
}

.u-tx-inside {
  margin-left: 1em;
  text-indent: -1em;
}

/* padding - utility
--------------------------------------------------------- */
/* Top padding */
.u-pt-0{
  margin-top: 0 !important;
}

.u-pt-8{
  margin-top: 8px !important;
}

.u-pt-16{
  margin-top: 16px !important;
}

.u-pt-24{
  margin-top: 24px !important;
}

.u-pt-32{
  margin-top: 32px !important;
}

.u-pt-40{
  margin-top: 40px !important;
}

.u-pt-48{
  margin-top: 48px !important;
}

.u-pt-56{
  margin-top: 56px !important;
}

.u-pt-64{
  margin-top: 64px !important;
}

/* Right padding */
.u-pr-0{
  padding-right: 0 !important;
}

.u-pr-8{
  padding-right: 8px !important;
}

.u-pr-16{
  padding-right: 16px !important;
}

.u-pr-24{
  padding-right: 24px !important;
}

.u-pr-32{
  padding-right: 32px !important;
}

.u-pr-40{
  padding-right: 40px !important;
}

.u-pr-48{
  padding-right: 48px !important;
}

.u-pr-56{
  padding-right: 56px !important;
}

.u-pr-64{
  padding-right: 64px !important;
}

/* Bottom padding */
.u-pb-0{
  padding-bottom: 0 !important;
}

.u-pb-8{
  padding-bottom: 8px !important;
}

.u-pb-16{
  padding-bottom: 16px !important;
}

.u-pb-24{
  padding-bottom: 24px !important;
}

.u-pb-32{
  padding-bottom: 32px !important;
}

.u-pb-40{
  padding-bottom: 40px !important;
}

.u-pb-48{
  padding-bottom: 48px !important;
}

.u-pb-56{
  padding-bottom: 56px !important;
}

.u-pb-64{
  padding-bottom: 64px !important;
}

/* Left padding */
.u-pl-0{
  padding-left: 0 !important;
}
.u-pl-8{
  padding-left: 8px !important;
}
.u-pl-16{
  padding-left: 16px !important;
}
.u-pl-24{
  padding-left: 24px !important;
}
.u-pl-32{
  padding-left: 32px !important;
}
.u-pl-40{
  padding-left: 40px !important;
}
.u-pl-48{
  padding-left: 48px !important;
}
.u-pl-56{
  padding-left: 56px !important;
}
.u-pl-64{
  padding-left: 64px !important;
}

/* position - utility
--------------------------------------------------------- */
.u-pos-a{
  position: absolute !important;
}

.u-pos-r{
  position: relative !important;
}

/* text-align - utility
--------------------------------------------------------- */
.u-ta-l{
  text-align: left !important;
}

.u-ta-c{
  text-align: center !important;
}

.u-ta-r{
  text-align: right !important;
}

/* text-decoration - utility
--------------------------------------------------------- */
.u-fw-n{
  font-weight: normal !important;
}

.u-fw-500{
  font-weight: 700 !important;
}

.u-fw-700{
  font-weight: 700 !important;
}

.u-td-u{
  text-decoration: underline !important;
}

u:hover {
  text-decoration: underline;
}

/* text-truncate - utility
--------------------------------------------------------- */
.u-tt{
  display: block;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  word-wrap: normal;
  /* for IE 8/9 */
}

/* width - utility
--------------------------------------------------------- */
.u-w-auto{
  width: auto !important;
}

.u-maw-full{
  max-width: 100% !important;
}

.u-maw-half{
  max-width: 50% !important;
}

@media screen and (max-width: 768px) {
  /* content */
  .c-center {
    max-width: 1100px;
    width: 92.5%;
    padding: 20px 0;
    margin: 0 auto;
    box-sizing: border-box;
  }

  /*under line yellow*/

  .u-yellow-line {
    display: inline;
    position: relative;
  }

  .u-yellow-line:before {
    content: '';
    position: absolute;
    left: 0;
    bottom: 4px;
    height: 4px;
    width: 100%;
    z-index: 0 ;
    background: #FFD800;
  }

  /*番号付きリスト*/

  .u-list-num {
    counter-reset:number;
    list-style:none;
    margin:0 0 16px;
    padding:0;
  }

  .u-list-num li {
    padding-left: 20px;
    position: relative;
  }

  .u-list-num li + li {
    margin-top: 8px;
  }

  .u-list-num li:before {
    counter-increment: number;
    content: counter(number);
    position: absolute;
    left: 0;
    top: -2px;
    color: #059C40;
    font-size: 107%;
    font-family: brandon-grotesque, sans-serif;
    font-weight: 700;
    font-style: italic;
  }

  .c-btn {
    font-size: 100%;
    margin-top: 20px;
    max-width: 90%;
  }

  .c-select-box {
    width: 90%;
    margin: 0px auto 20px;
    display: block;
  }

  .c-body-wrap p {
    margin-bottom: 15px;
  }

  .p-temp-page table tr th,
  .p-temp-page table tr td {
    font-size: 100%;
  }

  .p-temp-page table tr th,
  .p-temp-page table tr th {
    font-size: 100%;
  }

  .u-imgl-layout__thum {
    margin-right: 10px;
    margin-bottom: 15px;
  }

  .u-imgr-layout__thum {
    padding-left: 10px;
  }

  .u-lnavi-item li {
    max-width: 100%;
    width: 100%;
    margin: 0;
  }

  .u-lnavi-item li + li {
    margin-left: 0;
    margin-top: -1px;
  }

  .u-lnavi-item li a {
    min-height: auto;
    padding: 10px 20px;
    font-size: .875rem;
  }

  /*title*/
  #body_sub h1:not(.p-lv-inner__ttl),
  .p-temp-page h1 {
    font-size: 1.5625rem;
  }
  #body_sub h1:not(.p-lv-inner__ttl):before,
  .p-temp-page h1:before {
    height: 5px;
  }

  #body_sub h2 {
    line-height: 1.4;
    font-size: 1.25rem;
    padding-left: 23px;
  }
  #body_sub h2:before {
    height: calc(100% - 10px);
    left: 8px;
    width: 5px;
  }

  #body_sub h3 {
    line-height: 1.4;
    padding-bottom: 6px;
    font-size: 1.125rem;
    margin-bottom: 10px;
  }

  #body_sub h3 a {
    color: #095DA3;
  }

  #body_sub h4 {
    font-size: 1.125rem;
    padding-left: 12px;
  }

  #body_sub h5 {
    font-size: 1rem;
  }

  #body_sub h6 {
    font-size: 1rem;
  }

  .p-temp-page {
    font-size: inherit;
  }

  .p-temp-page p {
    margin-bottom: 0.5em;
    font-size: 100%;
  }

  .p-temp-page a {
    color: #095DA3;
    font-size: 100%;
    text-decoration: underline;
  }

  /* iframe */
  .p-temp-page iframe {
    aspect-ratio: 16 / 9;
    width: 100%;
    height: 100%;
    border: none;
  }

  /*丸リスト*/

  .p-temp-page ul {
    margin: 0.5em 0 14px;
    padding:0;
  }

  .p-temp-page ul li {
    padding-left: 15px;
    position: relative;
    font-size: 100%;
    line-height: 1.4;
  }

  .p-temp-page ul li + li {
    margin-top: 0.5em;
  }

  .p-temp-page ul li:before {
    content: '';
    position: absolute;
    left: 0;
    top: 9px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #095DA3;
  }


  /*番号付きリスト*/

  .p-temp-page ol {
    counter-reset: item;
    list-style-type: none;
    margin:0 0 14px;
    padding:0;
  }

  .p-temp-page ol li {
    padding-left: 26px;
    position: relative;
    font-size: 100%;
  }

  .p-temp-page ol li + li {
    margin-top: 7px;
  }

  .p-temp-page ol li:before {
    counter-increment: item;
    content: counter(item)'.';
    position: absolute;
    left: 0;
    top: 2px;
    width: 22px;
    text-align: center;
    color: #0A518B;
    font-size: 100%;
  }

  .map-box {
    height: 160px;
  }

  .p-map-container iframe {
    width: 100%;
    height: 100%;
    margin-left: 0;
  }

  #body_sub .sp-lnavi-wrap {
    position: relative;
    display: none;
  }

  #body_sub h2.sp-lnavi-title {
    position: relative;
    color: #fff;
    font-size: 100%;
    padding: 15px 35px 15px 15px;
    background-color: #095DA3;
    margin-top: 0;
  }

  #body_sub h2.sp-lnavi-title a {
    color: #fff;
  }

  #body_sub h2.sp-lnavi-title + .sp-lnavi-btn {
    position: absolute;
    right: 0;
    top: 0;
    width: 50px;
    height: 100%;
    z-index: 2;
    background: inherit;
    border: none;
  }

  #body_sub h2.sp-lnavi-title + .sp-lnavi-btn .open-text {
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
    width: 2px;
    height: 16px;
    background: #fff;
  }

  #body_sub h2.sp-lnavi-title + .sp-lnavi-btn.open .open-text {
    display: none;
  }

  #body_sub h2.sp-lnavi-title + .sp-lnavi-btn .close-text {
    position: absolute;
    right: 13px;
    top: 50%;
    transform: translateY(-50%);
    width: 16px;
    height: 2px;
    background: #fff;
  }

  #body_sub h2.sp-lnavi-title:before {
    display: none;
  }
  
  .u-lnavi-item {
    margin-top: -10px!important;
  }

  .u-lnavi-item {
    background-color: #F2F2F2;
  }

  .u-lnavi-item li {

    border: none;
  }

  .u-lnavi-item li a {
    text-align: left;
    display: block;
    padding-left: 28px;
    background-color: #F2F2F2;
  }

  .u-lnavi-item li a:after {
    left: 10px;
  }

  div#inquiry {
    padding: 25px 20px;
  }

  div#inquiry span {
    margin-left: 0;
  }

  div#inquiry span {
    margin-left: 0;
  }

  .p-info-type02 {
    padding: 20px;
  }
  .p-temp-page a[href$=".doc"], 
  .p-temp-page a[href$=".docx"] {
    padding-right: 30px;
    outline-width: 2px;
    padding-bottom: 2px;
  }
  .p-temp-page a[href$=".pdf"] {
    padding-right: 30px;
    padding-right: 2px;
    padding-bottom: 2px;
  }
  .p-temp-page a.externalLinkIcon[href$=".pdf"] {
    padding-right: 30px;
  }
  .p-temp-page a[href$=".xls"], 
  .p-temp-page a[href$=".xlsx"] {
    padding-right: 30px;
    padding-bottom: 2px;
    padding-top: 2px;
  }
}

/* faq */
.faq__ans {
  display: none;
}
.faq__que {
  position: relative;
  padding-right: 45px;
}
.faq__que__button {
  background-color: #095DA3;
  width: 26px;
  height: 26px;
  position: absolute;
  top: 50%;
  right: 6px;
  transform: translateY(-50%);
}
.faq__que:hover {
  cursor: pointer;
  background: #eee;
}
.faq__que__button::before,
.faq__que__button::after{
  position:absolute;
  content:'';
  top:0px;
  right:6px;
  bottom:0;
  width:14px;
  height:2px;
  margin:auto;
  background:#fff;
  transform:rotate(0deg);
  transition:transform 0.3s;
}
.faq__que__button::after{
  transform:rotate(-90deg);
}
.faq__que.active .faq__que__button::before{
  transform:rotate(45deg);
}
.faq__que.active .faq__que__button::after{
  transform:rotate(-45deg);
}

.is-hidden {
  opacity: 0;
  max-height: 0;
  overflow: hidden;
  transition: all 0.3s ease;
}
.is-hidden td {
  display: none;
}
.entry-list tr {
  transition: all 0.3s ease;
}
.entry-list tr.show {
  opacity: 1;
  max-height: 2000px; /* 大きめにしておく */
}

.show-more {
  width: 100%;
  max-width: 460px;
  height: 54px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  color: #095DA3 !important;
  font-weight: bold;
  font-size: 1.0625rem;
  background-color: #fff;
  text-decoration: unset !important;
  border: 1px solid #095DA3;
  margin: 0 auto;
}
.show-more:hover {
  cursor: pointer;
  background-color: #eaf2fb;
}
.show-more:after {
  content: '';
  position: absolute;
  right: 20px;
  top: 50%;
  width: 8px;
  height: 8px;
  margin-top: -6px;
  border-top: 2px solid #095DA3;
  border-right: 2px solid #095DA3;
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
}
@media screen and (max-width: 768px) {
  .show-more {
    max-width: 100%;
    height: 48px;
    font-size: .875rem;
  }
}