@charset "utf-8";

/*		Contents
---------------------------------------------------------------------------

	HOME							[ / ]
	活動事例一覧					[ /activity/ ]
	活動事例詳細					[ /activity/投稿ID/ ]

------------------------------------------------------------------------ */

/* ========================================================================
	HOME							[ / ]
======================================================================== */
#home > div{
	overflow:hidden;
	position:relative;
	padding:150px 0 150px 161px;
	background:#ffffff;
}

#home .inner{
	width:945px;
}

@media screen and (max-width:767px){
#home > div{
	padding:60px 0;
}

#home .inner{
	width:auto;
}
}


/* ----------------------------------------
	keyframes
---------------------------------------- */
@keyframes marquee{
	0%  { transform:translateX(0%); }
	100%{ transform:translateX(-100%); }
}

@keyframes swing{
	0%  { transform:rotate(0deg); }
	50% { transform:rotate(10deg); }
	100%{ transform:rotate(0deg); }
}

@keyframes carousel{
	0%  { transform:translateY(-100%); }
	100%{ transform:translateY(0%); }
}


/* ----------------------------------------
	txt
---------------------------------------- */
#home .txt{
	display:flex;
	gap:0 45px;
	margin:0 0 70px 0;
}

#home .txt p{
	width:450px;
}

@media screen and (max-width:767px){
#home .txt{
	display:block;
	margin:0;
}

#home .txt p{
	width:auto;
	margin:0 0 40px 0;
}
}


/* ----------------------------------------
	hero
---------------------------------------- */
#home .hero{
	padding:0 0 10px 0;
	background:url(../../img/home/bg_hero.png) no-repeat center #EFEDEA;
}

@media screen and (max-width:767px){
#home .hero{
	padding:15px 0;
	background-size:267px 289px;
}
}


/* marquee
---------------------------------------- */
#home .hero .marquee ul{
	display:flex;
}

#home .hero .marquee ul li{
	animation:marquee 20s infinite linear 0s;
	padding:10px 0;
	font-size:3.0rem;
	font-weight:700;
	line-height:1;
	white-space:nowrap;
}
#home .hero .marquee ul:nth-child(2n) li{ animation-direction:reverse; }

#home .hero .marquee .marquee_01 li{
	animation-duration:50s;
	font-size:15.0rem;
}
#home .hero .marquee .marquee_03 li{
	font-size:10.0rem;
	line-height:10.5rem;
}
#home .hero .marquee .marquee_04 li{
	font-size:6.0rem;
	line-height:8.6rem;
}
#home .hero .marquee .marquee_06 li{
	animation-duration:50s;
	font-size:10.0rem;
	line-height:11.5rem;
}
#home .hero .marquee .marquee_07 li{
	font-size:5.0rem;
	line-height:5.9rem;
}

#home .hero .marquee li img{
	position:relative;
	max-width:none;
}
#home .hero .marquee .marquee_01 li img{ margin:0 0 0 -100px; }
#home .hero .marquee .marquee_03 li img{ margin:0 -20px 0 -80px; }
#home .hero .marquee .marquee_04 li img,
#home .hero .marquee .marquee_07 li img{ margin:0 10px 0 -20px; }

@media screen and (max-width:767px){
#home .hero .marquee ul li{
	padding:15px 0;
	font-size:3.0rem;
}

#home .hero .marquee .marquee_01 li{
	font-size:7.5rem;
}
#home .hero .marquee .marquee_03 li,
#home .hero .marquee .marquee_06 li{
	font-size:6.0rem;
	line-height:1;
}
#home .hero .marquee .marquee_04 li{
	font-size:4.0rem;
	line-height:1;
}
#home .hero .marquee .marquee_07 li{
	font-size:3.5rem;
	line-height:4.0rem;
}

#home .hero .marquee li img{
	position:relative;
	max-width:none;
}
#home .hero .marquee .marquee_01 li img{
	width:auto;
	height:75px;
	margin:0 0 0 -50px;
}
#home .hero .marquee .marquee_03 li img,
#home .hero .marquee .marquee_06 li img{
	width:auto;
	height:60px;
}
#home .hero .marquee .marquee_03 li img{
	margin:0 -10px 0 -40px;
}
#home .hero .marquee .marquee_04 li img,
#home .hero .marquee .marquee_07 li img{
	width:auto;
	height:40px;
	margin:0 10px 0 -10px;
}
}


/* catchcopy
---------------------------------------- */
#home .hero .catchcopy{
	position:absolute;
	bottom:40px;
	left:90px;
}

