@charset "UTF-8";
/* CSS Document */

/*--------------------------------------------------------
　基本設定
--------------------------------------------------------*/

#slider_block { width:100%; position:relative; }
#slider_block #slider { width:100%; height:100%; position:relative; }

.swiper-slide { width:100%; height:100%; overflow:hidden; }

#slider .swiper-slide picture,
#slider .swiper-slide img {
  width:100%;
  height:100%;
  display:block;
  object-fit:cover;
}

/* 初期状態は等倍にしておく（animationでリセットしない） */
.swiper-img { 
  height:100%;
  transform: scale(1);
}

@keyframes zoomUp {
  0%   { transform: scale(1.1); }
  100% { transform: scale(1.0); }
}

/* フェード中も“前の”スライドが拡大を維持できるように prev にも付与 */
.swiper-slide-active .swiper-img,
.swiper-slide-prev .swiper-img,
.swiper-slide-duplicate-active .swiper-img {
  animation: zoomUp 10s linear both;
}

div#mv_block #page_title h2 {
    right: -7.5em;
}

.mark{
  position: relative;
  width: 100%;
  height: 100%;
}

.mark svg{
  position: absolute;
  left: 0;
  top: 0;
  overflow: visible;
}

.mark .line-vertical{
  width: 50%;
  height: 100%;
  left: 19%;
  top: 0;
}

.mark .line-v{
  width: 100%;
  height: 10.99%;
  left: 0;
  bottom: 0;
  top: auto;
}

.mark path{
  fill: none;
  stroke: #fff;
  stroke-linecap: round;
  stroke-miterlimit: 10;
  opacity: 0;
}

/* 縦線 */
.mark .line-vertical path{
  stroke-dasharray: 80;
  stroke-dashoffset: 80;
  animation: drawVertical 5.2s linear infinite;
}

/* V線 */
.mark .line-v path{
  stroke-dasharray: 20;
  stroke-dashoffset: 20;
  animation: drawV 5.2s linear infinite;
}

/* 0s〜1s: 縦線描画
   1s〜1.6s: V描画
   1.6s〜3.6s: 2秒停止
   3.6s〜4.2s: フェードアウト
   4.2s〜5.2s: 1秒待機
*/

@keyframes drawVertical{
  0%{
    stroke-dashoffset: 80;
    opacity: 1;
  }
  19.23%{   /* 1.0 / 5.2 */
    stroke-dashoffset: 0;
    opacity: 1;
  }
  69.23%{   /* 3.6 / 5.2 */
    stroke-dashoffset: 0;
    opacity: 1;
  }
  80.77%{   /* 4.2 / 5.2 */
    stroke-dashoffset: 0;
    opacity: 0;
  }
  100%{
    stroke-dashoffset: 0;
    opacity: 0;
  }
}

@keyframes drawV{
  0%{
    stroke-dashoffset: 20;
    opacity: 0;
  }
  19.22%{   /* 縦線描画中は非表示 */
    stroke-dashoffset: 20;
    opacity: 0;
  }
  19.23%{
    stroke-dashoffset: 20;
    opacity: 1;
  }
  30.77%{   /* 1.6 / 5.2 */
    stroke-dashoffset: 0;
    opacity: 1;
  }
  69.23%{
    stroke-dashoffset: 0;
    opacity: 1;
  }
  80.77%{
    stroke-dashoffset: 0;
    opacity: 0;
  }
  100%{
    stroke-dashoffset: 0;
    opacity: 0;
  }
}

@keyframes instaFlow{
  0%{
    transform: translateX(0);
  }
  100%{
    transform: translateX(-50%);
  }
}

