@charset "UTF-8";
html {
  width: 100%;
  font-size: 100%;
}
body {
  -webkit-text-size-adjust: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
  color: #333;
  font-size: 16px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-weight: 300;
  line-height: 1.8;
  letter-spacing: 0;
}
* {
  max-width: 100%;
  max-height: 999999px;
  margin: 0;
  padding: 0;
  color: #333;
  font-size: 16px;
  font-family: inherit;
  font-weight: 300;
  font-style: normal;
  letter-spacing: inherit;
  line-height: inherit;
  outline: none;
  box-sizing: border-box;
}
*:before, *:after {
  box-sizing: border-box;
}
* * {
  color: inherit;
  font-size: inherit;
}
a {
  color: #333;
  outline: none;
  text-decoration: none;
}
a:active, a:hover {
  text-decoration: underline;
}
a * {
  color: inherit;
}
input {
  border: none;
  vertical-align: bottom;
}
input[type="button"], input[type="reset"], input[type="submit"] {
  cursor: pointer;
  -webkit-appearance: none;
}
input[type="checkbox"], input[type="radio"] {
  margin-right: 5px;
}
input[type="search"] {
  -webkit-appearance: textfield;
}
input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
input[type="number"]::-webkit-inner-spin-button, input[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
input[disabled] {
  cursor: default;
}
button {
  border: none;
  cursor: pointer;
  vertical-align: bottom;
  -webkit-appearance: button;
  background-color: transparent;
}
button[disabled] {
  cursor: default;
}
select, textarea {
  vertical-align: bottom;
}
@media (min-width: 769px) {
  a:hover img, input[type="submit"]:hover, input[type="reset"]:hover, button:hover {
    -webkit-font-smoothing: antialiased;
    text-decoration: none;
    opacity: 0.6;
  }
}
b, strong {
  font-weight: 700;
}
img {
  max-width: 100%;
  height: auto;
  border: 0;
  vertical-align: top;
}
img[src*=".svg"], img[src*=".svgz"] {
  width: 100%;
}
ul, ol {
  list-style-type: none;
  list-style-image: none;
  list-style-position: outside;
}
ul li, ol li {
  list-style: none;
}
audio, article, aside, canvas, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary, progress, video {
  display: block;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
[hidden], template {
  display: none;
}
svg {
  width: auto;
  height: auto;
  vertical-align: bottom;
}
svg:not(:root) {
  overflow: hidden;
}
pre {
  overflow: auto;
}
code, kbd, pre, samp {
  font-family: monospace, monospace;
}
table {
  table-layout: fixed;
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
}
table th, table td {
  text-align: left;
  font-weight: normal;
  vertical-align: top;
}
hr {
  display: block;
  width: 0;
  height: 0;
  border: 0;
}
.load a, .load img, .load input, .load svg, .load *:before, .load *:after {
  transition: opacity 0.7s;
}
.entry:after {
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
  clear: both;
}
.entry > * {
  margin-top: 1.5em;
}
.entry > *:first-child {
  margin-top: 0;
}
.entry ul, .entry ol {
  margin-top: 0.7em;
}
.entry .alignleft, .entry .alignright, .entry .aligncenter {
  margin-bottom: 5px;
}
.entry .alignleft {
  float: left;
  display: inline;
  margin-right: 10px;
  margin-top: 4px;
}
.entry .alignright {
  float: right;
  display: inline;
  margin-left: 10px;
  margin-top: 4px;
}
.entry .aligncenter {
  clear: both;
  display: block;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 769px) {
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  body {
    min-width: inherit;
  }
  a {
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: transparent;
  }
  .pc {
    display: none !important;
  }
}
/*
//margin(px)
$i : 0;
$j : 0;
@while ($i < 4) {
	//marginのクラス名
	$marginClass : "T";
	$direction   : "top";
	@if ($i == 1) {
		$marginClass : "B";
		$direction   : "bottom";
	} @else if ($i == 2) {
		$marginClass : "L";
		$direction   : "left";
	} @else if ($i == 3) {
		$marginClass : "R";
		$direction   : "right";
	}

	//各向きのmarginを作成
	@while ($j <= 100) {
		@if ($j == 0) {
			.ma#{$marginClass}#{$j} {
				margin-#{$direction}: 0 !important;
			}
		} @else {
			.ma#{$marginClass}#{$j} {
				margin-#{$direction}: $j + px;
			}
		}
		$j : $j + 5;
	}

	$i : $i + 1;
	$j : 0;
}


//margin(em)
$i : 0;
$j : 0;
@while ($i < 4) {
	//marginのクラス名
	$marginClass : "T";
	$direction   : "top";
	@if ($i == 1) {
		$marginClass : "B";
		$direction   : "bottom";
	} @else if ($i == 2) {
		$marginClass : "L";
		$direction   : "left";
	} @else if ($i == 3) {
		$marginClass : "R";
		$direction   : "right";
	}

	//各向きのmarginを作成
	@while ($j <= 10) {
		.ma#{$marginClass}#{$j}em {
			margin-#{$direction}: $j + em;
		}
		$j : $j + 1;
	}

	$i : $i + 1;
	$j : 0;
}


//padding(px)
$i : 0;
$j : 0;
@while ($i < 4) {
	//padding
	$paddingClass : "T";
	$direction    : "top";
	@if ($i == 1) {
		$paddingClass : "B";
		$direction    : "bottom";
	} @else if ($i == 2) {
		$paddingClass : "L";
		$direction    : "left";
	} @else if ($i == 3) {
		$paddingClass : "R";
		$direction    : "right";
	}

	//各向きのpaddingを作成
	@while ($j <= 100) {
		@if ($j == 0) {
			.pa#{$paddingClass}#{$j} {
				padding-#{$direction}: 0 !important;
			}
		} @else {
			.pa#{$paddingClass}#{$j} {
				padding-#{$direction}: $j + px;
			}
		}
		$j : $j + 5;
	}

	$i : $i + 1;
	$j : 0;
}


//padding(em)
$i : 0;
$j : 0;
@while ($i < 4) {
	//padding
	$paddingClass : "T";
	$direction    : "top";
	@if ($i == 1) {
		$paddingClass : "B";
		$direction    : "bottom";
	} @else if ($i == 2) {
		$paddingClass : "L";
		$direction    : "left";
	} @else if ($i == 3) {
		$paddingClass : "R";
		$direction    : "right";
	}

	//各向きのpaddingを作成
	@while ($j <= 10) {
		.pa#{$paddingClass}#{$j}em {
			padding-#{$direction}: $j + em;
		}
		$j : $j + 1;
	}

	$i : $i + 1;
	$j : 0;
}
*/
.bold {
  font-weight: bold;
}
.all {
  text-align: left;
}
.alr {
  text-align: right;
}
.alc {
  text-align: center;
}
.clearFix {
  display: block;
}
.clearFix:after {
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
  clear: both;
}
.innerLL {
  width: 1290px;
}
.innerL {
  width: 1230px;
}
.innerM {
  width: 1030px;
}
.innerS {
  width: 830px;
}
[class^="inner"] {
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  padding-left: 15px;
  padding-right: 15px;
}
[class^="inner"] [class^="inner"] {
  padding-left: 0;
  padding-right: 0;
}
.js-fadein {
  position: relative;
  top: 50px;
  opacity: 0;
}
.js-fadein.in {
  top: 0;
  opacity: 1;
  transition: top 0.8s, left 0.8s, right 0.8s, opacity 0.8s;
}
.js-fadein.left-in {
  top: 0;
  left: -100px;
}
.js-fadein.left-in.in {
  left: 0;
}
.js-fadein.right-in {
  top: 0;
  right: -100px;
}
.js-fadein.right-in.in {
  right: 0;
}
#wrapper {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
}
.c2_1 {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
.c2_1 > * {
  width: 48%;
  margin-right: 4%;
}
@media screen and (max-width: 768px) {
  .c2_1 > * {
    width: 100%;
    margin-right: 0;
  }
}
@media (min-width: 769px) {
  .c2_1 > *:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .c2_1 > *:nth-child(n+2) {
    margin-top: 30px;
  }
}
@media (min-width: 769px) {
  .c2_1 > *:nth-child(n+3) {
    margin-top: 50px;
  }
}
.c2_2 {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
.c2_2 > * {
  width: 48%;
  margin-right: 4%;
}
.c2_2 > *:nth-child(2n) {
  margin-right: 0;
}
.c2_2 > *:nth-child(n+3) {
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .c2_2 > *:nth-child(n+3) {
    margin-top: 30px;
  }
}
.c3_1 {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
.c3_1 > * {
  width: calc((100% - 80px) / 3);
  margin-right: 40px;
}
.c3_1 > *:nth-child(3n) {
  margin-right: 0;
}
.c3_1 > *:nth-child(n+4) {
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .c3_1 > * {
    width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .c3_1 > *:nth-child(n+2) {
    margin-top: 30px;
  }
}
.c3_2 {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
.c3_2 > * {
  width: calc((100% - 80px) / 3);
  margin-right: 40px;
}
.c3_2 > *:nth-child(3n) {
  margin-right: 0;
}
.c3_2 > *:nth-child(n+4) {
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  .c3_2 > * {
    width: 48%;
    margin-right: 4%;
  }
  .c3_2 > *:nth-child(2n) {
    margin-right: 0;
  }
  .c3_2 > *:nth-child(n+3) {
    margin-top: 30px;
  }
}
.c4_1 {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
.c4_1 > * {
  width: calc((100% - 120px) / 4);
  margin-right: 40px;
}
@media (min-width: 769px) {
  .c4_1 > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media (min-width: 769px) {
  .c4_1 > *:nth-child(n+5) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 768px) {
  .c4_1 > * {
    width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  .c4_1 > *:nth-child(n+2) {
    margin-top: 30px;
  }
}
.c4_2 {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
.c4_2 > * {
  width: calc((100% - 120px) / 4);
  margin-right: 40px;
}
@media (min-width: 769px) {
  .c4_2 > *:nth-child(4n) {
    margin-right: 0;
  }
}
@media (min-width: 769px) {
  .c4_2 > *:nth-child(n+5) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 768px) {
  .c4_2 > * {
    width: 48%;
    margin-right: 4%;
  }
  .c4_2 > *:nth-child(2n) {
    margin-right: 0;
  }
  .c4_2 > *:nth-child(n+3) {
    margin-top: 30px;
  }
}
.flex {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
.dots > li {
  padding-left: 1em;
  text-indent: -1em;
}
.dots > li:before {
  content: "・";
}
.dots > li:nth-child(n+2) {
  margin-top: 5px;
}
.btn01 {
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  .btn01 {
    margin-top: 30px;
  }
}
.btn01 button, .btn01 a {
  position: relative;
  width: 350px;
  height: 60px;
  margin: 0 auto;
  padding: 5px 60px 5px 20px;
  border: 1px #06407E solid;
  border-radius: 40px;
  color: #06407E;
  font-size: 18px;
  font-weight: 700;
  background-color: #fff;
  text-decoration: none;
  transition: opacity 0.7s;
}
.btn01 button:hover, .btn01 a:hover {
  text-decoration: none;
  opacity: 0.6;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width: 768px) {
  .btn01 button:hover, .btn01 a:hover {
    opacity: 1;
  }
}
.btn01 button:hover img, .btn01 a:hover img {
  opacity: 1;
}
@media screen and (max-width: 768px) {
  .btn01 button, .btn01 a {
    width: 280px;
    height: 50px;
    padding-left: 25px;
    border-radius: 25px;
    font-size: 16px;
  }
}
.btn01 button:before, .btn01 button:after, .btn01 a:before, .btn01 a:after {
  content: "";
  position: absolute;
  right: 10px;
  top: 50%;
  display: block;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  translate: 0 -50%;
}
@media screen and (max-width: 768px) {
  .btn01 button:before, .btn01 button:after, .btn01 a:before, .btn01 a:after {
    right: 15px;
    width: 30px;
    height: 30px;
  }
}
.btn01 button:before, .btn01 a:before {
  background-color: #06407E;
}
.btn01 button:after, .btn01 a:after {
  background: url(../img/icon_arrow_01.svg) no-repeat center / 24px 18px;
  filter: invert(100%) sepia(0%) saturate(0%) hue-rotate(93deg) brightness(103%) contrast(103%);
}
@media screen and (max-width: 768px) {
  .btn01 button:after, .btn01 a:after {
    background-size: 12px 9px;
  }
}
.btn01 button[target="_blank"]:after, .btn01 a[target="_blank"]:after {
  background-image: url(../img/icon_blank_01.svg);
  background-size: 14px 14px;
}
.btn01 a {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.btn02 button, .btn02 a {
  position: relative;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 400px;
  height: 60px;
  margin: 0 auto;
  padding: 15px 15px 15px 30px;
  border-radius: 5px;
  color: #fff;
  font-size: 18px;
  font-weight: 900;
  text-align: center;
  background-color: #FF6500;
  text-decoration: none;
  transition: opacity 0.7s;
}
.btn02 button:hover, .btn02 a:hover {
  text-decoration: none;
  opacity: 0.6;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width: 768px) {
  .btn02 button:hover, .btn02 a:hover {
    opacity: 1;
  }
}
.btn02 button:hover img, .btn02 a:hover img {
  opacity: 1;
}
.btn02 button i, .btn02 a i {
  position: absolute;
  left: 0;
  top: 50%;
  display: block;
  width: 30px;
  height: 60px;
  border-radius: 5px 0 0 5px;
  translate: 0 -50%;
  line-height: 1.7;
  font-weight: bold;
  text-align: center;
  background-color: #C30000;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}
.archivo {
  font-family: "Archivo Black", sans-serif;
}
header {
  width: 100%;
  padding: 20px 50px 0;
  left: 0;
  top: 0;
  background-color: #fff;
  border-bottom: 1px solid #e1e1e1;
  z-index: 10;
}
@media screen and (max-width: 768px) {
  header {
    padding: 15px;
  }
}
header .wrap {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
header .wrap #logo {
  width: 180px;
  z-index: 9999;
}
@media screen and (max-width: 768px) {
  header .wrap #logo {
    width: 150px;
  }
}
header .wrap #navWrap {
  width: calc(100% - 180px);
}
@media screen and (max-width: 768px) {
  header .wrap #navWrap {
    position: fixed;
    width: 100%;
    z-index: 9999;
    top: 0;
    left: 0;
  }
}
header .wrap #navWrap #navTop {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
}
@media screen and (max-width: 768px) {
  header .wrap #navWrap #navTop {
    display: none;
  }
}
header .wrap #navWrap #navTop #grobal {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
header .wrap #navWrap #navTop #grobal li {
  font-weight: bold;
}
header .wrap #navWrap #navTop #grobal li:last-child {
  position: relative;
  margin-left: 8px;
  padding-left: 14px;
}
header .wrap #navWrap #navTop #grobal li:last-child:before {
  content: "/";
  position: absolute;
  left: 0;
  top: 50%;
  color: #d9d9d9;
  transform: translateY(-50%);
}
header .wrap #navWrap #navTop #grobal li a {
  color: #D0D0D0;
  font-weight: bold;
}
header .wrap #navWrap #navTop #loc {
  margin-left: 30px;
}
header .wrap #navWrap #navTop #loc a {
  position: relative;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  color: #07407E;
  font-size: 13px;
  font-weight: bold;
  text-decoration: underline;
}
header .wrap #navWrap #navTop #loc a:before {
  content: url(/assets/img/loc.svg);
  display: inline-block;
  width: 36px;
  height: 25px;
  margin-right: 5px;
}
header .wrap #navWrap #navTop #loc a:hover {
  text-decoration: none;
}
header .wrap #navWrap #navTop #wakitagroup {
  margin-left: 35px;
}
header .wrap #navWrap #navTop #wakitagroup a {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
header .wrap #navWrap #navTop #wakitagroup a img {
  width: auto;
  height: 16px;
}
header .wrap nav {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
}
@media screen and (max-width: 768px) {
  header .wrap nav {
    display: none;
    width: 100%;
    height: 100vh;
    margin: 0;
    padding: 70px 15px 120px;
    transition: all 0.5s;
    overflow-y: auto;
    background-color: #f0f0f0;
    -webkit-overflow-scrolling: touch;
  }
}
header .wrap nav.open {
  display: block;
  visibility: visible;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 999;
}
@media (min-width: 769px) {
  header .wrap nav > ul {
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-items: center;
  }
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul {
    width: 100%;
    border-top: 1px solid #777;
    overflow-y: auto;
  }
}
header .wrap nav > ul > li {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  position: relative;
  height: 60px;
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul > li {
    display: block;
    height: auto;
    border-bottom: 1px solid #777;
  }
  header .wrap nav > ul > li:before, header .wrap nav > ul > li:after {
    content: "";
    position: absolute;
    display: block;
  }
  header .wrap nav > ul > li:before {
    width: 20px;
    height: 20px;
    top: 27px;
    left: 0;
    background-color: #000;
    border-radius: 50%;
    transform: translateY(-50%);
  }
  header .wrap nav > ul > li:after {
    width: 6px;
    height: 6px;
    left: 6px;
    top: 27px;
    border-top: #fff 1px solid;
    border-right: #fff 1px solid;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
  }
}
@media (min-width: 769px) {
  header .wrap nav > ul > li:nth-child(n+2) {
    margin-left: 40px;
  }
}
header .wrap nav > ul > li a {
  position: relative;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  font-weight: 500;
  overflow: hidden;
  transition: color 0.5s;
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul > li a {
    display: block;
    padding: 12px 10px 12px 28px;
  }
}
header .wrap nav > ul > li a:hover, header .wrap nav > ul > li a.current {
  color: #06407E;
}
@media (min-width: 769px) {
  header .wrap nav > ul > li .spToggle {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul > li .spToggle {
    position: absolute;
    display: block;
    width: 100%;
    left: 0;
    top: 0;
    padding: 18px 10px;
    text-align: right;
    color: #777;
    font-size: 18px;
    line-height: 1;
    z-index: 5;
  }
  header .wrap nav > ul > li .spToggle:before {
    display: none;
  }
  header .wrap nav > ul > li .spToggle:after {
    content: "+";
  }
  header .wrap nav > ul > li .spToggle.open:after {
    content: "-";
  }
}
header .wrap nav > ul > li > a {
  font-weight: 500;
}
header .wrap nav > ul > li > a:hover {
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul > li > a {
    font-weight: bold;
  }
}
@media (min-width: 769px) {
  header .wrap nav > ul > li:hover > ul {
    z-index: 2;
    translate: -50% 100%;
    pointer-events: auto;
    transition: translate 0.3s cubic-bezier(0.215, 0.61, 0.355, 1), opacity 0.1s ease-in-out;
    opacity: 1;
  }
}
@media (min-width: 769px) {
  header .wrap nav > ul > li > ul {
    position: absolute;
    min-width: 16rem;
    padding: 20px;
    left: 50%;
    bottom: 0;
    border-radius: 0.8rem;
    background-color: #fff;
    box-shadow: 0 1rem 5rem rgba(19, 22, 22, 0.2);
    text-align: center;
    pointer-events: none;
    opacity: 0;
    translate: -50% calc(100% + 3rem);
    transition: translate 0.2s cubic-bezier(0.55, 0.055, 0.675, 0.19) 0.2s, opacity 0.2s ease-in-out 0.2s;
  }
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul > li > ul {
    display: none;
    margin-bottom: 25px;
    border-top: none;
  }
}
header .wrap nav > ul > li > ul li {
  padding: 10px 0;
  border-bottom: #ccc 1px solid;
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul > li > ul li {
    padding: 0;
  }
}
header .wrap nav > ul > li > ul li:last-child {
  border-bottom: none;
}
header .wrap nav > ul > li > ul li a {
  display: block;
  color: #000;
  font-size: 16px;
  background-color: #fff;
}
header .wrap nav > ul > li > ul li a:hover {
  text-decoration: none;
  color: #06407E;
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul > li > ul li a {
    padding: 10px;
    font-size: 14px;
  }
}
header .wrap nav > ul > li#cBtn {
  height: auto;
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul > li#cBtn {
    margin-top: 20px;
    border-bottom: none;
  }
  header .wrap nav > ul > li#cBtn:before, header .wrap nav > ul > li#cBtn:after {
    content: none;
  }
}
header .wrap nav > ul > li#cBtn a {
  display: block;
  padding: 2px 15px;
  border: #06407E 1px solid;
  background-color: #06407E;
  border-radius: 30px;
  color: #fff;
}
header .wrap nav > ul > li#cBtn a:hover {
  background-color: #fff;
  color: #06407E;
}
@media screen and (max-width: 768px) {
  header .wrap nav > ul > li#cBtn a {
    text-align: center;
    padding-top: 15px;
    padding-bottom: 15px;
  }
}
header .wrap nav #spNavi {
  display: none;
}
@media screen and (max-width: 768px) {
  header .wrap nav #spNavi {
    display: block;
  }
  header .wrap nav #spNavi #link02 {
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
    margin-top: 70px;
    padding-top: 70px;
    border-top: 1px rgba(1, 70, 3, 0.4) solid;
  }
  header .wrap nav #spNavi #link02 > li {
    width: calc((100% - 30px) / 2);
    margin-right: 30px;
  }
  header .wrap nav #spNavi #link02 > li:nth-child(2n) {
    margin-right: 0;
  }
  header .wrap nav #spNavi #link02 > li:nth-child(n+3) {
    margin-top: 30px;
  }
  header .wrap nav #spNavi #link02 > li > a {
    font-size: 18px;
  }
  header .wrap nav #spNavi #btns {
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
    margin-top: 70px;
  }
  header .wrap nav #spNavi #btns > li {
    width: calc((100% - 30px) / 2);
    margin-right: 30px;
  }
  header .wrap nav #spNavi #btns > li:nth-child(2n) {
    margin-right: 0;
  }
  header .wrap nav #spNavi #btns > li a {
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    min-height: 100px;
    padding: 15px;
    font-size: 18px;
    font-weight: 700;
    text-align: center;
    line-height: 1.6666666667;
    background-color: #FFF;
    box-shadow: 0px 3px 6px #00000029;
  }
  header .wrap nav #spNavi .contact {
    position: relative;
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
    flex-flow: column;
    align-items: center;
    justify-content: center;
    margin-top: 75px;
    text-align: center;
  }
  header .wrap nav #spNavi .contact .tel {
    position: relative;
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    font-size: 50px;
    font-family: Arial, Helvetica, "sans-serif";
    font-weight: bold;
  }
  header .wrap nav #spNavi .contact .tel:before {
    content: "";
    display: block;
    width: 21px;
    height: 30px;
    margin-right: 10px;
    background: url(../img/icon_tel_01.svg) no-repeat center / cover;
  }
  header .wrap nav #spNavi .contact p {
    font-size: 14px;
    line-height: 2;
  }
  header .wrap nav #spNavi .contact p + p {
    margin-top: 15px;
  }
  header .wrap nav #spNavi .contact p a {
    font-size: 12px;
    text-decoration: underline;
  }
  header .wrap nav #spNavi .contact p a:hover {
    text-decoration: none;
  }
  header .wrap nav #spNavi .contact .instagram {
    position: absolute;
    right: 0;
    bottom: 0;
    display: block;
    width: 20px;
    height: 20px;
  }
}
@media screen and (max-width: 768px) and (max-width: 1400px) {
  header .wrap nav #spNavi #link02 {
    display: block;
    margin-top: 30px;
    padding-top: 30px;
  }
}
@media screen and (max-width: 768px) and (max-width: 1400px) {
  header .wrap nav #spNavi #link02 > li {
    width: auto;
    margin-right: 0;
  }
  header .wrap nav #spNavi #link02 > li + li {
    margin-top: 10px !important;
  }
}
@media screen and (max-width: 768px) and (max-width: 1400px) {
  header .wrap nav #spNavi #link02 > li > a {
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) and (max-width: 1400px) {
  header .wrap nav #spNavi #btns {
    display: block;
    margin-top: 30px;
  }
}
@media screen and (max-width: 768px) and (max-width: 1400px) {
  header .wrap nav #spNavi #btns > li {
    width: auto;
    margin-right: 0;
  }
  header .wrap nav #spNavi #btns > li + li {
    margin-top: 15px;
  }
}
@media screen and (max-width: 768px) and (max-width: 1400px) {
  header .wrap nav #spNavi #btns > li a {
    min-height: 60px;
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) and (max-width: 1400px) {
  header .wrap nav #spNavi .contact {
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) and (max-width: 1400px) {
  header .wrap nav #spNavi .contact .tel {
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) and (max-width: 1400px) {
  header .wrap nav #spNavi .contact p {
    font-size: 12px;
  }
}
header .wrap nav #global {
  width: 30px;
  margin-left: 20px;
}
@media screen and (max-width: 768px) {
  header .wrap nav #global {
    display: none;
  }
}
header .wrap #cta {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
@media screen and (max-width: 768px) {
  header .wrap #cta {
    display: none;
  }
}
header .wrap #cta #tel {
  padding-left: 30px;
  padding-right: 30px;
  border-left: 1px solid #D9D9D9;
}
header .wrap #cta #tel a {
  letter-spacing: 0;
  font-size: 24px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
}
header .wrap #cta #cBtn a {
  display: block;
  padding: 2px 15px;
  border: #06407E 1px solid;
  background-color: #06407E;
  border-radius: 30px;
  color: #fff;
  font-weight: bold;
}
header .wrap #cta #cBtn a:hover {
  color: #06407E;
  background-color: #fff;
  text-decoration: none;
}
header #menu {
  display: none;
}
@media screen and (max-width: 768px) {
  header #menu {
    position: absolute;
    display: block;
    width: 50px;
    height: 50px;
    right: 10px;
    top: 8px;
    border-radius: 10px;
    background-color: #fff;
    transition: all 0.5s;
    z-index: 9999;
  }
}
header #menu i {
  position: absolute;
  display: block;
  width: 24px;
  height: 2px;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #000;
  transition: all 0.5s;
}
header #menu i:nth-child(1) {
  top: 11px;
  transform-origin: left top;
}
header #menu i:nth-child(2) {
  top: 19px;
}
header #menu i:nth-child(3) {
  top: 27px;
  transform-origin: left bottom;
}
header #menu:after {
  content: "MENU";
  position: absolute;
  display: block;
  bottom: 5px;
  width: 100%;
  color: #000;
  font-size: 10px;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  -webkit-transform: scale(0.7);
  transform: scale(0.7);
}
header #menu.open i:nth-child(2) {
  opacity: 0;
}
header #menu.open i:nth-child(1) {
  left: 8px;
  transform: rotate(45deg);
}
header #menu.open i:nth-child(3) {
  left: 8px;
  transform: rotate(-45deg);
}
footer {
  padding-top: 200px;
  padding-bottom: 50px;
}
@media screen and (max-width: 768px) {
  footer {
    padding-top: 100px;
    padding-bottom: 40px;
  }
}
footer #footerInner01 {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-bottom: 70px;
}
@media screen and (max-width: 768px) {
  footer #footerInner01 {
    display: block;
    width: 100%;
    padding-bottom: 0;
  }
}
footer #footerInner01 > * {
  width: 46.61%;
}
@media screen and (max-width: 768px) {
  footer #footerInner01 > * {
    width: 100%;
  }
}
footer #footerInner01 #fLeft #flogo {
  width: 180px;
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fLeft #flogo {
    margin: auto;
  }
}
footer #footerInner01 #fLeft .flex {
  margin-top: 40px;
  margin-bottom: 40px;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fLeft .flex {
    justify-content: center;
  }
}
footer #footerInner01 #fLeft .flex #ffl {
  width: 190px;
}
@media screen and (max-width: 900px) {
  footer #footerInner01 #fLeft .flex #ffl {
    width: 170px;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fLeft .flex #ffl {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fLeft .flex #ffl #fNavi {
    display: none;
  }
}
footer #footerInner01 #fLeft .flex #ffl #fNavi li:nth-child(n+2) {
  margin-top: 5px;
}
footer #footerInner01 #fLeft .flex #ffl #fNavi li a {
  font-weight: 600;
}
footer #footerInner01 #fLeft .flex #ffl #sns {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 25px;
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fLeft .flex #ffl #sns {
    justify-content: center;
    margin-top: 0;
    margin-bottom: 40px;
  }
}
footer #footerInner01 #fLeft .flex #ffl #sns > li {
  margin-right: 20px;
}
@media screen and (max-width: 900px) {
  footer #footerInner01 #fLeft .flex #ffl #sns > li {
    margin-right: 10px;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fLeft .flex #ffl #sns > li {
    margin-right: 20px;
  }
}
footer #footerInner01 #fLeft .flex #ffl #sns > li:last-child {
  margin-right: 0;
}
footer #footerInner01 #fLeft .flex #ffr {
  width: 214px;
}
@media screen and (max-width: 900px) {
  footer #footerInner01 #fLeft .flex #ffr {
    width: 170px;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fLeft .flex #ffr {
    width: 200px;
  }
}
footer #footerInner01 #fLeft .flex + em {
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fRight {
    margin-top: 30px;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fRight #fMap iframe {
    height: 200px;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fRight address {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fiLeft {
    width: 100%;
    padding-left: 20px;
    padding-right: 20px;
  }
}
footer #footerInner01 #fiLeft #flogo {
  width: 180px;
  filter: brightness(0);
}
footer #footerInner01 #fiLeft em {
  display: block;
  margin: 20px 0;
  font-size: 20px;
  font-weight: bold;
}
footer #footerInner01 #fiLeft #sns {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 20px;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fiLeft #sns {
    justify-content: flex-start;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fiLeft #sns > li {
    margin-right: 20px;
  }
}
footer #footerInner01 #fiLeft .sLink {
  margin-top: 5px;
  font-size: 13px;
}
footer #footerInner01 #fiCenter {
  width: 40.67%;
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fiCenter {
    width: 70%;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
  }
}
footer #footerInner01 #fiRight {
  text-align: right;
}
@media screen and (max-width: 768px) {
  footer #footerInner01 #fiRight {
    display: none;
  }
}
footer #footerInner01 #fiRight #fNavi > li:nth-child(n+2) {
  margin-top: 15px;
}
footer #footerInner01 #fiRight #fNavi > li a {
  font-size: 20px;
  font-weight: bold;
}
footer #footerInner02 {
  position: relative;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding-top: 30px;
  border-top: 1px solid #ccc;
}
@media screen and (max-width: 768px) {
  footer #footerInner02 {
    display: block;
  }
}
footer #footerInner02 #fwakitagroup {
  display: none;
}
@media screen and (max-width: 768px) {
  footer #footerInner02 #fwakitagroup {
    display: block;
    width: 100px;
    margin: auto;
  }
}
@media (min-width: 769px) {
  footer #footerInner02 figure {
    position: absolute;
    left: 0;
    right: 0;
    top: 30px;
    margin: auto;
    width: 50px;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner02 figure {
    width: 40px;
    margin: auto;
  }
}
@media screen and (max-width: 768px) {
  footer #footerInner02 {
    margin-top: 40px;
  }
}
footer #footerInner02 #policylink {
  font-size: 12px;
}
@media screen and (max-width: 768px) {
  footer #footerInner02 #policylink {
    margin-top: 10px;
    text-align: center;
  }
}
footer #footerInner02 #policylink a {
  text-decoration: underline;
}
footer #footerInner02 #policylink a:hover {
  text-decoration: none;
}
footer #footerInner02 #copyright {
  margin-bottom: 5px;
  text-align: right;
  font-size: 10px;
}
@media screen and (max-width: 768px) {
  footer #footerInner02 #copyright {
    width: 100%;
    margin-top: 20px;
    margin-bottom: 0;
    text-align: center;
  }
}
footer #footerInner02 #copyright figure {
  margin-bottom: 15px;
}
footer #footerInner02 #copyright figure img {
  width: 50px;
  height: auto;
}
main {
  /*
	#contact {
		.form {
			width: 700px;
			margin: 0 auto;
			.announce {
				@include flex;
				padding: 25px 30px;
				background-color: #F0F0F0;
				@include mq {
					padding: 15px 20px;
				}
				& > * {
					color: #000;
					font-size: 18px;
					font-weight: bold;
					line-height: 1;
					@include mq {
						font-size: 14px;
					}
				}
				& > p {
					margin-right: auto;
				}
				& > a {
					margin-left: auto;
					@include underline;
				}
			}
			dl {
				margin-top: 40px;
				border-top: 1px #E1E1E1 solid;
				padding-top: 50px;
				dt {
					display: block;
					padding-bottom: 5px;
					font-weight: bold;
					&:not(:first-child) {
						margin-top: 30px;
					}
					&.req {
						&:after {
							content: "*";
							color: #E73C16;
						}
					}
				}
				dd {
					input {
						display: block;
						width: 100%;
						height: 50px;
						padding: 0 20px;
						font-size: 20px;
						border: 1px #C1C1C1 solid;
						@include mq {
							height: 40px;
							padding: 0 10px;
							font-size: 14px;
						}
					}
					.mwform-tel-field {
						@include flex;
						align-items: center;
						font-size: 20px;
						@include mq {
							font-size: 14px;
						}
						input {
							width: 130px;
							margin: 0 15px;
							@include mq {
								width: 90px;
							}
							&:first-child {
								margin-left: 0;
							}
							&:last-child {
								margin-right: 0;
							}
						}
					}
					textarea {
						display: block;
						width: 100%;
						height: 300px;
						padding: 20px;
						border: 1px #C1C1C1 solid;
						@include mq {
							height: 200px;
						}
					}
				}
			}
			.btn {
				margin-top: 50px;
				button {
					display: block;
					width: 100%;
					height: 80px;
					color: #fff;
					font-family: $gothicFont;
					font-size: 18px;
					font-weight: bold;
					text-align: center;
					background-color: #000;
					@include mq {
						height: 50px;
						font-size: 14px;
					}
				}
				a {
					@include flex;
					align-items: center;
					justify-content: center;
					width: 300px;
					height: 50px;
					margin: 0 auto;
					color: #fff;
					font-family: $gothicFont;
					font-size: 16px;
					font-weight: bold;
					background-color: #000;
					@include opacity;
				}
			}
			#finish {
				margin-top: 20px;
				p {
					margin-bottom: 50px;
					font-size: 18px;
					text-align: center;
				}
			}
		}
	}
	*/
}
main .ttl00 {
  font-weight: bold;
}
main .ttl00 i {
  display: block;
  margin-bottom: 10px;
  line-height: 1;
  font-size: 50px;
  font-weight: bold;
  font-family: "Archivo Black", sans-serif;
}
@media screen and (max-width: 768px) {
  main .ttl00 i {
    margin-bottom: 0;
    font-size: 36px;
  }
}
main .ttl01 {
  margin-bottom: 40px;
  font-size: 36px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  main .ttl01 {
    margin-bottom: 25px;
    font-size: 24px;
  }
}
main .ttl01.tac {
  text-align: center;
}
main .ttl01 span {
  color: #06407E;
  font-size: 40px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
}
@media screen and (max-width: 768px) {
  main .ttl01 span {
    font-size: 30px;
  }
}
main .ttl02 {
  margin-bottom: 25px;
  font-size: 24px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  main .ttl02 {
    margin-bottom: 15px;
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  main .sp_col2 {
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
  }
  main .sp_col2 > * {
    width: calc((100% - 15px) / 2);
    margin-right: 15px;
  }
  main .sp_col2 > *:nth-child(2n) {
    margin-right: 0;
  }
  main .sp_col2 > *:nth-child(n+3) {
    margin-top: 15px;
  }
}
main .pager {
  margin-top: 60px;
}
main .pager .page-numbers {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
main .pager .page-numbers > * {
  margin: 0 10px;
}
main .pager .page-numbers > * > * {
  position: relative;
  display: block;
  padding: 10px;
  font-size: 14px;
  line-height: 1;
}
main .pager .page-numbers > * > *:after {
  content: "";
  position: absolute;
  display: block;
  width: 0;
  height: 1px;
  bottom: -1px;
  left: 0;
  background-color: #333;
  transition: all 0.5s;
}
main .pager .page-numbers > * > *.current, main .pager .page-numbers > * > *:hover {
  text-decoration: none;
}
main .pager .page-numbers > * > *.current:after, main .pager .page-numbers > * > *:hover:after {
  width: 100%;
}
main #pageContact01 a {
  display: block;
  width: 100%;
  padding-top: 70px;
  padding-bottom: 70px;
  background-color: #06407E;
  color: #fff;
}
main #pageContact01 a:hover {
  text-decoration: none;
}
@media screen and (max-width: 768px) {
  main #pageContact01 a {
    padding-top: 40px;
    padding-bottom: 30px;
  }
}
main #pageContact01 a .flex {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
@media screen and (max-width: 768px) {
  main #pageContact01 a .flex {
    justify-content: center;
  }
}
@media screen and (max-width: 768px) {
  main #pageContact01 a .flex .chd {
    display: none;
  }
}
main #pageContact01 a .flex .chd em {
  display: block;
  margin-bottom: 10px;
  line-height: 1;
  font-size: 50px;
  font-weight: bold;
  font-family: "Archivo Black", sans-serif;
}
@media screen and (max-width: 768px) {
  main #pageContact01 a .flex .chd em {
    display: inline-block;
    margin-right: 10px;
    font-size: 32px;
  }
}
main #pageContact01 a .flex .ctxt {
  line-height: 1.9;
}
@media screen and (max-width: 768px) {
  main #pageContact01 a .flex .ctxt {
    display: none;
    margin-top: 15px;
    font-size: 14px;
    line-height: 1.6;
  }
}
@media screen and (max-width: 768px) {
  main #pageContact01 a .flex .ctel {
    text-align: center;
  }
}
main #pageContact01 a .flex .ctel em {
  display: block;
}
main #pageContact01 a .flex .ctel .tel {
  line-height: 1.5;
  font-size: 30px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
}
main #pageContact01 a .flex .ctel p {
  font-size: 12px;
}
main #pageContact01 a .cbtn {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
main #pageContact01 a .cbtn:after {
  content: "";
  display: block;
  width: 50px;
  height: 50px;
  margin-left: 5px;
  background: url(/assets/img/arrow.svg) no-repeat center / cover;
}
@media screen and (max-width: 768px) {
  main #pageContact01 a .cbtn {
    margin-top: 20px;
    justify-content: center;
  }
}
#subscribe {
  margin-top: 120px;
  padding: 50px;
  background-color: #F0F0F0;
}
@media screen and (max-width: 768px) {
  #subscribe {
    padding: 40px 20px;
  }
}
@media screen and (max-width: 768px) {
  #subscribe .innerS {
    padding-left: 0;
    padding-right: 0;
  }
}
#subscribe .flex {
  position: relative;
  justify-content: flex-end;
}
#subscribe .flex > figure {
  position: absolute;
  width: 240px;
  bottom: -30px;
  left: 0;
}
@media screen and (max-width: 768px) {
  #subscribe .flex > figure {
    width: 180px;
    bottom: 100%;
    left: 0;
    right: 0;
    margin: auto;
  }
}
#subscribe .flex #regWrap {
  width: 62.5%;
}
@media screen and (max-width: 768px) {
  #subscribe .flex #regWrap {
    width: 100%;
  }
}
#regWrap strong {
  font-size: 20px;
}
@media screen and (max-width: 768px) {
  #regWrap strong {
    font-size: 14px;
    letter-spacing: -0.05em;
  }
}
#regWrap #register {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100%;
  margin-top: 10px;
  padding: 5px 5px 5px 15px;
  background-color: #fff;
  box-shadow: 0px 5px 20px -10px #777777;
  border-radius: 9999px;
}
#regWrap #register input {
  width: calc(100% - 160px);
}
@media screen and (max-width: 768px) {
  #regWrap #register input {
    width: calc(100% - 130px);
  }
}
#regWrap #register button {
  width: 140px;
  height: 40px;
  background-color: #EE491B;
  border-radius: 9999px;
  font-weight: 600;
  color: #fff;
}
@media screen and (max-width: 768px) {
  #regWrap #register button {
    width: 110px;
  }
}
main > #top #sWrap {
  position: relative;
}
main > #top #sWrap #sHd {
  position: absolute;
  left: 100px;
  top: 80px;
}
@media screen and (max-width: 768px) {
  main > #top #sWrap #sHd {
    width: calc(100% - 30px);
    left: 15px;
    top: 30px;
  }
}
main > #top #sWrap #sHd h1 {
  color: #b5b5b5;
  line-height: 1.2;
  font-size: 70px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  main > #top #sWrap #sHd h1 {
    font-size: 32px;
  }
}
main > #top #sWrap #sHd h1 i {
  display: block;
}
main > #top #sWrap #sHd p {
  margin-top: 25px;
  color: #b5b5b5;
  font-size: 40px;
  font-weight: 600;
  line-height: 1.4;
}
@media screen and (max-width: 768px) {
  main > #top #sWrap #sHd p {
    margin-top: 15px;
    font-size: 22px;
  }
}
main > #top #sWrap #point {
  position: absolute;
  right: 80px;
  bottom: 80px;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  main > #top #sWrap #point {
    width: calc(100% - 30px);
    left: 15px;
    bottom: 15px;
  }
}
main > #top #sWrap #point li {
  width: 300px;
  padding: 40px;
  border-radius: 10px;
  color: #b5b5b5;
  margin-right: 30px;
  background-color: rgba(255, 255, 255, 0.1);
}
@media screen and (max-width: 768px) {
  main > #top #sWrap #point li {
    width: 49%;
    padding: 12px;
    margin-right: 2%;
    border-radius: 5px;
  }
}
main > #top #sWrap #point li:last-child {
  margin-right: 0;
}
main > #top #sWrap #point li em {
  display: block;
  margin-bottom: 30px;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  main > #top #sWrap #point li em {
    margin-bottom: 20px;
    font-size: 14px;
  }
}
main > #top #sWrap #point li big {
  text-align: right;
}
main > #top #sWrap #point li big i {
  display: block;
  font-size: 80px;
  font-family: Arial, Helvetica, "sans-serif";
  font-weight: bold;
  text-align: right;
  line-height: 1;
}
@media screen and (max-width: 768px) {
  main > #top #sWrap #point li big i {
    font-size: 40px;
  }
}
main > #top #sWrap #point li big span {
  display: block;
  font-size: 16px;
}
@media screen and (max-width: 768px) {
  main > #top #sWrap #point li big span {
    font-size: 12px;
  }
}
main > #top #sWrap #point li p {
  margin-top: 50px;
  font-size: 14px;
  letter-spacing: -0.05em;
}
@media screen and (max-width: 768px) {
  main > #top #sWrap #point li p {
    margin-top: 15px;
    font-size: 11px;
  }
}
main > #top #slider {
  width: 100%;
  min-height: 800px;
  background-color: #000;
  display: block;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
