@charset "UTF-8";
/* CSS Document */
:root {
	/* color palette */
	--color-black: #000000; /* 黒 */
	--color-white: #ffffff; /* 白 */

	--color-light-gray: #f3f5f5; /* 薄いグレー */
	--color-light-gray-o: rgba(243, 245, 245, 0.9); /* 薄いグレー 透過*/
	--color-gray: #9ba39b; /* グレー */

	--color-orange: #cf513e; /* オレンジ*/
	--color-orange-o: rgba(207, 81, 62, 0.7); /* オレンジ 透過*/
	--color-navy: #414094; /* 紺 */
	--color-navy-o: rgba(65, 64, 148, 0.7); /* 紺  透過*/
	--color-blue: #2c808f; /* 青 */
	--color-blue-o: rgba(44, 128, 143, 0.7); /* 青  透過*/
	--color-green: #409464; /* 緑 */
	--color-green-o: rgba(64, 148, 100, 0.7); /* 緑  透過*/
	--color-yellow: #d2a100; /* 黄色 */
	--color-yellow-o: rgba(210, 161, 0, 0.7); /* 黄色  透過*/
	--color-charcoal: #444547; /* チャコール */
	--color-charcoal-o: rgba(68, 69, 71, 0.7); /* チャコール  透過*/
	--color-brown: #B06329; /* 茶色 */
	--color-brown-o: rgba(176, 99, 41, 0.7); /* 茶色  透過*/

	/* font-size */
	--fs-sp-08: 2.8vw; /* 0.8remのSP時 */
	--fs-sp-09: 2.9vw; /* 0.9remのSP時 */
	--fs-sp-10: 3vw; /* 1.0remのSP時 */
	--fs-sp-11: 3.1vw; /* 1.1remのSP時 */
	--fs-sp-12: 3.2vw; /* 1.2remのSP時 */
	--fs-sp-13: 3.3vw; /* 1.3remのSP時 */
	--fs-sp-14: 3.4vw; /* 1.4remのSP時 */
	--fs-sp-15: 3.5vw; /* 1.5remのSP時 */
	--fs-sp-16: 3.6vw; /* 1.6remのSP時 */
	--fs-sp-17: 3.7vw; /* 1.7remのSP時 */
	--fs-sp-18: 3.8vw; /* 1.8remのSP時 */
	--fs-sp-19: 3.9vw; /* 1.9remのSP時 */
	--fs-sp-20: 4vw; /* 2.0remのSP時 */
	--fs-sp-21: 4.1vw; /* 2.1remのSP時 */
	--fs-sp-22: 4.2vw; /* 2.2remのSP時 */
	--fs-sp-23: 4.3vw; /* 2.3remのSP時 */
	--fs-sp-24: 4.4vw; /* 2.4remのSP時 */
	--fs-sp-25: 4.5vw; /* 2.5remのSP時 */
	--fs-sp-26: 4.6vw; /* 2.6remのSP時 */
	--fs-sp-27: 4.7vw; /* 2.7remのSP時 */
	--fs-sp-28: 4.8vw; /* 2.8remのSP時 */
	--fs-sp-29: 4.9vw; /* 2.9remのSP時 */
	--fs-sp-30: 5vw; /* 3.0remのSP時 */
	--fs-sp-31: 5.1vw; /* 3.1remのSP時 */
	--fs-sp-32: 5.2vw; /* 3.2remのSP時 */
	--fs-sp-33: 5.3vw; /* 3.3remのSP時 */
	--fs-sp-34: 5.4vw; /* 3.4remのSP時 */
	--fs-sp-35: 5.5vw; /* 3.5remのSP時 */
	--fs-sp-36: 5.6vw; /* 3.6remのSP時 */
	--fs-sp-37: 5.7vw; /* 3.7remのSP時 */
	--fs-sp-40: 6vw; /* 4.0remのSP時 */
	--fs-sp-45: 6.5vw; /* 4.5remのSP時 */
	--fs-sp-50: 7vw; /* 5.0remのSP時 */
	--fs-sp-56: 7.6vw; /* 5.6remのSP時 */
	--fs-sp-60: 8vw; /* 6.0remのSP時 */
	--fs-sp-80: 10vw; /* 8.0remのSP時 */
}

