@charset "UTF-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700&family=Noto+Serif+JP:wght@600&display=swap');
.ns{font-family: 'Noto Sans JP', sans-serif;font-weight: 700;}
.nsr{font-family: 'Noto Serif JP', serif;font-weight: 600; font-size:1.4rem;}
@media (max-width: 575.98px){
.nsr{font-size:1rem;}
}
html { scroll-behavior: smooth;}
.jumbotron.jumbotron-fluid.c_kv {
  position: relative;
  min-height: 632px;
  margin-bottom: 0;
  overflow: hidden;
  background-image:url("../img/jalc_kv.jpg");
  background-repeat: no-repeat;
	background-color:#fff;
}
a.linkk{
    /*コレ*/display: block;
    border: none;
		text-decoration: none;
}
.sc1{margin-top: 3rem}
.sc1 h1 {
  font-size:1.6rem;
  padding: 0.5em;/*文字周りの余白*/
  color: #494949;/*文字色*/
	border-left: solid 8px #CB7D7D;/*左線（実線 太さ 色）*/
	margin-bottom: 1rem;
}
.tview{
background: #f0f0f0; padding:2rem;
}
.tview h3{
font-size:1.3rem;
margin-bottom: 2rem;
}
/* パソコンで見たときは"pc"のclassがついた画像が表示される */
.pci { display: block !important; }
.spi { display: none !important; }
 
/* スマートフォンで見たときは"sp"のclassがついた画像が表示される */
@media only screen and (max-width: 750px) {
    .pci { display: none !important; }
    .spi { display: block !important; }
.jumbotron.jumbotron-fluid.c_kv {
  min-height: 212px!important;
	margin-bottom: 0;
  background-image:url("../img/jalc_kv_sp.png");}
	.sc1{margin-top: 1rem}
	h1.spi{font-size:1.4rem;}
	p.spi{color:white;}
}
@media (max-width: 575.98px) {
.tview{padding:1rem;}
.tview h3{margin-bottom: 0.5rem;}
}
.vm{
	position:relative;
	width:100%;
	height:0;
	padding-top:30%;
}
.vm iframe{
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
}

footer {
    margin:4rem 0 0 0;
    padding: 2rem 0;
    color: #e9ecef;
    background-color: #343a40;
}
.h1sub{font-size:1rem;font-weight: bold;}
.sha4 {
color:#004155 !important;
/*
text-shadow: 2px 2px 10px #cadded ,
-2px 2px 10px #cadded ,
2px -2px 10px #cadded ,
-2px -2px 10px #cadded;
*/}
.teal2{background-color:#004155;}
.snm{font-size:0.9rem;line-height:1.2rem;text-align:right;/*margin-right:2rem;*/}
.snm2{font-size:1rem;line-height:1.2rem;text-align:right;}
@media (max-width: 575.98px) {
.snm{text-align:left;margin:0;}
}
.st{font-size:0.8rem;line-height:1.3rem;}
.red{color:#7DCBCB;}
.modal-content h2{font-size:1.1rem;margin-bottom:1.4rem;line-height:1.6rem;}
.modal-content h3{font-size:1rem;}
h2.shicho{font-size:1.6rem;color:#333;}
.nav-link {padding: 1rem 1rem;}
.nav-pills .nav-link.active, .nav-pills .show > .navlink.active.pill1{width:20vw;font-weight:bold;text-align:center;font-size:1.6rem;}
.nav-pills .nav-link, .nav-pills .show > .navlink.pill1{width:20vw;font-weight:bold;text-align:center;font-size:1.6rem;}
.crp a.btn.btn-outline-success{padding: 1rem;font-weight:bold;border-width: thick;}
.scbig{font-size:1.2rem;}
@media (max-width: 575.98px) {
.nav-pills .nav-link.active, .nav-pills .show > .navlink.active.pill1{width:auto;font-size:1rem;}
.nav-pills .nav-link, .nav-pills .show > .navlink.pill1{width:auto;font-size:1rem;}
.scbig {font-size: 1.1rem;
}
}
.sc1 h1.ond{font-size:1.2rem; border-left:none;margin-bottom:0;padding-bottom:0.5rem;}
.kou{font-size:1rem;font-weight:normal;color:#666;}
p.tbstr{margin:0 0 2rem;padding:0;font-size:0.8rem;}
.green{color:#A4CB7D;}
.lblue{color:#4682B4;}
p.indent-1 {
padding-left:3.3em;
text-indent:-3.3em;
}

#pagetop {
    position: fixed;
    right: 0;
    bottom: 0;
    text-indent: -9999px;
    margin: 0;
}
#pagetop a {
    position: relative;
    display: block;
    width: 65px;
    height: 65px;
    background: rgba(0,0,0,1);
    transition: opacity .6s ease;
}
#pagetop a:hover {
    opacity: .3;
}
#pagetop a::before {
    position: absolute;
    top: 7px;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    width: 14px;
    height: 14px;
    margin: auto;
    content: '';
    transform: rotate(-45deg);
    border-top: 1px solid #FFF;
    border-right: 1px solid #FFF;
}
@media screen and (max-width:767px) {
#pagetop a {
    width: 45px;
    height: 45px;
}
#pagetop a::before {
    top: 5px;
    width: 10px;
    height: 10px;
}
}

