@charset "UTF-8";


.c-pankuz {
  position: absolute;
  font-size: 14px;
  bottom: 1px;
left: 140px;
}
@media screen and (max-width: 1024px) {
  .c-pankuz {
    font-size: 10px;
    left: 60px;
  }
}
@media screen and (max-width: 767px) {
  .c-pankuz {
    /* left: 20px; */
  }
}


.c-pankuz ul li {
  display: inline-block;
  line-height: 1.2;
  margin-right: 10px;
  color: #1796b5;
}

.c-pankuz ul li + li::before {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-top: 1px solid #00244B;
  border-right: 1px solid #00244B;
  transform: translateX(-9px) translateY(0px) rotate(45deg);
}

.c-pankuz ul li a {
  color: #00244B;
  display: inline-block;
  transition: 0.2s;
}
.c-pankuz ul li a:hover {
  color: #1796b5;
}

/* 下層ページメインビジュアル */
.c-pageMainv {
  position: relative;
  margin-top: 190px;
  background: linear-gradient(0deg, rgb(255, 255, 255) 0%, rgb(215, 237, 250) 100%);
  width: calc(1600 / 1920 * 100vw);
  max-width: 1600px;
  /* margin: 176px auto; */
  margin: 176px auto calc(125 / 1920 * 100vw);
  border-radius: 20px 20px 0 0  ;
}
@media screen and (max-width: 1024px) {
  .c-pageMainv {
    width: calc(100% - 50px);
    margin-top: 150px;
  
  }
}

.c-pageMainvInner {
  position: relative;
  height: calc(353 / 1920 * 100vw);
  min-height: 353px;
  padding-top: calc(108 / 1920 * 100vw);
  padding-left: calc(93 / 1920 * 100vw);
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 1024px) {
  .c-pageMainvInner {
    height: auto;
    min-height: auto;
  }
}
@media screen and (max-width: 767px) {
  .c-pageMainvInner {
    flex-direction: column;
    padding-top: 48px;
    padding-bottom: 25px;
  }
}

.c-pageMainv--textBox{
  /* width: 51.28%; */
  width: 50%;
    padding-left: 5%;
  }

  @media screen and (max-width: 1024px){
    .c-pageMainv--textBox{
  width: 100%;
  margin-bottom: 0;
  padding-left: 0;
    }
  }
  
  
  @media screen and (max-width: 767px){
    .c-pageMainv--textBox{
    }
  }
  

  

.c-pageTag {
  font-weight: 500;
  background-color: #006FAB;
  color: #fff;
  border-radius: 25px;
  padding: 12px 20px;
  display: inline-block;
  margin-bottom: 56px;
  line-height: normal;
  line-height: 1.2;

}

@media screen and (max-width: 1024px) {
  .c-pageTag {
    margin-bottom: 40px;
   }
}
@media screen and (max-width: 767px) {
  .c-pageTag {
   margin-bottom: 24px;
  }
}



.c-pageTtl {
  /* margin-top: 160px; */
}
@media screen and (max-width: 1024px) {
  .c-pageTtl {
    /* margin-top: 60px; */
  }
}


.c-pageTtl .enTtl {
  font-size: 20px;
  color: rgba(0, 36, 75, 0.6);
  font-weight: 400;
  letter-spacing: 0.06em;
  line-height: 1.1;
  display: block;
  margin-bottom: 8px;
  padding-left: calc(4 / 1920 * 100vw);
}
@media screen and (max-width: 1024px) {
  .c-pageTtl .enTtl {
  }
}
@media screen and (max-width: 767px) {
  .c-pageTtl .enTtl {
    font-size: 14px;
  }
}