main > #top #slider:after {
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
  clear: both;
}
@media screen and (max-width: 768px) {
  main > #top #slider {
    width: 100%;
    min-height: 420px;
    order: 1;
  }
}
main > #top #slider article {
  display: grid;
  float: left;
  width: 100%;
  text-align: center;
}
main > #top #slider article img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
main > #top #slider > article:nth-child(n+2) {
  display: none;
}
main > #top #slider > article img {
  width: 100%;
  max-width: none;
}
main > #top #slider .pht {
  float: left;
  width: 100%;
  text-align: center;
}
main > #top #slider .pht img {
  width: 100%;
  max-width: none;
}
main > #top #slider > .pht:nth-child(n+2) {
  display: none;
}
main > #top #slider .slick-list {
  overflow: hidden;
}
main > #top #slider .slick-track {
  max-width: none;
  display: block;
}
main > #top #slider .slick-track:after {
  content: "";
  display: block;
  height: 0;
  font-size: 0;
  line-height: 0;
  visibility: hidden;
  clear: both;
}
main > #top #slider .slick-dots {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  margin-top: 10px;
  text-align: center;
}
main > #top #slider .slick-dots li button {
  display: block;
  width: 5px;
  height: 5px;
  margin: 0 5px;
  padding: 0;
  border: none;
  border-radius: 50%;
  text-indent: -9999px;
  background-color: #777;
  transition: all 0.5s;
}
main > #top #slider .slick-dots li button:hover {
  background-color: #999;
}
main > #top #slider .slick-dots li.slick-active button {
  background-color: #777;
}
main > #top #slider .slick-arrow {
  position: absolute;
  z-index: 100;
  display: block;
  width: 20px;
  height: 20px;
  padding: 0;
  border: none;
  text-indent: -9999px;
  transform: translateY(-50%);
}
main > #top #slider .slick-arrow.slick-prev {
  left: 10px;
}
main > #top #slider .slick-arrow.slick-next {
  right: 10px;
  transform: translateY(-50%) rotate(180deg);
}
main > #top #slider .slick-dots {
  position: absolute;
  bottom: 0;
  left: 40px;
  right: 0;
  margin: auto;
  z-index: 1000;
}
@media screen and (max-width: 768px) {
  main > #top #slider .slick-dots {
    position: relative;
    justify-content: center;
    margin-top: 10px;
    left: 0;
  }
}
main > #top #search {
  padding: 40px 0;
  background-color: #06407E;
}
@media screen and (max-width: 768px) {
  main > #top #search {
    padding: 20px 15px;
  }
}
main > #top #search form {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  background-color: #fff;
  padding: 20px 40px;
  border-radius: 10px;
}
@media screen and (max-width: 768px) {
  main > #top #search form {
    padding: 20px;
    border-radius: 5px;
  }
}
main > #top #search form .ttl01 {
  margin-bottom: 0;
  font-size: 30px;
}
@media screen and (max-width: 768px) {
  main > #top #search form .ttl01 {
    display: none;
    font-size: 20px;
  }
}
main > #top #search form ul {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 67.96%;
}
@media screen and (max-width: 768px) {
  main > #top #search form ul {
    width: 100%;
  }
}
main > #top #search form ul li {
  width: 31.42%;
  margin-right: 2.85%;
}
main > #top #search form ul li:nth-child(3n) {
  margin-right: 0;
}
main > #top #search form ul li select {
  width: 100%;
  height: 35px;
  padding-left: 5px;
  border-color: #e0e0e0;
}
@media screen and (max-width: 768px) {
  main > #top #search form ul li select {
    font-size: 13px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #search form #ts {
    width: 100%;
  }
}
main > #top #search form #ts button {
  width: 150px;
  color: #fff;
  background-color: #004EA2;
  font-size: 20px;
  font-weight: bold;
  border-radius: 5px;
}
@media screen and (max-width: 1000px) {
  main > #top #search form #ts button {
    width: 100px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #search form #ts button {
    display: block;
    width: 100%;
    margin-top: 10px;
  }
}
main > #top #order {
  padding-top: 100px;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  main > #top #order {
    padding-top: 50px;
  }
}
main > #top #order .ttl00 {
  margin-bottom: 50px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  main > #top #order .ttl00 {
    margin-bottom: 25px;
  }
}
main > #top #order ol {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
main > #top #order ol li {
  width: 22.03%;
  margin-right: 3.38%;
}
@media screen and (max-width: 768px) {
  main > #top #order ol li {
    width: 48%;
    margin-right: 4%;
  }
  main > #top #order ol li:nth-child(2n) {
    margin-right: 0;
  }
  main > #top #order ol li:nth-child(n+3) {
    margin-top: 25px;
  }
}
main > #top #order ol li:last-child {
  margin-right: 0;
}
main > #top #order ol li:last-child figure:after {
  content: none;
}
main > #top #order ol li figure {
  position: relative;
}
main > #top #order ol li figure:after {
  content: "";
  position: absolute;
  display: block;
  right: 0;
  top: 50%;
  width: 12px;
  height: 12px;
  border-right: 2px #777 solid;
  border-bottom: 2px #777 solid;
  rotate: -135deg;
  transform: matrix(0, 1, -1, 0, 0, 0);
}
@media screen and (max-width: 768px) {
  main > #top #order ol li figure:after {
    width: 10px;
    height: 10px;
  }
}
main > #top #order ol li figure img {
  width: 80px;
  height: 80px;
  object-fit: cover;
}
@media screen and (max-width: 768px) {
  main > #top #order ol li figure img {
    width: 50px;
    height: 50px;
  }
}
main > #top #order ol li em {
  display: block;
  margin-top: 20px;
  margin-bottom: 10px;
  font-size: 22px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  main > #top #order ol li em {
    font-size: 18px;
    line-height: 1.4;
  }
}
main > #top #order ol li p {
  color: #545454;
  line-height: 1.6;
  font-weight: 300;
}
@media screen and (max-width: 768px) {
  main > #top #order ol li p {
    font-size: 12px;
    line-height: 1.6;
  }
}
main > #top #category .ttl00 {
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  main > #top #category .ttl00 {
    margin-bottom: 25px;
  }
}
main > #top #category #catList {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
main > #top #category #catList > li {
  width: 18.64%;
  margin-right: 1.69%;
  text-align: center;
}
@media screen and (max-width: 768px) {
  main > #top #category #catList > li {
    width: 48%;
    margin-right: 4%;
  }
}
@media (min-width: 757px) {
  main > #top #category #catList > li:nth-child(5n) {
    margin-right: 0;
  }
}
@media (min-width: 757px) {
  main > #top #category #catList > li:nth-child(n+6) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #category #catList > li:nth-child(n+3) {
    margin-top: 10px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #category #catList > li:nth-child(2n) {
    margin-right: 0;
  }
}
main > #top #category #catList > li a {
  display: block;
}
main > #top #category #catList > li a .catbg-icon figure {
  position: relative;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  height: 100%;
  z-index: 2;
}
main > #top #category #catList > li a .catbg-icon figure img {
  width: auto;
  height: 100px;
}
@media screen and (max-width: 768px) {
  main > #top #category #catList > li a .catbg-icon figure img {
    height: 80px;
  }
}
main > #top #category #catList > li a h2 {
  margin-top: 15px;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  main > #top #category #catList > li a h2 {
    margin-top: 0;
    font-size: 16px;
    line-height: 1.4;
  }
}
main > #top #maker #makerList {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  main > #top #maker #makerList {
    margin-top: 25px;
  }
}
main > #top #maker #makerList > li {
  width: 18.64%;
  margin-right: 1.69%;
  text-align: center;
}
@media screen and (max-width: 768px) {
  main > #top #maker #makerList > li {
    width: 32%;
    margin-right: 2%;
  }
}
@media (min-width: 757px) {
  main > #top #maker #makerList > li:nth-child(5n) {
    margin-right: 0;
  }
}
@media (min-width: 757px) {
  main > #top #maker #makerList > li:nth-child(n+6) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #maker #makerList > li:nth-child(n+4) {
    margin-top: 10px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #maker #makerList > li:nth-child(3n) {
    margin-right: 0;
  }
}
main > #top #maker #makerList > li a {
  display: block;
  padding: 20px;
  background-color: #F7F7F7;
  font-size: 18px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  main > #top #maker #makerList > li a {
    padding: 12px;
    font-size: 15px;
  }
}
main > #top #maker #makerList > li a:hover {
  text-decoration: none;
  background-color: #e0e0e0;
}
main > #top #company {
  background: url(/assets/img/companyPht01.jpg) center center no-repeat;
  background-size: cover;
  color: #fff;
}
main > #top #company .ttl00 {
  margin-bottom: 30px;
  text-align: center;
}
main > #top #company p {
  line-height: 2.5;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  main > #top #company p {
    font-size: 14px;
    line-height: 1.7;
  }
}
main > #top #company .btn01 a {
  color: #fff;
  border-color: #fff;
  background-color: transparent;
}
main > #top #company .btn01 a:before {
  background-color: #fff;
}
main > #top #company .btn01 a:after {
  filter: none;
}
main > #top #attention {
  padding-top: 50px;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  main > #top #attention {
    padding-top: 20px;
  }
}
main > #top #attention #attentionWrap {
  padding: 50px;
  border: 1px solid #CCCCCC;
  border-radius: 10px;
}
@media screen and (max-width: 768px) {
  main > #top #attention #attentionWrap {
    padding: 20px;
  }
}
main > #top #attention #attentionWrap .ttl00 {
  text-align: center;
  color: #707070;
}
@media screen and (max-width: 768px) {
  main > #top #attention #attentionWrap .ttl00 {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #attention #attentionWrap p {
    font-size: 14px;
    line-height: 1.6;
  }
}
main > #top #attention #attentionWrap #imp {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-top: 30px;
  padding-top: 30px;
  color: #E60000;
  border-top: 1px solid #e1e1e1;
}
@media screen and (max-width: 768px) {
  main > #top #attention #attentionWrap #imp {
    margin-top: 20px;
    padding-top: 15px;
  }
}
main > #top #attention #attentionWrap #imp em {
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  main > #top #attention #attentionWrap #imp em {
    font-size: 18px;
  }
}
main > #top #attention #attentionWrap #imp .btn a {
  display: block;
  width: 200px;
  padding: 5px 10px;
  text-align: center;
  color: #E60000;
  border-radius: 9999px;
  border: 1px solid #E60000;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  main > #top #attention #attentionWrap #imp .btn a {
    width: 100%;
    margin-top: 15px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #attention #attentionWrap #imp #impR {
    width: 100%;
  }
}
main > #top #auction .flex {
  align-items: center;
  justify-content: center;
  background-color: #F0F0F0;
}
@media screen and (max-width: 1000px) {
  main > #top #auction .flex {
    background-color: transparent;
  }
}
main > #top #auction .flex > * {
  width: 50%;
}
@media screen and (max-width: 1000px) {
  main > #top #auction .flex > * {
    width: 70%;
  }
}
@media screen and (max-width: 768px) {
  main > #top #auction .flex > * {
    width: 100%;
  }
}
main > #top #auction .flex #bnText {
  padding: 50px;
  background-color: #F0F0F0;
}
@media screen and (max-width: 1280px) {
  main > #top #auction .flex #bnText {
    padding: 40px;
  }
}
@media screen and (max-width: 1100px) {
  main > #top #auction .flex #bnText {
    padding: 30px;
  }
}
@media (min-width: 757px) {
  main > #top #auction .flex #bnText {
    line-height: 2;
  }
}
@media screen and (max-width: 768px) {
  main > #top #auction .flex #bnText {
    padding: 20px;
    font-size: 14px;
  }
}
main > #top #auction .flex #bnText .target {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-end;
  margin-top: 30px;
  text-align: right;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  main > #top #auction .flex #bnText .target {
    margin-top: 15px;
    font-size: 15px;
  }
}
main > #top #auction .flex #bnText .target:after {
  content: url(/assets/img/target.svg);
  width: 50px;
  height: 50px;
  margin-left: 10px;
}
main > #top #service {
  padding-top: 0;
}
main > #top #service h1 {
  margin-bottom: 50px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  main > #top #service h1 {
    margin-bottom: 30px;
  }
}
main > #top #service #serviceList {
  counter-reset: serviceList;
  border-bottom: 1px solid #ccc;
}
main > #top #service #serviceList li {
  counter-increment: serviceList;
  border-top: 1px solid #ccc;
}
main > #top #service #serviceList li a {
  display: block;
  padding: 50px 0;
}
@media screen and (max-width: 768px) {
  main > #top #service #serviceList li a {
    padding: 30px 0 80px;
  }
}
main > #top #service #serviceList li a:hover {
  text-decoration: none;
  background-color: #fafafa;
}
main > #top #service #serviceList li a .flex {
  position: relative;
  width: 1210px;
  margin: auto;
  padding-left: 15px;
  padding-right: 15px;
}
main > #top #service #serviceList li a .flex .sTtl {
  width: 30%;
}
@media screen and (max-width: 768px) {
  main > #top #service #serviceList li a .flex .sTtl {
    width: 100%;
  }
}
main > #top #service #serviceList li a .flex .sTtl h2 {
  position: relative;
  font-size: 46px;
  font-weight: 900;
  line-height: 1.3;
  padding-top: 35px;
}
@media screen and (max-width: 768px) {
  main > #top #service #serviceList li a .flex .sTtl h2 {
    padding-top: 0;
    padding-left: 40px;
    font-size: 28px;
  }
}
main > #top #service #serviceList li a .flex .sTtl h2:before {
  content: counter(serviceList,decimal-leading-zero);
  position: absolute;
  display: inline-block;
  font-family: "Archivo Black", sans-serif;
  font-size: 30px;
  line-height: 1;
  color: #06407E;
  left: 0;
  top: 0;
}
@media screen and (max-width: 768px) {
  main > #top #service #serviceList li a .flex .sTtl h2:before {
    font-size: 24px;
    height: 40px;
    left: 0;
    top: 6px;
  }
}
main > #top #service #serviceList li a .flex .sTtl .sBtn {
  position: relative;
  width: 140px;
  padding: 5px;
  border: 1px solid #06407E;
  background-color: #06407E;
  border-radius: 9999px;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