html,
body {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}
html {
	font-size: 62.5%;
}
html {
	color: var(--color-black);
	background: var(--color-light-gray);
}

dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
form,
input,
p,
blockquote,
fieldset,
div,
section {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}
h3,
h4 {
	font-weight: bold;
}
ul li,
ol li {
	list-style: none;
}
table {
	margin: 0;
	padding: 0;
	font-size: 100%;
}
caption {
	text-align: left;
}
table,
pre,
code,
select,
textarea,
kbd,
var,
ins,
del,
samp {
	font-size: 100%;
}
address,
cite,
dfn,
em,
strong,
var,
th,
ins,
del,
samp {
	font-weight: normal;
	font-style: normal;
}
img {
	border: none;
	display: block;
	width: 100%;
}
a,
a:visited {
	color: #1a1a1a;
	text-decoration: none;
	box-sizing: border-box;
}
a:hover {
	text-decoration: none;
}

.is-imghover {
	opacity: 1;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}

@media (min-width: 769px) {
	.is-imghover:hover {
		opacity: 0.7;
		filter: alpha(opacity=70);
		-ms-filter: 'alpha(opacity=70)';
	}
}

hr.separation {
	display: none;
}
fieldset {
	border: none;
}
button {
	cursor: pointer;
}
header,
section,
nav,
aside,
footer,
article {
	display: block;
}
body {
	-webkit-text-size-adjust: 100%;
	-moz-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-o-text-size-adjust: 100%;
	text-size-adjust: 100%;
	color: var(--color-black);
	font-family: 'Hiragino Sans', 'ヒラギノ角ゴシック', 'Hiragino Kaku Gothic ProN', sans-serif;
	font-optical-sizing: auto;
	font-weight: 600;
	font-style: normal;
	font-size: 1.6rem;
	line-height: 1.8;
}
.en {
	font-family: 'Alexandria', sans-serif;
	font-optical-sizing: auto;
	font-weight: 700;
	font-style: normal;
}

@media (max-width: 768px) {
	body {
		font-size: 3.6vw;
	}
}

/* ------------
  common Style
--------------- */
.pc {
	display: block !important;
}
.pc_inline {
	display: inline-block !important;
}
.sp {
	display: none !important;
}
.sp_inline {
	display: none !important;
}
@media (max-width: 768px) {
	.pc {
		display: none !important;
	}
	.pc_inline {
		display: none !important;
	}
	.sp {
		display: block !important;
	}
	.sp_inline {
		display: inline-block !important;
	}
}

/*--- PCで電話リンク無効 ---*/
@media (min-width: 769px) {
	a[href^='tel:'] {
		pointer-events: none;
	}
}

.flex {
	display: flex;
}

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

/*margin*/
.mb0 {
	margin-bottom: 0px !important;
}
.mb5 {
	margin-bottom: 5px !important;
}
.mb10 {
	margin-bottom: 10px !important;
}
.mb15 {
	margin-bottom: 15px !important;
}
.mb20 {
	margin-bottom: 20px !important;
}
.mb25 {
	margin-bottom: 25px !important;
}
.mb30 {
	margin-bottom: 30px !important;
}
.mb40 {
	margin-bottom: 40px !important;
}
.mb45 {
	margin-bottom: 45px !important;
}
.mb50 {
	margin-bottom: 50px !important;
}
.mb60 {
	margin-bottom: 60px !important;
}
.mb70 {
	margin-bottom: 70px !important;
}
.mb80 {
	margin-bottom: 80px !important;
}
.mb90 {
	margin-bottom: 90px !important;
}
.mb100 {
	margin-bottom: 100px !important;
}
.mb-auto {
	margin-bottom: auto !important;
}

