/*コメント*/
.white, .white a, .white a:hover, .white a:hover:after{color:#fff;text-decoration:none;}

.black, .black a, .black a:hover, .black a:hover:after{color:#151515;text-decoration:none;}
/**/
.gsap-container {
  display: flex;
  width: 100%;
  height: auto;
  overflow: hidden;
}

.slider-column {
  overflow: hidden;
  position: relative;
}

.gsap-track {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  display: flex;
  flex-direction: column;
}

.skewslide {
  width: 100%;
  overflow: hidden;
}

.skewslide img {
  width: 100%;
  height: auto;
  display: block;
}
/**/
/*hover-image-click-accordion*/
.wrap-flex, .wrap-flex-3 {
    display: flex;
    gap: 20px;
}

.item-flex-5-position{ 
    display: grid;
    grid-template-columns: 1fr;
    grid-template-rows: 1fr;
    aspect-ratio: 4/3; /* アスペクト比を固定 */
}

.item-flex-5-position img {
    grid-column: 1;
    grid-row: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    opacity: 0; /* 透明度で非表示にする */
    visibility: hidden; /* 視認性も隠す */
    transition: opacity 0.3s ease;
    position: relative; /* 追加：位置制御を確実にする */
}

.item-flex-5-position img.active{
    opacity: 1; /* 表示する画像は不透明に */
    visibility: visible; /* 表示する画像は視認可能に */
    z-index: 1; /* 追加：確実に表示するために重なり順を指定 */
}

.item-flex-7 li {
    background-color: rgba(255,255,255,0.7);
    background-blend-mode: overlay;
    color: #2a2a2a;
    margin-bottom: 10px;
    border-bottom: 1px solid #000;
    position: relative;
}

.accordion-header-position {
    padding: 15px;
    padding-right: 40px;
    cursor: pointer;
    position: relative;
}

.item-flex-7 li a:hover{
    color: #ff6452;
    text-decoration: none;
}

.item-flex-7 a, .item-flex-7 li a:hover:after{
    color: #2a2a2a;
    text-decoration: none;
}

.item-flex-7 li .plus {
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    transition: all 0.3s ease;
    font-size: 16px;
}

/* ホバー時に矢印が右に移動 */
.item-flex-7 li:hover .plus {
    transform: translateY(-50%) translateX(5px);
}

/* アコーディオンコンテンツのスタイル */
.accordion-content-position {
    background-color: rgba(255,255,255,0.2);
    background-blend-mode: overlay;
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.3s ease;
    padding: 0 15px;
}

.accordion-content-position.active {
    max-height: 200px; /* コンテンツの最大高さを適宜調整 */
    padding: 15px;
    border-top: 1px dashed #eee;
}

/* アコーディオン開閉時の + と - の切り替え */
.accordion-header-position.active .plus {
    content: "ー";
    transform: translateY(-50%);
}

.accordion-header-position.active .plus:before {
    content: "ー";
    position: absolute;
    top: 0;
    left: 0;
}

/* JavaScript側で＋から-への置き換えをサポート */
.accordion-header-position .plus.minus {
    content: "ー";
}

.more-link {
    display: inline-block;
    margin-top: 10px;
    color: #ff6452 !important;
    font-weight: bold;
}

@media screen and ( max-width: 768px ) {

.overlay-text-clear {width:100%;height:100%;
  grid-area: content;
  z-index: 10; /* スライダーより前面に表示 */
  align-self: center;
  justify-self: center;
}
/**/
/*gsap-slide*/
.slider-gsap{grid-area: content;}

.slider-gsap {aspect-ratio:800/1250;
    width: 100%;
    overflow: hidden;
}

.slider-row {
    position: relative;
    overflow: hidden;
    margin-bottom: 20px;
}

.slider-track {
    display: flex;
    width: fit-content;
}

.gsapslide {
    width:30%;
    height:auto;
    margin: 0 10px;
    flex-shrink: 0;
}

.gsapslide img {
    width: 100%;
    height:auto;
    
    
}
/*end*/
/**/
.grid-wrapper {
  aspect-ratio: 800/1250;
  display: grid;
  grid-template-areas: "content";
}

.overlay-text {
  width: 100%;
  height: 100%;
  grid-area: content;
  z-index: 10;
  align-self: center;
  justify-self: center;
  background-color: rgba(255,255,255,0.7);
  background-blend-mode: overlay;
  padding: 10px;
}

.gsap-container {grid-area: content;
    flex-wrap: wrap;
    aspect-ratio:800/1250;
  }
  
  .slider-column {
    width: 48%; /* 2列レイアウト */
    aspect-ratio:800/1250; /* 高さを制限 */
    margin-bottom: 10px;
  }
  
  /* 奇数と偶数のカラムで左右に振り分け */
  .slider-column:nth-child(odd) {
    margin-right: 2%;
  }
  
  .slider-column:nth-child(even) {
    margin-left: 2%;
  }
  
  .skewslide {
    margin-bottom: 8px; /* スライド間の隙間を小さく */
  }
  
  .skewslide img {
    transform: scale(1.03); /* 少し拡大して隙間を埋める */
  }
/*gsap-skew*/
/*accordion*/
.wrap-flex, .wrap-flex-3 {
        flex-direction: column; /* 縦並びに変更 */
    }
    
    .item-flex-5-position {margin-bottom:20%;
        width: 100%;
        min-height: 200px; /* 最小高さを確保 */
    }
    
    /* 画像表示のための重要な設定を維持 */
    .item-flex-5-position img {
        opacity: 0;
        visibility: hidden;
    }
    
    .item-flex-5-position img.active {
        opacity: 1;
        visibility: visible;
        z-index: 1;
    }
    
    .accordion-header-position {
        padding: 12px;
        padding-right: 35px;
    }
    
    .accordion-content-position.active {
        max-height: 300px;
    }
    
    .item-flex-7 li .plus {
        font-size: 14px;
        right: 10px;
    }
    
    .item-flex-7 li {
        margin-bottom: 8px;
    }
    
    .accordion-content-position.active {
        padding: 10px;
    }
/*end*/
.card01 {
  display: grid;
}
.card-image {
  /* 格子のサイズに合わせて画像サイズを変更する */
  justify-self: stretch;
  grid-column-start: 1;
  grid-row-start: 1;
}
.card-description {z-index:4;padding:0% 5% 0 5%;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: start;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self: start;
  grid-column-start: 1;
  grid-row-start: 1;
}
.card-description2 {padding:10% 0 0 0%;z-index:10;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: center;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:start;
  grid-column-start: 1;
  grid-row-start: 1;
}
.card-description3 {padding:10% 5% 0 5%;z-index:10; 
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: start;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:start;
  grid-column-start: 1;
  grid-row-start: 1;
}

.card-description4 {padding:0 0% 5% 5%;z-index:10;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: start;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:end;
  grid-column-start: 1;
  grid-row-start: 1;
}
.card-description5 {padding:0% 5% 0% 5%;z-index:10;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: center;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:center;
  grid-column-start: 1;
  grid-row-start: 1;
}

.card-description6 {padding:0 5% 0 0%;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: end;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:end;
  grid-column-start: 1;
  grid-row-start: 1;
}

.embed{width:95%;margin:0 auto;}

.embed iframe.youtube-16-9 {
width: 100%;
height: auto;
aspect-ratio: 16 / 9;
}

.between-left-s{margin:0 0 0 1.5%;}
.carousel-container,.carousel-container-a,.carousel-container-b,.carousel-container-c {
    position: relative;
    width: 100%;
}

.carousel img,.carousel-a img,.carousel-b img,.carousel-c img {padding:0 2.5%;
    width: 100%;
    height: auto;
}

.custom-arrow,.custom-arrow-a,.custom-arrow-b,.custom-arrow-c {
    position: absolute;
    top: -90px;font-size:1em;font-weight:200;
    right: 30px;
    z-index: 1;display:none;
}

.custom-arrow button,.custom-arrow-a button,.custom-arrow-b button,.custom-arrow-c button {
    background: rgba(255, 255, 255, 0.0);
    color: rgba(210,210,210,1.0);
    border: 2px solid rgba(210,210,210,1.0);
    padding: 20px;
    margin-left: 5px;
    cursor: pointer;
    border-radius:50%;
}

.custom-arrow button:hover,.custom-arrow-a button:hover,

.custom-arrow-b button:hover,.custom-arrow-c button:hover {
    background: rgba(201,201,201,0.7);
}


/**/
/*30%left-70%right*/
.slick-container {
	position:relative;
        display: flex;
        width: 100%;
	flex-direction: column;
    	justify-content: flex-start;
        margin: 0 auto;
        }
        .right-content {
            width: 100%;
            padding: 0px;
            box-sizing: border-box;
	    display: flex;
    flex-direction: column;
    justify-content: flex-start;align-items:stretch;
        }
        
        .right-slick img{  width: 100%;
            height: auto;
        }

        .left-content {
    width: 100%;margin:auto 5%;white-space:nowrap;
    padding:50% 0% 0 0%;
    box-sizing: border-box;
    position: relative;
    /* 追加：flexboxの設定 */
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    /* 高さを設定して全体の位置を制御 */
    height: 100%;
}

.text-content {
    /* テキストコンテンツ用のスタイル */
    margin-bottom: 20px;
}

.thumb-arrow {z-index:10;
    /* 位置指定を変更 */
    position: absolute;
    /*width: 100%;*/
    /* 余白調整 */
    margin:0 5% 0px 5%;
    padding-top:60%;
    /* ボタンの配置調整 */
    display: none;
    gap: 10px;
}

.thumb-arrow .prev,
.thumb-arrow .next {
    background: transparent;
    color: #aaa;
    padding: 30px 30px;
    cursor: pointer;
    border: 1px solid #aaa;
    border-radius: 50%;
    transition: background 0.3s;
    /* ボタンのサイズ調整 */
    flex: 1;
    text-align: center;
}

.thumb-arrow .prev:hover,
.thumb-arrow .next:hover {
    background: rgba(170,170,170,0.3);
}

        /* 既存の矢印を非表示 */
        .slick-prev,
        .slick-next {
            display: none !important;
        }
.slick-content {
            padding: 15px;
            display: flex;
            flex-direction: column;
            align-items: stretch;
        }
/**/
.wrap-flex-3-fixed{display : -webkit-box;    
  display : -webkit-flex;    
  display : -ms-flexbox;    
  display : flex;
  -webkit-box-align: stretch;
	-ms-flex-align: stretch;
	align-items: stretch;justify-content:center;}

.item-flex-3-fixed{/*padding:30px;*/
	width:30%;
	/*background-color:#acacac;
	border-radius:15px;border:solid 3px #f00;*/}

.sub_contents{width:90%;margin:0 auto;}

.sub_contents2{width:90%;margin:0 auto;}

.between-left-L{margin:0 0 0 10%; }

.pc-only{display:none;}

.sp-only{display:block;}

.post-loop-wrap article {color:#151515;
width: 100%;
height:auto;
overflow-y:hidden;
margin: 0px 0% 30px 0%;
padding:0px;
float:none;}

.item-flex-3,.item-flex-7, .item-flex-5,.item-flex-10{
	/*padding:30px;*/
	width:100%;
	/*background-color:#acacac;
	border-radius:15px;border:solid 3px #f00;*/
}

/**/
.wrap-flex-next{
	display:flex;
	flex-direction:column;
	align-items:center;
}

.item-flex-next{
        position: relative;
  	margin-top: 1em;
  	padding: 1em 2em;
  	border: 0.5px solid #eee;
	padding:30px;
	width:100%;
	background-color:#FFFFFB;
        display:flex;
        flex-direction:column;
	border-top-left-radius:30px;
}
.caption-next{
  position: absolute;
  top: 0;
  right: 0;
  font-weight:bold;
  font-size: 3em;
  padding: 0.25em 0.5em;
  margin:0;color:#8BC8FF;
  background:#FFFEF2;
  border-radius:50%;
  transform: translateY(-50%) translateX(-10%);
}
/**/
/*end*/
.container-z,.container-z-2 {
  /*display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  grid-gap: 32px 0;*/
}

.container-reverse{
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: 1fr;
    grid-gap: 0px 0px;margin-top:15vh;
  }

.main_copy,

.main_copy-reverse, .main_copy-up,.main_copy-reverse-up-margin

{display:flex;
  justify-content: center;flex-direction: column;
  align-items: center;
  text-align:left;}

.main_copy-reverse-fixed {white-space:nowrap;
    grid-column: 7 / -1;
    grid-row: 1;
    align-self: center;
    z-index: 2;
  }

.main_copy-fixed {white-space:nowrap;
    grid-column: 4 / 10;
    grid-row: 1;
    align-self: center;
    z-index: 2;
  }

.main_copy-up-fixed{white-space:nowrap;
    
    grid-column: 4 / -4;
    grid-row: 1;
    align-self: center;
    z-index: 2;


 }
.main_copy-reverse-up-fixed{white-space:nowrap;
    
    grid-column: -4 / 4;
    grid-row: 1;
    align-self: center;
    z-index: 2;
 }

.main_img,.main_img-reverse{display:contents;margin:2% auto;}

.main_img-fixed {
    grid-column: 5 / -1;
    grid-row: 1;
    z-index: 1;
  }
.main_img-reverse-fixed {
    grid-column: 1 / -5;
    grid-row: 1;
    z-index: 1;
  }

.only-pc{content-visibility:hidden;}

.only-sh{display:contents;}

.back_index402{background:url("../img/index16_LL.jpg") no-repeat;

aspect-ratio: 3000 /1688 ;background-position:center center;

background-size:100%;justify-self: stretch;
  grid-column-start: 1;
  grid-row-start: 1;background-color: rgba(255,255,255,0.5);

background-blend-mode: overlay;}

.back_index06{background:url("../img/index08_M.jpg") no-repeat;

aspect-ratio: 960 /640 ;background-position:center center;

background-size:100%;}

.back_index07{background:url("../img/index09_M.jpg") no-repeat;

aspect-ratio: 960 /640 ;background-position:center center;

background-size:100%;}

.back_index08{background:url("../img/index15_MS.jpg") no-repeat;

aspect-ratio: 800 /1500 ;background-position:center center;

background-size:100%;justify-self: stretch;
  grid-column-start: 1;
  grid-row-start: 1;background-color: rgba(255,255,255,0.7);

background-blend-mode: overlay;}

.glass {margin:0 auto;
  width: 100%;
  max-width: 95%;
  padding: 10px;
  background-color:#fff; /* 背景色 */
  /*border: 1px solid rgba(164,164,157,1.0);ボーダー */
  /*-moz-backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px); 
  backdrop-filter: blur(20px);
  box-shadow: 0 5px 20px rgba(255, 152, 79, 0.5);*/ /* 薄い影 */
}

.glass2 {margin:0 auto;
  width: 100%;
  max-width: 95%;border:1px solid #eee;
  padding: 10px;border-radius:25px;
  background-color:rgba(139,200,255,0.8); /* 背景色 */
  
}
.glass-black {
  width: 100%;
  padding:10px 15px;
  background-color:rgba(0,0,0,0.5);
}
.glass-white {
  width: 100%;
  border-radius:10px;
  padding:10px 15px;
  background-color:rgba(255,255,255,0.5);
}
.glass-white2 {border:1px solid #000;
  width: 100%;
  border-radius:12.5px;
  padding:5px 3.5px;
  background-color:rgba(255,255,255,1.0);
}
.glass-white3 {
  width: 100%;
  border-radius:10px;
  padding:5px;
  background-color:rgba(255,255,255,0.5);
}
.glass-border {border:1px solid #000;
  width: 100%;
  border-radius:10px;
  padding:10px 10px;
  background-color:trasparent;
  min-height:100vh;
}
/*end*/


}

@media screen and ( min-width: 769px ) {

.overlay-text-clear {width:100%;height:100%;
  grid-area: content;
  z-index: 10; /* スライダーより前面に表示 */
  align-self: center;
  justify-self: center;
}
.overlay-text {width:100%;height:100%;
  grid-area: content;
  z-index: 10; /* スライダーより前面に表示 */
  align-self: center;
  justify-self: center;
  background-color: rgba(255,255,255,0.7);
            background-blend-mode: overlay;
}
/**/
/*gsap-slide*/
.slider-gsap{grid-area: content;}

.slider-gsap {aspect-ratio:3000/1688;
    width: 100%;
    overflow: hidden;
}

.slider-row {
    position: relative;
    overflow: hidden;
    margin-bottom: 20px;
}

.slider-track {
    display: flex;
    width: fit-content;
}

.gsapslide {
    width:30%;
    height:auto;
    margin: 0 10px;
    flex-shrink: 0;
}

.gsapslide img {
    width: 100%;
    height:auto;
}
/*end*/
/**/
.grid-wrapper {
  aspect-ratio: 3000/1688;
  display: grid;
  grid-template-areas: "content";
}

.overlay-text {
  width: 100%;
  height: 100%;
  grid-area: content;
  z-index: 10;
  align-self: center;
  justify-self: center;
  background-color: rgba(255,255,255,0.7);
  background-blend-mode: overlay;
  padding: 10px;
}

.gsap-container {grid-area: content;
    justify-content: space-between;
    aspect-ratio:3000/1688;
  }
  
  .slider-column {
    width: 23%; /* 4列で少し隙間を作る */
    height: 100%;
  }
  
  .skewslide {
    margin-bottom: 10px; /* スライド間の隙間 */
  }
  
  .skewslide img {
    transform: scale(1.05); /* 少し拡大して隙間を埋める */
  }
/*gsap-skew-end*/

/*hover-image-click-accordion*/
.item-flex-5-position {
        flex: 0 0 45%; /* 幅を45%に固定 */
    }
    
    .item-flex-7 {
        flex: 1; /* 残りのスペースを占める */
    }

/**/
.card01 {
  display: grid;
}
.card-image {
  /* 格子のサイズに合わせて画像サイズを変更する */
  justify-self: stretch;
  grid-column-start: 1;
  grid-row-start: 1;
}
.card-description {z-index:4;padding:0% 5% 0 5%;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: start;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self: start;
  grid-column-start: 1;
  grid-row-start: 1;
}
.card-description2 {padding:10% 0 0 0%;z-index:10;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: center;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:start;
  grid-column-start: 1;
  grid-row-start: 1;
}
.card-description3 {padding:10% 0 0 0%;z-index:10;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: start;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:start;
  grid-column-start: 1;
  grid-row-start: 1;
}

.card-description4 {padding:0 0% 5% 5%;z-index:10;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: start;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:end;
  grid-column-start: 1;
  grid-row-start: 1;
}

.card-description5 {padding:0 5% 0 5%;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: center;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:center;
  grid-column-start: 1;
  grid-row-start: 1;
}

.card-description6 {padding:0 5% 0 0%;
  /* 説明文を水平方向の（横軸の）中央に配置する */
  justify-self: end;
  /* 説明文を垂直方向の（縦軸の）中央に配置する */
  align-self:end;
  grid-column-start: 1;
  grid-row-start: 1;
}

.embed{width:60%;margin:0 auto;}

.embed iframe.youtube-16-9 {
width: 100%;
height: auto;
aspect-ratio: 16 / 9;
}

.between-left-s{margin:0 0 0 3%;}
 
.carousel-container,.carousel-container-a,.carousel-container-b,.carousel-container-c {
    position: relative;
    width: 100%;
}

.carousel img,.carousel-a img,.carousel-b img,.carousel-c img {padding:0 2.5%;
    width: 100%;
    height: auto;
}

.custom-arrow,.custom-arrow-a,.custom-arrow-b,.custom-arrow-c {
    position: absolute;
    top: -90px;font-size:1em;font-weight:200;
    right: 30px;
    z-index: 1;
}

.custom-arrow button,.custom-arrow-a button,.custom-arrow-b button,.custom-arrow-c button{
    background: rgba(255, 255, 255, 0.0);
    color:rgba(210,210,210,1.0);
    border: 2px solid rgba(210,210,210,1.0);
    padding: 30px;
    margin-left: 5px;
    cursor: pointer;
    border-radius:50%;
}

.custom-arrow button:hover,.custom-arrow-a button:hover,.custom-arrow-b button:hover,.custom-arrow-c button:hover {
    background: rgba(201,201,201,0.7);
}

/*30%left-70%right*/
.slick-container {position:relative;
            display: flex;
            width: 100%;
            margin: 0 auto;
        }
        
        
        
        .right-content {
            width: 80%;
            padding: 20px;
            box-sizing: border-box;
	    
        }
        
        .slick-slider img {
            width: 100%;
            height: auto;
        }

        .left-content {white-space:nowrap;
    width: 20%;
    padding: 20px;
    box-sizing: border-box;
    position: relative;
    /* 追加：flexboxの設定 */
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    /* 高さを設定して全体の位置を制御 */
    height: 100%;
}

.text-content {
    /* テキストコンテンツ用のスタイル */
    margin-bottom: 20px;
}

.thumb-arrow {z-index:10;
    /* 位置指定を変更 */
    position: absolute;
    /*width: 100%;*/
    /* 余白調整 */
    margin:0 5% 0px 5%;
    padding-top:60%;
    /* ボタンの配置調整 */
    display: flex;
    gap: 10px;
}

.thumb-arrow .prev,
.thumb-arrow .next {
    background: transparent;
    color: #aaa;
    padding: 30px 30px;
    cursor: pointer;
    border: 1px solid #aaa;
    border-radius: 50%;
    transition: background 0.3s;
    /* ボタンのサイズ調整 */
    flex: 1;
    text-align: center;
}

.thumb-arrow .prev:hover,
.thumb-arrow .next:hover {
    background: rgba(170,170,170,0.3);
}

        /* 既存の矢印を非表示 */
        .slick-prev,
        .slick-next {
            display: none !important;
        }
.slick-content {
            padding: 15px;
            display: flex;
            flex-direction: column;
            align-items: stretch;
        }

.sub_contents{width:60%;margin:0 auto;}

.sub_contents2{width:25%;margin:0 auto;}

.between-left-L{margin:0 0 0 15%; }

.post-loop-wrap article {
width: 32%;
height:auto;
overflow-y:hidden;
margin: 0px 0% 0px 0.2%;
padding:0.2%;
float:left;}

.pc-only{display:block;}

.sp-only{display:none;}

/**/
.wrap-flex-next,.wrap-flex-next2{
	display:flex;
	justify-content:center;
	align-items:stretch;
}

.item-flex-next{
        position: relative;
  	margin-top: 1em;
  	padding: 1em 2em;
  	border: 0.5px solid #eee;
	padding:30px;
	width:30%;margin:0 2%;
	background-color:#FFFFFB;
        display:flex;
        flex-direction:column;
	border-top-left-radius:30px;
}
.item-flex-next2{
        /*position: relative;*/
  	margin-top: 1em;
  	padding: 1em 2em;
  	border: 0.5px solid #eee;
	padding:30px;
	width:30%;margin:0 2%;
	background-color:#FFFFFB;
        display:flex;
        flex-direction:column;
	border-top-left-radius:30px;
}

.item-flex-next .caption-next, .float-left .caption-next,.float-left-half.caption-next{
  position: absolute;
  top: 0;
  right: 0;
  font-weight:bold;
  /*font-size: 1em;*/
  padding: 0.25em 0.5em;
  margin: 0;color:#8BC8FF;font-size:3em;
  background:#FFFEF2;
  border-radius:50%;
  transform: translateY(-50%) translateX(25%);
}
/**/
.wrap-flex{
	display:flex;align-items: flex-start;
	/*justify-content:space-between;*/
	/*align-items:stretch;*/
}

.wrap-flex-5-reverse,.wrap-flex-reverse{display:flex;
	/*justify-content:space-between;*/
	/*align-items:stretch;*/align-items: flex-start;
	flex-direction: row-reverse;
}

.wrap-flex-3{display:flex;align-items:stretch;}

.archive-ttl {flex-grow: 1;}

.item-flex-3{
	/*margin-top: 1em;
  	padding: 1em 2em;
	padding:30px;*/
	width:30%;/*margin:0 2%;
	background-color:#acacac;
	border-radius:15px;border:solid 3px #f00;*/
}


.item-flex-7,.item-flex-7-position{
	
	width:65%;/*margin:0 2%;
	background-color:#fff;
	border-radius:10px;*/
}

.item-flex-4{
	
	width:100%;/*margin:0 2%;
	background-color:#fff;
	border-radius:10px;*/
}

.item-flex-5{/*display:flex;
	flex-direction:column;
	align-items:start;*/
	width:45%;/*margin:0 2%;
	background-color:#fff;
	border-radius:10px;*/
}

.archive-ttl {margin: 0; /* 余計なマージンを取り除く */
      flex-grow: 1;}

.flex-btn{margin-top: auto !important;}

.item-flex-10{width:100%;}

.only-sh{display:none;}

.only-sh a{display:none;}

.only-pc{visibility:visible;}

   .container-z {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: 1fr;
    grid-gap: 0px;
  }
  .container-z-3 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: 1fr;
    grid-gap: auto auto;
  }
  .main_copy,.main_copy-fixed {
    grid-column: 1 / 7;
    grid-row: 1;
    align-self: center;
    z-index: 2;
  }
  
  .main_img, .main_img-fixed {
    grid-column: 5 / -1;
    grid-row: 1;
    z-index: 1;
  }
  .main_img-reverse,.main_img-reverse-fixed {
    grid-column: 1 / -5;
    grid-row: 1;
    z-index: 1;
  }

.container-z-2 {
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows:1fr;
    grid-gap:0em 0em;
  }

.container-reverse{
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    grid-template-rows: 1fr;
    grid-gap: 0px 0px;margin-top:15vh;
  }

  .main_copy-reverse,.main_copy-reverse-fixed {
    grid-column: 7 / -1;
    grid-row: 1;
    align-self: center;
    z-index: 2;
  }
  .main_copy-up-end{
    
    grid-column: 1 / -4;
    grid-row: 2;
    align-self:end;
    z-index: 2;


 }
 .main_copy-reverse-up,.main_copy-reverse-up-fixed{
    
    grid-column: -4 / 4;
    grid-row: 1;
    align-self: center;
    z-index: 2;
 }
 .main_copy-reverse-up-end{
    
    grid-column: 5 / 13;
    grid-row: 2;
    align-self: end;
    
    z-index: 2;
 }

.back_index402{background:url("../img/index16_LL.jpg") no-repeat;

aspect-ratio: 3000 /1688 ;background-position:center center;

background-size:100%;justify-self: stretch;
  grid-column-start: 1;
  grid-row-start: 1;background-color: rgba(255,255,255,0.5);

background-blend-mode: overlay;}

.back_index06{background:url("../img/index08_L.jpg") no-repeat;

aspect-ratio: 3000 /1250 ;background-position:center center;

background-size:100%;}

.back_index07{background:url("../img/index09_L.jpg") no-repeat;

aspect-ratio: 3000 /1250 ;background-position:center center;

background-size:100%;}

.back_index08{background:url("../img/index15_LL.jpg") no-repeat;

aspect-ratio: 3000 /1688 ;background-position:center center;

background-size:100%;justify-self: stretch;
  grid-column-start: 1;
  grid-row-start: 1;background-color: rgba(255,255,255,0.7);

background-blend-mode: overlay;}

.glass {margin:0 auto;
  width: 100%;
  max-width: 95%;
  padding: 10px;
  background-color:#fff; /* 背景色 */
  /*border: 1px solid rgba(164,164,157,1.0);ボーダー */
  /*-moz-backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px); 
  backdrop-filter: blur(20px);
  box-shadow: 0 5px 20px rgba(255, 152, 79, 0.5);*/ /* 薄い影 */
}
.glass2 {margin:0 auto;
  width: 100%;
  max-width: 95%;border:1px solid #eee;
  padding: 10px;border-radius:25px;
  background-color:rgba(139,200,255,0.8); /* 背景色 */
  
}

.glass-black {
  width: 100%;
  
  padding:10px 15px;
  background-color:rgba(0,0,0,0.5);
}
.glass-white {
  width: 100%;
  border-radius:10px;
  padding:40px 15px;
  background-color:rgba(255,255,255,0.5);
}

.glass-white2 {border:1px solid #000;
  width: 100%;
  border-radius:25px;
  padding:20px 15px;
  background-color:rgba(255,255,255,1.0);
}
.glass-white3 {
  width: 100%;
  border-radius:10px;
  padding:5px;
  background-color:rgba(255,255,255,0.5);
}
.glass-border {border:0.5px solid #303030;
  width: 100%;
  border-radius:10px;
  padding:20px 20px;
  background-color:rgba(255,255,255,0.7);
  
}
/*end*/

}