@charset "UTF-8";

/* --------------------------------------------------------------------------------------
	各種設定
--------------------------------------------------------------------------------------- */

:root {
	--color-deep-blue: #387cbe;
	--color-gray-white: #f6f6f6;
	--color-gray: #e6e6e6;
	--border-color: #73767a;
	--border-color-thin: #d5d5d5;
	--transition: all .3s ease-in-out;
	--Thin: 100;
	--ExtraLight: 200;
	--Light : 300;
	--Regular : 400;
	--Medium : 500;
	--DeBold : 600;
	--Bold : 700;
	--Heavy : 800;
	--Black : 900;
	--font-UD-ShinGo : 'UD-ShinGo';
	--font-UD-ShinGo-Regular : 'MFW-UDShinGoPro-Regular';
	--font-UD-ShinGo-Medium : 'MFW-UDShinGoPro-Medium';
	--font-UD-ShinGo-DeBold : 'MFW-UDShinGoPro-DeBold';
	--font-UD-ShinGo-Bold : 'MFW-UDShinGoPro-Bold';
	--font-ubuntu : 'Ubuntu', sans-serif;
	--font-ubuntu-mono : 'Ubuntu Mono', monospace;
}

/* --------------------------------------------------------------------------------------
   リセット
--------------------------------------------------------------------------------------- */

html { font-size: 62.5% !important; }

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td,caption,article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section {
	margin: 0;
	padding: 0;
}

body {
	color: #000;
	font-family: var(--font-UD-ShinGo-Regular);
	font-size: 1.6rem;
	-webkit-font-smoothing: antialiased;
	text-align: center;
	-webkit-text-size-adjust: 100%;
}

body,input,textarea,button {
	font-family: var(--font-UD-ShinGo-Regular);
	font-optical-sizing: auto;
	font-style: normal;
}

div,p,blockquote,li,dt,dd,pre,form,textarea,select,button,input,td,th,address,h1,h2,h3,h4,h5,h6,figcaption {
	font-family: var(--font-UD-ShinGo-Regular);
	font-size: 100%;
	font-style: normal;
	line-height: 1.5;
}

input,textarea {
	font-family: var(--font-UD-ShinGo-Regular);
	letter-spacing: 1px;
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,picture,object,label { display: block; }

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,div,p,dl,dt,dd,ul,ol,li,table,th,td,textarea,address,h1,h2,h3,h4,h5,h6,a,input,button,label { box-sizing: border-box; }

th,td {
	text-align: left;
	vertical-align: top;
}

a {
	color: #000;
	overflow-wrap: break-word;
	text-decoration: none;
}

a:hover { text-decoration: underline; }

img,iframe { border: none; }

img {
	height: auto;
	/* image-rendering: -webkit-optimize-contrast; */
	max-width: 100%;
	vertical-align: bottom;
}

*::before,
*::after {
	box-sizing: border-box;
	image-rendering: -webkit-optimize-contrast;
}

table {
	border-collapse: collapse;
	font-size: 100%;
}

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

input { vertical-align: middle; }

address a { cursor: default; }

svg {
	pointer-events: none;
	vertical-align: middle;
}

body.no-scroll { overflow: hidden; }

/* --------------------------------------------------------------------------------------
  clearfix
--------------------------------------------------------------------------------------- */

.clearfix:after {
	clear: both;
	content: '';
	display: block;
}

/* --------------------------------------------------------------------------------------
   スマホ
--------------------------------------------------------------------------------------- */

@media (max-width: 749px) {

	html,body { overscroll-behavior: none; }

	body { font-size: 3.633vw; }

	a:hover { text-decoration: none; }

	img {
		height: auto;
		image-rendering: inherit;
		max-width: 100%;
	}

	input { vertical-align: middle; }
}