/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 961px){
	
	div#mv_block {
		width: 100%;
		position: relative;
		line-height: 0;
		margin-top: 0;
		padding-top: 0;
	}
	
	div#mv_block nav.slide_nav li:first-of-type a{
		color: #4fc4d7;
    }
	
	div#mv_block nav.slide_nav a{
		color: #FFF;
    }
	
	div#mv_block div.scroll_mark {
		width: 0.86vw;
		width: 0.86cqw;
		height: 3.9vw;
		height: 3.9cqw;
		position: absolute;
		bottom: 1.8%;
		left: calc(50% - 0.43vw);
		left: calc(50% - 0.43cqw);
		z-index: 5;
	}
	
	div#mv_block h2 + p.pc {
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 1.0rem;
		font-size: clamp(calc((1.0rem * 0.64)), 0.66vw, 1.0rem);
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.37em;
		text-align: left;
		transform: scale(1, 0.7);
		color: #FFF;
		position: absolute;
		bottom: 12%;
		right: 44%;
		z-index: 3;
	}
	
	main {
		margin-top: 1.33vw;
		margin-top: 1.33qw;
	}
	
	section#info {
		background: url("../images/common/bg_gray.jpg") repeat;
		background-size: 250px 2100px;
		position: relative;
		z-index: 0;
		padding: 4vw 0 10vw;
	}
	
	section#info .section_flow{
		position: relative;
    }
	
	/* テキストをその場に止める */
    section#info .section_inner{
		position: sticky;
		top: 0;
		z-index: 10;
		height: 75vh;
		display: flex;
		align-items: center;
		justify-content: center;
		pointer-events: none;
		
    }
	
	section#info div.section_inner .text_box{
		width: 43.4vw;
		width: 43.4cqw;
		max-width: 650px;
		margin: 0 auto;
		position: relative;
		pointer-events: auto;
	}
	
	section#info div.section_inner .text_box p{
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.64)), 1.06vw, 1.6rem);
		font-weight: 700;
		line-height: 2.8;
		letter-spacing: 0;
		color: #FFF;
		position: relative;
		z-index: 2;
		margin-left: 30%;
	}
	
	section#info div.section_inner .text_box h3{
		font-size: 2.6rem;
		font-size: clamp(calc((2.6rem * 0.64)), 1.73vw, 2.6rem);
		font-weight: 700;
		line-height: 2.3;
		color: #FFF;
		letter-spacing: 0;
		writing-mode: vertical-rl;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
	}
	
	section#info div.section_inner .text_box a{
		width: 9.2vw;
		width: 9.2cqw;
		max-width: 138px;
		display: block;
		color: #FFF;
		position: absolute;
		left: 0;
		bottom: 0;
	}
	
	section#info div.section_inner .text_box a span.arrow{
		display: block;
	}
	
	section#info div.section_inner .text_box a span.arrow img{
		display: block;
		transition-duration: 0.5s;
		transition-property: margin-left;
	}
	
	section#info div.section_inner .text_box a:hover span.arrow img{
		margin-left: 5%;
	}
	
	section#info div.section_inner .text_box a p{
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.64)), 0.93vw, 1.4rem);
		font-weight: 400;
		text-align: center;
		margin-left: 0;
	}

    /* 背景写真 */
    section#info .photo{
		position: relative;
		z-index: 1;
		width: 100%;
		border-radius: 10px;
		border-radius: 0.66vw;
		border-radius: 0.66cqw;
		overflow: hidden;
		line-height: 0;
		will-change: transform;
		transform: translate3d(0, 0, 0);
		transition: transform 0.08s linear;
		opacity: 0;
		filter: blur(6px);
		transition:
		opacity 1.2s ease,
		filter 1.2s ease;
    }
	
	section#info .photo.is-inview{
		opacity: 1;
		filter: blur(0);
	}
	
	section#info .photo.photo01{
		width: 25.1%;
		margin-left: 11.66%;
		margin-top: -40vh;
    }
	
	section#info .photo.photo02{
		width: 22.1%;
		margin-left: 74.13%;
    }
	
	section#info .photo.photo03{
		width: 21.3%;
		margin-left: 42.2%;
    }
	
	section#info .photo.photo04{
		width: 29.86%;
		margin-left: 4.73%;
		margin-top: 3vh;
    }
	
	section#info .photo.photo05{
		width: 25.9%;
		margin-left: 69.5%;
		margin-top: -10vh;
    }

    section#info .photo img{
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
	
	
	section#news {
		margin-top: 6vw;
	}
	
	section#news div.section_inner{
		width: 76.6%;
		max-width: 1150px;
		margin: 0 auto;
	}
	
	section#news div.section_inner h2{
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 5.8rem;
		font-size: clamp(calc((5.8rem * 0.64)), 3.86vw, 5.8rem);
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.37em;
		text-align: left;
		transform: scale(1, 0.7);
		display: inline-block;
		margin-bottom: 0;
	}
	
	section#news div.section_inner div.scroll_area{
		position: relative;
	}
	
	section#news div.section_inner ul.scroll_inner{
		width: 100%;
		list-style: none;
		overflow-x: auto;
		display: flex;
		flex-wrap: nowrap;
		padding: 0;
		margin: 0;
		scrollbar-width: none;
		-ms-overflow-style: none;
		padding-top: 2.5%;
	}
	
	section#news div.section_inner ul.scroll_inner::-webkit-scrollbar{
		display: none;
	}
	
	section#news div.section_inner ul.scroll_inner li{
		flex: 0 0 23.6%;
        border-bottom: none;
		margin-bottom: 3%;
		position: relative;
		margin-right: 5%;
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(even){
		margin-right: 2.5%;
	}
	
	section#news div.section_inner ul.scroll_inner li:first-of-type,
	section#news div.section_inner ul.scroll_inner li:nth-child(5){
		margin-top: 2.5%;
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(2),
	section#news div.section_inner ul.scroll_inner li:nth-child(6){
		margin-top: 12.5%;
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(4),
	section#news div.section_inner ul.scroll_inner li:nth-child(8){
		margin-top: 7.5%;
	}
	
	section#news div.section_inner ul.scroll_inner li::after{
		content: "";
        width: 100%;
        height: 21.1vw;
		height: 21.1cqw;
		max-height: 318px;
        display: block;
        position: absolute;
		z-index: -1;
        top: 5%;
        left: 4%;
        border-radius: 1.33vw;
		transform: rotate(5deg);
        background: #75291c;
	}
	
	section#news div.section_inner ul.scroll_inner li.onhover::after{
		transition-duration: 0.5s;
		transition-property: top;
	}
	
	section#news div.section_inner ul.scroll_inner li.onhover:hover::after{
        top: -2.5%;
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(even)::after{
		left: initial;
		right: 4%;
        transform: rotate(-5deg);
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(2)::after,
	section#news div.section_inner ul.scroll_inner li:nth-child(6)::after{
        background: #003e2e;
	}
	section#news div.section_inner ul.scroll_inner li:nth-child(3)::after,
	section#news div.section_inner ul.scroll_inner li:nth-child(7)::after{
        background: #6e5625;
	}
	section#news div.section_inner ul.scroll_inner li:nth-child(4)::after,
	section#news div.section_inner ul.scroll_inner li:nth-child(8)::after{
        background: #003867;
	}
	
	section#news div.section_inner ul.scroll_inner li a,
	section#news div.section_inner ul.scroll_inner li div.frame{
		display: block;
		border-radius: 1.33vw;
		position: relative;
        z-index: 1;
		background: #ffaea8;
		height: 100%;
		height: 21.1vw;
		height: 21.1cqw;
		max-height: 318px;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.64)), 0.93vw, 1.4rem);
		font-weight: 400;
		line-height: 1.7;
		color: #000;
		padding: 1em 11.8% 2em;
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(2) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(6) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(2) div.frame,
	section#news div.section_inner ul.scroll_inner li:nth-child(6) div.frame{
		background: #96dea8;
	}
	section#news div.section_inner ul.scroll_inner li:nth-child(3) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(7) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(3) div.frame,
	section#news div.section_inner ul.scroll_inner li:nth-child(7) div.frame{
		background: #ffea61;
	}
	section#news div.section_inner ul.scroll_inner li:nth-child(4) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(8) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(4) div.frame,
	section#news div.section_inner ul.scroll_inner li:nth-child(8) div.frame{
		background: #96d3de;
	}
	
	section#news div.section_inner ul.scroll_inner li a p.date,
	section#news div.section_inner ul.scroll_inner li div.frame p.date{
		font-size: 1.3rem;
		font-size: clamp(calc((1.3rem * 0.64)), 0.86vw, 1.3rem);
		text-align: right;
		margin-bottom: 1em;
	}
	
	section#news div.section_inner ul.scroll_inner li a div.photo,
	section#news div.section_inner ul.scroll_inner li div.frame div.photo{
		line-height: 0;
		height: 8.26vw;
		height: 8.26cqw;
		max-height: 124px;
	}
	
	section#news div.section_inner ul.scroll_inner li a div.photo img,
	section#news div.section_inner ul.scroll_inner li div.frame div.photo img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	section#news div.section_inner ul.scroll_inner li a h4,
	section#news div.section_inner ul.scroll_inner li div.frame h4{
		font-weight: 400;
		margin-top: 1em;
	}
	
	/* 擬似バー全体 */
    .fake_scrollbar{
		position: absolute;
		bottom: -20px;
		right: 0;
		width: 120px; /* ← 好きな短さ */
		height: 4px;
		background: #dcdddd;
		border-radius: 10px;
		overflow: hidden;
    }

    /* 動く部分 */
    .fake_scrollbar .bar{
		width: 40px; /* ← つまみサイズ */
		height: 100%;
		background: #4fc4d7;
		border-radius: 10px;
		transform: translateX(0);
    }
	
	section#insta {
		margin-top: 4vw;
	}
	
	section#insta div.section_inner{
		width: 76.6%;
		max-width: 1150px;
		margin: 0 auto;
		position: relative;
	}
	
	section#insta div.section_inner div.insta_feed_block{
		width: 100%;
		min-height: 540px;
	}
	
	section#insta div.section_inner div.outside {
		position: absolute;
		top: 25%;
		right: -28%;
		z-index: 3;
		transform: rotate(90deg);
		transform-origin:left top;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	section#insta div.section_inner div.outside p{
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 1.3rem;
		font-size: clamp(calc((1.3rem * 0.64)), 0.86vw, 1.3rem);
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.37em;
		text-align: left;
		transform: scale(1, 0.7);
		display: inline-block;
		margin-right: 1em;
		
	}
	
	section#insta div.section_inner div.outside span.arrow{
		display: inline-block;
		width: 2.26vw;
		width: 2.26cqw;
		max-width: 34px;
		line-height: 0;
	}
	
	section#insta div.section_inner div.outside span.icon{
		display: inline-block;
		width: 2vw;
		width: 2cqw;
		max-width: 58px;
		line-height: 0;
		transform: rotate(-90deg);
		margin-left: 10px;
	}
	
	section#insta div.section_inner div.outside span.icon img{
		filter: brightness(0);
	}
	
	section#insta div.insta_flow{
		width: 100%;
		border: 2px solid #000;
		border-width: 2px 0;
		padding: 2vw 0;
		padding: 2cqw 0;
		background: #FFF;
		overflow: hidden;
	}
	
	section#insta div.insta_flow_track{
		display: flex;
		width: max-content;
		animation: instaFlow 18s linear infinite;
		will-change: transform;
	}
	
	section#insta div.insta_flow_group{
		display: flex;
		align-items: center;
		flex-shrink: 0;
    }
	
	section#insta div.insta_flow .item{
		flex-shrink: 0;
		display: inline-flex;
		align-items: center;
		white-space: nowrap;
		padding-right: 2.5rem;
	}
	
	section#insta div.insta_flow .heading{
		padding-right: 2.3vw;
		padding-right: 2.3cqw;
	}
	
	section#insta div.insta_flow h2,
	section#insta div.insta_flow p {
		margin: 0;
		white-space: nowrap;
	}

    section#insta div.insta_flow h2{
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 3.0rem;
		font-size: clamp(calc((3.0rem * 0.64)), 2vw, 3.0rem);
		font-weight: 400;
		line-height: 1.1;
		letter-spacing: 0.07em;
		transform: scale(1, 0.8);
		
    }

    section#insta div.swiper.insta_flow p{
		font-size: 2.0rem;
		font-size: clamp(calc((2.0rem * 0.64)), 1.33vw, 2.0rem);
		font-weight: 700;
		line-height: 1.8;
    }
	
	section#work {
		margin-top: 6.4vw;
	}
	
	section#work div.section_inner {
		width: 76.6%;
		max-width: 1150px;
		margin: 0 auto;
	}
	
	section#work div.section_inner a.more{
		width: 11.8%;
		max-width: 136px;
		display: block;
		margin: 0 auto;
		color: #000;
	}
	
	section#work div.section_inner a.more div.arrow img{
		display: block;
		transition-duration: 0.5s;
		transition-property: margin-left;
	}
	
	section#work div.section_inner a.more:hover div.arrow img{
		margin-left: 5%;
	}
	
	section#work div.section_inner a.more p{
		font-size: 1.3rem;
		font-size: clamp(calc((1.3rem * 0.64)), 0.86vw, 1.3rem);
		font-weight: 400;
		text-align: center;
	}
	
	section#work div.swiper{
		margin: 4vw 0;
	}
	
	section#work div.swiper .swiper-wrapper{
		transition-timing-function: linear !important;
    }
	
	section#work div.swiper div.swiper-slide div.box{
		line-height: 0;
	}
	
	section#work div.swiper div.swiper-slide div.box span{
		display: block;
		border-radius: 10px;
		line-height: 0;
		overflow: hidden;
	}
	
	section#sns {
		margin-top: 4.5vw;
		position: relative;
	}
	
	section#sns::before,
	section#sns::after{
		content: "";
		width: 100%;
		height: 0.2vw;
		height: 0.2cqw;
		max-height: 3px;
		background: url("../images/top/dot_line_x.svg") repeat-x;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
	}
	
	section#sns::after{
		top: initial;
		bottom: 0;
	}
	
	section#sns div.section_inner{
		width: 76.6%;
		max-width: 1150px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		position: relative;
	}
	
	section#sns div.section_inner::before,
	section#sns div.section_inner::after,
	section#sns div.section_inner div.left_block::after{
		content: "";
		height: 100%;
		width: 0.2vw;
		width: 0.2cqw;
		max-width: 3px;
		background: url("../images/top/dot_line_y.svg") repeat-y;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
	}
	
	section#sns div.section_inner::after,
	section#sns div.section_inner div.left_block::after{
		left: initial;
		right: 0;
	}
	
	section#sns div.section_inner div.left_block{
		width: 73%;
		padding: 54px;
		background: url("../images/common/bg_yellw.jpg") repeat;
		background-size: 250px 2100px;
		position: relative;
	}
	
	section#sns div.section_inner div.left_block h5{
		width: 16.4%;
		line-height: 0;
	}
	
	section#sns div.section_inner div.left_block ul{
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.64)), 0.93vw, 1.4rem);
		font-weight: 400;
		list-style: none;
		margin-top: 1.5em;
	}
	
	section#sns div.section_inner div.left_block ul li{
		width: 100%;
	}
	
	section#sns div.section_inner div.left_block ul li + li{
		margin-top: 1.5em;
	}
	
	section#sns div.section_inner div.left_block ul li div.block{
		width: 100%;
		border-radius: 10px;
		border-radius: 0.66vw;
		border-radius: 0.66cqw;
		background: #FFF;
		padding: 20px;
		padding: 1.33vw;
		padding: 1.33cqw;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section#sns div.section_inner div.left_block ul li div.block figure {
		width: 27.2%;
		min-height: 115px;
		line-height: 0;
	}
	
	section#sns div.section_inner div.left_block ul li div.block figure span{
		display: block;
		height: 100%;
		max-height: 115px;
		overflow: hidden;
	}
	
	section#sns div.section_inner div.left_block ul li div.block figure img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	section#sns div.section_inner div.left_block ul li div.block div.text {
		width: 44%;
	}
	
	section#sns div.section_inner div.left_block ul li div.block div.text h4{
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.64)), 1.06vw, 1.6rem);
		font-weight: 700;
		line-height: 1;
		margin-bottom: 1em;
	}
	
	section#sns div.section_inner div.left_block ul li div.block div.text p{
		/*font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;*/
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.64)), 0.93vw, 1.4rem);
		line-height: 1.7;
		font-weight: 400!important;
	}
	
	section#sns div.section_inner div.left_block ul li div.block a{
		width: 15.1%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-end;
		margin-left: 3.1%;
		position: relative;
	}
	
	section#sns div.section_inner div.left_block ul li div.block a div.arrow{
		width: 126%;
		position: absolute;
		top: 8%;
		right: -41.4%;
		z-index: 3;
	}
	
	section#sns div.section_inner div.left_block ul li div.block a p.more{
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 1.3rem;
		font-size: clamp(calc((1.3rem * 0.64)), 0.86vw, 1.3rem);
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.37em;
		text-align: left;
		transform: scale(1, 0.7);
		color: #000;
		text-align: center;
		margin-bottom: 1em;
	}
	
	section#sns div.section_inner  div.left_block div.note_more {
		width: 22%;
		position: absolute;
		bottom: 54px;
		right: 54px;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-end;
	}
	
	section#sns div.section_inner  div.left_block div.note_more p{
		display: inline-block;
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.64)), 0.93vw, 1.4rem);
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0;
		text-align: right;
	}
	
	section#sns div.section_inner  div.left_block div.note_more p a{
		color: #000;
		display: inline-block;
	}
	
	section#sns div.section_inner  div.left_block div.note_more p a span.fl{
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	section#sns div.section_inner  div.left_block div.note_more p span.logo{
		width: 34%;
		display: inline-block;
		margin-right: 0.5em;
	}
	
	section#sns div.section_inner  div.left_block div.note_more p span.arrow{
		width: 1.4em;
		display: inline-block;
		margin-left: 0.5em;
	}
	
	section#sns div.section_inner div.right_block{
		width: 27%;
	}
	
	section#sns div.section_inner div.right_block div.block{
		width: 100%;
		height: 50%;
		min-height: 25.3vw;
		min-height: 25.3cqw;
		max-height: 382px;
		background: url("../images/common/bg_blue02.jpg") repeat;
		background-size: 250px 2100px;
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	
	section#sns div.section_inner div.right_block div.block:first-of-type{
		background: url("../images/common/bg_pink.jpg") repeat;
		background-size: 250px 2100px;
	}
	
	section#sns div.section_inner div.right_block div.block:first-of-type::after{
		content: "";
		width: 100%;
		height: 0.2vw;
		height: 0.2cqw;
		max-height: 3px;
		background: url("../images/top/dot_line_x.svg") repeat-x;
		display: block;
		position: absolute;
		bottom: -1.5px;
		left: 0;
		z-index: 2;
	}
	
	section#sns div.section_inner div.right_block div.block a{
		display: inline-block;
		color: #FFF;
	}
	
	section#sns div.section_inner div.right_block div.block a figure{
		width: 11.14%;
		line-height: 0;
		margin: 0 auto;
	}
	
	section#sns div.section_inner div.right_block div.block a h5{
		font-size: 2.6rem;
		font-size: clamp(calc((2.6rem * 0.64)), 1.73vw, 2.6rem);
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0;
		margin-top: 0.25em;
		margin-bottom: 0.5em;
		text-align: center;
	}
	
	section#sns div.section_inner div.right_block div.block a div.arrow{
		width: 9.46vw;
		width: 9.46cqw;
		max-width: 146px;
		margin: 0 auto;
	}
	
	section#sns div.section_inner a div.arrow span img{
		display: block;
		transition-duration: 0.5s;
		transition-property: margin-left;
	}
	
	section#sns div.section_inner a:hover div.arrow span img{
		margin-left: 5%;
	}
	
	section#sns div.section_inner div.right_block div.block a p{
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: 1.3rem;
		font-size: clamp(calc((1.3rem * 0.64)), 0.86vw, 1.3rem);
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.37em;
		text-align: left;
		transform: scale(1, 0.7);
		text-align: center;
		margin-top: 1em;
	}
	
	section#other {
		padding-top: 7vw;
	}
	
	section#other ul {
		width: 76.6%;
		max-width: 1150px;
		margin: 0 auto;
		list-style: none;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	
	section#other ul li{
		width: 48%;
		height: 15.33vw;
		height: 15.33cqw;
		max-height: 230px;
		background: url("../images/common/bg_blue.jpg") repeat;
		background-size: 250px 2100px;
		overflow: hidden;
		border-radius: 10px;
		border-radius: 0.66vw;
	}
	
	section#other ul li:last-child{
		background: url("../images/common/bg_brown.jpg") repeat;
		background-size: 250px 2100px;
	}
	
	section#other ul li a{
		width: 100%;
		height: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		color: #000;
	}

	section#other ul li div.box{
		display: inline-block;
		padding-top: 5%;
	}
	
	section#other ul li div.box span.icon{
		width: 3.53vw;
		width: 3.53cqw;
		max-width: 53px;
		display: block;
		margin: -0.8em auto 0;
		font-size: 2.0rem;
        font-size: clamp(calc(2.0rem * 0.64), 1.33vw, 2.0rem);
        font-weight: 700;
        line-height: 1.8;
	}
	
	section#other ul li div.box h4{
		font-size: 2.0rem;
        font-size: clamp(calc(2.0rem * 0.64), 1.33vw, 2.0rem);
        font-weight: 700;
        line-height: 1.8;
		text-align: center;
		margin-bottom: 0.5em;
	}
	
	section#other ul li div.box span.icon + h4{
		margin-top: 0.5em;
	}
	
	section#other ul li div.box h4 span.logo{
		width: 11.2vw;
		width: 11.2cqw;
		max-width: 168px;
		display: block;
	}
	
	section#other ul li div.box span.arrow{
		width: 4vw;
		width: 4cqw;
		max-width: 60px;
		display: block;
		margin: 0 auto;
	}
	
	section#other ul li a div.box div{
		width: 100%;
		transition-duration: 0.5s;
		transition-property: padding-left;
	}
	
	section#other ul li a:hover div.box div{
		padding-left: 10%;
	}
	
}