@media screen and (max-width: 767px) {
    br.br-pc {
        display: none !important;
    }
} /* max-width: 767px END */
 
@media screen and (min-width: 768px) {
    br.br-sp {
        display: none !important;
    }
} /* min-width: 768px END */

/**********追加**********/
.cover-img {
	height: 400px;
	display: table;
	width: 100%;
	background-size: cover;
	position: relative;
}
.prjlg{position: absolute; top:0; bottom:0; left:0; right:0; margin:auto;}
.jlclogo{padding-right: 1rem;}

/* ワイドスクリーン用のCSS */
@media only screen and (min-width: 1500px) {
	.cover-img {
		height: 400px;
	}
}

/* タブレット用のCSS */
@media only screen and (min-width : 768px) and (max-width : 1200px) {
	.cover-img {
		height: 400px;
	}
}

/* スマホ用のCSS */
@media only screen and (max-width: 479px) {
	.cover-img {
		height: 400px;
	}
}

.cover-text {
	display: table-cell;
	vertical-align: middle;
  text-align: center;
}

.gradient-background {
  background: linear-gradient(322deg,#26459c,#368cef,#9bb2af);
/*  background-size: 180% 180%;*/
  animation: gradient-animation 30s ease infinite;
}

@keyframes gradient-animation {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}
a.btn.disabled2{pointer-events: none;opacity:0.6;background-color:#ccc !important;font-size:1rem;font-weight: bold; }

a.btn.btn-grad {
background-image: linear-gradient(to right, #000046 0%, #1CB5E0  51%, #000046  100%);
font-size: 1.4rem;
font-weight: bold;
transition: 0.5s;
background-size: 200% auto;
color: white;            
box-shadow: 0 0 20px #eee;
border-radius: 10px;
display: block;
}

.btn-grad:hover {
background-position: right center; /* change the direction of the change here */
color: #fff;
text-decoration: none;
}
.fs-s{font-size:0.85rem;}
.wsnp  {white-space: nowrap;}
@media only screen and (max-width: 479px) {
.wsnp  {white-space: normal;}
}
.fonml h1.ond{font-size:1.3rem; border-left:none;margin-bottom:0;padding-bottom:0.5rem;font-weight: bold;margin-top: 0.5rem;}
.fs-sss{font-size:1.1rem;font-weight: normal;line-height:3;}
.smltx7{margin-top:0.5rem;font-size:70%;line-height:120%;display:block;}
.bg-happa{
    background-image: url(../images/happa.png);  
		background-repeat: no-repeat; 
		background-position: right bottom;
}
.kvh1{
color:#cb7d7d !important;
font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
font-size: calc(1.425rem + 2.1vw)
}
@media (min-width: 1200px) {
.kvh1{font-size: 2.6rem !important;}
}
.kvinfo{
font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
font-size:1.6rem;
}
@media only screen and (max-width: 479px) {
.kvinfo{
font-size:1.2rem;
}
}
.bgclr{
    border-bottom: 1px solid #e0c7b2;
    background-color: #fbfbf2;
	padding: 3.6rem 0;}
@media only screen and (max-width: 479px) {
.bgclr{
	padding: 3rem 0;
}
}	
.ttl_line1 {
  font-weight: bold;
  border-left: 5px solid #CB7D7D;
  border-bottom: 2px dashed #B4B4B4;
  padding: 0.25em 0 0.3em 0.5em;
}
section.prvtrd h2{
font-size:1.8rem;
}
section.prvtrd h3{
font-size:1.4rem;
}

.thumb{
width:100px;
}

.news-list{
  list-style: none outside;
  margin: 0;
  padding: 0;
}
.news-list .item a{
  display: flex;
  flex-wrap: wrap;
  flex-wrap: nowrap;
  text-decoration: none;
  color: #333;
  border-bottom: 1px solid #CCC;
  padding: 20px 20px;
}
.news-list .item:first-child a{
  border-top: 1px solid #CCC;
}
.news-list .item .date{
  margin: 0;
  min-width: 120px;
  font-size: 16px;
  color: #999;
  padding: 0 20px 0 0;
}
.news-list .item .title{
  margin: 0;
  width: 100%;
}
.news-list .item a:hover .title{
  color: #00F;
}

@media screen and (max-width: 767px){
.news-list .item a{
  flex-wrap: wrap;
}
.news-list .item .date{
  min-width: 100px;
}
.news-list .item .title{
  margin-top: 10px;
}
}
    .custom-mb {
      margin-bottom: 3rem; /* sm以上 */
    }
    @media (max-width: 575.98px) {
      .custom-mb {
        margin-bottom: 2rem; /* sm未満 */
      }
    }
		
.ondalrt {
    border-radius: 0.5em;
    background-color: rgba(255, 0, 0, 0.2);
    padding: 0.5rem;
    display: flex;
    justify-content: space-between; /* テキストと画像を左右に分ける */
    align-items: center;
    cursor: pointer; /* ホバー時にポインターを表示 */
　　flex-direction: row; /* 初期設定で横並び */
}

.ondalrt img {
    margin-left: 0.5rem;
    max-width: 240px; /* 小さめの画像 */
}

.ondalrt p {
  text-indent: -0.8em;
  padding-left: 2em;
    font-size: 90%;
    line-height: 1.2;
    color: #333333;
    margin: 0;
}
/* スマホ用レスポンシブ対応 */
@media (max-width: 768px) {
    .ondalrt {
        flex-direction: column; /* スマホでは縦並びに変更 */
        text-align: center; /* テキスト中央揃え */
    }

    .ondalrt img {
        margin: 1rem 0 0 0; /* 上に余白を追加して縦並びを調整 */
    }
}

/*BS5modal*/
.modal-backdrop { background-color: rgba(0, 0, 0, 0.8) !important; }
.modal-content { background-color: transparent !important; border: none !important; }
.modal-dialog { background-color: transparent !important; border: none !important; }
.modal-body { padding: 0 !important; }
.carousel-control-prev-icon, .carousel-control-next-icon { background-color: #000 !important; border-radius: 50% !important; width: 3rem !important; height: 3rem !important; }
.carousel-control-prev-icon:hover, .carousel-control-next-icon:hover { background-color: #555 !important; }
.btn-primary { background-color: #007bff !important; border-color: #007bff !important; }
.btn-primary:hover { background-color: #0056b3 !important; border-color: #0056b3 !important; }
	  @media (min-width: 768px) { /* タブレット以上のサイズ */
    .carousel .carousel-item img {
      max-width: 75%; /* デスクトップでは画像幅を75%に */
      margin: 0 auto; /* 画像を中央揃え */
    }
  }

  @media (max-width: 767.98px) { /* スマートフォン */
    .carousel .carousel-item img {
      max-width: 100%; /* スマートフォンでは幅100% */
    }
  }
  .ms-indent {
 margin-left: 5.52em;
  white-space: nowrap;
  }
