@charset "utf-8";/* 2023.12.22 */

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Plus+Jakarta+Sans:wght@400;800&family=Sacramento&display=swap');
.f-noto {font-family: "Noto Sans JP", sans-serif;}
.f-en {font-family: 'Plus Jakarta Sans', sans-serif;}
.f-g {font-family: "游ゴシック Medium", YuGothic, YuGothicM, sans-serif;}
h1,h2,h3,h4,h5,dt {font-family: "Noto Sans JP", sans-serif;font-weight: bold;margin-bottom: 10px;}

@media (min-width: 768px){a[href^="tel:"] { pointer-events: none;}}/* モバイル以外　tel無視 */
html {font-size: 62.5%;overflow-x: hidden;}
dt {font-weight: normal;}
ol {list-style-type: none!important;}
dt {font-weight: normal;}
a {color: #A78C0A; transition: .2s;}
a:hover {filter: saturate(150%);text-decoration:none;}
p { word-break: break-all;}

.form-control {margin-bottom: 15px;}

body {
  color: #222;
  font-family: "游ゴシック Medium", YuGothic, YuGothicM, sans-serif;
  font-size: 1.6rem;
  line-height: 1.7;
  letter-spacing: 0.02em;
  overflow-wrap: break-word;
  word-wrap: break-word;
  overflow-x: hidden;}

@media (min-width: 576px){body{font-size: 1.6rem;}}
img { max-width: 100%; height: auto; flex-shrink: 0;}
.row { align-items: flex-start;}

/* pcのみ・spのみ・タブレットtab以上 改行 */
@media (max-width: 576px){
  .pc_only { display:none; }
  .tab_only { display:none; }
  .sp_only { display:block; }}
@media (min-width: 577px){
  .pc_only { display:block; }
  .tab_only { display:block; }
  .sp_only { display:none; }}
@media (min-width: 768px) {
  .pc_only { display:block; }
  .sp_only { display:none; }}
@media (min-width: 820px) {
  .tab_only { display:none; }
}

/* footer　常に最下部に固定 */
body {
  display: flex;
  flex-direction: column;
  position: relative;
  min-height: 100vh;}
footer { margin-top: auto;}

ul {
  padding-left: 0;
  list-style: none;
}
ul.list-styled {
  padding-left: initial;
  list-style: initial;
}
#col_main .container, #col_side .container {
  min-width: initial;
}


/*container ----------------*/
.pt_100 {
  padding-top: 10rem;
}
.pb_100 {
  padding-bottom: 10rem;
}
.plr_30 {
  padding-left: 3rem;
  padding-right: 3rem;
}
.mlr_15 {
  margin-left: 1.5rem;
  margin-right: 1.5rem;
}
.mlr_-30 {
  margin-left: -3rem;
  margin-right: -3rem;
}
@media screen and (max-width: 768px) {
  .pt_100 {
    padding-top: 5rem;
  }
  .pb_100 {
    padding-bottom: 5rem;
  }
  .sp_mlr_0 {
    margin-left: 0;
    margin-right: 0;
  }
}
/*親要素からはみ出して子要素の背景を画面いっぱいに表示*/
.fluidBox .container {
  padding-right: 3rem;
  padding-left: 3rem;
}
@media screen and (max-width: 575px) {
  .fluidBox {
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
  }
}


/*button ----------------*/
[class^="btn_0"] {
  display: flex;
  justify-content: center;
  margin: 15px auto 40px;
}
.btn_arw::after {
  content: "\f105";
  font-size: 1.3rem;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  right: 11px;
  top: 50%;
  transform: translateY(-50%);
  speak: none;
}
@media only screen and (max-width: 991px) {
  .btn_arw::after {
    right: 1rem;
  }
}
.link_arw {
  position: relative;
  display: block;
  width: 100%;
}
.link_arw::after {
  color: #A71F13;
  content: "\f105";
  font-size: 1.3rem;
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  speak: none;
}

.clear {
  clear: both;
}
.hoverFade {
  opacity: 1;
  -webkit-transition: .2s ease-in-out;
  transition: .2s ease-in-out;
}
.hoverFade:hover {
  text-decoration: none;
  opacity: 0.7;
}
.txtIndent1 {
  padding-left: 1em;
  text-indent: -1em;
}
.ext_link > a::after {
  content: "\f35d";
  font-family: "Font Awesome 5 Free";
  padding-left: 0.5rem;
  font-weight: 900;
  speak: none;
}
.a_disable {
  pointer-events: none;
}
.txtIntro {
  line-height: 1.6;
}
/*pdf*/
.pdf_link > a::after {
  content: "\f1c1";
  font-family: "Font Awesome 5 Free";
  padding-left: 0.5rem;
  speak: none;
}
.pdf_link > a[href$=".pdf"]::after {
  content: "\f1c1";
  font-family: "Font Awesome 5 Free";
  padding-left: 0.5rem;
  speak: none;
}
/*ページ内リンクずれ防止*/
.link_gap {
  margin-top: -80px !important;
  padding-top: 80px !important;
}
@media only screen and (max-width:767px) {
  .link_gap {
    margin-top: -60px !important;
    padding-top: 60px !important;
  }
}
/*jquery.inview------------------*/
[class*="in_view"] {
  opacity: 0;
  animation-delay: .1s;
  animation-duration: .8s;
}

