@charset "UTF-8";

/*--------------------------------------------
FONTS
---------------------------------------------*/

@font-face{
	font-family : "Noto Sans JP";
	src : url("../fonts/variable/NotoSansJP-VF.woff") format("woff-variations");
	font-weight : 1 999;
}

:root{
	--fontFamily : "Noto Sans JP" , sans-serif;
}

/*--------------------------------------------
SETTINGS
---------------------------------------------*/

/*--------------------------------------------
SETTINHS
  COLORS
---------------------------------------------*/

:root{
	--body : #000;
	--link : #000;
	--primary : #3c64a0;
}

/*--------------------------------------------
RESET DOMS
---------------------------------------------*/

/*
*:where(:not( html, iframe, canvas, img, svg, video):not( svg * , symbol * ) ){
  all: unset;
  display: revert;
}
*/

*:where(:not(html):not(iframe):not(canvas):not(img):not(svg):not(video):not(svg *):not(symbol *)){
	all : unset;
	display : revert;
}

* , *::before , *::after{
	box-sizing : border-box;
}

a , button{
	cursor : revert;
}

ol , ul , menu{
	list-style : none;
}

picture{
	display : block;
}

img{
	max-width : 100%;
}

table{
	border-collapse : collapse;
}

textarea{
	white-space : revert;
}

meter{
	-webkit-appearance : revert;
	        appearance : revert;
}

::placeholder{
	color : unset;
}

:where([hidden]){
	display : none;
}

:where([contenteditable]:not([contenteditable="false"])){
	   -moz-user-modify : read-write;
	-webkit-user-modify : read-write;
	overflow-wrap : break-word;
	-webkit-line-break : after-white-space;
}

:where([draggable="true"]){
	-webkit-user-drag : element;
}

html{
	visibility : visible;
	scroll-behavior : smooth;
}

body{
	min-height : 100vh;
	-webkit-text-size-adjust : 100%;
	font-family : var(--fontFamily);
	font-weight : 500;
	position : relative;
	font-size : 100%;
	font-size-adjust : 100%;
	line-height : 1;
	display : block;
	overflow-scrolling : touch;
	-webkit-font-smoothing : antialiased;
	-moz-osx-font-smoothing : grayscale;
	scroll-behavior : smooth;
	text-rendering : optimizeLegibility;
	color : var(--body);
	font-feature-settings : "palt" on;
}

a{
	color : var(--body);
}

/*--------------------------------------------
FORM
---------------------------------------------*/

input , button{
	outline : 0;
	-webkit-appearance : none;
	border-radius : 0;
	border : 0;
	color : var(--body);
}

input[type="text"] , input[type="email"] , input[type="password"] , input[type="tel"] , input[type="number"]{
	padding-left : .5em;
	padding-right : .5em;
	font-size : 1em;
}

input[type="number"]{
	text-align : right;
	padding-right : 1em;
}

textarea{
	padding : .5em;
	font-size : 1em;
	outline : none;
	border : 0;
}

input[type="submit"] , input[type="reset"] , button{
	padding : 0;
	-webkit-appearance : none;
}

input[type="submit"]:hover , input[type="reset"]:hover , button:hover{
	cursor : pointer;
}

select::-ms-expand{
	display : none;
}

input{
	-webkit-appearance : none;
	border-radius : 0;
	border-style : solid;
	outline : none;
}

textarea{
	resize : vertical;
	-webkit-appearance : none;
	border-radius : 0;
	border-style : solid;
}

input , select , textarea , button{
	font-family : var(--fontFamily);
}

button{
	cursor : pointer;
	background : none;
	line-height : 1;
}

/*--------------------------------------------
PRINT
---------------------------------------------*/

@media print{
	body{
		width : 100%;
		overflow-x : hidden;
	}
	@page{
		margin-top : .4cm;
		margin : .5cm;
	}
	.no-print{
		display : none;
	}
}