@media screen and (max-width:767px){
#home .hero .catchcopy{
	position:static;
	margin:15px 20px;
	width:244px;
}
}


/* copyright
---------------------------------------- */
#home .hero .copyright{
	position:absolute;
	top:0;
	right:0;
	width:50px;
	height:100%;
	background:#191919;
}

#home .hero .copyright small{
	display:flex;
	align-items:center;
	gap:0 10px;
	position:absolute;
	top:250px;
	left:50px;
	height:50px;
	font-size:1.1rem;
	color:#FFFFFF;
	line-height:1;
	transform:rotate(90deg);
	transform-origin:top left;
	white-space:nowrap;
}

@media screen and (max-width:767px){
#home .hero .copyright{
	display:none;
}
}


/* scroll
---------------------------------------- */
#home .hero .scroll{
	display:flex;
	align-items:center;
	position:absolute;
	bottom:110px;
	right:0;
	width:50px;
	font-size:1.1rem;
	color:#FFFFFF;
	writing-mode:vertical-rl;
}

#home .hero .scroll::before{
	content:"";
	position:absolute;
	bottom:-110px;
	left:50%;
	width:1px;
	height:100px;
	background:#FFFFFF;
}

@media screen and (max-width:767px){
#home .hero .scroll{
	display:none;
}
}


/* ----------------------------------------
	thoughts
---------------------------------------- */
#home .thoughts{
	overflow:visible;
	min-height:1260px;
	padding-left:0;
	background:url(../../img/home/bg_thoughts.png) no-repeat center 40px;
	text-align:center;
}

#home .thoughts .sticky{
	position:sticky;
	top:452px;
}

#home .thoughts .key{
	margin:0 0 46px 0;
}

#home .thoughts p{
	line-height:3.6rem;
	letter-spacing:0.05em;
}

#home .thoughts p span{
	font-weight:700;
	color:#FF921D;
}

@media screen and (max-width:767px){
#home .thoughts{
	min-height:auto;
	padding:50px 20px 60px;
	background:url(../../img/home/bg_thoughts.png) no-repeat center 20px;
	background-size:100% auto;
}

#home .thoughts .sticky{
	position:static;
}

#home .thoughts .key{
	display:flex;
	align-items:center;
	aspect-ratio:683/590;
	margin:0;
}
}


/* ----------------------------------------
	business
---------------------------------------- */
#home .business{
	padding:0 50px;
	background:none;
	text-align:center;
	z-index:1;
}

#home .business::before{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:110px;
	background:#EFEDEA;
}

@media screen and (max-width:767px){
#home .business{
	padding:0 20px;
}

#home .business::before{
	height:70%;
}
}


/* ----------------------------------------
	transportation
---------------------------------------- */
#home .transportation{
	background:#EFEDEA;
}


/* marquee
---------------------------------------- */
#home .transportation .marquee{
	display:flex;
	margin:0 0 0 -161px;
}

#home .transportation .marquee ul{
	animation:marquee 50s infinite linear 0s;
	display:flex;
}

#home .transportation .marquee ul li img{
	animation:swing 3s infinite steps(2, end) 0s;
	max-width:none;
}

@media screen and (max-width:767px){
#home .transportation .marquee{
	margin:0;
}

#home .transportation .marquee ul li img{
	width:150px;
}
}


/* ----------------------------------------
	park
---------------------------------------- */
#home .park{
	background:#F7F6F5;
}


/* slider
---------------------------------------- */
#home .park .splide__wrap{
	width:100vw;
	margin:0 0 0 calc(50% - 50vw);
	padding-left:calc(50vw - 50%);
}

#home .park .slider{
	margin:0 0 0 266px;
}

#home .park .slider a{
	display:block;
	position:relative;
	text-decoration:none;
}

#home .park .slider a::before{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:100px;
	background:linear-gradient(rgba(108,108,108,0) 0%, #6c6c6c 100%);
	border-radius:0 0 5px 5px;
	mix-blend-mode:multiply;
}

#home .park .slider img{
	width:280px;
	height:400px;
	object-fit:cover;
	border-radius:5px;
}

#home .park .slider .ttl{
	position:absolute;
	bottom:10px;
	left:0;
	padding:0 20px;
	font-size:1.5rem;
	font-weight:500;
	line-height:2.5rem;
	color:#FFFFFF;
}

#home .park .slider .ttl span{
	display:block;
	margin:0 0 5px 0;
	font-size:1.4rem;
	font-weight:700;
	line-height:1;
	letter-spacing:0.05em;
}

#home .park .slider .splide__arrows{
	display:flex;
	justify-content:space-between;
	position:absolute;
	bottom:98px;
	left:-265px;
	width:155px;
}