/* ==========================
　　Pagenation
========================== */
.pagenavigation {
  display: flex;
  justify-content: center;
}
.pagination {
  display: inline-block;
  padding-left: 0;
  margin: 21px 0;
  border-radius: 4px;
}
.pagination > * {
  font-size: 12px;
}
.pagination > li {
  display: inline;
}
.page-item.active .page-link {
  background-color: #013C1C;
  border-color: #013C1C;
}
.pagination > li > a, .pagination > li > span {
  padding: 8px 12px;
}
.pagination > li:first-child > a, .pagination > li:first-child > span {
  margin-left: 0;
  border-bottom-left-radius: 4px;
  border-top-left-radius: 4px;
}
.pagination > li:last-child > a, .pagination > li:last-child > span {
  border-bottom-right-radius: 4px;
  border-top-right-radius: 4px;
}
.pagination > .active > a, .pagination > .active > span, .pagination > .active > a:hover, .pagination > .active > span:hover, .pagination > .active > a:focus, .pagination > .active > span:focus {
  z-index: 3;
  color: #fff;
  background-color: #0d0f50;
  border-color: transparent;
  cursor: default;
}
.pagination > li > a, .pagination > li > span {
  position: relative;
  float: left;
  padding: 10px 15px;
  line-height: 1.42857143;
  text-decoration: none;
  color: #373d8c;
  background-color: #fff;
  border: 1px solid #373d8c;
  margin-left: -1px;
}


/* == breadcrumb ========= */
@media (min-width: 768px) {
  .breadcrumb {
    margin-bottom: 70px;
  }
}
.breadcrumb ol {
  font-size: 1.3rem;
  padding: 0;
  margin:0;
  list-style: none;
}
.breadcrumb ol,
.breadcrumb a,
.breadcrumb .active {
  color: #949494;
  text-decoration: none;
  margin: 0 auto;
}
.breadcrumb li {
  display: inline;
}
/*.breadcrumb li:not(:last-child) a,
.breadcrumb a:hover {
  text-decoration: underline;
}*/
.breadcrumb li + li::before {
  content: "\f105";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  padding: 0 1rem;
}
.breadcrumb .fas {
  vertical-align: middle;
  line-height: 0;}








/* 調整 */
.mb-1 { margin-bottom: 1rem!important;}	/* マージン修正 */
.mb-2 { margin-bottom: 2rem!important;}
.mb-3 { margin-bottom: 3rem!important;}
.mb-4 { margin-bottom: 4rem!important;}
.mb-5 { margin-bottom: 5rem!important;}
.mb-6 { margin-bottom: 6rem;}
.mb-7 {	margin-bottom: 7rem;}
.mb-8 {	margin-bottom: 8rem;}
.mb-9 {	margin-bottom: 9rem;}
.mb-10 { margin-bottom: 10rem;}
.mb-15 { margin-bottom: 15rem;}
.pb-1 {	padding-bottom: 1rem!important;}	/* パディング修正 */
.pb-2 {	padding-bottom: 2rem!important;}
.pb-3 {	padding-bottom: 3rem!important;}
.pb-4 {	padding-bottom: 4rem!important;}
.pb-5 {	padding-bottom: 5rem!important;}
.pb-6 {	padding-bottom: 6rem;}
.pb-7 {	padding-bottom: 7rem;}
.pb-8 {	padding-bottom: 8rem;}
.pb-9 {	padding-bottom: 9rem;}
.pb-10 { padding-bottom: 10rem;}
.lh-1 { line-height: 1em;}	/* 行間追加 */
.lh-2 { line-height: 2em;}
.lh-3 { line-height: 3em;}
.lh-4 { line-height: 4em;}
.lh-5 { line-height: 5em;}
.m-0a { margin: 0 auto;}				/* 左右センター揃え */
.max-w100 {max-width: 100%!important;}		/* max-width: 100% */
.max-h100 {max-height: 100%!important;}		/* max-height: 100% */
.h-100vh {height: 100vh!important;}

.bob-0 { border-bottom: none;}	/* アンダーライン消去 */

.letter-sp005 {letter-spacing: 0.05;}	/* 文字間を広げる */
.letter-sp01 {letter-spacing: 0.1;}
.letter-sp0 {letter-spacing: 0;}
.btn-hover {										/* ホバー　無透過 → 透過 */
  cursor: pointer;
  display: block;}
.btn-hover:hover {
  transition: 0.5s;
	opacity: 0.75;}
.btn-hover_op {										/* ホバー　透過 → 無透過（外に背景色を設定） */
	cursor: pointer;
	display: block;
  opacity: .6;}
.btn-hover_op:hover {
  transition: 0.5s;
  opacity: 1;}

.card {display: block;}
.card-img-top {
  max-width: 100%;
  flex-shrink:0;}

.container-xs {
  width: 100%;
  padding-right: 15px;
  padding-left: 15px;
  margin-right: auto;
  margin-left: auto;}
@media (min-width: 576px) {
  .container-xs { max-width: 100%;}
}
@media (min-width: 768px) {
  .container-xs { max-width: 96%;}
}
@media (min-width: 992px) {
  .container-xs { max-width: 960px;}
}
@media (min-width: 1200px) {
  .container-xs { max-width: 960px;}
  .container, .container-lg, .container-md, .container-sm {
    max-width: 1280px
  }
}

.container-xl {
  padding-right: 0px;
  padding-left: 0px;
  margin-right: auto;
  margin-left: auto;}
@media (min-width: 1200px) {
  .container-xl {
    max-width: 1920px; }
}
/*button:not(:disabled), [type="button"]:not(:disabled), [type="reset"]:not(:disabled), [type="submit"]:not(:disabled) {
  background-color: inherit;}*/


