@charset "UTF-8";
@font-face{
	src:url('../fonts/RoslindaleDisplayCondensed-Regular.woff2') format("woff2"),url('../fonts/RoslindaleDisplayCondensed-Regular.woff') format("woff");
	font-family:'RoslindaleDisplayCondensed';
	font-style:normal;
	font-weight:normal;
}
@font-face{
	src:url('../fonts/RoslindaleDisplay-Regular.woff2') format("woff2"),url('../fonts/RoslindaleDisplay-Regular.woff') format("woff");
	font-family:'RoslindaleDisplay';
	font-style:normal;
	font-weight:normal;
}

/* reset*/
*,*:before,*:after{box-sizing:border-box;}
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{color:#333;font-family:'Noto Sans JP',sans-serif;font-size:14px;line-height:1.6}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after,q:before,q:after{content:'';content:none}table{border-collapse:collapse;border-spacing:0}p,div{word-break:break-all}a{color:#333;text-decoration:none;transition:.2s}a:hover{opacity:.7}input[type="text"],select{border-radius:3px;border:none;padding:6px;font-size:inheirt;box-sizing:border-box}input::placeholder{color:#B5B5B5;font-size:12px}pre{white-space:pre-wrap}
body{
	width:100%;
	min-height:100vh;
	font-family:"Helvetica Neue","Helvetica","Hiragino Sans","Hiragino Kaku Gothic ProN","Arial","Yu Gothic", "Meiryo",sans-serif;
	color:#000;
	line-height:1.875;
/*	overflow-x:hidden;*/
}
::-webkit-scrollbar{
	width:4px;
	height:4px;
}
::-webkit-scrollbar-track{
	background:#fff;
	border-left:solid 1px #fff;
}
::-webkit-scrollbar-thumb{
	background-color:rgba(167,165,139,0.3);
	border-radius:4px;
	box-shadow:inset 0 0 0 2px rgba(167,165,139,0.3);
}
*[hidden]{display:none!important;}
img{
	display:block;
	width:100%;
	height:auto;
	vertical-align:top;
	-webkit-backface-visibility:hidden;
}
ol,ul{list-style:none;}
button,label,input,select,textarea{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
}
a,button,label{
	cursor:pointer;
	transition:all 0.3s;
}
a:not([data-btn]):hover,
button:not([data-btn]):hover,
label:not([data-btn]):hover{opacity:0.3;}
*[hidden]{display:none!important;}
*[data-font="koburina3"]{font-family:"FP-こぶりなゴシック StdN W3";}
*[data-font="koburina6"]{font-family:"FP-こぶりなゴシック StdN W6";}
*[data-font="grotesk55"]{font-family:"NHaasGroteskTXPro-55Rg";}
*[data-font="grotesk65"]{font-family:"NHaasGroteskTXPro-65Md";}
*[data-font="grotesk75"]{font-family:"NHaasGroteskTXPro-75Bd";}
/* *[data-font="rosl"]{font-family:'Roslindale',sans-serif;}
*[data-font="roslV"]{font-family:'Roslindale Variable',sans-serif;}*/
*[data-font="roslVD"]{font-family:'RoslindaleDisplay',sans-serif;}
a[data-btn]{
	display:table;
	position:relative;
	line-height:1.0;
}
a[data-btn] *{transition:all 0.3s;}
a[data-btn] > span{
	width:100%;
	position:relative;
	display:inline-flex;
	justify-content:center;
	align-items:center;
	border:1px solid #000;
	background-color:#fff;
	color:#000;
	text-align:center;
	line-height:1.0;
	vertical-align:middle;
	white-space:nowrap;
	z-index:1;
}
a[data-btn]:hover > span{
	background-color:#000;
	color:#fff;
}
a[data-btn] > span > *{display:block;}
a[data-btn] svg use{fill:#000;}
a[data-btn]:hover svg use{fill:#fff;}
header{
	width:100%;
	position:fixed;
	top:0;
	left:0;
	border-bottom:1px solid #000;
	z-index:1000;
}
header,
header *{line-height:1.0;}
header:before{
	content:"";
	position:absolute;
	top:0;
	left:0;
	display:block;
	width:100%;
	height:100%;
	backdrop-filter:blur(19px);
	-webkit-backdrop-filter:blur(19px);
	z-index:0;
}
header li{list-style:none;}
header menu li+li{border-left:1px solid #000;}
header a{
	display:block;
	color:#000;
}
header h1{
	position:absolute;
	z-index:2;
}
header menu{
	width:100%;
	display:grid;
	grid-template-columns:1fr auto auto;
	position:relative;
	z-index:1;
}
#gNavBtn{
	position:relative;
	display:block;
}
#gNavBtn:before,
#gNavBtn span,
#gNavBtn:after{
	content:"";
	position:absolute;
	left:0;
	display:block;
	width:100%;
	height:2px;
	background-color:#000;
	transition:all 0.4s;
}
#gNavBtn:before{top:0;}
#gNavBtn span{top:calc(50% - 1px);}
#gNavBtn:after{bottom:0;}
#gNavCheck:checked ~ header #gNavBtn span{opacity:0;}
#globalNavi{
	position:fixed;
	top:0;
	left:0;
	width:100vw;
	height:100vh;
	height:100dvh;
	background:linear-gradient(135deg,rgba(210,203,241,1) 0%,rgba(125,217,239,1) 100%);
	text-align:center;
	transition:all 0.4s;
	opacity:0;
	pointer-events:none;
	z-index:-1;
}
#globalNavi,
#globalNavi *{line-height:1.0;}
#gNavCheck:checked ~ #globalNavi{
	overflow-y:auto;
	opacity:1;
	pointer-events:auto;
	z-index:999;
}
#globalNavi li{
	display:block;
	list-style:none;
}
#globalNavi a{
	display:table;
	margin:0 auto;
}
#globalNavi a:hover{
	color:#ff0000;
	opacity:1;
}
#globalNavi .snsMenu{
	display:flex;
	justify-content:center;
}
#globalNavi .snsMenu svg{
	display:block;
	width:auto;
}
#globalNavi .snsMenu svg use{
	fill:#000;
	transition:fill 0.3s;
}
#globalNavi .snsMenu a:hover svg use{fill:#ff0000;}
footer{
	width:100%;
	background:linear-gradient(90deg,rgba(127,230,244,1) 0%,rgba(185,224,219,1) 33%,rgba(243,217,194,1) 100%);
	overflow:hidden;
}
footer > *{margin:0 auto;}
footer *{line-height:1.0;}
footer li{list-style:none;}
footer a{display:block;}
#news{display:grid;}
#news .newsList li{border-bottom:1px solid #000;}
#news .newsList li > *{line-height:1.4;}
#news .moreBtn{
	margin-left:auto;
	text-align:right;
}
#subscribe{position:relative;}
#subscribe #ftMenu{
	position:relative;
	z-index:1;
}
#subscribe menu li{line-height:1.0;}
#subscribe .snsMenu li a:hover{opacity:1;}
#subscribe .snsMenu li svg{
	display:block;
	width:auto;
}
#subscribe .snsMenu li svg use{
	fill:#000;
	transition:fill 0.3s;
}
#subscribe .snsMenu li a:hover svg use{fill:#ff0000;}
#subscribe .woman{
	position:absolute;
	display:block;
	bottom:0;
	z-index:0;
}
#subscribe .woman img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
	object-position:center top;
}
main{position:relative;}
@media screen and (max-width:1039.98px){
	*[data-type="pc"]{display:none!important;}
	a[data-btn] > span{border-radius:14.359vw;}
	header{width:100vw;}
	header h1{
		width:150px;
		left:calc(50% - 75px);
		top:8px;
	}
	header menu{font-size:15px;}
	header menu li:nth-child(1){padding:18px 15px;}
	header menu a{padding:17px 16px;}
	#gNavBtn{
		width:22px;
		height:14px;
	}
	#gNavCheck:checked ~ header #gNavBtn:before{transform:translateY(6px) rotate(-45deg);}
	#gNavCheck:checked ~ header #gNavBtn::after{transform:translateY(-6px) rotate(45deg);}
	#globalNavi{
		padding-top:calc(51px + 75px);
		padding-bottom:2vw;
	}
	#globalNavi .mainMenu li{font-size:14px;}
	#globalNavi .mainMenu li+li{margin-top:22px;}
	#globalNavi .snsMenu{margin-top:75px;}
	#globalNavi .snsMenu li+li{margin-left:25px;}
	#globalNavi .snsMenu svg{height:15px;}
	footer > *{width:90.769%;}
	footer h2,
	main h2{
		font-size:/*40px*/10.256vw;
		letter-spacing:0.15vw;
	}
	#news{
		padding-top:17.692vw;
		grid-template-columns:100%;
		grid-template-rows:auto auto auto;
	}
	#news > *{width:100%;}
	#news h2{
		grid-row:1 / 2;
		text-align:center;
	}
	#news .moreBtn{
		grid-row:3 / 4;
		margin-top:11.795vw;
		text-align:center;
	}
	#news .moreBtn a{
		width:/*190px*/48.718vw;
		margin:0 auto;
	}
	#news .moreBtn a > span{
		padding:10% 5%;
		font-size:/*17px*/4.359vw;
	}
	#news .newsList{
		grid-row:2 / 3;
		margin-top:17.436vw;
	}
	#news .newsList li{padding-bottom:6.154vw;}
	#news .newsList li+li{padding-top:4.615vw;}
	#news .newsList li > *{display:block;}
	#news .newsList li a{
		font-size:/*18px*/4.615vw;
		line-height:1.555;
	}
	#news .newsList li time{
		margin-top:4.103vw;
		font-size:/*17px*/4.359vw;
	}
	#subscribe{
		margin-top:44.615vw;
		padding-bottom:44.615vw;
		overflow:hidden;
	}
	#subscribe h2{line-height:1.125;}
	#subscribe h2+p{
		margin-top:8.205vw;
		line-height:1.5;
		font-size:/*16px*/4.103vw;
	}
	#subscribe .magazine{margin-top:8.205vw;}
	#subscribe .magazine a{
		width:/*190px*/48.718vw;
		font-size:/*17px*/4.359vw;
	}
	#subscribe .magazine a > span{
		padding:10% 5%;
	}
	#subscribe #ftMenu{
		display:flex;
		justify-content:center;
		flex-wrap:wrap;
		margin-top:41.538vw;/*162px*/
		font-size:/*13px*/3.333vw;
	}
	#subscribe #ftMenu menu{display:block;}
	#subscribe #ftMenu h3{
		margin-bottom:11.795vw;
		font-size:/*20px*/5.128vw;
	}
	#subscribe .siteMenu{
		width:50%;
		padding-right:2%;
	}
	#subscribe .siteMenu li{display:block;}
	#subscribe .siteMenu li+li{margin-top:/*16px*/4.103vw;}
	#subscribe .snsMenu{
		width:100%;
		margin-top:24.615vw;
		text-align:center;
	}
	#subscribe .snsMenu li{display:inline-block;}
	#subscribe .snsMenu li+li{margin-left:/*52px*/13.333vw;}
	#subscribe .snsMenu li svg{height:/*30px*/7.692vw;}
	#subscribe #copyrights{
		margin-top:/*210px*/53.846vw;
		font-size:/*20px*/5.128vw;
	}
	#subscribe .woman{
		width:/*220px*/56.41vw;
		height:/*376px*/96.41vw;
		right:/*-49px*/-12.564vw;
	}
}
@media screen and (min-width:1040px){
	*[data-type="sp"]{display:none!important;}
	a[data-btn] > span{border-radius:3vw;}
	header h1{
		width:184px;
		left:calc(50% - 92px);
		top:8px;
	}
	header menu{font-size:17px;}
	header menu li:nth-child(1){padding:22px 40px;}
	header menu a{padding:20px 44px;}
	#gNavBtn{
		width:30px;
		height:16px;
	}
	#gNavCheck:checked ~ header #gNavBtn:before{transform:translateY(7px) rotate(-45deg);}
	#gNavCheck:checked ~ header #gNavBtn::after{transform:translateY(-7px) rotate(45deg);}
	#globalNavi{
		padding-top:calc(60px + 12.03125vw);
		padding-bottom:2vw;
	}
	#globalNavi .mainMenu li{font-size:2.34375vw;}
	#globalNavi .mainMenu li+li{margin-top:3.125vw;}
	#globalNavi .snsMenu{margin-top:11.5625vw;}
	#globalNavi .snsMenu li+li{margin-left:3.90625vw;}
	#globalNavi .snsMenu svg{height:2.34375vw;}
	footer > *{width:93.75%;}
	footer h2,
	main h2{
		font-size:max(60px,4.6875vw);
		letter-spacing:0.15vw;
	}
	#news{
		grid-template-columns:auto auto;
		grid-template-rows:auto auto;
		padding-top:7.1875vw;
	}
	#news h2{
		grid-column:1 / 2;
		grid-row:1 / 2;
	}
	#news .moreBtn{
		grid-column:2 / 3;
		grid-row:1 / 2;
	}
	#news .moreBtn a{width:max(190px,14.84375vw);}
	#news .moreBtn a > span{
		padding:10% 5%;
		font-size:max(17px,1.328125vw);
	}
	#news .newsList{
		grid-column:1 / 3;
		grid-row:2 / 3;
		margin-top:3.16666%;
	}
	#news .newsList li{
		display:flex;
		justify-content:space-between;
		align-items:center;
	}
	#news .newsList li > *{display:block;}
	#news .newsList li a{
		padding:2.89vw 0;
		font-size:max(18px,1.40625vw);
	}
	#news .newsList li time{font-size:max(17px,1.328125vw);}
	#subscribe{
		display:grid;
		grid-template-columns:auto auto;
		grid-template-rows:auto auto 1fr auto;
		margin-top:14.0625vw;
		padding-bottom:3.75vw;
	}
	#subscribe h2{
		grid-column:1 / 2;
		grid-row:1 / 2;
	}
	footer > #subscribe h2{font-size:4.6875vw;}
	#subscribe h2+p{
		grid-column:1 / 2;
		grid-row:2 / 3;
		margin-top:2.890625vw;
		font-size:1.25vw;
	}
	#subscribe .magazine{
		grid-column:1 / 2;
		grid-row:3 / 4;
		margin-top:5.15625vw;
	}
	#subscribe .magazine a{
		width:max(208px,16.25vw);
		font-size:max(17px,1.328125vw);
	}
	#subscribe .magazine a > span{
		padding:9.1346% 5%;
		border-radius:4.375vw;
	}
	#subscribe #ftMenu{
		grid-column:2 / 3;
		grid-row:1 / 5;
		display:flex;
		justify-content:space-between;
		padding-bottom:16.09375vw;
		font-size:max(13px,1.015625vw);
	}
	#subscribe #ftMenu menu{display:block;}
	#subscribe #ftMenu h3{
		margin-bottom:3.59375vw;
		font-size:max(20px,1.5625vw);
	}
	#subscribe #ftMenu li+li{margin-top:0.78125vw;}
	#subscribe .snsMenu li a{
		display:flex;
		align-items:center;
	}
	#subscribe .snsMenu li a > *{display:block;}
	#subscribe .snsMenu li svg{
		height:max(15px,1.171875vw);
		margin-right:1.25vw;
	}
	#subscribe #copyrights{
		grid-column:1 / 2;
		grid-row:4 / 5;
		font-size:max(20px,1.5625vw);
	}
	#subscribe .woman{
		width:19.140625vw;
		height:21.875vw;
		right:-6.71875vw;
	}
}