#home .park .slider .splide__arrow{
	position:relative;
	left:auto;
	right:auto;
	width:70px;
	height:70px;
	opacity:1;
	transform:none;
}

#home .park .slider .splide__arrow::before,
#home .park .slider .splide__arrow::after{
	content:"＞";
	display:flex;
	justify-content:center;
	align-items:center;
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	margin:0;
	background:#FFFFFF;
	border-radius:50%;
	font-size:1.3rem;
	font-weight:700;
	color:#FF921D;
	filter:none;
	transition-duration:0.2s;
}
#home .park .slider .splide__arrow--prev::after{ transform:scaleX(-1); }
#home .park .slider .splide__arrow:hover::before,
#home .park .slider .splide__arrow:hover::after{ background:#FF921D; color:#FFFFFF; }
#home .park .slider .splide__arrow svg{ display:none; }

@media screen and (max-width:767px){
#home .park .splide__wrap{
	width:auto;
	margin:0 -20px 20px;
	padding:0;
}

#home .park .slider{
	margin:0;
}

#home .park .slider img{
	width:100%;
	height:auto;
}

#home .park .slider .splide__arrows{
	display:block;
	position:static;
	width:auto;
}

#home .park .slider .splide__arrow{
	position:absolute;
	top:50%;
	left:20px;
	width:40px;
	height:40px;
	margin:-20px 0 0 0;
}
#home .park .slider .splide__arrow--next{
	left:auto;
	right:20px;
}
#home .park .slider .splide__arrow::before,
#home .park .slider .splide__arrow::after{
	font-size:1.2rem;
}
}


/* tmb
---------------------------------------- */
#home .park .tmb{
	position:absolute;
	bottom:190px;
	left:0;
	width:226px;
	height:210px;
}

#home .park .tmb .splide__track{
	height:100%;
}

#home .park .tmb li{
	display:flex;
	flex-direction:column;
	justify-content:space-between;
	border:none;
}

#home .park .tmb .num{
	margin:-20px 0 0 0;
	font-size:10.0rem;
	color:#FF921D;
	line-height:1;
	letter-spacing:0.05em;
}

#home .park .tmb .area{
	font-weight:500;
	line-height:1;
}

#home .park .tmb .area time{
	display:block;
	margin:0 0 12px 0;
	font-size:1.3rem;
	font-weight:400;
	letter-spacing:0.05em;
}

@media screen and (max-width:767px){
#home .park .tmb{
	position:static;
	width:auto;
	height:auto;
	margin:0 30px 40px;
}

#home .park .tmb li{
	flex-direction:row;
	justify-content:flex-start;
	align-items:center;
}

#home .park .tmb .num{
	margin:-10px 10px 0 0;
	font-size:6.0rem;
}

#home .park .tmb .area time{
	display:block;
	margin:0 0 10px 0;
}
}


/* btn
---------------------------------------- */
#home .park .btn{
	position:absolute;
	bottom:0;
	left:0;
}

@media screen and (max-width:767px){
#home .park .btn{
	position:static;
}
}


/* ----------------------------------------
	signboard
---------------------------------------- */
#home .signboard{
	background:#EFEDEA;
}


/* list
---------------------------------------- */
#home .signboard .list{
	display:grid;
	row-gap:50px;
	margin:0 0 50px 0;
}

#home .signboard .list li{
	width:800px;
	height:400px;
	background:#7C7A76;
	border-radius:0 40px 0 0;
}
#home .signboard .list li:nth-child(2){
	width:900px;
	background:#4B4947;
}
#home .signboard .list li:nth-child(3){
	width:1000px;
	background:#191919;
}

#home .signboard .list a{
	display:flex;
	padding:35px 35px 35px 40px;
	color:#FFFFFF;
	text-decoration:none;
}

@media screen and (max-width:767px){
#home .signboard .list{
	display:grid;
	row-gap:40px;
	margin:0 0 40px 0;
}

#home .signboard .list li,
#home .signboard .list li:nth-child(2),
#home .signboard .list li:nth-child(3){
	width:auto;
	height:auto;
}

#home .signboard .list a{
	display:block;
	padding:35px 20px;
}
}


/* ---------- block ---------- */
#home .signboard .list .block{
	width:425px;
	padding:0 40px 0 0;
}

#home .signboard .list .num{
	display:flex;
	align-items:center;
	gap:0 8px;
	margin:0 0 24px 0;
	font-size:3.0rem;
	font-weight:500;
	line-height:1;
	letter-spacing:0.05em;
}

