@charset "UTF-8";
/* CSS Document */

:root {
	/* color palette */
	--color-black: #282828;
	--color-primary: #0646a5;
	--color-secondary: #39a8ff;
	--color-accent: #ff601d;
	--color-red: #e60000;
	--color-light-blue: #e5f3ff;
	--color-light-orange: #fff2de;
	--color-line-gray: #cacaca;
}

html,
body {
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}
html {
	font-size: 62.5%;
}
html {
	color: #282828;
	background: #ffffff;
}

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;
}
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,
var,
th,
ins,
del,
samp {
	font-weight: normal;
	font-style: normal;
}
img {
	border: none;
	display: block;
	width: 100%;
	height: auto;
}
a {
	color: #282828;
	text-decoration: none;
	box-sizing: border-box;
}
a:visited {
	text-decoration: none;
	box-sizing: border-box;
}
a:hover {
	text-decoration: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
	width: 100%;
}
th,
td {
	margin: 0;
	padding: 0;
	border: none;
	text-align: left;
	vertical-align: top;
}

.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,
product {
	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: #282828;
	font-family: 'M PLUS Rounded 1c', sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 1.6rem;
	line-height: 1.8;
	-webkit-font-smoothing: antialiased;
	font-feature-settings: 'palt';
}
@media (max-width: 768px) {
	body {
		font-size: 3.7vw;
	}
}

/* ------------
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;
	}
}

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

/*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;
}
