@charset "utf8";
/*=============================
  - reset.css
	- 汎用css
==============================*/
/*----------------------------------------------------
	リセットCSS
----------------------------------------------------*/
* {
  margin: 0;
  padding: 0;
  text-decoration: none;
  box-sizing: border-box;
}
body {
  min-width: 1340px;
}
a {
  color: #000;
}
a,
p,
span,
h1,
h2,
h3,
h4,
h5,
h6,
li,
dt,
dd,
th,
td {
  line-height: 1.4em;
}
ul,
ol {
  list-style: none;
}
table {
  border-collapse: collapse;
  width: 100%;
}
img {
  max-width: 100%;
  height: auto;
  width: auto;
  border: none;
}
img,
iframe {
  vertical-align: bottom;
}
select,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
textarea,
button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
@media screen and (max-width: 650px) {
  body {
    min-width: initial;
    overflow-x: hidden;
    overflow-y: auto;
  }
}
/*----------------------------------------
  form_base css
----------------------------------------*/
label {
  cursor: pointer;
}
input[type="text"],
input[type="email"],
input[type="tel"] {
  background: #fff;
  border: 1px solid #d1d2d2;
  border-radius: 5px;
  font-size: 16px;
  padding: 7px 10px;
  width: 350px;
}
input[type="number"] {
  background: #fff;
  border: 1px solid #d1d2d2;
  border-radius: 5px;
  font-size: 16px;
  padding: 7px 10px;
  width: 100px;
}
input[type="submit"] {
}
textarea {
  width: 100%;
  border: 1px solid #d1d3d3;
  height: 150px;
  border-radius: 5px;
  resize: none;
}
select {
  background: rgba(255, 255, 255, 0.4);
  width: 100%;
  padding: 0px 30px 0px 20px;
  font-size: 16px;
  border: 1px solid;
  border-radius: 0px;
  height: 48px;
  cursor: pointer;
}
select:active,
select:focus {
  box-shadow: none;
  outline: none;
}

select::-ms-expand {
  display: none;
}
.select-wrap {
  position: relative;
}
.select-wrap:before {
  content: "▼";
  position: absolute;
  right: 10px;
  top: 0;
  display: flex;
  align-items: center;
  height: 100%;
  pointer-events: none;
  font-size: 14px;
}
button {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  border: none;
  font-weight: bold;
  font-size: 18px;
  cursor: pointer;
}
button i {
  font-size: 28px;
}
button.submit {
  background: #5cb9ff;
  color: #fff;
}
@media screen and (max-width: 650px) {
  input[type="text"],
  input[type="email"],
  input[type="tel"] {
    width: 100%;
  }
  input[type="number"] {
    font-size: 16px;
    padding: 7px 10px;
    width: 60px;
  }
  select {
    font-size: 14px;
    height: 50px;
  }
  .select-wrap:before {
    font-size: 12px;
  }
  .main-v .top-form-wrap .form-inner-wrap .submit-wrap,
  .main-v .top-form-wrap .form-inner-wrap .submit {
    width: 100% !important;
    margin-left: 0px !important;
    margin-top: 10px;
  }
  button {
    height: 50px;
    padding: 5px;
  }
}
/*----------------------------------------
  固定汎用CSS
----------------------------------------*/
/* box-shadow */
.b-shadow {
  box-shadow: 0px 0px 3px 2px #d6d7d7;
  -moz-box-shadow: 0px 0px 3px 2px #d6d7d7;
  -webkit-box-shadow: 0px 0px 3px 2px #d6d7d7;
}

/* underline */
.underline { text-decoration: underline; }
/* indent */
.indent {
  margin-left: 1em;
  text-indent: -1em;
}

/* link */
.opa { transition: 0.3s; }
.opa:hover { opacity: 0.7; }
.sp-link { pointer-events: none; }
@media screen and (max-width: 650px) {
  .sp-link {
    pointer-events: auto;
  }
}

/* position */
.relative { position: relative; }

/* dispaly */
.inline { display: inline; }
.inline-block { display: inline-block; }
.block { display: block; }

/* float */
.fl { float: left !important; }
.fr { float: right !important; }
.cf:after { clear: both; }
.cf { overflow: hidden; }

/* vertical-align */
.va-t { vertical-align: top !important; }
.va-m { vertical-align: middle !important; }
.va-b { vertical-align: bottom !important; }
.va-base { vertical-align: baseline !important; }

/* width */
.w30 { width: 30px; }
.w50 { width: 50px; }