#home .signboard .list .num span{
	padding:4px 0 0 0;
	font-size:1.4rem;
	font-weight:700;
	letter-spacing:0.05em;
}

#home .signboard .list .area{
	margin:0 0 48px 0;
	font-size:1.4rem;
	font-weight:700;
	line-height:1;
}

#home .signboard .list .area span{
	position:relative;
	padding:0 28px 0 0;
	vertical-align:bottom;
	font-size:1.3rem;
	letter-spacing:0.05em;
}

#home .signboard .list .area span::before{
	content:"";
	position:absolute;
	top:-3px;
	right:7px;
	width:24px;
	height:1px;
	background:#FFFFFF;
	transform:rotate(-55deg);
	transform-origin:top right;
}

#home .signboard .list h4{
	margin:0 0 14px 0;
	font-size:2.0rem;
	font-weight:700;
	line-height:3.0rem;
	letter-spacing:0.05em;
}

#home .signboard .list p{
	font-size:1.5rem;
	line-height:2.8rem;
}

@media screen and (max-width:767px){
#home .signboard .list .block{
	width:auto;
	padding:0 0 20px 0;
}

#home .signboard .list .num{
	margin:0 0 20px 0;
}

#home .signboard .list .area{
	margin:0 0 20px 0;
}
}


/* ---------- img ---------- */
#home .signboard .list .img{
	flex:1;
}

#home .signboard .list .img img{
	width:300px;
	height:330px;
	object-fit:cover;
	border-radius:5px;
}
#home .signboard .list li:nth-child(2) .img img{ width:400px; }
#home .signboard .list li:nth-child(3) .img img{ width:500px; }

@media screen and (max-width:767px){
#home .signboard .list .img img,
#home .signboard .list li:nth-child(2) .img img,
#home .signboard .list li:nth-child(3) .img img{
	width:100%;
	height:auto;
}
}


/* ----------------------------------------
	strawberry
---------------------------------------- */
#home .strawberry{
	padding:0;
}

#home .strawberry .wrap{
	display:flex;
}

#home .strawberry .wrap > *{
	overflow:hidden;
	display:flex;
	align-items:center;
	height:100vh;
}

@media screen and (max-width:767px){
#home .strawberry .wrap{
	display:block;
}

#home .strawberry .wrap > *{
	display:block;
	height:auto;
}
}


/* section_01
---------------------------------------- */
#home .strawberry .section_01{
	display:block;
	padding:150px 0 150px 161px;
	background:url(../../img/home/bg_strawberry.jpg) no-repeat center;
	background-size:cover;
}

@media screen and (max-width:767px){
#home .strawberry .section_01{
	padding:100px 0 60px 0;
}
}


/* section_02
---------------------------------------- */
#home .strawberry .section_02{
	background:#F3F2EF;
}

#home .strawberry .section_02 .inner{
	width:1106px;
	padding:60px 0 130px 161px;
}

#home .strawberry .section_02 h3{
	display:flex;
	align-items:center;
	gap:0 10px;
}
#home .strawberry .section_02 h3 span{ color:#E3203E; }

#home .strawberry .section_02 p{
	width:450px;
	margin:0 0 40px 0;
}
#home .strawberry .section_02 p:nth-of-type(2){ margin:0 0 0 244px; }

#home .strawberry .section_02 .img_01{
	position:absolute;
	top:0;
	right:-62px;
}

#home .strawberry .section_02 .img_02 img{
	position:absolute;
	bottom:0;
	left:-80px;
}
#home .strawberry .section_02 .img_02 img:nth-of-type(2){
	left:auto;
	right:-55px;
}

@media screen and (max-width:767px){
#home .strawberry .section_02 .inner{
	width:auto;
	padding:60px 20px;
}

#home .strawberry .section_02 h3{
	padding:0;
}

#home .strawberry .section_02 h3 img{
	position:static;
	width:auto;
	height:80px;
}

#home .strawberry .section_02 p{
	width:auto;
}
#home .strawberry .section_02 p:nth-of-type(2){ margin:0 0 40px 0; }

#home .strawberry .section_02 .img_01{
	position:static;
	margin:0 0 40px 0;
	text-align:center;
}

#home .strawberry .section_02 .img_02{
	display:flex;
	justify-content:center;
	align-items:flex-start;
	gap:0 20px;
}

#home .strawberry .section_02 .img_02 img{
	position:static;
	width:calc(66.223% - 10px);
}
#home .strawberry .section_02 .img_02 img:nth-of-type(2){
	width:calc(33.777% - 10px);
}
}


/* section_03
---------------------------------------- */
#home .strawberry .section_03{
	background:#F7F6F5;
}