.mt5 {
	margin-top: 5px !important;
}
.mt10 {
	margin-top: 10px !important;
}
.mt15 {
	margin-top: 15px !important;
}
.mt20 {
	margin-top: 20px !important;
}
.mt30 {
	margin-top: 30px !important;
}
.mt40 {
	margin-top: 40px !important;
}
.mt45 {
	margin-top: 45px !important;
}
.mt50 {
	margin-top: 50px !important;
}
.mt60 {
	margin-top: 60px !important;
}
.mt70 {
	margin-top: 70px !important;
}
.mt80 {
	margin-top: 80px !important;
}
.mt90 {
	margin-top: 90px !important;
}
.mt100 {
	margin-top: 100px !important;
}
.mt-auto {
	margin-top: auto !important;
}

.mr0 {
	margin-right: 0 !important;
}
.mr5 {
	margin-right: 5px !important;
}
.mr10 {
	margin-right: 10px !important;
}
.mr15 {
	margin-right: 15px !important;
}
.mr20 {
	margin-right: 20px !important;
}
.mr30 {
	margin-right: 30px !important;
}
.mr40 {
	margin-right: 40px !important;
}
.mr50 {
	margin-right: 50px !important;
}
.mr60 {
	margin-right: 60px !important;
}
.mr70 {
	margin-right: 70px !important;
}
.mr80 {
	margin-right: 80px !important;
}
.mr90 {
	margin-right: 90px !important;
}
.mr100 {
	margin-right: 100px !important;
}
.mr-auto {
	margin-right: auto !important;
}

.ml5 {
	margin-left: 5px !important;
}
.ml10 {
	margin-left: 10px !important;
}
.ml15 {
	margin-left: 15px !important;
}
.ml20 {
	margin-left: 20px !important;
}
.ml30 {
	margin-left: 30px !important;
}
.ml40 {
	margin-left: 40px !important;
}
.ml50 {
	margin-left: 50px !important;
}
.ml60 {
	margin-left: 60px !important;
}
.ml70 {
	margin-left: 70px !important;
}
.ml80 {
	margin-left: 80px !important;
}
.ml90 {
	margin-left: 90px !important;
}
.ml100 {
	margin-left: 100px !important;
}
.ml-auto {
	margin-left: auto !important;
}

/*padding*/
.pb0 {
	padding-bottom: 0px !important;
}
.pb5 {
	padding-bottom: 5px !important;
}
.pb10 {
	padding-bottom: 10px !important;
}
.pb15 {
	padding-bottom: 15px !important;
}
.pb20 {
	padding-bottom: 20px !important;
}
.pb30 {
	padding-bottom: 30px !important;
}
.pb40 {
	padding-bottom: 40px !important;
}
.pb45 {
	padding-bottom: 45px !important;
}
.pb50 {
	padding-bottom: 50px !important;
}
.pb60 {
	padding-bottom: 60px !important;
}
.pb70 {
	padding-bottom: 70px !important;
}
.pb80 {
	padding-bottom: 80px !important;
}
.pb90 {
	padding-bottom: 90px !important;
}
.pb100 {
	padding-bottom: 100px !important;
}

.pt5 {
	padding-top: 5px !important;
}
.pt10 {
	padding-top: 10px !important;
}
.pt15 {
	padding-top: 15px !important;
}
.pt20 {
	padding-top: 20px !important;
}
.pt30 {
	padding-top: 30px !important;
}
.pt40 {
	padding-top: 40px !important;
}
.pt45 {
	padding-top: 45px !important;
}
.pt50 {
	padding-top: 50px !important;
}
.pt60 {
	padding-top: 60px !important;
}
.pt70 {
	padding-top: 70px !important;
}
.pt80 {
	padding-top: 80px !important;
}
.pt90 {
	padding-top: 90px !important;
}
.pt100 {
	padding-top: 100px !important;
}

.pr0 {
	padding-right: 0 !important;
}
.pr5 {
	padding-right: 5px !important;
}
.pr10 {
	padding-right: 10px !important;
}
.pr15 {
	padding-right: 15px !important;
}
.pr20 {
	padding-right: 20px !important;
}
.pr30 {
	padding-right: 30px !important;
}
.pr40 {
	padding-right: 40px !important;
}
.pr50 {
	padding-right: 50px !important;
}
.pr60 {
	padding-right: 60px !important;
}
.pr70 {
	padding-right: 70px !important;
}
.pr80 {
	padding-right: 80px !important;
}
.pr90 {
	padding-right: 90px !important;
}
.pr100 {
	padding-right: 100px !important;
}

