@charset "utf-8";
*,*::before,*::after{box-sizing:border-box}
*{margin:0;padding:0}
html,body{height:100%}
body{line-height:1.5;-webkit-font-smoothing:antialiased}
img,picture,video,canvas,svg{display:block;max-width:100%}
input,button,textarea,select{font:inherit}
p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}
ul,ol{list-style:none}
#root,#__next{isolation:isolate}


/* ==============================================================
 * Webフォント設定
 * ============================================================== */

@font-face {
  font-family: 'DINNextLTPro-Medium';
  src: url("../../common/fonts/2FEEED_0_0.eot");
	src: url("../../common/fonts/2FEEED_0_0.eot?#iefix") format("embedded-opentype"), url("../../common/fonts/2FEEED_0_0.woff2") format("woff2"), url("../../common/fonts/2FEEED_0_0.woff") format("woff"), url("../../common/fonts/2FEEED_0_0.ttf") format("truetype");
}

@font-face {
  font-family: 'DINNextLTPro-MediumCond';
  src: url("../../common/fonts/2FEEED_1_0.eot");
	src: url("../../common/fonts/2FEEED_1_0.eot?#iefix") format("embedded-opentype"), url("../../common/fonts/2FEEED_1_0.woff2") format("woff2"), url("../../common/fonts/2FEEED_1_0.woff") format("woff"), url("../../common/fonts/2FEEED_1_0.ttf") format("truetype");
}

.f-din-cond {
	font-family: 'DINNextLTPro-MediumCond';
}

.f-din {
	font-family: 'DINNextLTPro-Medium';
}


/* ==============================================================
 * 設定
 * ============================================================== */
* {
	position: relative;
}
body {
	font-family: 'Noto Sans JP', Hiragino Kaku Gothic Pro, Meiryo, MS PGothic, arial, sans-serif;
	margin: 0 auto;
	-webkit-text-size-adjust: 100%;
	min-height: 100vh;
}

/*
a[href^="tel:"] {
	pointer-events: none;
}
*/
@media screen and (min-width: 568px) {
/*
a[href^="tel:"] {
	pointer-events: auto;
}
*/
}
@media screen and (min-width: 768px) {
}
@media screen and (min-width: 1024px) {
}
@media screen and (min-width: 1280px) {
}

img {
	max-width: 100%;
	height: auto;
}

a:hover {
	opacity: 0.8;
}

/* ==============================================================
 * 共通
 * ============================================================== */

/* 非表示 */
.is-hidden {
	display: none !important;
}
@media screen and (max-width: 599px) {
	.is-hidden-mobile {
		display: none !important;
	}
}
@media screen and (min-width: 600px) {
	.is-hidden-tablet {
		display: none !important;
	}
}
@media screen and (min-width: 1025px) {
	.is-hidden-desktop {
		display: none !important;
	}
}
@media screen and (min-width: 1280px) {
	.is-hidden-wide {
		display: none !important;
	}
}
/* 表示 block,inline-block,flex,grid,table,inline */
.is-block {
	display: block !important;
}
.is-inline-block {
	display: block !important;
}
.is-flex {
	display: block !important;
}
.is-grid {
	display: block !important;
}
.is-table {
	display: block !important;
}
.is-inline {
	display: block !important;
}
@media screen and (max-width: 599px) {
	.is-block-mobile {
		display: block !important;
	}
	.is-inline-block-mobile {
		display: block !important;
	}
	.is-flex-mobile {
		display: block !important;
	}
	.is-grid-mobile {
		display: block !important;
	}
	.is-table-mobile {
		display: block !important;
	}
	.is-inline-mobile {
		display: block !important;
	}
}
@media screen and (min-width: 600px) {
	.is-block-tablet {
		display: block !important;
	}
	.is-inline-block-tablet {
		display: block !important;
	}
	.is-flex-tablet {
		display: block !important;
	}
	.is-grid-tablet {
		display: block !important;
	}
	.is-table-tablet {
		display: block !important;
	}
	.is-inline-tablet {
		display: block !important;
	}
}
@media screen and (min-width: 1025px) {
	.is-block-desktop {
		display: block !important;
	}
	.is-inline-block-desktop {
		display: block !important;
	}
	.is-flex-desktop {
		display: block !important;
	}
	.is-grid-desktop {
		display: block !important;
	}
	.is-table-desktop {
		display: block !important;
	}
	.is-inline-desktop {
		display: block !important;
	}
}
@media screen and (min-width: 1280px) {
	.is-block-wide {
		display: block !important;
	}
	.is-inline-block-wide {
		display: block !important;
	}
	.is-flex-wide {
		display: block !important;
	}
	.is-grid-wide {
		display: block !important;
	}
	.is-table-wide {
		display: block !important;
	}
	.is-inline-wide {
		display: block !important;
	}
}


/* text-align */
.txt-left {
	text-align: left;
}
.txt-center {
	text-align: center;
}
.txt-right {
	text-align: right;
}

/* float */
.clear:after {
	clear: both;
	content: "";
}
.fl-left {
  float: left;
}
.fl-right {
  float: right;
}

.btn {
  border-width: 1px;
	border-style: solid;
	border-color: transparent;
  border-radius: 8px;
	margin: 0 auto;
	font-size: 10px;
	line-height: 1;
	text-decoration: none;
	display: block;
}
.btn:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	border-right: 1px solid;
	transform: rotate(45deg);
	margin-top: -3px;
	width: 6px;
	height: 6px;
	border-top: 1px solid;
	transition: .5s;
}
.btn:hover:after {
	transform: rotate(765deg);
	width: 10px;
	height: 10px;
	margin-top: -5px;
}

@media screen and (max-width: 599px) {
}
@media screen and (min-width: 600px) {
}
@media screen and (min-width: 1025px) {
	.btn:after {
		right: 12px;
		transform: rotate(45deg);
		margin-top: -5px;
		width: 10px;
		height: 10px;
	}
	.btn:hover:after {
		transform: rotate(765deg);
		width: 12px;
		height: 12px;
		margin-top: -6px;
	}
}
@media screen and (min-width: 1280px) {
}


.bd-red {
  border-color: #CF0707;
}

.bd-white {
  border-color: #fff;
}

.bd-yellow {
  border-color: #BB9604;
}

.bg-black {
  background-color: #000;
}

.bg-white {
  background-color: #fff;
}

.bg-grey {
	background-color: #C8C8C8;
}

.bg-darkgrey {
	background-color: #6b6b6b;
}

.bg-red {
  background-color: #CF0707;
}

.bg-yellow {
  background-color: #BB9604;
}

.txt-black {
  color: #000;
}

.txt-white {
  color: #fff;
}

.txt-red {
  color: #CF0707;
}

.txt-blue {
  color: #1e90ff;
}

/* フリーダイヤル */
.freedial {
	background: url(/common/img/freedial_green.svg) no-repeat left center;
	background-size: 30px 18px;
	padding-left: 35px;
}

/* フリーダイヤル */
.tel_icon {
	background: url(/common/img/icon_tel.svg) no-repeat left center;
	background-size: 20px 20px;
	padding-left: 26px;
}

.mincho {
	font-family: "Noto Serif JP", serif, "Hiragino Mincho ProN", HGS明朝E;
	font-feature-settings: "palt";
}

.gothic {
	font-family: 'Noto Sans JP', Hiragino Kaku Gothic Pro, Meiryo, MS PGothic, arial, sans-serif;
	font-feature-settings: "palt";
}

@media screen and (max-width: 599px) {
}
@media screen and (min-width: 600px) {
}
@media screen and (min-width: 1025px) {
}
@media screen and (min-width: 1280px) {
}