@charset "UTF-8";

@media (min-width: 1440px){
    .header_title{
        font-size:4.5rem;
    }
}
@media (max-width: 1440px){
    .header_title{
        font-size:3rem;
    }
}
@media (max-width: 640px){
    .header_title{
        font-size:2rem;
    }
}

.header-caption{
    font-size:1rem;
}
@media (max-width: 1024px){
    .header-caption{
        font-size:0.8rem;
    }
}

/*レスポンシブ時に線をなくす*/
@media (max-width: 1024px){
    .main{
        box-shadow:none;
    }
    .side{
        border: 0;
    }
}

.title-font{
    font-family: industry, sans-serif;
    font-weight: 900;
    font-style: italic;
}

.text-center {
    display:block;
    text-align: center;
}

/*
#caseDisplay{
    border-width: 1px;
    border-color:#1B3355;
}
*/

.side {
    border-width: 1px;
    border-color:#1B3355;
    margin-left: -1px;
}


.side-title{
    background-color:#1B3355;
    color:#fff;
    padding-top: 32px;
    padding-bottom: 40px;
}
@media (max-width: 1024px){
    .side-title{
    display: none;
    }
}

.side-logo{
    padding-bottom:24px;
    font-size:1.8rem;
}
.side hr{
    height: 1rem;
    width:85%;
    margin: 0 auto;
}
.side-title .note{
    display:block;
    text-align: center;
    font-size: 0.8rem;
}


.card-hr{
    margin-bottom: 2rem;
    height: 1px;
    background-color: #28749C;
    border: none;
}

@media (min-width: 1440px){
    .top_card{
        grid-column-start: 1;
        grid-column-end: 4;
        grid-row-start: 1;
        grid-row-end: 1;
    }
}
@media (max-width: 1440px){
    .top_card{
        grid-column-start: 1;
        grid-column-end: 3;
        grid-row-start: 1;
        grid-row-end: 3;
    }
}

.top_card-flex{
    display:flex;
    gap:1.5rem;
}
@media (max-width: 640px){
    .top_card-flex{
        display:block;
    }
}

.top_card-img{
    flex-basis: 700px;
}

.top_card-img img{
    height:100%;
}

.card_box .sponsor{
    font-size:0.8rem;
    margin-bottom: 12px;
    /*margin-left: -8px;*/
}

.card_box .sponsor span{
    font-size:0.8rem;
    background-color: #28749C;
    color:#FFF;
    padding: 3px 16px;
    border-radius: 0px;}

.blog_card{
    position:relative;
    box-shadow: 4px 4px 4px 0px rgba(153, 153, 153, 0.2) !important;
}
@media (max-width: 1440px){
    padding-bottom:2rem;
}

.card_wrap{
    padding-bottom: 5rem;
}
@media (max-width: 1440px){
    .card_wrap{
        padding-bottom: 0;
    }
}

.readmore{
    font-size: 0.85rem;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 10rem;
    color: #FFF;
    font-weight:bold;
    background-color: #1B3355;
    padding: 0.5rem;
    text-align: center;
}
.blog_card:hover .readmore{
    background:#fff;
    color: #1B3355;
    transition: 0.5s;
}


@media (max-width: 1440px){
    .readmore{
        position: relative;
        width: 100%;
        margin-top:2rem;
    }
}

.category_title{
    color:white;
    background-color:#28749C;
}

.category_menu{
    border-width: 1px;
    border-color: #28749C;
}
.category_menu li:not(:last-child){
    border-bottom: solid 1px;
    border-color: #28749C;
}
@media (max-width: 1024px){
    .category_menu li{
        border-right: solid 1px;
        border-color: #28749C;
    }
    .category_menu li:nth-last-child(2){
        border-right: solid 1px;
        border-color: #28749C;
    }
    .category_menu li:nth-last-child(2){
        /*border-bottom: 0;*/
    }

}

.tagtitle{
    margin-top:1.5rem;
}