@media (min-width: 769px) {
  main > #top #service #serviceList li a .flex .sTtl .sBtn {
    margin-top: 20px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #service #serviceList li a .flex .sTtl .sBtn {
    position: absolute;
    bottom: -50px;
    right: 0;
    left: 0;
    margin: auto;
    font-size: 14px;
  }
}
main > #top #service #serviceList li a .flex .sCnt {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 70%;
}
@media screen and (max-width: 768px) {
  main > #top #service #serviceList li a .flex .sCnt {
    width: 100%;
  }
}
main > #top #service #serviceList li a .flex .sCnt figure {
  width: 300px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  main > #top #service #serviceList li a .flex .sCnt figure {
    margin-top: 20px;
    margin-left: auto;
    margin-right: auto;
  }
}
main > #top #service #serviceList li a .flex .sCnt p {
  width: calc(100% - 350px);
}
@media screen and (max-width: 768px) {
  main > #top #service #serviceList li a .flex .sCnt p {
    width: 100%;
    margin-top: 15px;
    font-size: 13px;
    line-height: 1.5;
  }
}
main > #top #reason #reasonList {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
main > #top #reason #reasonList > li {
  position: relative;
  width: 24.36%;
  margin-right: 0.84%;
}
@media screen and (max-width: 768px) {
  main > #top #reason #reasonList > li {
    width: 49%;
    margin-right: 2%;
  }
}
@media screen and (max-width: 768px) {
  main > #top #reason #reasonList > li:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  main > #top #reason #reasonList > li:nth-child(n+3) {
    margin-top: 10px;
  }
}
main > #top #reason #reasonList > li:nth-child(4n) {
  margin-right: 0;
}
main > #top #reason #reasonList > li h2 {
  position: absolute;
  left: 15px;
  bottom: 15px;
  color: #fff;
  line-height: 1.4;
  font-size: 18px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  main > #top #reason #reasonList > li h2 {
    left: 10px;
    bottom: 10px;
    font-size: 15px;
    width: calc(100% - 20px);
  }
}
main > #top #reason .bgBox {
  margin-top: 60px;
}
main > #top #reason .bgBox p {
  line-height: 2.2;
}
main > #top #reason .bgBox p em {
  margin-right: 3px;
  padding: 2px 4px;
  color: #fff;
  border-radius: 3px;
  font-weight: bold;
}
main > #top #reason .bgBox p em#sc {
  background-color: #F53A25;
}
main > #top #reason .bgBox p em#ot {
  background-color: #0BD11A;
}
main > #top #reason .bgBox .btn01 a {
  margin-left: auto;
  margin-right: inherit;
}
main > #top #bn {
  padding-top: 0;
}
main > #top #bn ul > li a {
  display: block;
}
main > #top #news {
  padding-top: 80px;
}
@media screen and (max-width: 768px) {
  main > #top #news {
    padding-top: 60px;
  }
}
main > #top #news .flex {
  justify-content: space-between;
}
main > #top #news .flex .head {
  display: block;
  align-items: flex-start;
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  main > #top #news .flex .head {
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    margin-bottom: 30px;
    justify-content: space-between;
  }
}
@media screen and (max-width: 768px) {
  main > #top #news .flex .head .ttl01 {
    width: calc(100% - 200px);
  }
}
main > #top #news .flex .head .btn01 {
  width: 200px;
  margin-top: 50px;
}
@media screen and (max-width: 768px) {
  main > #top #news .flex .head .btn01 {
    margin-top: 0;
  }
}
main > #top #news .flex .archive {
  width: 77.11%;
  display: block;
  border-top: 1px solid #e1e1e1;
}
@media screen and (max-width: 768px) {
  main > #top #news .flex .archive {
    width: 100%;
  }
}
main > #top #news .flex .archive article {
  border-bottom: 1px solid #e1e1e1;
}
main > #top #news .flex .archive article a {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 10px 0;
}
@media screen and (max-width: 768px) {
  main > #top #news .flex .archive article a {
    padding: 8px 0;
  }
}
main > #top #news .flex .archive article a .ct {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 200px;
}
main > #top #news .flex .archive article a .ct time {
  margin-right: 10px;
  color: #707070;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  main > #top #news .flex .archive article a .ct time {
    font-size: 12px;
  }
}
main > #top #news .flex .archive article a .ct time + span {
  display: block;
  min-width: 110px;
  padding: 2px;
  text-align: center;
  background-color: #EDF1F3;
  color: #333;
  line-height: 1;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  main > #top #news .flex .archive article a .ct time + span {
    font-size: 12px;
  }
}
main > #top #news .flex .archive article a .ct ul > li:nth-child(n+2) {
  margin-left: 10px;
}
main > #top #news .flex .archive article a .ct ul > li > a {
  display: block;
  min-width: 110px;
  padding: 2px;
  text-align: center;
  background-color: #EDF1F3;
  color: #333;
  line-height: 1;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  main > #top #news .flex .archive article a .ct ul > li > a {
    font-size: 12px;
  }
}
main > #top #news .flex .archive article a h2 {
  width: calc(100% - 220px);
}
@media screen and (max-width: 768px) {
  main > #top #news .flex .archive article a h2 {
    width: 100%;
    margin-top: 5px;
    font-size: 16px;
  }
}
main > #top #news .flex .archive h2 + article {
  border-top: 1px solid #DEDEDE;
}
main > #top #recruit {
  position: relative;
  width: 100%;
  padding: 0;
  margin-top: 100px;
}
main > #top #recruit figure {
  width: 100%;
}
main > #top #recruit .innerL #recruitText {
  position: absolute;
  width: 380px;
  padding: 40px;
  right: 80px;
  top: 50%;
  background-color: #fff;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  main > #top #recruit .innerL #recruitText {
    position: static;
    width: 350px;
    margin: auto;
    transform: translateY(0);
  }
}
main > #top #recruit .innerL #recruitText h2 {
  margin-top: 30px;
  line-height: 1.5;
  font-size: 24px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  main > #top #recruit .innerL #recruitText h2 {
    font-size: 20px;
  }
}
main > #top #stock .ttl00 {
  margin-bottom: 50px;
}
main > #top #stock #stock_list {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
main > #top #stock #stock_list > li {
  position: relative;
  width: 29.66%;
  margin-right: 2.54%;
  border-bottom: 1px solid #D9D9D9;
}
@media screen and (max-width: 768px) {
  main > #top #stock #stock_list > li {
    width: 48%;
    margin-right: 4%;
  }
}
main > #top #stock #stock_list > li:after {
  content: "";
  position: absolute;
  display: block;
  width: 1px;
  height: 100%;
  top: 0;
  right: -15px;
  background-color: #D9D9D9;
}
@media screen and (max-width: 768px) {
  main > #top #stock #stock_list > li:after {
    right: -10px;
  }
}
@media screen and (max-width: 768px) {
  main > #top #stock #stock_list > li:nth-child(2n) {
    margin-right: 0;
  }
}
@media (min-width: 769px) {
  main > #top #stock #stock_list > li:nth-child(3n):after {
    content: none;
  }
}
main > #top #stock #stock_list > li a {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 30px 20px;
}
@media screen and (max-width: 768px) {
  main > #top #stock #stock_list > li a {
    padding: 10px;
  }
}
main > #top #stock #stock_list > li a figure {
  width: 51.42%;
  height: 180px;
  overflow: hidden;
}
@media screen and (max-width: 768px) {
  main > #top #stock #stock_list > li a figure {
    width: 100%;
    height: 120px;
  }
}
main > #top #stock #stock_list > li a figure img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
main > #top #stock #stock_list > li a .info {
  width: 42.85%;
  font-size: 13px;
  line-height: 1.5;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  flex-flow: column;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  main > #top #stock #stock_list > li a .info {
    width: 100%;
    margin-top: 5px;
    font-size: 11px;
  }
}
main > #top #stock #stock_list > li a .info .dbtn {
  margin-top: 10px;
  padding: 5px;
  text-align: center;
  color: #fff;
  background-color: #004EA2;
  border-radius: 9999px;
}
@media screen and (max-width: 768px) {
  main > #top #stock #stock_list > li a .info .dbtn {
    margin-top: 5px;
  }
}
@property --reveal-angle {
  syntax: "<angle>";
  inherits: false;
  initial-value: 0deg;
}
.catbg-icon {
  position: relative;
  width: 220px;
  height: 220px;
  cursor: pointer;
}
/* 通常時のグレー */
.catbg-icon::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #eeeeee;
  mask-image: url("/assets/img/catbg.svg");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-image: url("/assets/img/catbg.svg");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
}
/* hover時に上から時計回りで出る青 */
.catbg-icon::after {
  content: "";
  position: absolute;
  inset: 0;
  --reveal-angle: 0deg;
  background: conic-gradient(from 0deg, #06407e 0deg, #06407e var(--reveal-angle), transparent var(--reveal-angle), transparent 360deg);
  mask-image: url("/assets/img/catbg.svg");
  mask-repeat: no-repeat;
  mask-position: center;
  mask-size: contain;
  -webkit-mask-image: url("/assets/img/catbg.svg");
  -webkit-mask-repeat: no-repeat;
  -webkit-mask-position: center;
  -webkit-mask-size: contain;
  transition: --reveal-angle 0.8s ease;
}
.catbg-icon:hover::after {
  --reveal-angle: 360deg;
}
main #pTtl {
  margin-bottom: 100px;
  padding: 40px 0;
  background-color: #fff;
  border-bottom: 1px solid #ccc;
}
@media screen and (max-width: 768px) {
  main #pTtl {
    margin-bottom: 40px;
    padding: 20px 0;
  }
}
main #pTtl h1 {
  font-size: 40px;
  font-weight: 900;
  line-height: 1.6;
}
@media screen and (max-width: 768px) {
  main #pTtl h1 {
    font-size: 28px;
  }
}
main #pTtl h1 i {
  display: block;
  font-size: 16px;
  font-family: "Archivo Black", sans-serif;
}
@media screen and (max-width: 768px) {
  main #pTtl h1 i {
    font-size: 13px;
  }
}
main section {
  padding-bottom: 120px;
}
@media screen and (max-width: 768px) {
  main section {
    padding-bottom: 60px;
  }
}
main section:nth-of-type(n + 2) {
  padding-top: 120px;
}
@media screen and (max-width: 768px) {
  main section:nth-of-type(n + 2) {
    padding-top: 60px;
  }
}
.head {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  margin-bottom: 50px;
}
@media screen and (max-width: 768px) {
  .head {
    margin-bottom: 30px;
  }
}
.head .ttl01 {
  margin-bottom: 0;
}
@media screen and (max-width: 768px) {
  .head .ttl01 {
    width: 100%;
  }
}
.head strong {
  color: #06407e;
  font-size: 20px;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  .head strong {
    font-size: 14px;
  }
}
.around {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.around > *:first-child {
  width: 30.5%;
}
.around > *:last-child {
  width: 65.25%;
}
@media screen and (max-width: 768px) {
  .around > * {
    width: 100% !important;
  }
}
.cList {
  counter-reset: cList;
}
.cList > li {
  counter-increment: cList;
  position: relative;
  padding: 30px 30px 30px 100px;
  background-color: #f7fbff;
}
@media screen and (max-width: 768px) {
  .cList > li {
    padding: 15px;
  }
}
.cList > li h3 {
  margin-bottom: 15px;
  font-size: 24px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  .cList > li h3 {
    position: relative;
    padding-left: 40px;
    margin-bottom: 10px;
    font-size: 20px;
  }
}
.cList > li h3:before {
  content: counter(cList,decimal-leading-zero);
  position: absolute;
  display: inline-block;
  font-family: "Archivo Black", sans-serif;
  font-size: 30px;
  line-height: 1;
  color: #06407e;
  left: 30px;
  top: 35px;
}
@media screen and (max-width: 768px) {
  .cList > li h3:before {
    font-size: 24px;
    height: 40px;
    left: 0;
    top: 6px;
  }
}
.cList > li:nth-child(n + 2) {
  margin-top: 20px;
}
.table01 {
  border-top: 1px solid #e1e1e1;
}
.table01 tbody tr th, .table01 tbody tr td {
  padding: 20px;
  border-bottom: 1px solid #e1e1e1;
}
@media screen and (max-width: 768px) {
  .table01 tbody tr th, .table01 tbody tr td {
    display: block;
  }
}
.table01 tbody tr th {
  width: 240px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  .table01 tbody tr th {
    width: 100%;
    padding-bottom: 0;
    border-bottom: none;
  }
}
.table01 tbody tr td {
  font-weight: 200;
}
@media screen and (max-width: 768px) {
  .table01 tbody tr td {
    padding-top: 10px;
  }
}
.flowList {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 768px) {
  .flowList {
    justify-content: center;
  }
}
.flowList > li {
  position: relative;
  width: 23.72%;
  margin-right: 1.69%;
  padding: 20px;
  background-color: #fff;
  border-radius: 10px;
}
@media screen and (max-width: 768px) {
  .flowList > li {
    width: 80%;
    margin-right: 0;
    margin-bottom: 30px;
  }
}
.flowList > li:after {
  content: "";
  position: absolute;
  display: block;
  width: 10px;
  height: 10px;
  right: -25px;
  top: 50%;
  border: 10px solid transparent;
  border-left-color: #06407e;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  .flowList > li:after {
    top: auto;
    left: 0;
    right: 0;
    bottom: -30px;
    margin: auto;
    border-top-color: #06407e;
    border-left-color: transparent;
    transform: translateY(0);
  }
}
.flowList > li:nth-child(4n) {
  margin-right: 0;
}
.flowList > li:nth-child(4n):after {
  content: none;
}
.flowList > li figure {
  width: 120px;
  margin: 0 auto 30px;
}
.flowList > li i, .flowList > li em {
  display: block;
  color: #06407e;
  text-align: center;
}
.flowList > li i {
  font-size: 14px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
}
.flowList > li em {
  font-size: 20px;
  font-weight: 600;
}
.flowList > li p {
  margin-top: 20px;
}
.priceList {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
.priceList > div {
  width: 47.45%;
  margin-right: 5.08%;
  padding: 30px;
  border: 1px solid #06407e;
}
@media screen and (max-width: 768px) {
  .priceList > div {
    width: 100%;
    margin-right: 0;
    padding: 15px;
  }
}
.priceList > div:nth-child(2n) {
  margin-right: 0;
}
.priceList > div:nth-child(n + 3) {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .priceList > div:nth-child(n + 2) {
    margin-top: 30px;
  }
}
.priceList > div figure {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  .priceList > div figure {
    margin-bottom: 10px;
  }
}
.priceList > div h3 {
  margin-bottom: 20px;
  padding-bottom: 5px;
  color: #06407e;
  font-size: 22px;
  font-weight: 600;
  border-bottom: 2px solid #06407e;
}
@media screen and (max-width: 768px) {
  .priceList > div h3 {
    font-size: 18px;
  }
}
.priceList > div > ul {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 15px;
}
.priceList > div > ul > li {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  width: 48%;
  margin-right: 4%;
}
.priceList > div > ul > li:nth-child(2n) {
  margin-right: 0;
}
.priceList > div > ul > li .label {
  width: 80px;
  padding: 5px;
  background-color: #06407e;
  text-align: center;
  color: #fff;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  .priceList > div > ul > li .label {
    width: 60px;
    font-size: 13px;
    padding-top: 7px;
    padding-left: 0;
    padding-right: 0;
  }
}
.priceList > div > ul > li .item {
  width: calc(100% - 80px);
  padding: 5px 5px 5px 10px;
  background-color: #f7f7f7;
}
@media screen and (max-width: 768px) {
  .priceList > div > ul > li .item {
    width: calc(100% - 60px);
    padding-left: 6px;
  }
}
.bgBox {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 50px;
  background-color: #f7f7f7;
}
@media screen and (max-width: 768px) {
  .bgBox {
    padding: 20px;
  }
}
.bgBox > figure {
  width: 200px;
}
@media screen and (max-width: 768px) {
  .bgBox > figure {
    width: 200px;
    margin: auto;
  }
}
.bgBox > div {
  width: calc(100% - 250px);
}
@media screen and (max-width: 768px) {
  .bgBox > div {
    width: 100%;
    margin-top: 20px;
  }
}
.bgBox > div h2 {
  margin-bottom: 15px;
  padding-bottom: 5px;
  font-size: 32px;
  font-weight: bold;
  border-bottom: 1px solid #dbdbdb;
}
@media screen and (max-width: 768px) {
  .bgBox > div h2 {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .bgBox > div p {
    font-size: 14px;
  }
}
.bgBox > div .btn01 {
  text-align: right;
}
.bgBox2 {
  padding: 50px;
  background-color: #f7f7f7;
}
@media screen and (max-width: 768px) {
  .bgBox2 {
    padding: 20px;
  }
}
.bgBox2 h2 {
  margin-bottom: 15px;
  padding-bottom: 5px;
  font-size: 32px;
  font-weight: bold;
  border-bottom: 1px solid #dbdbdb;
}
@media screen and (max-width: 768px) {
  .bgBox2 h2 {
    font-size: 18px;
  }
}
@media screen and (max-width: 768px) {
  .bgBox2 p {
    font-size: 14px;
  }
}
.bgBox2 ul {
  margin-top: 30px;
}
.bgBox2 ul li {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.bgBox2 ul li:nth-child(n+2) {
  margin-top: 20px;
}
.bgBox2 ul li em {
  display: block;
  width: 120px;
  max-height: 30px;
  margin-right: 3px;
  padding: 2px 4px;
  color: #fff;
  border-radius: 3px;
  font-size: 14px;
  font-weight: bold;
  text-align: center;
  letter-spacing: -0.05em;
}
.bgBox2 ul li em#sc {
  background-color: #F53A25;
}
.bgBox2 ul li em#ot {
  background-color: #0BD11A;
}
.bgBox2 ul li p {
  width: calc(100% - 140px);
  letter-spacing: -0.03em;
}
#suggestion {
  margin-top: 150px;
  margin-bottom: -120px;
  padding-top: 50px;
  background-color: #F7F7F7;
}
#suggestion h2 {
  display: inline-block;
  margin-bottom: 15px;
  font-size: 32px;
  font-weight: bold;
  background: linear-gradient(transparent 60%, #ffff66 50%);
}
@media screen and (max-width: 768px) {
  #suggestion h2 {
    font-size: 18px;
  }
}
#suggestion .innerM {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#suggestion .innerM .text {
  width: calc(100% - 250px);
}
#suggestion .innerM .text p {
  line-height: 2;
}
#suggestion .innerM .text .btn01 {
  margin-top: 25px;
}
#suggestion .innerM .text .btn01 a {
  margin-left: 0;
}
#suggestion .innerM .pnt {
  width: 230px;
}
#pageContact02 {
  padding-top: 100px;
  padding-bottom: 100px;
  background-color: #06407e;
}
@media screen and (max-width: 768px) {
  #pageContact02 {
    padding-top: 50px;
    padding-bottom: 50px;
  }
}
#pageContact02 .innerS > h2, #pageContact02 .innerS > p {
  color: #fff;
  text-align: center;
}
#pageContact02 .innerS > h2 {
  font-size: 30px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #pageContact02 .innerS > h2 {
    font-size: 20px;
  }
}
#pageContact02 .innerS > p {
  font-size: 18px;
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  #pageContact02 .innerS > p {
    font-size: 14px;
  }
}
.bgGray {
  background-color: #f7f7f7;
}
#faq #index01 {
  display: none;
}
#faq .accordion_wrap .ttl01:nth-child(n + 2) {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  #faq .accordion_wrap .ttl01:nth-child(n + 2) {
    margin-top: 70px;
  }
}
#faq .accordion_wrap .accordion {
  border-bottom: 1px solid #e1e1e1;
}
#faq .accordion_wrap .accordion > li {
  border-top: 1px solid #e1e1e1;
}
#faq .accordion_wrap .accordion > li > em {
  position: relative;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  min-height: 80px;
  padding: 10px 80px;
  font-weight: 700;
  background: url(../img/qa_icon_accordion_q_01.png) no-repeat left 20px center / 40px auto;
}
@media screen and (max-width: 768px) {
  #faq .accordion_wrap .accordion > li > em {
    min-height: 50px;
    padding: 15px 25px 15px 32px;
    background-size: 25px auto;
    line-height: 1.6;
    background-position: top 17px left 0;
  }
}
#faq .accordion_wrap .accordion > li > em:before, #faq .accordion_wrap .accordion > li > em:after {
  position: absolute;
  right: 20px;
  top: 50%;
  display: block;
  width: 22px;
  height: 2px;
  background-color: #06407e;
  translate: 0 -50%;
  transition: rotate 0.5s;
}
@media screen and (max-width: 768px) {
  #faq .accordion_wrap .accordion > li > em:before, #faq .accordion_wrap .accordion > li > em:after {
    width: 16px;
    right: 0;
  }
}
#faq .accordion_wrap .accordion > li > em:after {
  rotate: 90deg;
}
#faq .accordion_wrap .accordion > li > em:after {
  rotate: 0deg;
}
#faq .accordion_wrap .accordion > li > em.open:after {
  rotate: 90deg;
}
#faq .accordion_wrap .accordion > li > div {
  padding: 25px 80px;
  line-height: 2.125;
  background: url(../img/qa_icon_accordion_a_01.png) no-repeat left 20px top 25px / 40px auto #f7f7f7;
}
@media screen and (max-width: 768px) {
  #faq .accordion_wrap .accordion > li > div {
    padding: 10px 25px 15px 32px;
    background-size: 25px auto;
    background-position: left 0 top 13px;
    line-height: 1.7;
  }
}
#faq .accordion_wrap .accordion > li > div .attl {
  margin-bottom: 5px;
  color: #b70000;
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  #faq .accordion_wrap .accordion > li > div .attl {
    font-size: 17px;
  }
}
#faq .accordion_wrap .accordion > li > div a {
  color: #0645ad;
  text-decoration: underline;
}
#faq .accordion_wrap .accordion > li > div a:hover {
  text-decoration: none;
}
#faq .accordion_wrap .accordion > li > div a img {
  display: inherit;
}
#news {
  padding-bottom: 100px;
}
#news .newsWrap {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#news .newsWrap .main {
  width: 77.11%;
}
@media screen and (max-width: 768px) {
  #news .newsWrap .main {
    width: 100%;
  }
}
#news .newsWrap .main .ct {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 10px;
}
#news .newsWrap .main .ct time {
  margin-right: 10px;
  color: #707070;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  #news .newsWrap .main .ct time {
    font-size: 12px;
  }
}
#news .newsWrap .main .ct time + span {
  display: block;
  min-width: 110px;
  padding: 2px;
  text-align: center;
  background-color: #edf1f3;
  color: #333;
  line-height: 1;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  #news .newsWrap .main .ct time + span {
    font-size: 12px;
  }
}
#news .newsWrap .main .ct ul > li:nth-child(n + 2) {
  margin-left: 10px;
}
#news .newsWrap .main .ct ul > li > a {
  display: block;
  min-width: 110px;
  padding: 2px;
  text-align: center;
  background-color: #edf1f3;
  color: #333;
  line-height: 1;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  #news .newsWrap .main .ct ul > li > a {
    font-size: 12px;
  }
}
#news .newsWrap .side {
  width: 200px;
}
@media screen and (max-width: 768px) {
  #news .newsWrap .side {
    width: 100%;
    margin-top: 50px;
  }
}
#news .newsWrap .side aside:nth-child(n + 2) {
  margin-top: 40px;
}
#news .newsWrap .side aside .sideTtl {
  margin-bottom: 15px;
  padding-bottom: 5px;
  border-bottom: 1px solid #ccc;
  font-weight: 600;
}
#news .newsWrap .side aside ul li {
  border-bottom: 1px solid #d0d0d0;
}
#news .newsWrap .side aside ul li a {
  display: block;
  padding: 10px 0;
  color: #06407e;
  padding-left: 1em;
  text-indent: -1em;
}
#news .newsWrap .side aside ul li a:before {
  content: "・";
}
#news .archive .main article {
  border-bottom: 1px solid #dedede;
}
#news .archive .main article:first-child {
  border-top: 1px solid #dedede;
}
#news .archive .main article a {
  display: block;
  padding: 20px 0;
}
#news .archive .main article a h2 {
  margin-top: 10px;
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  #news .archive .main article a h2 {
    font-size: 16px;
  }
}
#news .archive .main h2 + article {
  border-top: 1px solid #dedede;
}
#news #single .main h1 {
  margin-bottom: 50px;
  font-size: 30px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #news #single .main h1 {
    margin-bottom: 30px;
    font-size: 20px;
  }
}
#purchase #pTtl {
  margin-bottom: 0 !important;
}
#purchase #s1 {
  padding-top: 100px;
  background-color: #f7fbff;
}
@media screen and (max-width: 768px) {
  #purchase #s1 {
    padding-top: 40px;
  }
}
#purchase #s1 h2 {
  margin-bottom: 60px;
  color: #012149;
  font-size: 40px;
  font-weight: 700;
  line-height: 1.5;
  text-align: center;
}
@media screen and (max-width: 768px) {
  #purchase #s1 h2 {
    margin-bottom: 40px;
    padding-left: 15px;
    padding-right: 15px;
    font-size: 24px;
    font-weight: 900;
  }
}
#purchase #s1 h2 big {
  font-size: calc((50 / 40) * 1em);
  font-weight: 900;
}
#purchase #s1 .innerL {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
#purchase #s1 .innerL > figure {
  width: 50%;
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > figure {
    width: 100%;
  }
}
#purchase #s1 .innerL > div {
  width: 50%;
  padding: 0 50px 0 55px;
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > div {
    width: 100%;
    padding: 0;
    margin-top: 20px;
  }
}
#purchase #s1 .innerL > div ul {
  border-top: 1px #e6e6f0 solid;
}
#purchase #s1 .innerL > div ul li {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  padding: 20px 0;
  border-bottom: 1px #e6e6f0 solid;
  line-height: 1;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > div ul li {
    padding-bottom: 10px;
  }
}
#purchase #s1 .innerL > div ul li span {
  display: block;
  margin-right: auto;
  padding-left: 20px;
  color: #012149;
  font-size: 18px;
  font-weight: 500;
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > div ul li span {
    padding-left: 15px;
    font-size: 16px;
  }
}
#purchase #s1 .innerL > div ul li p {
  margin-left: auto;
  padding-right: 20px;
  color: #06407e;
  font-size: 40px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > div ul li p {
    padding-right: 10px;
    font-size: 30px;
  }
}
#purchase #s1 .innerL > div ul li p i {
  padding-left: 5px;
  font-size: 20px;
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > div ul li p i {
    font-size: 16px;
  }
}
#purchase #s1 .innerL > div h2 {
  margin-top: 45px;
  color: #012149;
  font-size: 24px;
  font-weight: 900;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > div h2 {
    font-size: 20px;
  }
}
#purchase #s1 .innerL > div h3 {
  margin-bottom: 20px;
  font-size: 30px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > div h3 {
    font-size: 18px;
  }
}
#purchase #s1 .innerL > div > p {
  margin-bottom: 20px;
  line-height: 1.6666666667;
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > div > p {
    font-size: 16px;
  }
}
#purchase #s1 .innerL > div .repletion {
  margin-top: 15px;
}
@media screen and (max-width: 768px) {
  #purchase #s1 .innerL > div .repletion {
    margin-top: 10px;
    font-size: 13px;
  }
}
#purchase #s2 #reasonList {
  counter-reset: reason;
}
#purchase #s2 #reasonList > * {
  position: relative;
  counter-increment: reason;
}
#purchase #s2 #reasonList > *:before {
  content: counter(reason,decimal-leading-zero);
  position: relative;
  display: inline-block;
  height: 45px;
  padding-bottom: 10px;
  font-family: "Archivo Black", sans-serif;
  font-size: 30px;
  line-height: 1;
  color: #06407e;
  border-bottom: 2px solid #06407e;
  z-index: 2;
}
@media screen and (max-width: 768px) {
  #purchase #s2 #reasonList > *:before {
    font-size: 24px;
    height: 40px;
  }
}
#purchase #s2 #reasonList > *:after {
  content: "";
  position: absolute;
  top: 43px;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #e6e6f0;
  z-index: 1;
}
@media screen and (max-width: 768px) {
  #purchase #s2 #reasonList > *:after {
    top: 38px;
  }
}
#purchase #s2 #reasonList > * h3 {
  margin-top: 30px;
  margin-bottom: 15px;
  color: #06407e;
  font-size: 22px;
  font-weight: 600;
  text-decoration: underline;
}
@media screen and (max-width: 768px) {
  #purchase #s2 #reasonList > * h3 {
    font-size: 18px;
    margin-top: 20px;
  }
}
#purchase #s3 #achievementList > div {
  background-color: #fff;
}
#purchase #s3 #achievementList > div .txt {
  padding: 20px;
}
@media screen and (max-width: 768px) {
  #purchase #s3 #achievementList > div .txt {
    padding: 12px;
  }
}
#purchase #s3 #achievementList > div .txt em {
  display: block;
  font-weight: bold;
  padding-bottom: 10px;
  border-bottom: 1px solid #e1e1e1;
}
@media screen and (max-width: 768px) {
  #purchase #s3 #achievementList > div .txt em {
    font-size: 14px;
  }
}
#purchase #s3 #achievementList > div .txt > div {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  margin-top: 10px;
}
#purchase #s3 #achievementList > div .txt > div:last-child {
  padding-top: 10px;
  border-top: 1px solid #e1e1e1;
}
#purchase #s3 #achievementList > div .txt > div i {
  font-size: 12px;
}
@media screen and (max-width: 768px) {
  #purchase #s3 #achievementList > div .txt > div i {
    width: 100%;
  }
}
#purchase #s3 #achievementList > div .txt > div .price {
  color: #f53a25;
  font-size: 30px;
  font-weight: 700;
  font-family: Arial, Helvetica, "sans-serif";
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  #purchase #s3 #achievementList > div .txt > div .price {
    font-size: 24px;
  }
}
#purchase #s3 #achievementList > div .txt > div span {
  padding-left: 3px;
  color: #333;
  font-size: 10px;
}
#sale #pTtl {
  margin-bottom: 0 !important;
}
#sale #terms {
  margin-bottom: 80px;
  padding: 50px 0;
  background-color: #f7f7f7;
}
@media screen and (max-width: 768px) {
  #sale #terms {
    margin-bottom: 10px;
  }
}
#sale #terms.jp form {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #sale #terms.jp form {
    display: block;
  }
}
#sale #terms.jp form > ul {
  width: calc(100% - 370px);
  border-bottom: none;
  padding-bottom: 0;
}
@media screen and (max-width: 768px) {
  #sale #terms.jp form > ul {
    width: 100%;
    margin-bottom: 20px;
  }
}
#sale #terms.jp form > ul li {
  width: 44.44%;
  margin-right: 10.31%;
  margin-left: 0;
  margin-top: 0;
}
@media screen and (max-width: 768px) {
  #sale #terms.jp form > ul li {
    width: 100%;
    margin-right: 0;
    margin-bottom: 15px;
  }
}
#sale #terms.jp form > ul li:last-child {
  margin-right: 0;
}
#sale #terms.jp form > ul li > p {
  width: 79px;
}
@media screen and (max-width: 768px) {
  #sale #terms.jp form > ul li > p {
    width: 100px;
  }
}
#sale #terms.jp form > ul li > div {
  width: 200px;
}
@media screen and (max-width: 768px) {
  #sale #terms.jp form > ul li > div {
    width: calc(100% - 100px);
  }
}
#sale #terms.jp form button[type="submit"] {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 300px;
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
  padding: 15px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  background-color: #004ea2;
  border-radius: 5px;
}
@media screen and (max-width: 768px) {
  #sale #terms.jp form button[type="submit"] {
    width: 100%;
    font-size: 16px;
  }
}
#sale #terms.jp form button[type="submit"] img {
  width: 20px;
  height: 20px;
  margin-right: 5px;
}
#sale #terms form > ul {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  padding-bottom: 30px;
  border-bottom: 1px solid #dddddd;
}
#sale #terms form > ul li {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  width: 31%;
  margin-left: 3.5%;
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  #sale #terms form > ul li {
    width: 100%;
    margin-left: 0;
  }
}
#sale #terms form > ul li.maker {
  width: 100%;
  margin-top: 0;
  margin-left: 0;
}
#sale #terms form > ul li.maker > div {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media screen and (max-width: 768px) {
  #sale #terms form > ul li.maker > div {
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
  }
}
@media screen and (max-width: 768px) {
  #sale #terms form > ul li.maker > div > span {
    width: 48%;
    margin-right: 4%;
    font-size: 14px;
  }
}
@media screen and (max-width: 768px) {
  #sale #terms form > ul li.maker > div > span:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  #sale #terms form > ul li.maker > div > span:nth-child(n+3) {
    margin-top: 10px;
  }
}
#sale #terms form > ul li.maker > div > span label {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  line-height: 1;
}
#sale #terms form > ul li.maker > div > span label input {
  margin-right: 2px;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  #sale #terms form > ul li.maker > div > span label input {
    margin-right: 2px;
  }
}
#sale #terms form > ul li.maker + li {
  margin-left: 0;
}
#sale #terms form > ul li select {
  width: 100%;
  height: 35px;
  padding-left: 5px;
  border-color: #e0e0e0;
}
#sale #terms form > ul li p {
  width: 100px;
  font-weight: bold;
  line-height: 1;
}
#sale #terms form > ul li p i {
  display: block;
  margin-top: 5px;
  font-size: 13px;
}
@media screen and (max-width: 768px) {
  #sale #terms form > ul li p i {
    font-size: 11px;
  }
}
#sale #terms form > ul li > div {
  width: calc(100% - 100px);
}
#sale #terms form button[type="submit"] {
  display: block;
  width: 400px;
  margin-top: 20px;
  margin-left: auto;
  margin-right: auto;
  padding: 15px;
  color: #fff;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
  background-color: #004ea2;
  border-radius: 5px;
}
@media screen and (max-width: 768px) {
  #sale #terms form button[type="submit"] {
    width: 100%;
    font-size: 16px;
  }
}
#sale #items {
  margin-bottom: 100px;
}
#sale #items #archive > li {
  position: relative;
  border-bottom: 1px solid #ddd;
}
#sale #items #archive > li > a {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: space-between;
  padding-top: 50px;
  padding-bottom: 50px;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a {
    align-items: flex-start;
    padding-bottom: 20px;
  }
}
#sale #items #archive > li > a:hover {
  text-decoration: none;
}
#sale #items #archive > li > a .tagimg ul {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 10px;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .tagimg ul {
    order: 1;
    width: 100%;
    margin-bottom: 5px;
  }
}
#sale #items #archive > li > a .tagimg ul li {
  width: 48.8%;
  padding: 4px 2px;
  font-size: 14px;
  color: #fff;
  line-height: 1;
  text-align: center;
  border: 1px solid transparent;
  border-radius: 3px;
  font-weight: 600;
  letter-spacing: -0.05em;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .tagimg ul li {
    width: 79px;
    padding: 2px 1px;
    font-size: 10px;
    letter-spacing: -0.1em;
  }
}
#sale #items #archive > li > a .tagimg ul li.tag01 {
  background-color: #F53A25;
}
#sale #items #archive > li > a .tagimg ul li.tag02 {
  background-color: #0BD11A;
}
#sale #items #archive > li > a .tagimg ul li.tag03 {
  background-color: #fff;
  border-color: #004EA2;
  color: #004EA2;
}
#sale #items #archive > li > a .imgWrap {
  width: 250px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .imgWrap {
    width: 160px;
    flex: 0 0 auto;
  }
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .imgWrap figure {
    width: 100%;
  }
}
#sale #items #archive > li > a .detail {
  width: calc(100% - 280px);
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail {
    width: 100%;
    margin-top: 20px;
    display: contents;
  }
}
#sale #items #archive > li > a .detail .dhead {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .dhead {
    width: calc(100% - 180px);
    justify-content: flex-end;
  }
}
#sale #items #archive > li > a .detail .dhead em {
  width: calc(100% - 200px);
  font-size: 22px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .dhead em {
    width: 100%;
    margin-top: 5px;
    padding-bottom: 15px;
    font-size: 17px;
    line-height: 1.3;
    order: 2;
    flex: 0 0 auto;
  }
}
#sale #items #archive > li > a .detail .dhead em i {
  display: block;
  font-size: 12px;
  line-height: 1;
}
#sale #items #archive > li > a .detail .info {
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .info {
    margin-top: 20px;
    order: 3;
  }
}
#sale #items #archive > li > a .detail .info > ul {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
#sale #items #archive > li > a .detail .info > ul > li {
  width: 25%;
  font-size: 12px;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .info > ul > li {
    width: 33.3333333333%;
    font-size: 10px;
  }
}
@media (min-width: 769px) {
  #sale #items #archive > li > a .detail .info > ul > li:nth-child(n + 5) {
    margin-top: 10px;
  }
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .info > ul > li:nth-child(n + 4) {
    margin-top: 5px;
  }
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .info > ul > li:last-child {
    width: 100%;
  }
}
#sale #items #archive > li > a .detail .info > ul > li i {
  display: inline-block;
  width: 60px;
  padding: 2px 0;
  margin-right: 5px;
  text-align: center;
  letter-spacing: -0.07em;
  background-color: #f5f4f0;
}
#sale #items #archive > li > a .detail .foot {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .foot {
    width: calc(100% - 180px);
    order: 2;
    margin-left: auto;
    margin-top: -10px;
  }
}
#sale #items #archive > li > a .detail .foot p {
  color: #f53a25;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .foot p {
    -js-display: flex;
    display: flex;
    flex-wrap: wrap;
    align-items: baseline;
  }
}
#sale #items #archive > li > a .detail .foot p i {
  display: block;
  color: #333;
  font-size: 13px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .foot p i {
    font-size: 10px;
  }
}
#sale #items #archive > li > a .detail .foot p big {
  line-height: 1;
  font-size: 46px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .foot p big {
    font-size: 30px;
  }
}
#sale #items #archive > li > a .detail .foot p span {
  font-size: 12px;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .foot p span {
    font-size: 10px;
    padding-left: 2px;
  }
}
#sale #items #archive > li > a .detail .foot p b {
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li > a .detail .foot p b {
    width: 100%;
    font-size: 16px;
    line-height: 1;
  }
}
@media (min-width: 769px) {
  #sale #items #archive > li a + .btn02 {
    position: absolute;
    width: 400px;
    right: 0;
    bottom: 50px;
    margin-top: 0;
    z-index: 10;
  }
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li a + .btn02 {
    margin-top: 0;
  }
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li a + .btn02 a {
    height: 50px;
    padding-top: 10px;
    padding-bottom: 10px;
    font-size: 16px;
  }
}
@media screen and (max-width: 768px) {
  #sale #items #archive > li a + .btn02 a i {
    height: 50px;
  }
}
#sale #single {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  #sale #single {
    margin-top: 40px;
  }
}
#sale #single h1 {
  margin-bottom: 20px;
  font-size: 40px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  #sale #single h1 {
    margin-bottom: 15px;
    font-size: 24px;
    line-height: 1.4;
  }
}
@media screen and (max-width: 768px) {
  #sale #single h1 i {
    display: block;
    line-height: 1;
  }
}
#sale #single .detail {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#sale #single .detail .l {
  width: calc(100% - 460px);
}
@media screen and (max-width: 768px) {
  #sale #single .detail .l {
    width: 100%;
  }
}
#sale #single .detail .l .ttl03 {
  margin-top: 60px;
  margin-bottom: 20px;
  padding-bottom: 15px;
  font-size: 24px;
  font-weight: bold;
  border-bottom: 1px solid #707070;
}
@media screen and (max-width: 768px) {
  #sale #single .detail .l .ttl03 {
    font-size: 18px;
  }
}
#sale #single .detail .l ul {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
#sale #single .detail .l ul > li {
  position: relative;
  width: calc((100% - 10px) / 2);
}
#sale #single .detail .l ul > li:nth-child(3n + 1) {
  width: 100%;
  margin-bottom: 10px;
}
#sale #single .detail .l ul > li:nth-child(3n) {
  margin-left: 10px;
}
#sale #single .detail .l ul > li:last-child {
  margin-bottom: 0;
}
#sale #single .detail .l ul > li div {
  position: relative;
  padding-top: 68.49%;
  overflow: hidden;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #ccc;
}
#sale #single .detail .l ul > li a {
  position: absolute;
  right: 10px;
  bottom: 10px;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 180px;
  height: 30px;
  border-radius: 5px;
  color: #f60;
  font-size: 14px;
  font-weight: 700;
  line-height: 1;
  background-color: #fff;
  text-decoration: none;
  transition: opacity 0.7s;
}
#sale #single .detail .l ul > li a:hover {
  text-decoration: none;
  opacity: 0.6;
}
@media screen and (-webkit-min-device-pixel-ratio: 0) and (max-width: 768px) {
  #sale #single .detail .l ul > li a:hover {
    opacity: 1;
  }
}
#sale #single .detail .l ul > li a:hover img {
  opacity: 1;
}
#sale #single .detail .r {
  position: relative;
  width: 400px;
}
@media screen and (max-width: 768px) {
  #sale #single .detail .r {
    width: 100%;
    margin-top: 50px;
  }
}
#sale #single .detail .r .tag {
  position: absolute;
  top: 0;
  right: 0;
  width: 150px;
  color: #fff;
  font-weight: bold;
  text-align: center;
}
#sale #single .detail .r .tag.tag01 {
  background-color: #004ea2;
}
#sale #single .detail .r .tag.tag02 {
  background-color: #00b069;
}
@media screen and (max-width: 768px) {
  #sale #single .detail .r .tag {
    font-size: 14px;
  }
}
#sale #single .detail .r .price {
  font-weight: bold;
}
#sale #single .detail .r .price i {
  font-size: 14px;
  font-weight: bold;
}
#sale #single .detail .r .price big {
  display: block;
  color: #f53a25;
  line-height: 1.4;
  font-size: 30px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  #sale #single .detail .r .price big {
    font-size: 24px;
  }
}
#sale #single .detail .r .price big span {
  padding-left: 5px;
  font-size: 16px;
}
#sale #single .detail .r table {
  margin-top: 20px;
}
#sale #single .detail .r table tbody tr th, #sale #single .detail .r table tbody tr td {
  padding-top: 2px;
  padding-bottom: 2px;
  font-size: 14px;
  border-bottom: 10px solid #fff;
}
#sale #single .detail .r table tbody tr th {
  width: 70px;
  text-align: center;
  background-color: #f5f4f0;
  letter-spacing: -0.03em;
}
#sale #single .detail .r table tbody tr td {
  width: calc(100% - 70px);
  padding-left: 5px;
  padding-right: 5px;
  letter-spacing: 0;
}
#sale #single .detail .r .btn02 {
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  #sale #single .detail .r .btn02 {
    position: fixed;
    width: 100%;
    left: 0;
    bottom: 0;
  }
  #sale #single .detail .r .btn02 a {
    width: 100%;
    height: 55px;
    line-height: 1;
    border-radius: 0;
  }
  #sale #single .detail .r .btn02 a i {
    height: 55px;
    line-height: 1.8;
    font-size: 16px;
    border-radius: 0;
  }
}
#sale #single .detail .r #telWrap {
  margin-top: 50px;
  text-align: center;
}
#sale #single .detail .r #telWrap span {
  display: block;
  margin-bottom: 5px;
  color: #f53a25;
  font-size: 18px;
  font-weight: bold;
}
#sale #single .detail .r #telWrap a {
  color: #f53a25;
  line-height: 1;
  font-size: 46px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
}
#sale #single .detail .r #telWrap i {
  display: block;
  font-size: 12px;
}
#sale #single .detail .r #telWrap p {
  padding: 15px;
  background-color: #f7f7f7;
  font-size: 12px;
  text-align: center;
}
#sale #single .detail .r #telWrap p i {
  font-size: 14px;
}
#sale #single .detail .r #telWrap p i b {
  display: block;
  color: #004ea2;
  line-height: 1.4;
  font-size: 24px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
}
.arrivalinfo.contact #header {
  width: 100%;
}
.arrivalinfo.contact #header .wrap {
  justify-content: center;
  height: 80px;
}
@media screen and (max-width: 768px) {
  .arrivalinfo.contact #header .wrap {
    height: 50px;
  }
}
.arrivalinfo.contact #header .wrap nav, .arrivalinfo.contact #header .wrap #menu {
  display: none;
}
.arrivalinfo.contact #header .wrap #cta {
  display: none;
}
.arrivalinfo.contact #header .innerL {
  display: none;
}
.arrivalinfo.contact #footer {
  padding-top: 0;
  padding-bottom: 30px;
  background-color: #05407e;
}
.arrivalinfo.contact #footer #footerInner01 {
  display: none;
}
.arrivalinfo.contact #footer #footerInner02 {
  margin: 0;
  justify-content: center;
}
.arrivalinfo.contact #footer #footerInner02 figure {
  display: none;
}
.arrivalinfo.contact #footer #footerInner02 #policylink {
  display: none;
}
.arrivalinfo.contact #footer #footerInner02 #copyright {
  text-align: center;
  color: #fff;
}
.arrivalinfo.contact #footer #footerInner02 #copyright figure {
  display: none;
}
.arrivalinfo #content #sale-contact {
  padding: 60px 0 50px;
  background-color: #05407e;
}
@media screen and (max-width: 768px) {
  .arrivalinfo #content #sale-contact {
    padding: 40px 0 30px;
  }
}
.arrivalinfo #content #sale-contact h1 {
  margin-bottom: 20px;
  color: #fff;
  font-size: 36px;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .arrivalinfo #content #sale-contact h1 {
    margin-bottom: 10px;
    font-size: 22px;
  }
}
.arrivalinfo #content #sale-contact .form {
  width: 1000px;
  margin-left: auto;
  margin-right: auto;
  padding: 50px;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  .arrivalinfo #content #sale-contact .form {
    padding: 20px;
  }
}
.arrivalinfo #content #sale-contact .form #step {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  margin-bottom: 50px;
}
.arrivalinfo #content #sale-contact .form #step li {
  position: relative;
  width: 200px;
  height: 36px;
  padding-left: 20px;
  margin: 4px 4px 4px 0;
  background-color: #F0F0F0;
  border-color: #F0F0F0;
  text-align: center;
  color: #aaa;
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .arrivalinfo #content #sale-contact .form #step li {
    line-height: 36px;
    font-size: 12px;
    width: 105px;
  }
}
.arrivalinfo #content #sale-contact .form #step li.current {
  background-color: #FF6500;
  color: #fff;
}
.arrivalinfo #content #sale-contact .form #step li.current:after {
  border-left-color: #FF6500;
}
.arrivalinfo #content #sale-contact .form #step li:before, .arrivalinfo #content #sale-contact .form #step li:after {
  content: "";
  position: absolute;
  top: 0;
  left: 100%;
  height: 0;
  width: 0;
  border: 18px solid transparent;
  border-right-width: 0;
  border-left-width: 20px;
}
.arrivalinfo #content #sale-contact .form #step li:before {
  transform: translateX(4px);
  border-left-color: #fff;
  margin: 0;
  z-index: 1;
}
.arrivalinfo #content #sale-contact .form #step li:after {
  z-index: 2;
  border-left-color: #f0f0f0;
}
.arrivalinfo #content #sale-contact .form #step li:first-child {
  padding-left: 0;
}
.arrivalinfo #content #sale-contact .form #step li:last-child:before, .arrivalinfo #content #sale-contact .form #step li:last-child:after {
  content: none;
}
.arrivalinfo #content #sale-contact .form .item {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 40px;
}
.arrivalinfo #content #sale-contact .form .item .img {
  width: 260px;
  text-align: center;
}
@media screen and (max-width: 768px) {
  .arrivalinfo #content #sale-contact .form .item .img {
    width: 100%;
  }
}
.arrivalinfo #content #sale-contact .form .item .info {
  width: calc(100% - 300px);
}
@media screen and (max-width: 768px) {
  .arrivalinfo #content #sale-contact .form .item .info {
    width: 100%;
    margin-top: 15px;
  }
}
.arrivalinfo #content #sale-contact .form .item .info em {
  display: block;
  margin-bottom: 15px;
  font-size: 20px;
  font-weight: bold;
}
.arrivalinfo #content #sale-contact .form .item .info > ul {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
.arrivalinfo #content #sale-contact .form .item .info > ul > li {
  width: 25%;
  font-size: 12px;
}
@media screen and (max-width: 768px) {
  .arrivalinfo #content #sale-contact .form .item .info > ul > li {
    width: 50%;
  }
}
@media (min-width: 769px) {
  .arrivalinfo #content #sale-contact .form .item .info > ul > li:nth-child(n + 5) {
    margin-top: 10px;
  }
}
@media screen and (max-width: 768px) {
  .arrivalinfo #content #sale-contact .form .item .info > ul > li:nth-child(n + 3) {
    margin-top: 10px;
  }
}
.arrivalinfo #content #sale-contact .form .item .info > ul > li i {
  display: inline-block;
  width: 60px;
  padding: 2px 0;
  margin-right: 5px;
  text-align: center;
  letter-spacing: -0.07em;
  background-color: #f5f4f0;
}
.arrivalinfo #content #sale-contact .form .item .info p {
  margin-top: 20px;
  font-size: 14px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  .arrivalinfo #content #sale-contact .form .item .info p {
    text-align: right;
  }
}
.arrivalinfo #content #sale-contact .form .item .info p span {
  color: #f53a25;
  font-size: 12px;
}
.arrivalinfo #content #sale-contact .form .item .info p span i {
  padding-right: 5px;
  line-height: 1.4;
  font-size: 36px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
}
.arrivalinfo #content #sale-contact .form .hidden {
  visibility: hidden;
  font-size: 0;
}
.arrivalinfo #content #pageContact01 {
  display: none;
}
#maintenance #s4 .btn01 a {
  margin-left: auto;
  margin-right: inherit;
}
#rental #s2 #referenceCar {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar {
    margin-top: 30px;
  }
}
#rental #s2 #referenceCar > div {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#rental #s2 #referenceCar > div:nth-child(n + 2) {
  margin-top: 60px;
}
#rental #s2 #referenceCar > div > figure {
  width: 30.5%;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div > figure {
    width: 100%;
  }
}
#rental #s2 #referenceCar > div .ex {
  width: 65.25%;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex {
    width: 100%;
    margin-top: 15px;
  }
}
#rental #s2 #referenceCar > div .ex h3 {
  margin-bottom: 5px;
  color: #06407e;
  font-size: 24px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex h3 {
    font-size: 20px;
  }
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex p {
    font-size: 14px;
  }
}
#rental #s2 #referenceCar > div .ex > ul {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  margin-top: 15px;
}
#rental #s2 #referenceCar > div .ex > ul li {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  width: 48%;
  margin-right: 4%;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex > ul li {
    width: 48%;
    margin-right: 4%;
  }
}
#rental #s2 #referenceCar > div .ex > ul li:nth-child(2n) {
  margin-right: 0;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex > ul li:nth-child(2n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex > ul li:nth-child(n + 3) {
    margin-top: 10px;
  }
}
#rental #s2 #referenceCar > div .ex > ul li .label {
  width: 80px;
  padding: 5px 0;
  background-color: #f7f7f7;
  text-align: center;
  font-size: 11px;
  font-weight: 600;
  letter-spacing: -0.05em;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex > ul li .label {
    width: 70px;
    font-size: 10px;
  }
}
#rental #s2 #referenceCar > div .ex > ul li .item {
  width: calc(100% - 90px);
  padding: 5px 5px 5px 10px;
  background-color: #fff;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex > ul li .item {
    width: calc(100% - 70px);
    padding-left: 6px;
    font-size: 12px;
  }
}
#rental #s2 #referenceCar > div .ex .pList {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  margin-top: 30px;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex .pList {
    margin-top: 20px;
  }
}
#rental #s2 #referenceCar > div .ex .pList > div {
  width: calc((100% - 40px) / 2);
  margin-right: 40px;
  padding: 10px;
  background-color: #f7f7f7;
}
#rental #s2 #referenceCar > div .ex .pList > div:nth-child(2n) {
  margin-right: 0;
}
#rental #s2 #referenceCar > div .ex .pList > div:nth-child(n + 3) {
  margin-top: 20px;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex .pList > div {
    width: calc((100% - 20px) / 2);
    padding: 7px;
    margin-right: 20px;
  }
}
#rental #s2 #referenceCar > div .ex .pList > div em {
  display: block;
  font-size: 12px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex .pList > div em {
    font-size: 10px;
    letter-spacing: -0.06em;
  }
}
#rental #s2 #referenceCar > div .ex .pList > div .price {
  color: #f53a25;
  font-size: 30px;
  font-weight: 700;
  font-family: Arial, Helvetica, "sans-serif";
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex .pList > div .price {
    font-size: 18px;
  }
}
#rental #s2 #referenceCar > div .ex .pList > div .price i {
  padding-left: 3px;
  color: #333;
  font-size: 13px;
}
@media screen and (max-width: 768px) {
  #rental #s2 #referenceCar > div .ex .pList > div .price i {
    font-size: 10px;
  }
}
#rental #s3 {
  padding-top: 0;
}
@media screen and (max-width: 768px) {
  #rental #s3 {
    padding-top: 50px;
  }
}
#rental #s3 #area {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: 60px 100px;
  background-color: #f7fbff;
}
@media screen and (max-width: 768px) {
  #rental #s3 #area {
    padding: 20px;
  }
}
#rental #s3 #area figure {
  width: calc(100% - 350px);
  text-align: center;
}
#rental #s3 #area figure img {
  width: 400px;
  height: auto;
}
@media screen and (max-width: 768px) {
  #rental #s3 #area figure img {
    width: 300px;
  }
}
@media screen and (max-width: 768px) {
  #rental #s3 #area figure {
    width: 100%;
  }
}
#rental #s3 #area > div {
  width: 280px;
}
@media screen and (max-width: 768px) {
  #rental #s3 #area > div {
    width: 100%;
    margin-top: 20px;
    text-align: center;
  }
}
#rental #s3 #area > div h2 {
  line-height: 1.4;
  font-size: 24px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  #rental #s3 #area > div h2 {
    font-size: 20px;
  }
}
#rental #s3 #area > div h2 strong {
  display: block;
  font-size: 34px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  #rental #s3 #area > div h2 strong {
    font-size: 30px;
  }
}
@media screen and (max-width: 768px) {
  #rental #s3 #area > div strong {
    display: block;
  }
}
#rental #s3 #area > div em {
  color: #f53a25;
  font-size: 24px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  #rental #s3 #area > div em {
    display: block;
    font-size: 22px;
  }
}
@media screen and (max-width: 768px) {
  #rental #s4 .remarks {
    padding-left: 20px;
    padding-right: 20px;
  }
}
#rental #s4 .remarks > .ttl02 {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  #rental #s4 .remarks > .ttl02 {
    margin-top: 40px;
  }
}
#rental #s4 .remarks .c2_1 {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  #rental #s4 .remarks .c2_1 {
    margin-top: 40px;
  }
}
#rental #s4 .remarks .c2_1 > div {
  padding: 30px;
  background-color: #fff;
}
@media screen and (max-width: 768px) {
  #rental #s4 .remarks .c2_1 > div {
    padding: 20px;
  }
}
#rental #s4 .remarks .c2_1 > div .dots li {
  letter-spacing: -0.05em;
}
@media screen and (max-width: 768px) {
  #rental #s4 .remarks .c2_1 > div .dots li {
    font-size: 14px;
  }
}
#rental #s4 .remarks .c2_1 > div .ttl02 {
  margin-bottom: 20px;
}
@media screen and (max-width: 768px) {
  #rental #s4 .remarks .c2_1 > div .ttl02 {
    margin-bottom: 15px;
  }
}
#rental #s4 .remarks .c2_1 > div .ttl02:nth-of-type(n + 2) {
  margin-top: 40px;
}
#rental #s4 .remarks .c2_1 > div h4 {
  margin-top: 15px;
  font-size: 17px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  #rental #s4 .remarks .c2_1 > div p {
    font-size: 14px;
  }
}
#company #s1 {
  position: relative;
}
#company #s1:after {
  content: "";
  position: absolute;
  display: block;
  bottom: 0;
  max-width: 1180px;
  width: 100%;
  height: 1px;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #06407e;
}
@media screen and (max-width: 768px) {
  #company #s1:after {
    width: calc(100% - 30px);
  }
}
#company #s1 .around {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  #company #s1 .around {
    margin-top: 40px;
  }
}
#company #s2 #message {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#company #s2 #message .text {
  width: calc(100% - 400px);
}
@media screen and (max-width: 768px) {
  #company #s2 #message .text {
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  #company #s2 #message .text p {
    font-size: 15px;
  }
}
#company #s2 #message .pht {
  width: 300px;
}
@media screen and (max-width: 768px) {
  #company #s2 #message .pht {
    width: 100%;
    text-align: right;
  }
}
#company #s2 #message .pht p {
  margin-top: 10px;
  font-size: 14px;
}
@media screen and (max-width: 768px) {
  #company #s2 #message .pht p {
    font-size: 12px;
  }
}
#company #s2 #message .pht h3 {
  line-height: 1.2;
  font-size: 22px;
  font-weight: bold;
}
#company #s3 .r {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  border-top: 1px solid #06407e;
}
#company #s3 .r .b1 {
  width: 33.3333333333%;
  margin: 30px 0;
}
@media screen and (max-width: 768px) {
  #company #s3 .r .b1 {
    margin: 0;
  }
}
#company #s3 .r .b2 {
  width: 50%;
}
#company #s3 .r .b3 {
  width: 66.6666666667%;
}
#company #s3 .r .b4 {
  width: 100%;
}
#company #s3 .r .b1, #company #s3 .r .b2, #company #s3 .r .b3, #company #s3 .r .b4 {
  padding: 30px 0;
  text-align: center;
}
@media screen and (max-width: 768px) {
  #company #s3 .r .b1, #company #s3 .r .b2, #company #s3 .r .b3, #company #s3 .r .b4 {
    width: 100%;
    padding: 20px 0;
  }
}
#company #s3 .r .b1.bdr, #company #s3 .r .b2.bdr, #company #s3 .r .b3.bdr, #company #s3 .r .b4.bdr {
  border-right: 1px solid #06407e;
}
@media screen and (max-width: 768px) {
  #company #s3 .r .b1.bdr, #company #s3 .r .b2.bdr, #company #s3 .r .b3.bdr, #company #s3 .r .b4.bdr {
    border-right: none;
    border-bottom: 1px solid #06407e;
  }
}
#company #s3 .r .b1 h3, #company #s3 .r .b2 h3, #company #s3 .r .b3 h3, #company #s3 .r .b4 h3 {
  font-size: 26px;
  font-weight: 900;
}
@media screen and (max-width: 768px) {
  #company #s3 .r .b1 h3, #company #s3 .r .b2 h3, #company #s3 .r .b3 h3, #company #s3 .r .b4 h3 {
    font-size: 20px;
  }
}
#company #s3 .r .b1 .n, #company #s3 .r .b2 .n, #company #s3 .r .b3 .n, #company #s3 .r .b4 .n {
  color: #f53a25;
  font-size: 60px;
  font-weight: 900;
  font-family: Arial, Helvetica, "sans-serif";
  line-height: 1.2;
}
@media screen and (max-width: 768px) {
  #company #s3 .r .b1 .n, #company #s3 .r .b2 .n, #company #s3 .r .b3 .n, #company #s3 .r .b4 .n {
    font-size: 40px;
  }
}
#company #s3 .r .b1 .n i, #company #s3 .r .b2 .n i, #company #s3 .r .b3 .n i, #company #s3 .r .b4 .n i {
  padding-left: 3px;
  font-size: 14px;
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
@media screen and (max-width: 768px) {
  #company #s3 .r .b1 .n i, #company #s3 .r .b2 .n i, #company #s3 .r .b3 .n i, #company #s3 .r .b4 .n i {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #company #s3 .r .b1 p, #company #s3 .r .b2 p, #company #s3 .r .b3 p, #company #s3 .r .b4 p {
    font-size: 12px;
  }
}
@media screen and (max-width: 768px) {
  #company #s3 #l1 {
    flex-flow: column-reverse;
  }
  #company #s3 #l1 .b1 {
    padding-top: 0;
  }
}
#company #s3 #l2 {
  align-items: flex-start;
}
#company #s3 #l3 {
  border-bottom: 1px solid #06407e;
}
@media screen and (max-width: 768px) {
  #company #s3 #l3 .b2:last-child {
    padding-top: 0;
  }
}
@media screen and (max-width: 768px) {
  #company #s5 .c2_1 {
    flex-flow: column-reverse;
  }
}
#company #s5 .c2_1 .dots {
  margin-top: 20px;
}
#company #s5 .c2_1 .dots > li:before {
  color: #06407e;
}
@media (min-width: 769px) {
  #company #s5 .c2_1 figure {
    text-align: right;
  }
}
@media screen and (max-width: 768px) {
  #company #s5 .c2_1 figure {
    margin-top: 0;
    margin-bottom: 30px;
  }
}
@media (min-width: 769px) {
  #company #s5 .c2_1 figure img {
    width: 500px;
    height: auto;
  }
}
#company #s5 #map {
  margin-top: 80px;
}
@media screen and (max-width: 768px) {
  #company #s5 #map {
    margin-top: 40px;
  }
}
@media screen and (max-width: 768px) {
  #company #s5 #map iframe {
    height: 300px;
  }
}
#company #s5 #mapIll {
  margin: 30px 0;
  text-align: center;
}
#company #s5 #mapIll + .c2_2 {
  text-align: center;
}
#company #s5 #mapIll + .c2_2 + .ttl02 {
  margin-top: 60px;
}
#company #s6 p {
  font-size: 18px;
}
@media screen and (max-width: 768px) {
  #company #s6 p {
    font-size: 16px;
  }
}
#company #s6 p + P {
  margin-top: 30px;
}
#useful #useful_cat {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  margin-bottom: 100px;
  border-left: 2px solid #e6e6f0;
}
@media (min-width: 769px) {
  #useful #useful_cat {
    margin-top: -40px;
  }
}
@media screen and (max-width: 768px) {
  #useful #useful_cat {
    margin-bottom: 50px;
  }
}
#useful #useful_cat li {
  width: 25%;
  border-right: 2px solid #e6e6f0;
}
@media screen and (max-width: 768px) {
  #useful #useful_cat li {
    width: 50%;
  }
}
@media (min-width: 769px) {
  #useful #useful_cat li:nth-child(4n) {
    border-right: none;
  }
}
#useful #useful_cat li a {
  position: relative;
  display: block;
  padding: 15px 25px 15px 0;
  font-size: 18px;
  font-weight: bold;
  text-align: center;
}
@media screen and (max-width: 768px) {
  #useful #useful_cat li a {
    font-size: 14px;
  }
}
#useful #useful_cat li a:before, #useful #useful_cat li a:after {
  content: "";
  position: absolute;
  display: block;
  top: 50%;
}
#useful #useful_cat li a:before {
  width: 20px;
  height: 20px;
  right: 10px;
  background-color: #06407e;
  border-radius: 50%;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  #useful #useful_cat li a:before {
    width: 15px;
    height: 15px;
  }
}
#useful #useful_cat li a:after {
  width: 6px;
  height: 6px;
  right: 17px;
  top: 49%;
  border-bottom: #fff 1px solid;
  border-right: #fff 1px solid;
  -webkit-transform: translateY(-50%) rotate(45deg);
  transform: translateY(-50%) rotate(45deg);
}
@media screen and (max-width: 768px) {
  #useful #useful_cat li a:after {
    width: 4px;
    height: 4px;
    right: 15.5px;
  }
}
#useful #useful_wrap {
  width: 800px;
  margin-left: auto;
  margin-right: auto;
  padding-bottom: 200px;
}
#useful #useful_wrap em {
  display: block;
  margin-bottom: 20px;
  font-size: 30px;
}
@media screen and (max-width: 768px) {
  #useful #useful_wrap em {
    font-size: 22px;
  }
}
#useful #useful_wrap em:nth-of-type(n + 2) {
  margin-top: 100px;
}
#useful #useful_wrap #usefulList li {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#useful #useful_wrap #usefulList li > div h3 {
  margin-bottom: 25px;
  font-size: 22px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #useful #useful_wrap #usefulList li > div h3 {
    font-size: 19px;
    margin-bottom: 15px;
  }
}
#useful #useful_wrap #usefulList li .mov {
  width: 300px;
}
@media screen and (max-width: 768px) {
  #useful #useful_wrap #usefulList li .mov {
    margin: auto;
  }
}
#useful #useful_wrap #usefulList li .txt {
  width: calc(100% - 350px);
}
@media screen and (max-width: 768px) {
  #useful #useful_wrap #usefulList li .txt {
    width: 100%;
    margin-top: 20px;
  }
}
@media screen and (max-width: 768px) and (max-width: 768px) {
  #useful #useful_wrap #usefulList li .txt > div {
    font-size: 14px;
  }
}
#contact, #newsletter {
  background-color: #f0f0f0;
}
#contactWrap {
  padding: 50px;
  background-color: #fff;
  box-shadow: 0px 5px 20px -10px #777777;
}
@media screen and (max-width: 768px) {
  #contactWrap {
    padding: 20px;
  }
}
#contactWrap #telContact {
  margin-bottom: 50px;
  text-align: center;
}
#contactWrap #telContact h3 {
  font-size: 20px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #contactWrap #telContact h3 {
    font-size: 18px;
  }
}
#contactWrap #telContact a {
  position: relative;
  color: #06407e;
  line-height: 1.2;
  font-size: 50px;
  font-weight: bold;
  font-family: Arial, Helvetica, "sans-serif";
  letter-spacing: 0;
  text-decoration: none;
  transition: opacity 0.7s;
}
@media screen and (max-width: 768px) {
  #contactWrap #telContact a {
    font-size: 40px;
  }
}
#contactWrap #telContact p {
  display: block;
  margin-bottom: 10px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  #contactWrap #telContact p {
    font-size: 13px;
  }
}
#contactWrap table {
  max-width: 800px;
  margin: auto;
  border-bottom: 1px solid #eaedef;
}
#contactWrap table tbody tr th, #contactWrap table tbody tr td {
  padding: 20px 0;
  border-top: 1px solid #eaedef;
  vertical-align: middle;
}
@media screen and (max-width: 768px) {
  #contactWrap table tbody tr th, #contactWrap table tbody tr td {
    display: block;
    width: 100% !important;
  }
}
#contactWrap table tbody tr th {
  position: relative;
  width: calc(100% - 480px);
  font-size: 16px;
  font-weight: bold;
}
@media screen and (max-width: 768px) {
  #contactWrap table tbody tr th {
    padding-bottom: 15px;
  }
}
#contactWrap table tbody tr th p {
  font-weight: bold;
}
#contactWrap table tbody tr th:after {
  position: absolute;
  display: inline-block;
  right: 50px;
  top: 50%;
  padding: 2px 4px;
  color: #fff;
  font-size: 14px;
  border-radius: 4px;
  background-color: #cc3838;
  transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
  #contactWrap table tbody tr th:after {
    right: 0;
  }
}
#contactWrap table tbody tr th.rec:after {
  content: "Req";
  background-color: #cc3838;
}
#contactWrap table tbody tr th.any:after {
  content: "Any";
  background-color: #999;
}
#contactWrap table tbody tr td {
  width: 480px;
  font-size: 15px;
}
@media screen and (max-width: 768px) {
  #contactWrap table tbody tr td {
    padding-top: 0;
    border-top: none;
  }
}
#contactWrap table tbody tr td.flex {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
}
#contactWrap table tbody tr td.flex i {
  font-size: 20px;
}
#contactWrap table tbody tr td input[type="text"], #contactWrap table tbody tr td input[type="email"], #contactWrap table tbody tr td input[type="tel"] {
  width: 100%;
  padding: 10px;
  border-radius: 4px;
  font-size: 15px;
  border: 1px solid #91a1a6;
}
#contactWrap table tbody tr td input[type="text"]::placeholder, #contactWrap table tbody tr td input[type="email"]::placeholder, #contactWrap table tbody tr td input[type="tel"]::placeholder {
  color: #91a1a6;
}
#contactWrap table tbody tr td input[name="contact_tel"] {
  width: 95%;
}
#contactWrap table tbody tr td select {
  width: 100%;
  padding: 10px 5px;
  border-radius: 4px;
  font-size: 15px;
  border: 1px solid #91a1a6;
}
#contactWrap table tbody tr td textarea {
  width: 100%;
  height: 150px;
  padding: 10px 5px;
  border-radius: 4px;
  font-size: 15px;
  border: 1px solid #91a1a6;
}
#contactWrap table tbody tr td textarea::placeholder {
  color: #91a1a6;
}
#contactWrap table tbody tr td .mwform-tel-field {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
#contactWrap table tbody tr td .mwform-tel-field input[type="text"] {
  width: 30%;
}
#contactWrap #policy {
  margin-top: 40px;
  padding: 30px;
  font-size: 14px;
  background-color: #eff6fa;
  text-align: center;
}
@media screen and (max-width: 768px) {
  #contactWrap #policy {
    padding: 20px;
    font-size: 13px;
  }
}
#contactWrap #policy p {
  display: inline-block;
  text-align: left;
}
#contactWrap #policy #consent {
  margin-top: 15px;
}
#contactWrap #policy #consent label {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
#contactWrap #policy #consent label span {
  font-weight: 600;
}
#contactWrap .btn {
  margin-top: 40px;
}
#contactWrap .btn input[type="submit"], #contactWrap .btn button[type="submit"] {
  position: relative;
  top: 0;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 400px;
  height: 60px;
  margin: auto;
  border-radius: 5px;
  border-bottom: 3px #bf0000 solid;
  color: #fff;
  font-size: 20px;
  font-weight: 900;
  background-color: #e55a24;
  transition: all 0.3s;
}
#contactWrap #finish {
  text-align: center;
}
#newsletter {
  padding: 100px 0;
}
#policy #policyList {
  margin-top: 40px;
}
#policy #policyList > li:nth-child(n + 2) {
  margin-top: 50px;
}
#policy #policyList > li strong, #policy #policyList > li b {
  display: block;
  margin-bottom: 10px;
  font-size: 20px;
  font-weight: 600;
}
@media screen and (max-width: 768px) {
  #policy #policyList > li strong, #policy #policyList > li b {
    font-size: 18px;
  }
}
#policy #policyList > li b {
  margin-top: 20px;
}
#policy #policyList > li .dots {
  margin-top: 10px;
}
#policy #policyList > li a {
  color: #014603;
  text-decoration: underline;
}
#policy #policyList > li a:hover {
  text-decoration: none;
}
#attention .ttl01 {
  text-align: center;
  color: #E60000;
}
#popup1 {
  position: fixed;
  z-index: 1000;
  left: 0;
  top: 0;
  display: none;
  width: 100%;
  height: 100%;
  padding: 100px 15px;
  background-color: #fff;
  overflow-y: auto;
}
#popup1 .close {
  position: fixed;
  top: 25px;
  right: 20px;
  display: block;
  filter: brightness(0) saturate(100%) invert(33%) sepia(91%) saturate(3982%) hue-rotate(349deg) brightness(99%) contrast(94%);
}
@media (min-width: 769px) {
  #popup1 .close {
    width: 40px;
  }
}
@media screen and (max-width: 768px) {
  #popup1 .close {
    z-index: 9999;
    width: 20px;
  }
}
#popup1 ul {
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  width: 730px;
  margin: 0 auto;
}
#popup1 ul > li {
  position: relative;
  width: calc((100% - 10px) / 2);
}
#popup1 ul > li:nth-child(3n + 1) {
  width: 100%;
  margin-bottom: 10px;
}
#popup1 ul > li:nth-child(3n + 1):not(:first-child) {
  margin-top: 10px;
}
#popup1 ul > li:nth-child(3n) {
  margin-left: 10px;
}
#popup1 ul > li:last-child {
  margin-bottom: 0;
}
#popup1 ul > li div {
  position: relative;
  padding-top: 68.49%;
  overflow: hidden;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #ccc;
}
#popup1 ul > li div video {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#unsubscribe {
  margin-top: 100px;
}
@media screen and (max-width: 768px) {
  #unsubscribe {
    margin-top: 50px;
  }
}
.mw_wp_form_preview #policy {
  display: none;
}
.mw_wp_form_preview form #step li.current {
  color: #aaa !important;
  background-color: #f0f0f0 !important;
}
.mw_wp_form_preview form #step li.current:after {
  border-left-color: #f0f0f0 !important;
}
.mw_wp_form_preview form #step li.current + li {
  color: #fff !important;
  background-color: #FF6500 !important;
}
.mw_wp_form_preview form #step li.current + li:after {
  border-left-color: #FF6500 !important;
}