#home .strawberry .section_03 .inner{
	width:1106px;
}

#home .strawberry .section_03 ul{
	display:grid;
	grid-template-columns:repeat(4,1fr);
	gap:30px;
	width:810px;
}

#home .strawberry .section_03 ul li img{
	width:180px;
	height:260px;
	object-fit:cover;
	border-radius:5px;
}

@media screen and (max-width:767px){
#home .strawberry .section_03{
	padding:0 0 60px 0;
}

#home .strawberry .section_03 .inner{
	width:auto;
}

#home .strawberry .section_03 ul{
	grid-template-columns:repeat(2,1fr);
	gap:20px;
	width:auto;
	margin:0 0 40px 0;
}

#home .strawberry .section_03 ul li img{
	width:100%;
	height:auto;
	aspect-ratio:180/260;
}
}


/* ---------- btn ---------- */
#home .strawberry .section_03 .btn{
	flex-direction:column;
	align-items:center;
	position:absolute;
	bottom:0;
	right:-40px;
}

#home .strawberry .section_03 .btn img{
	display:block;
	margin:0 auto 24px;
}

#home .strawberry .section_03 .btn a{
	min-width:276px;
	background:#E3203E;
}

@media screen and (max-width:767px){
#home .strawberry .section_03 .btn{
	position:static;
}

#home .strawberry .section_03 .btn img{
	margin:0 auto 20px;
}
}


/* ----------------------------------------
	company
---------------------------------------- */
#home .company{
	background:#2C2C2C;
	color:#FFFFFF;
}

#home .company::before,
#home .company::after{
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:133px;
	background:linear-gradient(#2c2c2c 0%, #2c2c2c 28.57%, rgba(44, 44, 44, 0) 100%);
	z-index:1;
}
#home .company::after{
	top:auto;
	bottom:0;
	transform:scaleY(-1);
}

#home .company h2 .font_YujiMai,
#home .company h2 .font_SansitaSwashed{
	color:#FFFFFF;
}

#home .company table{
	margin:0 0 60px 0;
}

#home .company table th{
	width:88px;
	text-align:left;
	vertical-align:top;
}

@media screen and (max-width:767px){
#home .company::before,
#home .company::after{
	content:none;
}

#home .company h3{
	padding:0;
}

#home .company table{
	margin:0 0 40px 0;
}
}


/* catchcopy
---------------------------------------- */
#home .company .catchcopy{
	margin:0 0 0 -161px;
}

@media screen and (max-width:767px){
#home .company .catchcopy{
	width:300px;
	margin:0 0 40px 0;
}
}


/* carousel
---------------------------------------- */
#home .company .carousel{
	display:flex;
	gap:0 24px;
	position:absolute;
	top:0;
	left:calc(50% + 202px);
	width:100%;
	transform:rotate(10deg);
	transform-origin:left top;
}
#home .company .carousel ul{ animation:carousel 30s infinite linear 0s; }
#home .company .carousel .right ul{ animation-direction:reverse; }

#home .company .carousel ul li{
	margin:0 0 24px 0;
}

#home .company .carousel ul li img{
	border-radius:5px;
}

@media screen and (max-width:767px){
#home .company .carousel{
	flex-direction:column;
	gap:20px 0;
	position:static;
	width:auto;
	transform:none;
}

#home .company .carousel > *{
	display:flex;
	gap:0 20px;
}

#home .company .carousel ul{
	animation:marquee 30s infinite linear 0s;
	display:flex;
	gap:0 20px;
}

#home .company .carousel ul li{
	width:120px;
	margin:0;
}
}


/* ========================================================================
	活動事例一覧					[ /activity/ ]
======================================================================== */
#list{
	overflow:hidden;
	display:flex;
	padding:90px 0 0 0;
}

#list .wrap{
	display:flex;
	align-items:center;
	height:calc(100vh - 90px);
}

#list .wrap > *{
	position:relative;
	height:100%;
}

#list h2{
	align-items:center;
	gap:0 20px;
	position:static;
	margin:0 0 45px 0;
}

#list h2 .font_YujiMai{
	font-size:4.0rem;
	writing-mode:horizontal-tb;
}

#list h2 .font_SansitaSwashed{
	margin:0;
	writing-mode:horizontal-tb;
}

@media screen and (max-width:767px){
#list{
	display:block;
	padding:0;
}

#list .wrap{
	display:block;
	height:auto;
}

#list h2{
	align-items:flex-start;
	margin:0 0 40px 0;
}

#list h2 .font_YujiMai{
	font-size:2.4rem;
}