.pl5 {
	padding-left: 5px !important;
}
.pl10 {
	padding-left: 10px !important;
}
.pl15 {
	padding-left: 15px !important;
}
.pl20 {
	padding-left: 20px !important;
}
.pl30 {
	padding-left: 30px !important;
}
.pl40 {
	padding-left: 40px !important;
}
.pl50 {
	padding-left: 50px !important;
}
.pl60 {
	padding-left: 60px !important;
}
.pl70 {
	padding-left: 70px !important;
}
.pl80 {
	padding-left: 80px !important;
}
.pl90 {
	padding-left: 90px !important;
}
.pl100 {
	padding-left: 100px !important;
}

@media (max-width: 768px) {
	/*margin*/
	.mb0 {
		margin-bottom: 0px !important;
	}
	.mb5 {
		margin-bottom: 1vw !important;
	}
	.mb10 {
		margin-bottom: 2vw !important;
	}
	.mb15 {
		margin-bottom: 3vw !important;
	}
	.mb20 {
		margin-bottom: 4vw !important;
	}
	.mb25 {
		margin-bottom: 5vw !important;
	}
	.mb30 {
		margin-bottom: 6vw !important;
	}
	.mb40 {
		margin-bottom: 8vw !important;
	}
	.mb45 {
		margin-bottom: 9vw !important;
	}
	.mb50 {
		margin-bottom: 10vw !important;
	}
	.mb60 {
		margin-bottom: 12vw !important;
	}
	.mb70 {
		margin-bottom: 14vw !important;
	}
	.mb80 {
		margin-bottom: 16vw !important;
	}
	.mb90 {
		margin-bottom: 18vw !important;
	}
	.mb100 {
		margin-bottom: 20vw !important;
	}

	.mt5 {
		margin-top: 1vw !important;
	}
	.mt10 {
		margin-top: 2vw !important;
	}
	.mt15 {
		margin-top: 3vw !important;
	}
	.mt20 {
		margin-top: 4vw !important;
	}
	.mt30 {
		margin-top: 6vw !important;
	}
	.mt40 {
		margin-top: 8vw !important;
	}
	.mt45 {
		margin-top: 9vw !important;
	}
	.mt50 {
		margin-top: 10vw !important;
	}
	.mt60 {
		margin-top: 12vw !important;
	}
	.mt70 {
		margin-top: 14vw !important;
	}
	.mt80 {
		margin-top: 16vw !important;
	}
	.mt90 {
		margin-top: 18vw !important;
	}
	.mt100 {
		margin-top: 20vw !important;
	}

	.mr0 {
		margin-right: 0 !important;
	}
	.mr5 {
		margin-right: 1vw !important;
	}
	.mr10 {
		margin-right: 2vw !important;
	}
	.mr15 {
		margin-right: 3vw !important;
	}
	.mr20 {
		margin-right: 4vw !important;
	}
	.mr30 {
		margin-right: 6vw !important;
	}
	.mr40 {
		margin-right: 8vw !important;
	}
	.mr50 {
		margin-right: 10vw !important;
	}
	.mr60 {
		margin-right: 12vw !important;
	}
	.mr70 {
		margin-right: 14vw !important;
	}
	.mr80 {
		margin-right: 16vw !important;
	}
	.mr90 {
		margin-right: 18vw !important;
	}
	.mr100 {
		margin-right: 20vw !important;
	}

	.ml5 {
		margin-left: 1vw !important;
	}
	.ml10 {
		margin-left: 2vw !important;
	}
	.ml15 {
		margin-left: 3vw !important;
	}
	.ml20 {
		margin-left: 4vw !important;
	}
	.ml30 {
		margin-left: 6vw !important;
	}
	.ml40 {
		margin-left: 8vw !important;
	}
	.ml50 {
		margin-left: 10vw !important;
	}
	.ml60 {
		margin-left: 12vw !important;
	}
	.ml70 {
		margin-left: 14vw !important;
	}
	.ml80 {
		margin-left: 16vw !important;
	}
	.ml90 {
		margin-left: 18vw !important;
	}
	.ml100 {
		margin-left: 20vw !important;
	}

	/*padding*/
	.pb0 {
		padding-bottom: 0 !important;
	}
	.pb5 {
		padding-bottom: 1vw !important;
	}
	.pb10 {
		padding-bottom: 2vw !important;
	}
	.pb15 {
		padding-bottom: 3vw !important;
	}
	.pb20 {
		padding-bottom: 4vw !important;
	}
	.pb30 {
		padding-bottom: 6vw !important;
	}
	.pb40 {
		padding-bottom: 8vw !important;
	}
	.pb45 {
		padding-bottom: 9vw !important;
	}
	.pb50 {
		padding-bottom: 10vw !important;
	}
	.pb60 {
		padding-bottom: 12vw !important;
	}
	.pb70 {
		padding-bottom: 14vw !important;
	}
	.pb80 {
		padding-bottom: 16vw !important;
	}
	.pb90 {
		padding-bottom: 18vw !important;
	}
	.pb100 {
		padding-bottom: 20vw !important;
	}

	.pt5 {
		padding-top: 1vw !important;
	}
	.pt10 {
		padding-top: 2vw !important;
	}
	.pt15 {
		padding-top: 3vw !important;
	}
	.pt20 {
		padding-top: 4vw !important;
	}
	.pt30 {
		padding-top: 6vw !important;
	}
	.pt40 {
		padding-top: 8vw !important;
	}
	.pt45 {
		padding-top: 9vw !important;
	}
	.pt50 {
		padding-top: 10vw !important;
	}
	.pt60 {
		padding-top: 12vw !important;
	}
	.pt70 {
		padding-top: 12vw !important;
	}
	.pt80 {
		padding-top: 16vw !important;
	}
	.pt90 {
		padding-top: 18vw !important;
	}
	.pt100 {
		padding-top: 20vw !important;
	}

	.pr0 {
		padding-right: 0 !important;
	}
	.pr5 {
		padding-right: 1vw !important;
	}
	.pr10 {
		padding-right: 2vw !important;
	}
	.pr15 {
		padding-right: 3vw !important;
	}
	.pr20 {
		padding-right: 4vw !important;
	}
	.pr30 {
		padding-right: 6vw !important;
	}
	.pr40 {
		padding-right: 8vw !important;
	}
	.pr50 {
		padding-right: 10vw !important;
	}
	.pr60 {
		padding-right: 12vw !important;
	}
	.pr70 {
		padding-right: 14vw !important;
	}
	.pr80 {
		padding-right: 16vw !important;
	}
	.pr90 {
		padding-right: 18vw !important;
	}
	.pr100 {
		padding-right: 20vw !important;
	}

	.pl5 {
		padding-left: 1vw !important;
	}
	.pl10 {
		padding-left: 2vw !important;
	}
	.pl15 {
		padding-left: 3vw !important;
	}
	.pl20 {
		padding-left: 4vw !important;
	}
	.pl30 {
		padding-left: 6vw !important;
	}
	.pl40 {
		padding-left: 7vw !important;
	}
	.pl50 {
		padding-left: 10vw !important;
	}
	.pl60 {
		padding-left: 12vw !important;
	}
	.pl70 {
		padding-left: 14vw !important;
	}
	.pl80 {
		padding-left: 16vw !important;
	}
	.pl90 {
		padding-left: 18vw !important;
	}
	.pl100 {
		padding-left: 20vw !important;
	}
}

/* text-align */
.tac {
	text-align: center !important;
}
.tar {
	text-align: right !important;
}
.tal {
	text-align: left !important;
}
.taj {
	text-align: justify !important;
}

/* float */
.fL {
	float: left;
}
.fR {
	float: right;
}

/* bold */
.bold {
	font-weight: bold;
}