.c-pageTtl .jaTtl {
  font-size: 48px;
  display: block;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 20px;
  letter-spacing: 0.1em;
  margin-bottom: calc(27 / 1920 * 100vw);
}
@media screen and (max-width: 1920px){
  .c-pageTtl .jaTtl {
  font-size: 48px;
  margin-bottom: 20px;
}
}
@media screen and (max-width: 1024px) {
  .c-pageTtl .jaTtl {
    font-size: 42px;
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 767px) {
  .c-pageTtl .jaTtl {
    font-size: 32px;
    margin-bottom: 15px;
    letter-spacing: 0.07em;
  }
}



.connectMainvImg {
  width: 45%;
  width: 369px;
  transform: translate(-3px, -35px);
}
@media screen and (max-width: 1024px) {
  .connectMainvImg {
    margin-top: 20px;
    margin-left: auto;
    width: 40%;
    transform: initial;
  }

  @media screen and (max-width: 767px) {
    .connectMainvImg {
      width: 80%;
      margin: 50px auto 20px;
    }
  }
}

.connectMainvImg--tv {
  /* width: 57.5vw; */
}
@media screen and (max-width: 1024px){
  .connectMainvImg--tv {
    width: 80%;
    margin: 0 auto 60px;
  }
}

@media screen and (max-width: 767px){
  .connectMainvImg--tv {
    width: 100%;
  margin-bottom: 40px;
  }
}


.sec-column {
  padding-top: calc(130 / 1920 * 100vw);
  padding-bottom: 30px;
  background-color: #ffffff;
  position: relative;
}

@media screen and (max-width: 767px) {
  .sec-column {
    padding-top: 40px;
    padding-bottom: 0px;
  }
}



.column-container{
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 767px) {
  .column-container {
    flex-direction: column;
    gap: 40px;
  }
}

.columnContentBox {
  position: relative;
  width: 66.7%;
}

@media screen and (max-width: 1390px){
  .columnContentBox {
    width: 55%;
  }
}

@media screen and (max-width: 767px) {
  .columnContentBox {
    width: 100%;
  }
}

.sidebar{
  width: 26.6%;
}


@media screen and (max-width: 1390px){
  .sidebar {
    width: 38%;
  }
}


@media screen and (max-width: 767px) {
  .sidebar {
    width: 100%;
  }
}





/* ========================================
   コラム一覧レイアウト
   ======================================== */

/* 検索機能 */

.searchArea{
  position: relative;
}

.searchAreaInner {
  position: relative;
  background-color: #f8f8f8;
  width: 83%;
  max-width: 1600px;
  margin: 5.2vw auto 0;
  padding: 2.5vw 10.44vw 1.5vw;
  border-radius: 20px;
}

@media screen and (max-width: 1024px) {
  .searchAreaInner {
    padding: 25px 25px;
    width: calc(100% - 50px);
  }
}

.searchItem {
  display: flex;
  align-items: flex-start;
  gap: 40px;
}

@media screen and (max-width: 1024px) {
  .searchItem {
    flex-direction: column;
    gap: 12px;
  }
}

.searchItem +  .searchItem{
  padding-top: 30px;
  margin-top: 30px;
  border-top: 1px dashed rgba(0, 36, 75, 0.20);
}

@media screen and (max-width: 1024px) {
  .searchItem +  .searchItem{
    padding-top: 25px;
  margin-top: 25px; 
  }
}


.searchItem-textbox{
  flex-shrink: 0;
  width: 200px;

}

.searchItemData{
  display: flex;
  flex-wrap: wrap;
  gap: 10px 6px;
}

@media screen and (max-width: 1024px) {
  .searchItemData {
    gap: 8px 6px;
  }
}

.searchItem-title{
  font-size: 24px;
  font-weight: bold;
  line-height: 1.5;
  letter-spacing: 0.05em;
  color: #00244b;
  margin-bottom: 4px;
  position: relative;
}

@media screen and (max-width: 1024px) {
  .searchItem-title {
    font-size: 16px;
    margin-bottom: 0;
  }
}

.searchItem-title--en{
  font-family: "Outfit", sans-serif;
  font-weight: 500;
  font-size: 0.66em;
}

.searchItemData-label {
  padding:8px 18px;
  border-radius: 4px;
  border: 1px solid rgba(0, 36, 75, 0.12);
  background: #FFF;
  display: flex;
  align-items: center;
  transition: all 0.3s ease;
  cursor: pointer;
}

@media screen and (max-width: 1024px) {
  .searchItemData-label {
    padding: 6px 10px;
  }
}

.searchItemData-label input[type="checkbox"] {
  border: 1px solid rgba(0, 36, 75, 0.12);
  margin: 0 6px 0 0 ;
  width: 17px;
  height: 17px;
  cursor: pointer;
}

@media screen and (max-width: 1024px) {
  .searchItemData-label input[type="checkbox"] {
    width: 14px;
    height: 14px;
  }
}


.searchItemData-label span {
  font-size: 14px;
  transition: all 0.3s ease;
}

@media screen and (max-width: 1024px) {
  .searchItemData-label span {
    font-size: 12px;
  }
}


/* チェックされたときのチェックボックスのスタイル */
.searchItemData-label input[type="checkbox"]:checked {
  background: #006FAB;
  border: 1px solid #006FAB;
  accent-color: #006FAB;
}

/* チェックされたときのlabelの背景色（JavaScriptでクラスを追加する方法） */
.searchItemData-label.checked {
  background: #006FAB;
  color: #fff;
  transition: all 0.3s ease;
}

.searchItemData-label.checked:hover input{
  background: #006FAB;
  color: #fff;
  accent-color:#006FAB;
}

.searchBtnCover{
  margin-top: 50px;
  margin-bottom: 18px;
}

@media screen and (max-width: 1024px) {
  .searchBtnCover {
    margin-top: 25px;
  }
}

@media screen and (max-width: 767px) {
  .searchBtnCover {
    margin-top: 30px;
    margin-bottom: 5px;
  }
}


.searchBtn{
  margin-left: auto;
}



/* コラムリストコンテナ */
.columnList {
  display: flex;
  flex-wrap: wrap;
  gap: 55px 40px;
  margin-bottom: 40px;
}

@media screen and (max-width: 1024px) {
  .columnList {
    gap: 40px;
  }
}

@media screen and (max-width: 767px) {
  .columnList {
    gap: 40px;
  }
}


/* コラムアイテム */
.columnItem {
  flex: 0 0 calc(50% - 20px);
  /* overflow: hidden; */
  /* transition: transform 0.3s ease; */
}

@media screen and (max-width: 1024px) {
  .columnItem {
    /* flex: 0 0 calc(50% - 10px); */
    flex: 0 0 100%;
  }
}

@media screen and (max-width: 767px) {
  .columnItem {
    flex: 0 0 100%;
  }
}

.columnItem .columnItemLink {
  display: block;
  text-decoration: none;
  color: inherit;
  height: 100%;
}

.columnItem .columnItemLink:hover .columnItemImg img{
  transform: scale(1.05);
}

.columnItem .columnItemImg {
  overflow: hidden;
  margin-bottom: 24px;
  border-radius: 20px;
}

.columnItem .columnItemImg img {
  width: 100%;
  height: auto;
  aspect-ratio: 38/24;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 20px;
  display: block;
  transition: transform 0.3s ease;
}




.columnItem .postInfo-box {
  margin-top: 12px;
}

@media screen and (max-width: 1024px) {
  .columnItem .postInfo-box {
  }
}

@media screen and (max-width: 767px) {
  .columnItem .postInfo-box {
  }
}


/* コラムアイテム内の投稿情報 */
.columnItem .postInfo {
  margin-bottom: 15px;
}



.columnItem .category_container{
  margin-bottom: 10px;
}


.columnItem .category_box {
  /* margin-bottom: 10px; */
}

.columnItem .category_box {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.columnItem .category {
  font-size: 14px;
  font-weight: bold;
  padding: 4px 20px;
  background: #D7EDFA;
  border-radius: 50px;
  display: inline-block;

}

@media screen and (max-width: 1024px) {
  .columnItem .category {
    font-size: 12px;
  }
}

/* コラムアイテム内のタイトル */
.columnItem .columnItemTtl {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.7;
  letter-spacing: 0.05em;
  color: #00244b;
  margin: 0;
  margin-bottom: 24px;
  /* テキスト省略表示の設定 */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; /* 2行で省略 */
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: calc(1.7em * 2); /* 2行分の高さを制限 */
}


@media screen and (max-width: 1024px) {
  .columnItem .columnItemTtl {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .columnItem .columnItemTtl {
    font-size: 16px;
  }
}

.columnItem .info-box-bottom{
  position: relative;
  display: flex;
justify-content: space-between;
align-items: center;
  /* flex-wrap: wrap; */
  gap: 12px;
}

.columnItem .info-box-bottom-left{
  display: flex;
  flex-wrap: wrap;
  gap: 2px 12px;
  align-items: center;
}

.info-box-bottom-right{
  position: relative;
}

.columnItem .time{
  font-size: 14px;
  color: #00244b;
  letter-spacing: 0.05em;
  line-height: 1.7;
  font-family: "Outfit", sans-serif;
  flex-shrink: 0;
}

.columnItem .tag_box{
  display: flex;
  flex-wrap: wrap;
  gap: 2px 10px;
}

.columnItem .tag{
  font-size: 14px;
  color: #006FAB;
  letter-spacing: 0.05em;
  line-height: 1.7;
  font-family: "Outfit", sans-serif;
}



.columnItem .linkbtn-arrow {
  z-index: 2;
  width: 36px;
  height: 36px;
  /* background: linear-gradient(90deg, #006FAB 0%, #004695 100%); */
  border-radius: 50%;
}

@media screen and (max-width: 767px){
  .columnItem .linkbtn-arrow {
  }
}

.linkbtn-arrow::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 13px;
  height: 12px;
  background-image: url(../img/connect-common/icon-arrow-wh.svg);
  background-repeat: no-repeat;
  background-size: contain;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
}
@media screen and (max-width: 1199px) {
  .linkbtn-arrow::before {
  }
}
@media screen and (max-width: 767px) {
  .linkbtn-arrow::before {
    width: 12px;
    height: 10px;
  }
}

.linkbtn-arrow::after {
  content: "";
  position: absolute;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: #006FAB;
  background: linear-gradient(90deg, #006FAB 0%, #004695 100%);
  transition-duration: 0.3s;
   top: 50%;
  right: 0;
  transform: translate(0, -50%);
  z-index: 2;
}
@media screen and (max-width: 1199px) {
  .linkbtn-arrow::after {
  }
}

.productItem:hover{

}

.columnItem:hover .columnItemImg {
  /* filter: brightness(0.7); */
  /* border:4px solid #006FAB; */
  /* border-bottom: none;   */
}
.columnItem:hover .columnItemImg img {
  transform: scale(1.03);  
}
.columnItem:hover .linkbtn-arrow::before {
  background-image: url(../img/connect-common/productItem-arrow-wh.svg);
  background-repeat: no-repeat;
  transition-duration: 0.3s;
}
.columnItem:hover .linkbtn-arrow::after  {
  transform: translate(0, -50%) rotate(135deg);
  opacity: 0.9;
  transition-duration: 0.3s;
}




/* コラム人気記事 */
.column-pickuip{
  position: relative;
}
.column-pickuip-inner{
  position: relative;
}

.column-pickuip-ttl {
  font-size: 24px;
  line-height: 1.5;
  font-weight: bold;
  position: relative;
  margin-bottom: 40px;
  padding-left: 24px;
  position: relative;
  letter-spacing: 0.05em;
  color: #00244B;
}

@media screen and (max-width: 1024px) {
  .column-pickuip-ttl {
    font-size: 20px;
    margin-bottom: 30px;
    padding-left: 18px;
  }
}

.column-pickuip-ttl::after {
  content: "";
  display: inline-block;
  position: absolute;
  top:-8px;
  left: 0;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #006fab;
  background: -webkit-gradient(linear, left top, right top, color-stop(-100%, #006fab), to(rgba(0, 111, 171, 0)));
  background: -webkit-linear-gradient(left, #006fab -100%, rgba(0, 111, 171, 0) 100%);
  background: linear-gradient(90deg, #006fab -100%, rgba(0, 111, 171, 0) 100%);
}

@media screen and (max-width: 1024px) {
  .column-pickuip-ttl::after {
    top: -5px;
    width: 32px;
    height: 32px;
  }
}

.column-pickuipItem .postInfo-box{
display: flex;
justify-content: space-between;
flex-wrap: wrap;
margin-bottom: 8px;
}

.column-pickuipItem .columnItemImg {
  overflow: hidden;
  border-radius: 6px;
  width: 31.25%;
}

.column-pickuipItem .columnItemImg img {
  width: 100%;
  height: auto;
  aspect-ratio: 10/6;
  -o-object-fit: cover;
     object-fit: cover;
  border-radius: 6px;
  display: block;
  transition: transform 0.3s ease;
}

.column-pickuipItem .postInfo-textbox{
width: 65%;
}



/* コラムアイテム内の投稿情報 */
.column-pickuipItem .postInfo {
  margin-bottom: 15px;

}

.column-pickuipItem .time {
  font-family: "Outfit", sans-serif;
  font-size: 12px;
  color: #00244b;
  letter-spacing: 0.05em;
  line-height: 1.7;
  flex-shrink: 0;
}


.column-pickuipItem .category_box {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.column-pickuipItem .category_container{
margin-bottom: 8px;
}

.column-pickuipItem .category {
  font-size: 12px;
  line-height: 1.5;
  font-weight: bold;
  padding: 5px 20px;
  background: #D7EDFA;
  border-radius: 50px;
  display: inline-block;
}

@media screen and (max-width: 1024px) {
  .column-pickuipItem .category {
    font-size: 11px;
  }
}

@media screen and (max-width: 767px) {
  .column-pickuipItem .category {
    font-size: 12px;
  }
}

/* コラムアイテム内のタイトル */
.column-pickuipItem .columnItemTtl {
  font-size: 14px;
  font-weight: bold;
  line-height: 1.7;
  letter-spacing: 0.05em;
  color: #00244b;
  margin: 0;
  /* テキスト省略表示の設定 */
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2; /* 2行で省略 */
  overflow: hidden;
  text-overflow: ellipsis;
  max-height: calc(1.7em * 2); /* 2行分の高さを制限 */
}


@media screen and (max-width: 1024px) {
  .column-pickuipItem .columnItemTtl {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .column-pickuipItem .columnItemTtl {
    font-size: 15px;
  }
}

.column-pickuipItem .info-box-bottom{
  position: relative;
  display: flex;
justify-content: space-between;
align-items: center;
  flex-wrap: wrap;
  gap: 12px;
}

.column-pickuipItem .info-box-bottom-left{
  display: flex;
  /* flex-wrap: wrap; */
  gap: 12px;
}

.info-box-bottom-right{
  position: relative;
}



.column-pickuipItem .tag_box{
  display: flex;
  flex-wrap: wrap;
  gap: 2px 10px;
}

.column-pickuipItem .tag{
  font-size: 12px;
  color: #006FAB;
  letter-spacing: 0.05em;
  line-height: 1.7;
  font-family: "Outfit", sans-serif;
}

@media screen and (max-width: 767px) {
  .column-pickuipItem .tag{
    font-size: 11px;
  }
}


.column-pickuipItem .columnItemLink {
  display: block;
  text-decoration: none;
  color: inherit;
  height: 100%;
  padding-bottom: 24px;
  margin-bottom: 24px;
  border-bottom: 1px solid rgba(0, 36, 75, 0.20);
}

.column-pickuipItem .columnItemLink:hover .columnItemImg img{
  transform: scale(1.05);
}






