@charset "utf-8";
:root {
    --min-width:1180px;
    --max-width:1400px;
    --header-height:calc(147.125px);
	--text-color:#161616;
	--red-color:#BF0400;
	--blue-color:#1A2792;
	--lightblue-color:#BABEDE;
	--gray-color:#dedede;
	--darkgray-color:#333;
	--offwhite-color:#f5f5f5;
	--k8s-color:#326DE6;
}
@media(max-width:767.99px){
	:root{
		--min-width:100%;
		--max-width:100%;
	}
}
body.modal{
	overflow: hidden;
}
.hidden{
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.tac{
	text-align: center !important;
}
.tar{
	text-align: right !important;
}
.tal{
	text-align: left !important;
}
.vam{
    vertical-align: middle !important;
}
.montserrat{
  font-family: "Montserrat", sans-serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: normal;
}

@keyframes infinity-scroll-left {
    from {
      transform: translateX(0);
    }
      to {
      transform: translateX(-100%);
    }
}
@keyframes infinity-scroll-right {
    from {
      transform: translateX(-100%);
    }
      to {
      transform: translateX(0%);
    }
}
.scroll-infinity__list--right{
  animation :infinity-scroll-right 40s infinite linear 0.5s both;
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 20s infinite linear 0.5s both;
}
.scroll-infinity__item {
  width: calc(100vw / 10);
}
.scroll-infinity__item>img {
  width: 100%;
}

/*------------------------------------------------------------------------
1.リセット
------------------------------------------------------------------------*/

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, p, blockquote, table, th, td {
	margin:0;
	padding:0;
}
html, body {
	color: var(--text-color);
    background:#fff;
    /*scrollbar-width: thin;
    scrollbar-color: var(--blue-color) #e0e0e0;*/
}
@media(min-width:768px){
	body,
	form input{
		font:62.5%/1.8  "Roboto", "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
		-webkit-text-size-adjust: 100%;
		background: #fff;
		color: #000;
	}
	
}
@media(max-width:767.99px){
	body,
	form input{
		font:62.5%/1.8  "Roboto", "Noto Sans JP", "Helvetica Neue", "Helvetica", "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Arial", "Yu Gothic", "Meiryo", sans-serif;
		-webkit-text-size-adjust: 100%;
		background: #fff;
		color: #333;
	}
}
* html body {
	/*font-size: small;*/
}
*:first-child+html body {
	/*font-size: small;*/
}
img {
	border: 0;
	vertical-align:top;
}
h1, h2, h3, h4, h5, h6 {
	clear: both;
	font-size: 100%;
	font-weight: normal;
}
ul, dl, ol {
	text-indent:0;
}
ul li {
	list-style:none;
}
address, caption, cite, code, dfn, em, strong, th, var {
	font-style: normal;
	font-weight: normal;
}
strong{
	font-weight: bold;
}
sup {
	vertical-align:text-top;
}
sub {
	vertical-align:text-bottom;
}
input, textarea, select {
	font-family:inherit;
	font-size: inherit;
	font-weight:inherit;
}
input, button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
input{
	height: 36px;
}

* html input, * html textarea, * html select {
	font-size: 100%;
}
*:first-child+html+input, *:first-child html+textarea, *:first-child+html select {
	font-size: 100%;
}
table {
	border-collapse:collapse;
	border-spacing:0;
	font-size:inherit;
}
th, td {
	text-align:left;
	vertical-align:top;
}
caption {
	text-align:left;
}
pre, code, kbd, samp, tt {
	font-family: monospace;
}
* html code, * html kbd, * html samp, * html tt {
	font-size: 100%;
	line-height: 100%;
}
*:first-child+html pre, *:first-child html+code, *:first-child html+kbd, *:first-child+html+samp, *:first-child+html tt {
	font-size: 108%;
	line-height: 100%;
}
input, button, textarea, select {
	margin: 0;
	padding: 0;
	background: none;
	border: none;
	border-radius: 0;
	outline: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
}
a:link {
	text-decoration: none;
	color:#000;
}
a:visited {
	text-decoration: none;
	color:#000;
}
a:active {
	text-decoration: none;
}
a:hover {
	opacity: 0.75;
}
a {
	outline : 0;
}
a img{
	border : none;
}
.hide{
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.hidden{
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
}
.red{
	/*color:var(--red-color);*/
}