#list h2 .font_SansitaSwashed{
	margin:8px 0 0 2px;
}
}


/* ----------------------------------------
	scroll
---------------------------------------- */
#list .scroll{
	position:absolute;
	bottom:40px;
	right:0;
	padding:8px 109px 0 0;
	background:url(../../img/activity/arrow.png) no-repeat right top;
	background-size:99px 18px;
	font-size:1.4rem;
	font-weight:500;
	line-height:1;
}

@media screen and (max-width:767px){
#list .scroll{
	display:none;
}
}


/* ----------------------------------------
	activity
---------------------------------------- */
#list .activity{
	display:flex;
	align-items:center;
	padding:0 80px 0 130px;
	background:#F7F6F5;
}

#list .activity::before{
	content:"";
	position:absolute;
	top:50%;
	right:64px;
	width:653px;
	height:602px;
	background:url(../../img/activity/bg_activity.png) no-repeat center;
	background-size:cover;
	transform:translateY(-50%);
}

#list .activity .inner{
	padding:0 0 0 180px;
}

#list .activity h1{
	margin:0 0 30px 0;
	font-size:4.8rem;
	line-height:1;
	letter-spacing:0.09em;
}

#list .activity p{
	width:560px;
	margin:0 0 40px 0;
}

#list .activity p.lead{
	margin:0 0 30px 0;
}

#list .activity .illust{
	position:absolute;
	top:0;
	left:-40px;
}

@media screen and (max-width:767px){
#list .activity{
	padding:60px 20px;
}

#list .activity::before{
	top:auto;
	right:auto;
	top:auto;
	right:auto;
	bottom:40px;
	left:50%;
	max-width:500px;
	width:calc(100% - 40px);
	height:auto;
	aspect-ratio:1306/1204;
	transform:translateX(-50%);
}

#list .activity .inner{
	padding:0;
}

#list .activity h1{
	text-align:center;
	font-size:4.0rem;
}

#list .activity p{
	width:auto;
}

#list .activity p.lead{
	padding:0;
}

#list .activity .illust{
	position:static;
	margin:0 0 30px 0;
	text-align:center;
}
}


/* btn
---------------------------------------- */
#list .activity .btn a{
	min-width:270px;
}


/* ----------------------------------------
	park / signboard
---------------------------------------- */
#list .park,
#list .signboard{
	display:flex;
	flex-direction:column;
	justify-content:center;
	padding:0 200px;
}
#list .park{ background:#EFEDEA; }

@media screen and (max-width:767px){
#list .park,
#list .signboard{
	padding:60px 20px;
}
}


/* list
---------------------------------------- */
#list .list{
	display:flex;
	gap:0 50px;
}

#list .list li{
	width:280px;
}

#list .list li a{
	text-decoration:none;
}

@media screen and (max-width:767px){
#list .list{
	display:grid;
	grid-template-columns:repeat(2,1fr);
	gap:40px 20px;
}

#list .list li{
	width:auto;
}
}


/* ---------- img ---------- */
#list .list .img{
	position:relative;
}

#list .list .img::before{
	content:"";
	position:absolute;
	top:-15px;
	right:-15px;
	width:100%;
	height:100%;
	background:#FFFFFF;
	border-radius:5px;
}
#list .signboard .list .img::before{ background:#7C7A76; }

#list .list .img::after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:100px;
	background:linear-gradient(rgba(108,108,108,0) 0%, #6c6c6c 100%);
	border-radius:0 0 5px 5px;
	mix-blend-mode:multiply;
}

#list .list .img img{
	position:relative;
	width:280px;
	height:370px;
	object-fit:cover;
	border-radius:5px;
}

#list .list .img span{
	position:absolute;
	bottom:12px;
	left:20px;
	font-size:6.8rem;
	color:#FFFFFF;
	line-height:1;
	letter-spacing:0.05em;
	z-index:1;
}

@media screen and (max-width:767px){
#list .list .img::before{
	top:-10px;
	right:-10px;
}

#list .list .img img{
	width:100%;
	height:auto;
	aspect-ratio:280/370;
}

#list .list .img span{
	bottom:auto;	
	top:10px;
	left:10px;
	font-size:4.0rem;
}
}


/* ---------- area ---------- */
#list .list .area{
	position:relative;
	margin:-59px 0 20px 112px;
	font-weight:500;
	color:#FFFFFF;
	line-height:1;
}

#list .list .area time{
	display:block;
	margin:0 0 10px 0;
	font-size:1.3rem;
	font-weight:400;
	letter-spacing:0.05em;
}

@media screen and (max-width:767px){
#list .list .area{
	margin-left:10px;
}
}