.par5 { width: 5%; }
.par10 { width: 10%; }
.par15 { width: 15%; }
.par20 { width: 20%; }
.par25 { width: 25%; }
.par30 { width: 30%; }
.par33 { width: 33%; }
.par35 { width: 35%; }
.par40 { width: 40%; }
.par45 { width: 45%; }
.par50 { width: 50%; }
.par55 { width: 55%; }
.par60 { width: 60%; }
.par65 { width: 65%; }
.par70 { width: 70%; }
.par75 { width: 75%; }
.par80 { width: 80%; }
.par85 { width: 85%; }
.par90 { width: 90%; }
.par95 { width: 95%; }
.par100 { width: 100%; }
@media screen and (max-width: 650px) {
	.sp-w100 { 
		width: 100%;
	}
	.sp-par100 {
		width: 100% !important;
	}
}

/* margin */
.ma { margin: auto; }
.mt5 { margin-top: 5px; }
.mt10 { margin-top: 10px; }
.mt15 { margin-top: 15px; }
.mt20 { margin-top: 20px; }
.mt25 { margin-top: 25px; }
.mt30 { margin-top: 30px; }
.mt35 { margin-top: 35px; }
.mt40 { margin-top: 40px; }
.mt45 { margin-top: 45px; }
.mt50 { margin-top: 50px; }
.mt55 { margin-top: 55px; }
.mt60 { margin-top: 60px; }
.mt65 { margin-top: 65px; }
.mt70 { margin-top: 70px; }
.mt75 { margin-top: 75px; }
.mt80 { margin-top: 80px; }
.mt90 { margin-top: 90px; }
.mt100 { margin-top: 100px; }
.mt-10 { margin-top: -10px; }

.mb5 { margin-bottom: 5px; }
.mb10 { margin-bottom: 10px; }
.mb15 { margin-bottom: 15px; }
.mb20 { margin-bottom: 20px; }
.mb30 { margin-bottom: 30px; }
.mb40 { margin-bottom: 40px; }
.mb50 { margin-bottom: 50px; }
.mb60 { margin-bottom: 60px; }
.mb80 { margin-bottom: 80px; }

.ml5 { margin-left: 5px; }
.ml10 { margin-left: 10px; }
.ml15 { margin-left: 15px; }
.ml20 { margin-left: 20px; }

.mr5 { margin-right: 5px; }
.mr10 { margin-right: 10px; }
.mr15 { margin-right: 15px; }
.mr20 { margin-right: 20px; }
@media screen and (max-width: 650px) {
	.sp-mt0 { margin-top: 0px; }
	.sp-mt10 { margin-top: 10px; }
	.sp-mt15 { margin-top: 15px; }
	.sp-mt20 { margin-top: 20px; }
	.sp-mt30 { margin-top: 30px; }
	.sp-mt35 { margin-top: 35px; }
	.sp-mt40 { margin-top: 40px; }
	.sp-mt50 { margin-top: 50px; }
	.sp-mt60 { margin-top: 60px; }
	.sp-mt70 { margin-top: 70px; }

	.sp-mb0 { margin-bottom: 0px; }
	.sp-mb5 { margin-bottom: 5px; }
	.sp-mb10 { margin-bottom: 10px; }
	.sp-mb15 { margin-bottom: 15px; }
	.sp-mb20 { margin-bottom: 20px; }
	.sp-mb30 { margin-bottom: 30px; }
	.sp-mb40 { margin-bottom: 40px; }
	.sp-mb50 { margin-bottom: 50px; }
	
	.sp-ml0 { margin-left: 0; }
	.sp-ml5 { margin-left: 5px; }
	.sp-ml10 { margin-left: 10px; }
	.sp-ml15 { margin-left: 15px; }
	.sp-ml20 { margin-left: 20px; }

	.sp-mr0 { margin-right: 0; }
	.sp-mr5 { margin-right: 5px; }
	.sp-mr10 { margin-right: 10px; }
	.sp-mr15 { margin-right: 15px; }
	.sp-mr20 { margin-right: 20px; }
}

/* padding */
.p5 { padding: 5px; }
.p10 { padding: 10px; }
.p15 { padding: 15px; }
.p20 { padding: 20px; }
.p25 { padding: 25px; }
.p30 { padding: 30px; }

.pb5 { padding-bottom: 5px; }
.pb60 { padding-bottom: 60px; }
@media screen and (max-width: 650px) {
	.sp-pb0 { padding-bottom: 0; }
	.sp-pb30 { padding-bottom: 30px; }
}

/* font-size*/
.f10 { font-size: 10px; }
.f12 { font-size: 12px; }
.f13 { font-size: 13px; }
.f14 { font-size: 14px; }
.f15 { font-size: 15px; }
.f16 { font-size: 16px; }
.f17 { font-size: 17px; }
.f18 { font-size: 18px; }
.f20 { font-size: 20px; }
.f22 { font-size: 22px; }
.f24 { font-size: 24px; }
.f26 { font-size: 26px; }
.f28 { font-size: 28px; }
.f29 { font-size: 29px; }
.f30 { font-size: 30px; }
.f32 { font-size: 32px; }
.f33 { font-size: 33px; }
.f36 { font-size: 36px; }
.f40 { font-size: 40px; }
.f48 { font-size: 48px; }
.f50 { font-size: 50px; }
.f60 { font-size: 60px; }
@media screen and (max-width: 650px) {
  .sp-f10 { font-size: 10px; }
  .sp-f12 { font-size: 12px; }
  .sp-f14 { font-size: 14px; }
  .sp-f16 { font-size: 16px; }
  .sp-f17 { font-size: 17px; }
  .sp-f18 { font-size: 18px; }
  .sp-f20 { font-size: 20px; }
  .sp-f22 { font-size: 22px; }
  .sp-f24 { font-size: 24px; }
  .sp-f28 { font-size: 28px; }
  .sp-f32 { font-size: 32px; }
}