.filter.tagbox {
    display: flex;
    flex-wrap: wrap;
    padding: 16px 4px;
    border: 0;
    border:1px solid #28749C;
    background: #1B3355;

}
.filter.tagbox a {
    display: inline-flex;
    margin:4px;
    padding:0 2px;
    min-height: 32px;
    border:1px solid #FFF;
    /*border-radius: 999px;*/
    color: #fff;
}
@media (max-width: 1024px){
    .filter.tagbox {
        flex-wrap: nowrap;
        padding-bottom: 4px;
        margin-bottom:24px;
    }
    .filter.tagbox a {
        /*background: #28749C;*/
   
    }
    .filter.tagbox a span{
        
    }
}
@media (max-width: 768px){
  .filter.tagbox {
    flex-wrap: wrap;
}
}
.filter.tagbox a.active {
    background: #fff;
    border-color: transparent;
    color: #000;
    border-right-color: transparent;
    font-weight: 700;
}


.side_wrap{
    margin-top:20px;
}

@media (max-width: 1024px){
.hide-tab{
    display: none;
}
}

.side-box{
    box-shadow: 4px 4px 4px 0px rgba(153, 153, 153, 0.2) !important;
}

.side-text{
    background-color:#252525;
    color: #FFF;
}
.side-text p{
    font-size: 1rem;
}

/*========================
	footer
========================*/

/*pagetop*/

#page_top {
	display: block;
    position: fixed;
	bottom: 8px;
    right: 8px;
	width: 48px;
	height: 48px;
	background: #1c1917;/*stone-900*/
	/*border-radius: 24px;*/
	padding-top: 4px;
    opacity: 0; 
 
	cursor: pointer;
	z-index: 9;
  }

  #page_top span {
	display: block;
	padding-top: 4px;
	font-size:0.625rem;
	text-align: center;
  }

  svg.arrow {
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
	margin-left: auto;
	margin-right: auto;
	height: 1.5rem;
	width: 1.5rem;
  }
  
  @media (min-width: 1024px) {
	#page_top {
		padding-top: 0;
		right: 16px;
		bottom:16px;
	}
	svg.arrow {
	  height: 2rem;
	  width: 2rem;
	}
  }

  @media (min-width: 1440px) {
	#page_top {
	    right: 34px;
		bottom:34px;
	}
  }


  /*article*/

.blog_wrap{
    margin-top:-60px;
}
@media (max-width: 1024px) {
    .blog_wrap{
    margin-top:-50px
    };
}