/* ---------- ttl ---------- */
#list .list .ttl{
	padding:10px 0 0 0;
	font-size:1.5rem;
	font-weight:500;
	line-height:2.5rem;
}


/* ----------------------------------------
	company
---------------------------------------- */
#list .company{
	display:flex;
	flex-direction:column;
	justify-content:flex-end;
	width:510px;
	margin:0 50px 0 0;
	padding:0 0 180px 60px;
	background:#000000;
	border-radius:0 80px 0 0;
	color:#FFFFFF;
	z-index:1;
}

#list .company::before,
#list .company::after{
	content:"";
	position:absolute;
	top:4px;
	left:6px;
	width:499px;
	height:281px;
	background:url(../../img/activity/bg_company01.png) no-repeat center;
	background-size:100%;
}
#list .company::after{
	top:auto;
	bottom:10px;
	left:12px;
	width:491px;
	height:117px;
	background-image:url(../../img/activity/bg_company02.png);
}

#list .company > *{
	position:relative;
}

#list .company .logo{
	margin:0 0 32px 0;
	font-size:2.0rem;
	font-weight:700;
	line-height:1;
}

#list .company .logo img{
	margin:0 0 18px 0;
}

#list .company dl dt{
	margin:0 0 16px 0;
	font-weight:700;
	line-height:1;
	letter-spacing:0.05em;
}

#list .company dl dd{
	font-size:1.5rem;
	line-height:1;
}

@media screen and (max-width:767px){
#list .company{
	width:auto;
	margin:0;
	padding:0;
	border-radius:0;
}

#list .company::before,
#list .company::after{
	content:"";
	position:static;
	width:100%;
	height:auto;
	aspect-ratio:998/562;
}
#list .company::after{ aspect-ratio:982/234; }

#list .company .logo{
	padding:40px 20px 0;
}

#list .company dl{
	padding:0 20px 20px;
}
}


/* ----------------------------------------
	copyright
---------------------------------------- */
#list .copyright{
	position:absolute;
	top:0;
	right:0;
	width:50px;
	background:#191919;
}

#list .copyright::before{
	content:"";
	position:absolute;
	top:0;
	left:-80px;
	width:80px;
	height:80px;
	background:#191919;
}

#list .copyright small{
	display:flex;
	align-items:center;
	gap:0 10px;
	position:absolute;
	top:50%;
	left:50px;
	height:50px;
	font-size:1.1rem;
	color:#FFFFFF;
	line-height:1;
	transform:rotate(90deg) translateX(-50%);
	transform-origin:top left;
	white-space:nowrap;
}

@media screen and (max-width:767px){
#list .copyright{
	position:static;
	width:auto;
}

#list .copyright::before{
	content:none;
}

#list .copyright small{
	justify-content:center;
	position:static;
	transform:none;
}
}


/* ========================================================================
	活動事例詳細					[ /activity/投稿ID/ ]
======================================================================== */

/* ----------------------------------------
	detail
---------------------------------------- */
#entry .detail{
	padding:150px 0;
	background:#EFEDEA;
}

@media screen and (max-width:767px){
#entry .detail{
	padding:60px 0;
}
}


/* column
---------------------------------------- */
#entry .detail .column{
	display:flex;
	gap:0 60px;
}

@media screen and (max-width:767px){
#entry .detail .column{
	display:block;
	margin:0 0 40px 0;
}
}


/* block
---------------------------------------- */
#entry .detail .block{
	flex:1;
	padding:30px 0 45px 0;
}

#entry .detail .block .cat{
	display:inline-block;
	margin:0 0 30px 0;
	padding:10px 20px;
	background:#FF921D;
	border-radius:0 20px 0 0;
	font-size:1.8rem;
	font-weight:500;
	color:#FFFFFF;
	line-height:1;
}

#entry .detail .block h1{
	margin:0 0 35px 0;
	font-size:2.2rem;
	font-weight:700;
	line-height:3.2rem;
}

#entry .detail .block dl{
	display:flex;
	align-items:flex-start;
	gap:0 14px;
	margin:0 0 7px 0;
}

#entry .detail .block dl dt{
	width:108px;
	padding:8px 0;
	background:#FFFFFF;
	border-radius:15px;
	text-align:center;
	font-size:1.4rem;
	font-weight:500;
	line-height:1;
}

#entry .detail .block dl dd{
	flex:1;
	padding:1px 0 0 0;
	font-weight:500;
}

@media screen and (max-width:767px){
#entry .detail .block{
	padding:0;
}

entry .detail .block .cat{
	margin:0 0 20px 0;
	font-size:1.6rem;
}