@media screen and (min-width:961px) and (max-width: 1500px){
	
	div#mv_block header{
		top: 3.2vw;
		top: 3.2cqw;
	}
	
	div#mv_block nav.slide_nav {
		top: 4.33vw;
		top: 4.33cqw;
    }
	
	section#insta div.section_inner div.outside span.icon{
		margin-left: 0.66vw;
		margin-left: 0.66cqw;
	}
	
	section#insta div.section_inner div.insta_feed_block{
		width: 100%;
		min-height: 36vw;
		min-height: 36cqw;
	}
	
	section#work div.swiper div.swiper-slide div.box span{
		border-radius: 0.66vw;
		border-radius: 0.66cqw;
	}
	
	section#sns div.section_inner div.left_block{
		padding: 3.6vw;
		padding: 3.6cqw;
	}
	
	section#sns div.section_inner  div.left_block div.note_more {
		bottom: 3.6vw;
		bottom: 3.6cqw;
		right: 3.6vw;
		right: 3.6cqw;
	}
	
	section#sns::before,
	section#sns::after{
		height: 0.2vw;
		height: 0.2cqw;
	}
	
	section#sns div.section_inner::before,
	section#sns div.section_inner::after,
	section#sns div.section_inner div.left_block::after{
		width: 0.2vw;
		width: 0.2cqw;
	}
	
	section#sns div.section_inner div.left_block ul li div.block figure {
		min-height: 7.66vw;
		min-height: 7.66cqw;
	}
	
	section#sns div.section_inner div.right_block div.block:first-of-type::after{
		height: 0.2vw;
		height: 0.2cqw;
		bottom: -0.1vw;
		bottom: -0.1cqw;
	}
	
}
	