.blog_title {
    display: grid;
    background-color: #1B3355;
  }
  
  @media (min-width: 768px) {
    .blog_title {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
  
  @media (min-width: 1024px) {
    .blog_title {
      grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  
  @media (min-width: 1280px) {
    .blog_title {
      grid-template-columns: repeat(5, minmax(0, 1fr));
    }
  }
  
  .blog_title .blog_title_box {
    padding: 0.25rem;
  }
  
  @media (min-width: 768px) {
    .blog_title .blog_title_box.blog_card img.card_img {
      /*大きい枠の画像縦横比*/
      aspect-ratio: 2 / 1;
      width: 100%;
      -o-object-fit: cover;
         object-fit: cover;
    }
  }
  
  @media (min-width: 1280px) {
    .blog_title .blog_title_box.blog_card img.card_img {
      /*大きい枠の画像縦横比*/
      aspect-ratio: 2 / 1;
      width: 100%;
      -o-object-fit: cover;
         object-fit: cover;
    }
  }
  
  @media (min-width: 768px) {
    .blog_title .blog_title_box {
      grid-column: span 2 / span 2;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_title .blog_title_box {
      grid-column: span 1 / span 1;
    }
  }
  
  @media (min-width: 1280px) {
    .blog_title .blog_title_box {
      grid-column: span 2 / span 2;
      padding: 1rem;
    }
  }
  
  .blog_title .blog_title_box .inner {
    display: flex;
    color: #fff;
    width: 100%;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    --tw-bg-opacity: 1;
    background-color: #1B3355;
    padding-top: 2rem;
    padding-bottom: 2rem;
    text-align: center;

  }
  
  @media (min-width: 768px) {
    .blog_title .blog_title_box .inner {
      aspect-ratio: 1 / 1;
      border: 1px solid;
      border-color: #fff;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_title .blog_title_box .inner {
      aspect-ratio: auto;
    }
  }
  
  @media (min-width: 1280px) {
    .blog_title .blog_title_box .inner {
      aspect-ratio: 1 / 1;
    }
  }
  
  .blog_title .blog_date {
    margin-bottom: 1rem;
    font-size: 1.5rem;
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(253 186 116 / var(--tw-text-opacity));
  }
  
  @media (min-width: 1024px) {
    .blog_title .blog_date {
      font-size: 2rem;
      /*margin-bottom: 3rem;*/
    }
  }
  
  .blog_title .blog_type {
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(251 146 60 / var(--tw-text-opacity));
  }
  
  @media (min-width: 1024px) {
    .blog_title .blog_type {
      font-size: 1.5rem;
      line-height: 2rem;
    }
  }
  
  .blog_title .blog_type.hps {
    /*ハイパフォーマー*/
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 700;
    --tw-text-opacity: 1;
    color: rgb(248 113 113 / var(--tw-text-opacity));
  }
  
  @media (min-width: 1024px) {
    .blog_title .blog_type.hps {
      font-size: 1.5rem;
      line-height: 2rem;
    }
  }
  
  .blog_title h3 {
    margin-bottom: 2rem;
  }
  
  @media (min-width: 1280px) {
    .blog_title h3 {
      /*margin-bottom: 4rem;*/
    }
  }
  
  .blog_title h3 span.blog_title_s {
    display: inline-block;
    line-height: 1.625;
    --tw-text-opacity: 1;
    color: rgb(246 239 229 / var(--tw-text-opacity));
  }
  
  @media (min-width: 1024px) {
    .blog_title h3 span.blog_title_s {
      font-size: 1.125rem;
      line-height: 1.75rem;
    }
  }
  
  .blog_title h3 span.blog_title {
    margin-top: 1rem;
    display: inline-block;
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 700;
    line-height: 1.625;
    color: #fff;
    /* --tw-text-opacity: 1;
    color: rgb(246 239 229 / var(--tw-text-opacity));*/
  }
  
  @media (min-width: 1024px) {
    .blog_title h3 span.blog_title {
      font-size: 1.875rem;
      line-height: 2.25rem;
      line-height: 1.625;
    }
  }
  
  @media (min-width: 1440px) {
    .blog_title h3 span.blog_title {
      font-size: 2.25rem;
      line-height: 2.5rem;
      line-height: 1.5;
    }
  }
  
  .blog_title .blog_tag {
    padding-left: 1rem;
  }
  
  @media (min-width: 1024px) {
    .blog_title .blog_tag {
      padding-left: 0px;
    }
  }
  
  @media (min-width: 768px) {
    .blog_title_img_box {
      grid-column: span 3 / span 3;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_title_img_box {
      grid-column: span 1 / span 1;
    }
  }
  
  @media (min-width: 1280px) {
    .blog_title_img_box {
      grid-column: span 3 / span 3;
    }
  }
  
  .blog_title_img {
    aspect-ratio: 3 / 2;
    height: 100%;
    width: 100%;
    border-width: 1px;
    /*
    --tw-border-opacity: 1;
    border-color: rgb(68 64 60 / var(--tw-border-opacity));
    */
    border-color: #171717;
    -o-object-fit: cover;
       object-fit: cover;
  }
  
  .blog_sheet {
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    border-width: 1px;
    border-bottom-width: 8px;
    border-color: #171717;
    /*
    --tw-border-opacity: 1;
    border-color: rgb(68 64 60 / var(--tw-border-opacity));
    --tw-bg-opacity: 1;
    background-color: rgb(246 239 229 / var(--tw-bg-opacity));
    */
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  
  @media (min-width: 768px) {
    .blog_sheet {
      padding-left: 2rem;
      padding-right: 2rem;
      padding-bottom: 2.5rem;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_sheet {
      max-width: 1600px;
      border-bottom-width: 16px;
      padding-bottom: 5rem;
    }
  }
 
  .blog_sheet p a {
    color: #28749C;
    display: inline-block;
    position: relative;
    padding-bottom: 1px;
  } 

  .blog_sheet p a::after {
    background-color: #28749C;
    bottom: 0;
    content: '';
    display: block;
    height: 1.1px;
    left: 0;
    position: absolute;
    transition: .5s all;
    width: 0;
  }

  .blog_sheet p a:hover::after {
    width: 100%;
  }
  /*
  .blog_sheet a:hover {
    opacity: 1;
  }
  */
  
  .blog_sheet hr {
    /*太目の破線*/
    margin-top: 2rem;
    border-left-width: 0px;
    border-right-width: 0px;
    border-bottom-width: 0px;
    border-top-width: 3px;
    border-style: dashed;
    --tw-border-opacity: 1;
    border-top-color: rgb(41 37 36 / var(--tw-border-opacity));
  }
  
  @media (min-width: 768px) {
    .blog_sheet hr {
      margin-top: 2.5rem;
    }
  }
  
  .blog_sheet hr.blog_solid {
    /*ブログ記事内の区切り線*/
    border-left-width: 0px;
    border-right-width: 0px;
    border-bottom-width: 0px;
    border-top-width: 1px;
    border-style: solid;
    --tw-border-opacity: 1;
    border-top-color: rgb(41 37 36 / var(--tw-border-opacity));
  }
  
  @media (min-width: 640px) {
    .blog_sheet hr.blog_solid {
      margin-left: -1rem;
      margin-right: -1rem;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_sheet hr.blog_solid {
      margin-left: -2rem;
      margin-right: -2rem;
    }
  }
  
  .blog_sheet hr.blog_solid:has(+.blog_subhead ) {
    /*ブログ記事内の区切り線をblog_subheadの直前に置く場合（ FireFox未対応だがスマホ画面用の対策なので使用）*/
    margin-left: -1rem;
    margin-right: -1rem;
  }
  
  @media (min-width: 1024px) {
    .blog_sheet hr.blog_solid:has(+.blog_subhead ) {
      margin-left: -2rem;
      margin-right: -2rem;
    }
  }
  
  .blog_intro {
    /*導入*/
    margin-bottom: 0.25rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-bottom-width: 4px;
    border-color: #1B3355;
    /*
    --tw-border-opacity: 1;
    border-color: rgb(68 64 60 / var(--tw-border-opacity));
    */
    padding-bottom: 0.5rem;
  }
  
  @media (min-width: 640px) {
    .blog_intro {
      flex-direction: row;
    }
  }
  
  .blog_intro p.head {
    display: flex;
    width: -moz-fit-content;
    width: fit-content;
    align-items: center;
    justify-content: center;
    border-bottom-width: 1px;
    border-color: #1B3355;
    font-size: 1.25rem;
    /*
    --tw-border-opacity: 1;
    border-color: rgb(68 64 60 / var(--tw-border-opacity));
    */
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    line-height: 2;
    --tw-text-opacity: 1;
  }
  
  @media (min-width: 640px) {
    .blog_intro p.head {
      width: 15rem;
      border-bottom-width: 0px;
      border-right-width: 1px;
      padding-top: 1.5rem;
      padding-bottom: 1.5rem;
      font-size: 1.25rem;

    }
  }
  
  @media (min-width: 1024px) {
    .blog_intro p.head {
      padding-top: 3rem;
      padding-bottom: 3rem;
      font-size: 1.25rem;
      line-height: 1.75rem;
      line-height: 2;
    }
  }
  
  .blog_intro .text {
    width: 100%;
    padding: 1rem;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    line-height: 2;
  }
  
  @media (min-width: 640px) {
    .blog_intro .text {
      /*font-size: 1.125rem;*/
      line-height: 1.75rem;
      line-height: 2;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_intro .text {
      padding: 2rem;
    }
  }
  
  .blog_subhead {
    /*小見出し*/
    margin-left: -1rem;
    margin-right: -1rem;
    margin-bottom: 2rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    border-top-width: 2px;
    border-bottom-width: 2px;
    border-color: #1B3355;
    /*
    --tw-border-opacity: 1;
    border-color: rgb(68 64 60 / var(--tw-border-opacity));
    */
    padding-top: 1rem;
  }
  
  @media (min-width: 640px) {
    .blog_subhead {
      flex-direction: row;
      /* padding-top: 0px; */
    }
  }
  
  @media (min-width: 1024px) {
    .blog_subhead {
      margin-left: -2rem;
      margin-right: -2rem;
    }
  }
  
  .blog_subhead p.head {
    display: flex;
    width: -moz-fit-content;
    width: fit-content;
    align-items: center;
    justify-content: center;
    border-bottom-width: 1px;
    border-color: #171717;
    /*
    --tw-border-opacity: 1;
    border-color: rgb(68 64 60 / var(--tw-border-opacity));
    */
    font-size: 1.25rem;
    line-height: 1.5rem;
    font-weight: 500;
    line-height: 2;
    --tw-text-opacity: 1;
    color: rgb(41 37 36 / var(--tw-text-opacity));
  }
  
  @media (min-width: 640px) {
    .blog_subhead p.head {
      width: 15rem;
      border-bottom-width: 0px;
      border-right-width: 1px;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_subhead p.head {
      font-size: 1.25rem;
      line-height: 1.75rem;
      line-height: 2;
    }
  }
  
  .blog_subhead .text {
    width: 100%;
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 0.75rem;
    text-align: center;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 500;
    line-height: 2;
  }
  
  @media (min-width: 640px) {
    .blog_subhead .text {
      padding-top: 1rem;
      padding-bottom: 1rem;
      text-align: left;
      font-size: 1.25rem;
      line-height: 1.75rem;
      line-height: 2;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_subhead .text {
      padding-left: 2rem;
      padding-right: 2rem;
    }
  }
  
  .blog_par_box.col_1 {
    /*要素（テキスト部分と写真部分）が縦にならぶ par=paragraph*/
    margin-left: auto;
    margin-right: auto;
    margin-top: 1rem;
    display: flex;
    max-width: 1024px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    line-height: 2;
  }
  
  @media (min-width: 768px) {
    .blog_par_box.col_1 {
      margin-top: 2rem;
    }
  }
  
  .blog_par_box.col_2 {
    /*要素（テキスト部分と写真部分）が、lg以上では横に並ぶ*/
    margin-left: auto;
    margin-right: auto;
    margin-top: 1rem;
    display: flex;
    max-width: 1024px;
    flex-direction: column;
    /*align-items: center;*/
    justify-content: center;
    line-height: 2;
  }
  
  @media (min-width: 768px) {
    .blog_par_box.col_2 {
      margin-top: 2rem;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_par_box.col_2 {
      flex-direction: row;
      justify-content:space-between;
    }
  }
  
.blog_par_box .img_pc50 {
   	max-width: 100%;
  height: auto;
 }
  
  @media (min-width: 1024px) {
    .blog_par_box .img_pc50 {
      width: 50%;
    }
  }

  .blog_par_box p.text {
    width: 100%;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }
  
  @media (min-width: 1024px) {
    .blog_par_box p.text {
      padding: 1.5rem;
    }
  }
  
  .blog_par_box ul.outline_list {
    width: 100%;
    padding-left: 0.25rem;
    padding-right: 0.25rem;
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  
  @media (min-width: 1024px) {
    .blog_par_box ul.outline_list {
      padding-left: 0.75rem;
      padding-right: 0.75rem;
    }
  }
  
  .blog_par_box ul.outline_list li {
    display: flex;
    border-bottom-width: 1px;
    border-color: #171717;
    /*
    --tw-border-opacity: 1;
    border-color: rgb(68 64 60 / var(--tw-border-opacity));
    */
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
  }
  
  .blog_par_box ul.outline_list li span.liketh {
    display: block;
    width: 6rem;
    flex-shrink: 0;
    padding-left: 1rem;
    padding-right: 1rem;
  }
  
  .blog_par_box ul.outline_list li span.liketh::before {
    margin-left: -1rem;
    --tw-content: '：';
    content: var(--tw-content);
  }
  
  @media (min-width: 640px) {
    .blog_par_box ul.outline_list li span.liketh {
      width: 7.5rem;
    }
  }
  
  @media (min-width: 1280px) {
    .blog_par_box ul.outline_list li span.liketh {
      width: 8.5rem;
    }
  }
  
  .blog_par_box ul.outline_list li span.liketd {
    display: block;
    border-left-width: 1px;
    border-color: #171717;
    /*
    --tw-border-opacity: 1;
    border-color: rgb(68 64 60 / var(--tw-border-opacity));
    */
    padding-left: 1rem;
    padding-right: 1rem;
  }
  
  .blog_par_box ul.outline_list li:last-child {
    border-bottom-width: 0px;
  }
  
  .blog_img_box.col_1 {
    /*画像縦並び*/
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
	margin-left: auto;
	margin-right: auto;
    display: grid;
    max-width: 95%;
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 0.5rem;
  }
  
  @media (min-width: 1024px) {
    .blog_img_box.col_1 {
      margin-top: 1rem;
      margin-bottom: 1rem;
      gap: 1rem;
      max-width: 100%;
      min-width: 50%;
      padding: 1.5rem
    }
  }
  
  .blog_img_box.col_2 {
    /*画像2点横並び*/
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    margin-left:auto;
    margin-right:auto;
    display: grid;
    width: 95%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.5rem;
  }
  
  @media (min-width: 1024px) {
    .blog_img_box.col_2 {
      margin-top: 1rem;
      margin-bottom: 1rem;
      gap: 1rem;
    }
  }
  @media (max-width: 640px) {
    .blog_img_box.col_2 {
      grid-template-columns: repeat(1, minmax(0, 1fr));
  }
}

  .blog_img_box.col_3 {
    /*画像3点横並び*/
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    margin-left:auto;
    margin-right:auto;
    display: grid;
    width: 95%;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 0.5rem;
  }
  
  @media (min-width: 1024px) {
    .blog_img_box.col_3 {
      margin-top: 1rem;
      margin-bottom: 1rem;
      gap: 1rem;
    }
  }
    @media (max-width: 640px) {
      .blog_img_box.col_3 {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }

  .blog_img_box.col_4 {
    /*画像4点横並び*/
    margin-top: 0.5rem;
    margin-bottom: 0.5rem;
    margin-left:auto;
    margin-right:auto;
    display: grid;
    width: 95%;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 0.5rem;
  }
  
  @media (min-width: 1024px) {
    .blog_img_box.col_4 {
      margin-top: 1rem;
      margin-bottom: 1rem;
      gap: 1rem;
    }
  }
    @media (max-width: 640px) {
      .blog_img_box.col_4 {
        grid-template-columns: repeat(1, minmax(0, 1fr));
    }
  }
  
  /*.blog_img_box figure {
      @apply mb-8;
    }*/
  
  .blog_img_box figcaption {
    margin-top: 0.5rem;
    padding-left: 0.5rem;
    padding-right: 0.5rem;
    font-size: 0.75rem;
    line-height: 1rem;
  }
  
  @media (min-width: 640px) {
    .blog_img_box figcaption {
      text-align: center;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_img_box figcaption {
      font-size: 0.875rem;
      line-height: 1.25rem;
    }
  }
  


  .blog_img_box img {
    /*画像横長　3：2*/
    aspect-ratio: 3 / 2;
    width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .blog_img_box img.nocut {
    aspect-ratio: auto !important;
    width: 100%;
  }
  
  .blog_img_box.narrow img  {
    /*画像縦長　3：4*/
    margin-left: auto;
    margin-right: auto;
    aspect-ratio: 3 / 4;
    width: 100%;
    max-width: 20rem;
    -o-object-fit: cover;
       object-fit: cover;
  }

  .blog_img_box.square img  {
    /*画像縦長　1：1*/
    margin-left: auto;
    margin-right: auto;
    aspect-ratio: 1 / 1;
    width: 100%;
    max-width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }

  .blog_img_box.five-four img  {
    /*画像縦長　5：4*/
    margin-left: auto;
    margin-right: auto;
    aspect-ratio: 5 / 4;
    width: 100%;
    max-width: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
  
  @media (min-width: 640px) {
    .blog_img_box.narrow img {
      max-width: 24rem;
    }
  }
  
  @media (min-width: 1024px) {
    .blog_img_box.narrow img {
      max-width: none;
    }
  }
  
  .blog_text_box.comment span.name {
    /*氏名・イニシャル用*/
    display: block;
    width: 2.5rem;
    flex-shrink: 0;
    font-weight: 700;
  }
  

/*breadcrumb*/
.breadcrumb {
	padding:0.5rem 1rem;
	font-size: 75%;
	border-top:2px solid #44403c;/*stone-700*/
}

.breadcrumb .breadcrumb_group {
	display: block;
}

.breadcrumb .breadcrumb_group li{
	display: inline;
	font-weight: 700;
}

.breadcrumb .breadcrumb_group li a {
	display: inline-block;
}

.breadcrumb .breadcrumb_group li:last-child {
	color: #78716c;/*stone-500*/
	font-weight: 700;
}

.breadcrumb_itemlink[href]:hover {
	opacity: 0.5;
}

.breadcrumb_group > * + * {
	margin-left: 0.25em;
}

.breadcrumb_group > * + *::before {
	content: "/";
	margin-left: 0.5em;
	margin-right: 0.5em;
	opacity: 0.5;
	color: #78716c;/*stone-500*/
}

  @media (min-width: 1024px) {
	.breadcrumb {
		padding: 0.5rem;
		font-size: 82.5%;
		border-top:none;
	  }

	  .breadcrumb .breadcrumb_group {
		display: flex;
		flex-wrap:wrap;
	  }

	  .breadcrumb_group > * + * {
		margin-left: 0.5em;
	  }

	  .breadcrumb_group > * + *::before {
		content: "/";
		margin-left: 0.75em;
		margin-right: 0.75em;

	  }
  }

/* インタビュー記事用 */

.text.question{
  font-weight: 700;;
  color: #28749C;
  padding: 0 !important;
}
@media (min-width: 1024px) {
.text.question{
  font-size: 1.1rem;
}
}

/* PCサイズで改行 */
@media (max-width: 1024px) {
.tab-hidden{
  display: none;
}
}

/* スマホ表示崩れ対策 */
@media (max-width: 768px) {
  a.blog_card{
    margin-bottom: 40px;
  }

  a.blog_card img{
    height: inherit;
  }

  .card_box{
    padding-top: 8px !important;
    padding-bottom: 20px !important;
    padding-left: 8px !important;


  }
  .card_box .sponsor span{
    /*font-size: 0.3rem !important;*/
    padding: 3px 8px;
  }
  
  .card_box .title{
    font-size: 0.8rem !important;
    line-height: 1.4 !important; 
  }
  a.blog_card div.card_box {
    height: inherit !important;
    text-overflow: ellipsis " [..]";
    overflow: hidden;
  }

  .blog_tag{
    padding-left: 8px;
  }
  /*
  .badge-category{
    font-size: 0.5rem !important;
  }
  */
}

.top_card-text div.card_box{
  height: auto !important;
}

.blog_par_box p.text {
  width: 100%;
  padding-left: 0.25rem;
  padding-right: 0.25rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
}

@media (min-width: 1024px) {
  .blog_par_box p.text {
    padding: 1.5rem;
  }
}

/*カラム調整*/
.blog_par_box.col_2 .blog_img_box{
  width: 50%;
}
@media (max-width: 1024px) {
  .blog_par_box.col_2 .blog_img_box{
    width: auto;
  }
}
.figcaption{
  font-size: 0.875rem;
  line-height: 1.25rem;
  text-align: center;
  padding-top: 8px;
}

.text figure a::after{
    display: none !important;
}

/* heroインクルード化 */
.hero-wrap{
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-top: 2rem;
  padding-bottom: 2rem;
}
@media (min-width: 1024px) {
  .hero-wrap{
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
@media (min-width: 768px) {
  .hero-wrap{
    padding-left: 6rem;
    padding-right: 6rem;
  }
}

.blog_par_box h3{
  display: block;
  background-color: #1B3355;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  padding-left: 1rem;
  margin:0  1.5rem;
}
@media (max-width: 1024px) {
  .blog_par_box h3{
    font-size: 1.3rem;
    margin:0;
  }
}

.blog_par_box h4 {
  display: block;
  font-size: 1.2rem;
  font-weight: 700;
  margin:0  1.5rem;
}
@media (max-width: 1024px) {
  .blog_par_box h4 {
	font-size: 1.1rem;
	margin: 0;
  }
}

.blog_par_box h4.h4_line {
  border-bottom: 1px solid #1B3355;
 margin: 1.5rem 1.5rem 0.5rem;
}
@media (max-width: 1024px) {
  .blog_par_box h4.h4_line {

  }
}