#entry .detail .block h1{
	margin:0 0 30px 0;
	font-size:2.0rem;
	line-height:3.0rem;
}

#entry .detail .block dl{
	display:block;
	margin:0 0 20px 0;
}

#entry .detail .block dl dd{
	padding:10px 0 0 0;
}
}


/* splide
---------------------------------------- */
#entry .detail .splide{
	overflow:hidden;
	width:600px;
	border-radius:5px;
}

#entry .detail .splide img{
	width:600px;
	height:400px;
	object-fit:cover;
}

@media screen and (max-width:767px){
#entry .detail .splide{
	width:auto;
}

#entry .detail .splide img{
	width:100%;
	height:auto;
}
}


/* story
---------------------------------------- */
#entry .detail .story{
	position:relative;
	min-height:382px;
}

#entry .detail .story h2{
	justify-content:space-between;
	align-items:center;
	position:static;
	width:446px;
	margin:-12px 0 40px 0;
	font-weight:500;
	line-height:1;
	letter-spacing:0.065em
}

#entry .detail .story h2::after{
	content:"";
	width:100%;
	height:1px;
	margin:4px 0 0 0;
	background:#2B2B2B;
}

#entry .detail .story h2 span{
	padding:0 26px 0 0;
}

#entry .detail .story p{
	position:static;
	width:750px;
	line-height:2;
}

#entry .detail .story .illust{
	position:absolute;
	bottom:0;
	right:0;
	opacity:0.1;
}

@media screen and (max-width:767px){
#entry .detail .story{
	min-height:auto;
}

#entry .detail .story h2{
	flex-direction:row;
	width:auto;
	margin:0 0 30px 0;
}

#entry .detail .story p{
	width:auto;
	margin:0 0 40px 0;
}

#entry .detail .story .illust{
	position:static;
	width:240px;
	margin:0 auto;
}
}


/* ----------------------------------------
	other
---------------------------------------- */
#entry .other{
	overflow:hidden;
	position:relative;
	padding:150px 0 150px 161px;
	background:#F7F6F5;
}

#entry .other .inner{
	width:945px;
}

#entry .other ul{
	display:grid;
	grid-template-columns:repeat(3,1fr);
	gap:80px 40px;
	width:920px;
}

#entry .other ul li{
	width:280px;
}
#entry .other ul li:nth-child(n+7){ display:none; }

#entry .other ul li a{
	text-decoration:none;
}

@media screen and (max-width:767px){
#entry .other{
	padding:60px 0;
}

#entry .other .inner{
	width:auto;
}

#entry .other ul{
	grid-template-columns:repeat(2,1fr);
	gap:20px;
	width:auto;
}

#entry .other ul li{
	width:auto;
}
}


/* img
---------------------------------------- */
#entry .other .img{
	position:relative;
}

#entry .other .img img{
	width:280px;
	height:370px;
	object-fit:cover;
	border-radius:5px;
}

#entry .other .img::after{
	content:"";
	position:absolute;
	bottom:0;
	left:0;
	width:100%;
	height:100px;
	background:linear-gradient(rgba(108,108,108,0) 0%, #6c6c6c 100%);
	border-radius:0 0 5px 5px;
	mix-blend-mode:multiply;
}

@media screen and (max-width:767px){
#entry .other .img{
	position:relative;
}

#entry .other .img img{
	width:100%;
	height:auto;
}
}


/* area
---------------------------------------- */
#entry .other .area{
	position:relative;
	margin:-59px 28px 20px 28px;
	font-weight:500;
	color:#FFFFFF;
	line-height:1;
}

#entry .other .area span{
	display:block;
	margin:0 0 10px 0;
	font-size:1.3rem;
	font-weight:400;
	letter-spacing:0.05em;
}

@media screen and (max-width:767px){
#entry .other .area{
	margin:-59px 20px 20px 20px;
}
}


/* ttl
---------------------------------------- */
#entry .other .ttl{
	padding:10px 0 0 0;
	font-size:1.5rem;
	font-weight:500;
	line-height:2.5rem;
}


/* btn
---------------------------------------- */
#entry .other .btn{
	justify-content:center;
	padding:80px 0 0 0;
}

#entry .other .btn button{
	min-width:262px;
	background:#FF921D;
	font-size:1.8rem;
	font-weight:600;
	letter-spacing:0.05em;
}

#entry .other .btn button::before{
	content:"+";
	right:40px;
	font-family:"Zen Kaku Gothic New", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
	font-size:1.8rem;
}

@media screen and (max-width:767px){
#entry .other .btn{
	padding:40px 0 0 0;
}
}