/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media screen and (max-width: 960px){
	
	div#mv_block div.open_btn {
		top: 6.6vw;
	}
	
	div#mv_block header{
		width: 100%;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 5;
	}
	
	div#mv_block #page_title {
		margin: 0 2.4vw 0 2.4vw;
	}
	
	div#mv_block div.scroll_mark {
		width: 1.86vw;
		width: 1.86cqw;
		height: 8.46vw;
		height: 8.46cqw;
		position: absolute;
		bottom: 1.8%;
		left: calc(50% - 0.93vw);
		left: calc(50% - 0.93cqw);
		z-index: 5;
	}
	
	
	section#info {
		background: url("../images/common/bg_gray02.jpg") repeat;
		background-size: 250px 2100px;
		position: relative;
		z-index: 0;
		padding: 12vw 0 40vw;
	}
	
	section#info .section_flow{
		position: relative;
    }
	
    section#info .section_inner{
		top: 0;
		z-index: 10;
		height: 294vw;
		height: 294cqw;
		display: flex;
		align-items: flex-start;
		justify-content: center;
		pointer-events: none;
		
    }
	
	section#info div.section_inner .text_box{
		width: 100%;
		margin: 0 auto;
		position: relative;
		pointer-events: auto;
		padding-top: 86.6vw;
		z-index: 5;
	}
	
	section#info div.section_inner .text_box p{
		font-size: calc(2.6rem * 0.48);
		font-size: clamp(calc((2.6rem * 0.48)), 3.46vw, calc(2.6rem * 1.28));
		font-weight: 700;
		line-height: 2.6;
		letter-spacing: 0;
		color: #FFF;
		position: relative;
		z-index: 2;
		text-align: center;
	}
	
	section#info div.section_inner .text_box h3{
		font-size: calc(3.8rem * 0.48);
		font-size: clamp(calc((3.8rem * 0.48)), 5vw, calc(3.8rem * 1.28));
		font-weight: 700;
		line-height: 2.3;
		color: #FFF;
		letter-spacing: 0;
		writing-mode: vertical-rl;
		position: absolute;
		top: 0;
		left: calc(50% - 2.4em);
		z-index: 2;
	}
	
	section#info div.section_inner .text_box a{
		width: 27.3%;
		display: block;
		margin: 10vw auto 0;
		color: #FFF;
	}
	
	section#info div.section_inner .text_box a span.arrow{
		display: block;
		line-height: 0;
	}
	
	section#info div.section_inner .text_box a p{
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
		font-weight: 400;
		text-align: center;
	}

    /* 背景写真 */
    section#info .photo{
		position: relative;
		z-index: 1;
		width: 100%;
		border-radius: 2vw;
		border-radius: 2cqw;
		overflow: hidden;
		line-height: 0;
		will-change: transform, opacity;
		transform: translate3d(0, 0, 0);
		opacity: 0;
		filter: blur(0);
		transition: opacity 1.2s ease;
    }
	
	section#info .photo.is-inview{
		opacity: 1;
		filter: blur(0);
	}
	
	section#info .photo.photo01{
		width: 64%;
		margin-left: 5%;
		margin-top: -296vw;
    }
	
	section#info .photo.photo02{
		width: 63.2%;
		margin-left: 20%;
		margin-top: 8vw;
    }
	
	section#info .photo.photo03{
		width: 67.7%;
		margin-left: 5%;
		margin-top: 8vw;
    }
	
	section#info .photo.photo04{
		width: 75.2%;
		margin-left: 20%;
		margin-top: 15vw;
    }
	
	section#info .photo.photo05{
		display: none;
    }

    section#info .photo img{
      width: 100%;
      height: 100%;
      object-fit: cover;
      display: block;
    }
	
	
	section#news {
		margin-top: 6vw;
	}
	
	section#news div.section_inner{
		width: 90%;
		margin: 0 auto;
	}
	
	section#news div.section_inner h2{
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: calc(5.8rem * 0.48);
		font-size: clamp(calc((5.8rem * 0.48)), 7.73vw, calc(5.8rem * 1.28));
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.37em;
		text-align: left;
		transform: scale(1, 0.7);
		margin-bottom: 0;
		text-align: center;
	}
	
	section#news div.section_inner div.scroll_area{
		position: relative;
	}
	
	section#news div.section_inner ul.scroll_inner{
		width: 100%;
		list-style: none;
		overflow-x: auto;
		display: flex;
		flex-wrap: nowrap;
		padding: 0;
		margin: 0;
		scrollbar-width: none;
		-ms-overflow-style: none;
		padding-top: 5%;
	}
	
	section#news div.section_inner ul.scroll_inner::-webkit-scrollbar{
		display: none;
	}
	
	section#news div.section_inner ul.scroll_inner li{
		flex: 0 0 56.6%;
        border-bottom: none;
		margin-bottom: 3%;
		position: relative;
		margin-right: 15%;
	}
	
	section#news div.section_inner ul.scroll_inner li:first-of-type{
		margin-left: 20%;
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(even){
		margin-right: 8%;
	}
	
	section#news div.section_inner ul.scroll_inner li::after{
		content: "";
        width: 100%;
        height: 66.4vw;
		height: 66.4cqw;
        display: block;
        position: absolute;
		z-index: -1;
        top: 0;
        left: 4%;
        border-radius: 1.33vw;
        transform: rotate(5deg);
        background: #75291c;
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(even)::after{
		left: initial;
		right: 4%;
        transform: rotate(-5deg);
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(2)::after,
	section#news div.section_inner ul.scroll_inner li:nth-child(6)::after{
        background: #003e2e;
	}
	section#news div.section_inner ul.scroll_inner li:nth-child(3)::after,
	section#news div.section_inner ul.scroll_inner li:nth-child(7)::after{
        background: #6e5625;
	}
	section#news div.section_inner ul.scroll_inner li:nth-child(4)::after,
	section#news div.section_inner ul.scroll_inner li:nth-child(8)::after{
        background: #003867;
	}
	
	section#news div.section_inner ul.scroll_inner li a,
	section#news div.section_inner ul.scroll_inner li div.frame{
		display: block;
		border-radius: 1.33vw;
		position: relative;
        z-index: 1;
		background: #ffaea8;
		height: 100%;
		height: 66.4vw;
		height: 66.4cqw;
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2w, calc(2.4rem * 1.28));
		font-weight: 400;
		line-height: 1.7;
		color: #000;
		padding: 1em 11.8% 2em;
	}
	
	section#news div.section_inner ul.scroll_inner li:nth-child(2) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(6) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(2) div.frame,
	section#news div.section_inner ul.scroll_inner li:nth-child(6) div.frame{
		background: #96dea8;
	}
	section#news div.section_inner ul.scroll_inner li:nth-child(3) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(7) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(3) div.frame,
	section#news div.section_inner ul.scroll_inner li:nth-child(7) div.frame{
		background: #ffea61;
	}
	section#news div.section_inner ul.scroll_inner li:nth-child(4) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(8) a,
	section#news div.section_inner ul.scroll_inner li:nth-child(4) div.frame,
	section#news div.section_inner ul.scroll_inner li:nth-child(8) div.frame{
		background: #96d3de;
	}
	
	section#news div.section_inner ul.scroll_inner li a p.date,
	section#news div.section_inner ul.scroll_inner li div.frame p.date{
		font-size: calc(2.2rem * 0.48);
		font-size: clamp(calc((2.2rem * 0.48)), 2.93vw, calc(2.2rem * 1.28));
		text-align: right;
		margin-bottom: 0.5em;
	}
	
	section#news div.section_inner ul.scroll_inner li a div.photo,
	section#news div.section_inner ul.scroll_inner li div.frame div.photo{
		line-height: 0;
		height: 21.4vw;
		height: 21.4cqw;
	}
	
	section#news div.section_inner ul.scroll_inner li a div.photo img,
	section#news div.section_inner ul.scroll_inner li div.frame div.photo img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	section#news div.section_inner ul.scroll_inner li a h4,
	section#news div.section_inner ul.scroll_inner li div.frame h4{
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
		font-weight: 400;
		margin-top: 1em;
	}
	
	/* 擬似バー全体 */
    .fake_scrollbar{
		position: absolute;
		bottom: -30px;
		right: calc(50% - 60px);
		width: 120px; /* ← 好きな短さ */
		height: 4px;
		background: #dcdddd;
		border-radius: 10px;
		overflow: hidden;
    }

    /* 動く部分 */
    .fake_scrollbar .bar{
		width: 40px; /* ← つまみサイズ */
		height: 100%;
		background: #4fc4d7;
		border-radius: 10px;
		transform: translateX(0);
    }
	
	section#insta {
		margin-top: 12vw;
	}
	
	section#insta div.section_inner{
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	
	section#insta div.section_inner div.insta_feed_block{
		width: 100%;
		min-height: 135.46vw;
		min-height: 135.46cqw;
	}
	
	section#insta div.section_inner div.outside span.arrow{
		display: inline-block;
		width: 2.26vw;
		width: 2.26cqw;
		max-width: 34px;
		line-height: 0;
	}
	
	section#insta div.section_inner div.outside span.icon{
		display: inline-block;
		width: 2vw;
		width: 2cqw;
		max-width: 58px;
		line-height: 0;
		transform: rotate(-90deg);
		margin-left: 10px;
	}
	
	section#insta div.section_inner div.outside span.icon img{
		filter: brightness(0);
	}
	
	section#insta div.insta_flow{
		width: 100%;
		border: 0.4vw solid #000;
		border: 0.4cqw solid #000;
		border-width: 2px 0;
		padding: 3.4vw 0;
		padding: 3.4cqw 0;
		background: #FFF;
		overflow: hidden;
	}
	
	section#insta div.insta_flow_track{
		display: flex;
		width: max-content;
		animation: instaFlow 18s linear infinite;
		will-change: transform;
	}
	
	section#insta div.insta_flow_group{
		display: flex;
		align-items: center;
		flex-shrink: 0;
    }
	
	section#insta div.insta_flow .item{
		flex-shrink: 0;
		display: inline-flex;
		align-items: center;
		white-space: nowrap;
		padding-right: 2.5rem;
	}
	
	section#insta div.insta_flow .heading{
		padding-right: 2.3vw;
		padding-right: 2.3cqw;
	}
	
	section#insta div.insta_flow h2,
	section#insta div.insta_flow p {
		margin: 0;
		white-space: nowrap;
	}

    section#insta div.insta_flow h2{
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: calc(4.2rem * 0.48);
		font-size: clamp(calc((4.2rem * 0.48)), 5.6vw, calc(4.2rem * 1.28));
		font-weight: 400;
		line-height: 1.1;
		letter-spacing: 0.07em;
		transform: scale(1, 0.8);
		
    }

    section#insta div.swiper.insta_flow p{
		font-size: calc(2.8rem * 0.48);
		font-size: clamp(calc((2.8rem * 0.48)), 3.73vw, calc(2.8rem * 1.28));
		font-weight: 700;
		line-height: 1.8;
    }
	
	section#work {
		margin-top: 12vw;
	}
	
	section#work div.section_inner {
		width: 90%;
		margin: 0 auto;
	}
	
	section#work div.section_inner a.more{
		width: 18.6%;
		display: block;
		margin: 0 auto;
		color: #000;
	}
	
	section#work div.section_inner a.more p{
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
		font-weight: 400;
		text-align: center;
	}
	
	section#work div.swiper{
		margin: 6vw 0;
	}
	
	section#work div.swiper .swiper-wrapper{
		transition-timing-function: linear !important;
    }
	
	section#work div.swiper div.swiper-slide div.box{
		line-height: 0;
	}
	
	section#work div.swiper div.swiper-slide div.box span{
		display: block;
		border-radius: 2vw;
		border-radius: 2cqw;
		line-height: 0;
		overflow: hidden;
	}
	
	section#sns {
		margin-top: 12vw;
		position: relative;
	}
	
	section#sns::before,
	section#sns::after{
		content: "";
		width: 100%;
		height: 0.6vw;
		height: 0.6qw;
		background: url("../images/top/dot_line_x.svg") repeat-x;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
	}
	
	section#sns::after{
		top: initial;
		bottom: 0;
	}
	
	section#sns div.section_inner{
		width: 90%;
		margin: 0 auto;
		position: relative;
	}
	
	section#sns div.section_inner::before,
	section#sns div.section_inner::after,
	section#sns div.section_inner div.left_block::after{
		content: "";
		height: 100%;
		width: 0.6vw;
		width: 0.6cqw;
		background: url("../images/top/dot_line_y.svg") repeat-y;
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
	}
	
	section#sns div.section_inner::after,
	section#sns div.section_inner div.left_block::after{
		left: initial;
		right: 0;
	}
	
	section#sns div.section_inner div.left_block{
		width: 100%;
		padding: 10vw;
		background: url("../images/common/bg_yellw.jpg") repeat;
		background-size: 250px 2100px;
		position: relative;
	}
	
	section#sns div.section_inner div.left_block h5{
		width: 40%;
		line-height: 0;
		margin: 0 auto;
	}
	
	section#sns div.section_inner div.left_block ul{
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
		font-weight: 400;
		list-style: none;
		margin-top: 2.5em;
	}
	
	section#sns div.section_inner div.left_block ul li{
		width: 100%;
	}
	
	section#sns div.section_inner div.left_block ul li + li{
		margin-top: 1.5em;
	}
	
	section#sns div.section_inner div.left_block ul li div.block{
		width: 100%;
		border-radius: 2vw;
		border-radius: 2cqw;
		background: #FFF;
		padding: 4.53vw;
		padding: 4.53cqw;
	}
	
	section#sns div.section_inner div.left_block ul li div.block figure {
		width: 100%;
		height: 38.6vw;
		height: 38.6cqw;
		line-height: 0;
	}
	
	section#sns div.section_inner div.left_block ul li div.block figure span{
		display: block;
		height: 100%;
		overflow: hidden;
		border-radius: 2vw;
		border-radius: 2cqw;
	}
	
	section#sns div.section_inner div.left_block ul li div.block figure img{
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	
	section#sns div.section_inner div.left_block ul li div.block div.text {
		width: 100%;
	}
	
	section#sns div.section_inner div.left_block ul li div.block div.text h4{
		font-size: calc(2.6rem * 0.48);
		font-size: clamp(calc((2.6rem * 0.48)), 3.46vw, calc(2.6rem * 1.28));
		font-weight: 700;
		line-height: 1;
		margin-top: 0.75em;
		margin-bottom: 1em;
	}
	
	section#sns div.section_inner div.left_block ul li div.block div.text p{
		font-size: calc(2.4rem * 0.48);
		font-size: clamp(calc((2.4rem * 0.48)), 3.2vw, calc(2.4rem * 1.28));
		line-height: 1.4;
		font-weight: 400!important;
	}
	
	section#sns div.section_inner div.left_block ul li div.block a{
		width: 17vw;
		display: block;
		margin: 3vw auto 0;
		position: relative;
	}
	
	section#sns div.section_inner div.left_block ul li div.block a div.arrow{
		margin-top: 3.4vw;
		width: 17vw;
	}
	
	section#sns div.section_inner div.left_block ul li div.block a p.more{
		width: 100%;
		margin: 0 auto;
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: calc(2.2rem * 0.48);
		font-size: clamp(calc((2.2rem * 0.48)), 2.9vw, calc(2.2rem * 1.28));
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.37em;
		text-align: left;
		transform: scale(1, 0.7);
		color: #000;
		text-align: center;
	}
	
	section#sns div.section_inner  div.left_block div.note_more {
		display: none;
	}
	
	section#sns div.section_inner div.right_block{
		width: 100%;
	}
	
	section#sns div.section_inner div.right_block div.block{
		width: 100%;
		height: 52.63vw;
		height: 52.63cqw;
		background: url("../images/common/bg_blue02.jpg") repeat;
		background-size: 250px 2100px;
		position: relative;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
	}
	
	section#sns div.section_inner div.right_block div.block:first-of-type{
		background: url("../images/common/bg_pink.jpg") repeat;
		background-size: 250px 2100px;
	}
	
	section#sns div.section_inner div.right_block div.block:first-of-type::before,
	section#sns div.section_inner div.right_block div.block:first-of-type::after{
		content: "";
		width: 100vw;
		width: 100cqw;
		height: 0.6vw;
		height: 0.6cqw;
		background: url("../images/top/dot_line_x.svg") repeat-x;
		display: block;
		position: absolute;
		top: -0.3vw;
		top: -0.3cqw;
		left: -5vw;
		left: -5cqw;
		z-index: 2;
	}
	
	section#sns div.section_inner div.right_block div.block:first-of-type::after{
		top: initial;
		bottom: -0.3vw;
		bottom: -0.3cqw;
	}
	
	section#sns div.section_inner div.right_block div.block a{
		display: inline-block;
		color: #FFF;
	}
	
	section#sns div.section_inner div.right_block div.block a figure{
		width: 11.14%;
		line-height: 0;
		margin: 0 auto;
	}
	
	section#sns div.section_inner div.right_block div.block a h5{
		font-size: calc(5.8rem * 0.48);
		font-size: clamp(calc((5.8rem * 0.48)), 7.7vw, calc(5.8rem * 1.28));
		font-weight: 700;
		line-height: 1;
		letter-spacing: 0;
		margin-top: 0.25em;
		margin-bottom: 0.5em;
		text-align: center;
	}
	
	section#sns div.section_inner div.right_block div.block a div.arrow{
		width: 17vw;
		margin: 0 auto;
	}
	
	section#sns div.section_inner div.right_block div.block a p{
		font-family: "Lato", "Zen Kaku Gothic New", "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
		font-size: calc(2.2rem * 0.48);
		font-size: clamp(calc((2.2rem * 0.48)), 2.9vw, calc(2.2rem * 1.28));
		font-weight: 400;
		line-height: 1;
		letter-spacing: 0.37em;
		text-align: left;
		transform: scale(1, 0.7);
		text-align: center;
		margin-top: 0.5em;
	}
	
	section#other {
		padding-top: 10vw;
	}
	
	section#other ul {
		width: 90%;
		margin: 0 auto;
		list-style: none;
	}
	
	section#other ul li{
		width: 100%;
		height: 38vw;
		height: 38cqw;
		background: url("../images/common/bg_blue.jpg") repeat;
		background-size: 250px 2100px;
		overflow: hidden;
		border-radius: 2vw;
	}
	
	section#other ul li + li{
		margin-top: 4.66vw;
	}
	
	section#other ul li:last-child{
		background: url("../images/common/bg_brown.jpg") repeat;
		background-size: 250px 2100px;
	}
	
	section#other ul li a{
		width: 100%;
		height: 100%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		color: #000;
	}

	section#other ul li div.box{
		display: inline-block;
	}
	
	section#other ul li div.box span.icon{
		width: 13.3vw;
		display: block;
		margin: 0 auto;
		font-size: calc(2.9rem * 0.48);
		font-size: clamp(calc((2.9rem * 0.48)), 3.86vw, calc(2.9rem * 1.28));
        font-weight: 700;
        line-height: 1.8;
	}
	
	section#other ul li div.box h4{
		font-size: calc(2.9rem * 0.48);
		font-size: clamp(calc((2.9rem * 0.48)), 3.86vw, calc(2.9rem * 1.28));
        font-weight: 700;
        line-height: 1.8;
		text-align: center;
		margin-bottom: 0.5em;
	}
	
	section#other ul li div.box span.icon + h4{
		margin-top: 0.5em;
	}
	
	section#other ul li div.box h4 span.logo{
		width: 33vw;
		display: block;
	}
	
	section#other ul li div.box span.arrow{
		width: 13.3vw;
		width: 13.3cqw;
		display: block;
		margin: 0 auto;
	}
	
}