/* line-height */
.lh10 { line-height: 1; }
.lh12 { line-height: 1.2; }
.lh14 { line-height: 1.4; }
.lh16 { line-height: 1.6; }
.lh18 { line-height: 1.8; }
.lh20 { line-height: 2; }
.lh22 { line-height: 2.2; }
.lh24 { line-height: 2.4; }
.lh26 { line-height: 2.6; }
.lh28 { line-height: 2.8; }
.lh30 { line-height: 3; }
@media screen and (max-width: 650px) {
  .sp-lh10 { line-height: 1; }
  .sp-lh12 { line-height: 1.2; }
  .sp-lh14 { line-height: 1.4; }
  .sp-lh16 { line-height: 1.6; }
  .sp-lh18 { line-height: 1.8; }
  .sp-lh20 { line-height: 2; }
  .sp-lh22 { line-height: 2.2; }
  .sp-lh24 { line-height: 2.4; }
}

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

/* text-align */
.center { text-align: center; }
.left { text-align: left; }
.right { text-align: right; }
@media screen and (max-width: 650px) {
  .sp-center { text-align: center; }
  .sp-left { text-align: left; }
  .sp-right { text-align: right; }
}

/* sp pc 出し分け */
.sp-only,
.sp-only-i {
  display: none !important;
}
.pc-only {
  display: block;
}
.pc-only.flex {
  display: flex;
}
@media screen and (max-width: 650px) {
  .pc-only {
    display: none !important;
  }
  .sp-only {
    display: block !important;
  }
  .sp-only-i {
    display: inline-block !important;
  }
  .sp-only.flex {
    display: flex !important;
  }
}

/* flex-box */
.flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
}
.row { flex-direction: row; }
.row-r { flex-direction: row-reverse; }
.column { flex-direction: column; }
.column-r { flex-direction: column-reverse; }
/*===コンテンツの折返し===*/
.wrap { flex-wrap: wrap; }
.wrap-r { flex-wrap: wrap-reverse; }
.no-wrap { flex-wrap: nowrap; }
/*===コンテンツの水平方向揃え ===*/
.flex-left { justify-content: flex-start; }
.flex-right { justify-content: flex-end; }
.flex-center { justify-content: center; }
.flex-space-b { justify-content: space-between; }
.flex-space-a { justify-content: space-around; }
/*===コンテンツの垂直方向揃え ===*/
.flex-top { align-items: flex-start; }
.flex-middle { align-items: center; }
.flex-bottom { align-items: flex-end; }
/* 順番 */
.no1 { order: 1; }
.no2 { order: 2; }
.no3 { order: 3; }
.no4 { order: 4; }
.no5 { order: 5; }
.no6 { order: 6; }
.no7 { order: 7; }
@media screen and (max-width: 650px) {
  .sp-flex {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
  }
  .sp-row { flex-direction: row; }
  .sp-row-r { flex-direction: row-reverse; }
  .sp-column { flex-direction: column; }
  .sp-column-r { flex-direction: column-reverse; }
  /*===コンテンツの折返し===*/
  .sp-wrap { flex-wrap: wrap; }
  .sp-wrap-r { flex-wrap: wrap-reverse; }
  .sp-no-wrap { flex-wrap: nowrap; }
  /*===コンテンツの水平方向揃え ===*/
  .sp-flex-left { justify-content: flex-start; }
  .sp-flex-right { justify-content: flex-end; }
  .sp-flex-center { justify-content: center; }
  .sp-flex-space-b { justify-content: space-between; }
  .sp-flex-space-a { justify-content: space-around; }
  /*===コンテンツの垂直方向揃え ===*/
  .sp-flex-top { align-items: flex-start; }
  .sp-flex-middle { align-items: center; }
  .sp-flex-bottom { align-items: flex-end; }
  /* 順番 */
  .sp-no1 { order: 1; }
  .sp-no2 { order: 2; }
  .sp-no3 { order: 3; }
  .sp-no4 { order: 4; }
  .sp-no5 { order: 5; }
  .sp-no6 { order: 6; }
  .sp-no7 { order: 7; }
} /*-- sp end --*/

.normal {
	font-weight:normal;
}

.black{
	color:#000;
}