.flex {display: flex}
.org {color: #2c4d7a}
.wh {color: #fff}
.f80 {font-size: 80%}
.f10 {font-size: 1rem}
.f28 {font-size: 2.8rem}

a, abbr, acronym, address, applet, article, aside, audio, b, big, blockquote, body, canvas, caption, center, cite, code, dd, del, details, dfn, div, dl, dt, em, embed, fieldset, figcaption, figure, footer, form, header, hgroup, html, i, iframe, img, ins, kbd, label, legend, li, mark, menu, nav, object, ol, output, pre, q, ruby, s, samp, section, small, span, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, time, tr, tt, u, ul, var, video {
	margin: 0;
	padding: 0;
	border: 0
}

table {
	border-collapse: collapse;
	border-spacing: 0
}

caption, td, th {
	text-align: left;
	vertical-align: middle;
	font-weight: 200
}

blockquote::after, blockquote::before, q::after, q::before {
	content: "";
	content: none
}

a {display: inline-block}
a img {border: none}

img {
	display: block;
	vertical-align: bottom;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
	backface-visibility: hidden
}

ul {list-style: none}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary {display: block}

a {
	color: #000;
	text-decoration: none
}

a:link {color: #000}
a:active {color: #000}
a:visited {color: #000}
a:hover {cursor: pointer}
p {margin: 0}

button, input, select, textarea {
	margin: 0;
	padding: 0;
	background: 0 0;
	border: none;
	border-radius: 0;
	outline: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none
}

:focus {outline: 0}

*, :after, :before {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box
}

html {
	font-size: 62.5%;
	line-height: 1
}

body {
	position: relative;
	color: #000;
	font-size: 1.6rem;
	line-height: 1.8;
	letter-spacing: .05em;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	font-style: normal;
	-webkit-text-size-adjust: 100%;
	margin: 0 auto
}

a {
	color: #000;
	text-decoration: none;
	-moz-transition: color .3s, opacity .3s, background .3s;
	-o-transition: color .3s, opacity .3s, background .3s;
	-webkit-transition: color .3s, opacity .3s, background .3s;
	transition: color .3s, opacity .3s, background .3s
}

a img {
	-moz-transition: color .3s, opacity .3s, background .3s;
	-o-transition: color .3s, opacity .3s, background .3s;
	-webkit-transition: color .3s, opacity .3s, background .3s;
	transition: color .3s, opacity .3s, background .3s
}

a:link {color: #000}
a:active {color: #000}
a:visited {color: #000}
a:hover {cursor: pointer}
a:hover img {opacity: .7}
.sp {display: none}

h2 {
	font-weight: 700;
	font-style: normal;
	font-size: 4.4rem;
	line-height: 1.4;
	text-align: center;
	margin: 0 0 5rem
}

h2+p {
	text-align: center;
	font-size: 2rem;
	margin-bottom: 5rem
}

h2 span.blk {
	color: #000;
	display: block;
	font-size: 2.8rem;
	margin-bottom: 1.5rem
}

h3 {
	font-size: 2.4rem;
	margin: 0 0 6rem;
	text-align: center;
	line-height: 1.4
}

.inner {
	width: 92%;
	max-width: 96rem;
	margin: 0 auto
}

.btn {
	width: 42rem;
	margin: 8rem auto 0
}

.btn a {
	background: #00d2fd;
	border: solid .4rem #00d2fd;
	color: #fff;
	font-size: 2.2rem;
	font-weight: 700;
	line-height: 6.2rem;
	width: 100%;
	border-radius: 4.5rem;
	text-align: center;
	-ms-box-shadow: 0 0 1rem .2rem rgba(0, 0, 0, .2);
	box-shadow: 0 0 1rem .2rem rgba(0, 0, 0, .2)
}

.btn a:hover {
	background: #fff;
	color: #00d2fd;
}

.btn.btn_wh a {
	background: #fff;
	color: #00d2fd;
}

.btn.btn_wh a:hover {
	background: #e6ebf1
}

.btn.btn_catalog{ margin-top: 3rem; }
.btn.btn_catalog a {
	background: #fff;
	border-color: #2c4d7a;
	color: #2c4d7a;
}
.btn.btn_catalog a:hover { background: #e6ebf1; }

.mainv .btn {
	margin: 5rem auto 0
}

/* .header {
	position: absolute;
	width: 100%;
	z-index: 9999;
	left: 0
}

.header .gNav {
	background: #fff
}

.header .gNav .inner {
	justify-content: space-between;
	align-items: center;
	height: 4.8rem
}

.header .gNav .logo img {
	width: 17.5rem
}

.header .gNav .nav li {
	width: 20rem
}

.header .gNav .nav li a {
	font-weight: 700;
	font-style: normal;
	color: #fff;
	background: #f08200;
	padding: 1rem 0;
	display: block;
	text-align: center
}

.header .gNav .nav li a:hover {
	color: #000
}

.header .gNav .nav li:first-child a {
	background: #c1c1c1
}

.header .page_nav {
	display: none;
	-moz-transition: .6s;
	-o-transition: .6s;
	-webkit-transition: .6s;
	transition: .6s;
	border-top: solid .2rem #fff
}

.header .page_nav ul li a {
	padding: 1rem 0
}

.header.fixed {
	position: fixed;
	box-shadow: 0 .1rem .5rem rgba(0, 0, 0, .3)
}

.header.fixed .page_nav {
	display: block
} */

/* 221201 ヘッダー挿げ替えの補正用 */
.header-title{
	max-width: none;
}
.header-nav{
	font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	letter-spacing: 0;
}
.header-nav h3.header-nav-title{
	line-height: 1;
	text-align: left;
}

/* 移植 */
.header-container {
	max-width: 134rem;
	word-wrap: break-word;
	overflow-wrap: break-word;
	margin-left: auto;
	margin-right: auto;
	padding: 0 80px;
}
@media screen and (max-width: 767px) {
	.header-container {
	  padding-left: 15px;
	  padding-right: 15px;
	  margin-left: 0;
	  margin-right: 0;
	}
}


  .header {
	position: absolute;
	width: 100%;
	height: 10rem;
	top: 0;
	left: 0;
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	background: #ffffff;
	z-index: 10;
  }
  @media screen and (max-width: 767px) {
	.header {
	  height: 6rem;
	}
  }
  .header-title {
	background: #ffffff;
	height: 10rem;
	padding: 2.8rem 5rem;
	box-sizing: border-box;
  }
  @media screen and (max-width: 767px) {
	.header-title {
	  height: 6rem;
	  padding: 1.7rem 0 1.6rem 1.5rem;
	}
  }
  .header-burger {
	display: none;
  }
  @media screen and (max-width: 767px) {
	.header-burger {
	  display: inline-block;
	  margin-right: 1.5rem;
	  position: relative;
	  cursor: pointer;
	}
	.header-burger > span {
	  display: block;
	  width: 3rem;
	  height: 0.3rem;
	  margin: 0.5rem auto;
	  transition: all 0.3s ease-in-out;
	  background-color: #2c4d7a;
	}
	.header-burger.active > span:nth-child(2) {
	  opacity: 0;
	}
	.header-burger.active > span:nth-child(1) {
	  transform: translateY(8px) rotate(45deg);
	}
	.header-burger.active > span:nth-child(3) {
	  transform: translateY(-8px) rotate(-45deg);
	}
	.header-burger.active ~ .header-nav {
	  left: 0;
	}
  }
  .header-nav {
	height: 100%;
	width: 100%;
  }
  .header-nav > ul {
	display: flex;
	justify-content: flex-end;
	height: 100%;
	font-size: 1.6rem;
	font-weight: bold;
  }
  .header-nav > ul > li {
	padding: 3.8rem 0;
	margin-right: 5rem;
	color: #333333;
	line-height: 1;
  }
  @media screen and (max-width: 1340px) {
	.header-nav > ul > li {
	  margin-right: 3.9vw;
	}
  }
  .header-nav > ul > li:hover {
	color: #2c4d7a;
  }
  .header-nav > ul > li a {
	color: #333333;
  }
  .header-nav > ul > li a:hover {
	color: #2c4d7a;
  }
  .header-nav > ul > li.header-nav-list {
	cursor: pointer;
  }
  .header-nav > ul > li.header-nav-list > div {
	display: none;
  }
  @media screen and (max-width: 767px) {
	.header-nav > ul > li.header-nav-list::after {
	  display: none;
	}
	.header-nav > ul > li.header-nav-list h3 {
	  padding: 2rem 0 2rem 1.5rem;
	}
	.header-nav > ul > li.header-nav-list.active > h3::after {
	  border: solid #2c4d7a;
	  border-width: 0 2px 2px 0;
	  display: inline-block;
	  height: calc((1rem / 3) * 2);
	  width: calc((1rem / 3) * 2);
	  transform: rotate(-135deg);
	  -webkit-transform: rotate(-135deg);
	}
  }
  .header-nav > ul > li.header-nav-list.active > div {
	display: block;
	position: absolute;
	background-color: #ffffff;
	top: 10rem;
	left: 0;
	right: 0;
	border-top: solid 3px #2c4d7a;
	box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.16);
  }
  @media screen and (max-width: 767px) {
	.header-nav > ul > li.header-nav-list.active > div {
	  border-top: 0;
	  position: unset;
	}
  }
  .header-nav > ul > li.header-nav-list.active > div > ul {
	display: flex;
	flex-wrap: wrap;
	margin: 5rem auto 3rem;
  }
  @media screen and (max-width: 767px) {
	.header-nav > ul > li.header-nav-list.active > div > ul {
	  display: block;
	  margin: 0;
	  padding: 0;
	}
  }
  .header-nav > ul > li.header-nav-list.active > div > ul > li {
	margin-bottom: 2rem;
	flex: 0 0 auto;
	width: 25%;
	box-sizing: border-box;
  }
  @media screen and (max-width: 767px) {
	.header-nav > ul > li.header-nav-list.active > div > ul > li {
	  padding: 2rem 1.5rem;
	  width: 100%;
	  margin-bottom: 0;
	  border-bottom: solid 2px #e6ebf1;
	}
	.header-nav > ul > li.header-nav-list.active > div > ul > li:last-child {
	  border-bottom: none;
	}
  }
  .header-nav > ul > li.header-nav-list.active > div > ul > li:last-child {
	padding-right: 0;
  }
  .header-nav > ul > li.header-nav-close {
	display: none;
	cursor: pointer;
  }
  @media screen and (max-width: 767px) {
	.header-nav {
	  top: 6rem;
	  left: -100rem;
	  width: 100%;
	  position: absolute;
	  transition: 0.3s;
	  z-index: 5;
	  border-top: solid 2px #2c4d7a;
	  background-color: #ffffff;
	}
	.header-nav > ul {
	  display: flex;
	  flex-direction: column;
	  height: auto;
	}
	.header-nav > ul .header-nav-single {
	  display: block;
	  padding: 2rem 1.5rem !important;
	}
	.header-nav > ul > li {
	  position: relative;
	  background-color: #e6ebf1;
	  border-bottom: solid 2px #ffffff;
	  margin-right: 0 !important;
	  padding: 0 !important;
	}
	.header-nav > ul > li > a {
	  display: flex;
	  align-items: center;
	}
	.header-nav > ul > li .icon {
	  position: relative;
	  width: 2.5rem;
	  margin-right: 1rem;
	}
	.header-nav > ul > li .icon::before {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  box-sizing: border-box;
	  border-radius: 50%;
	  border: 2px solid #2c4d7a;
	  display: inline-block;
	  height: 2.5rem;
	  width: 2.5rem;
	  transition: 0.3s;
	  transform: translate(-50%, -50%);
	}
	.header-nav > ul > li .icon::after {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 25%;
	  right: 25%;
	  margin: auto;
	  border: 2px solid #2c4d7a;
	  border-width: 0 2px 2px 0;
	  display: inline-block;
	  height: calc(2.5rem / 4);
	  width: calc(2.5rem / 4);
	  margin-top: calc((((100% - (2.5rem / 4)) / 2) / -2) + 1px);
	  right: calc((100% - (2.5rem / 4)) / 2);
	  transform: rotate(-45deg);
	  -webkit-transform: rotate(-45deg);
	}
	.header-nav > ul > li .icon:hover::before {
	  height: 4rem;
	  width: 4rem;
	}
  }
  @media screen and (max-width: 767px) and (max-width: 767px) {
	.header-nav > ul > li .icon:hover::before {
	  height: 2.5rem;
	  width: 2.5rem;
	}
  }
  @media screen and (max-width: 767px) {
	.btn-a:hover .header-nav > ul > li .icon::before {
	  height: 4rem;
	  width: 4rem;
	}
  }
  @media screen and (max-width: 767px) {
	.header-nav > ul > li.header-nav-close.header-nav-close {
	  display: block;
	  box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.16);
	  font-size: 1.6rem;
	  color: #333333;
	  font-weight: bold;
	  text-align: center;
	  background-color: #f6f6f6;
	  padding: 2rem 0 !important;
	}
  }
  .header-nav-title {
	display: inline-block;
	position: relative;
	font-size: 1.6rem;
	margin-bottom: 0;
  }
  @media screen and (max-width: 767px) {
	.header-nav-title {
	  width: calc(100% - 1.5rem);
	}
  }
  .header-nav-title::after {
	display: inline-block;
	content: "";
	position: absolute;
	bottom: -2rem;
	left: calc(50% - 0.5rem);
	border: solid #333333;
	border-width: 0 2px 2px 0;
	display: inline-block;
	height: calc((1rem / 3) * 2);
	width: calc((1rem / 3) * 2);
	box-sizing: content-box;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
  }
  @media screen and (max-width: 767px) {
	.header-nav-title::after {
	  right: 2rem;
	  left: auto;
	  bottom: 40%;
	  border: solid #2c4d7a;
	  border-width: 0 2px 2px 0;
	  display: inline-block;
	  height: calc((1rem / 3) * 2);
	  width: calc((1rem / 3) * 2);
	  transform: rotate(45deg);
	  -webkit-transform: rotate(45deg);
	}
  }
  .header-nav-title:hover::after {
	border: solid #2c4d7a;
	border-width: 0 2px 2px 0;
	display: inline-block;
	height: calc((1rem / 3) * 2);
	width: calc((1rem / 3) * 2);
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
  }


.btn-a {
	font-size: 2.1rem;
	font-weight: bold;
	line-height: 2.8rem;
	color: #333333;
	display: flex;
	align-items: center;
  }
  .btn-a.start {
	align-items: flex-start !important;
  }
  .btn-a:hover {
	color: #2c4d7a;
  }
  @media screen and (max-width: 767px) {
	.btn-a:hover {
	  color: #333333;
	}
  }
  .btn-a:hover .icon::before {
	height: 6rem;
	width: 6rem;
  }
  @media screen and (max-width: 767px) {
	.btn-a:hover .icon::before {
	  height: 2.5rem;
	  width: 2.5rem;
	}
  }
  @media screen and (max-width: 767px) {
	.btn-a:hover .icon {
	  position: relative;
	  width: 2.5rem;
	}
	.btn-a:hover .icon::before {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  box-sizing: border-box;
	  border-radius: 50%;
	  border: 2px solid #2c4d7a;
	  display: inline-block;
	  height: 2.5rem;
	  width: 2.5rem;
	  transition: 0.3s;
	  transform: translate(-50%, -50%);
	}
	.btn-a:hover .icon::after {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 25%;
	  right: 25%;
	  margin: auto;
	  border: 2px solid #2c4d7a;
	  border-width: 0 2px 2px 0;
	  display: inline-block;
	  height: calc(2.5rem / 4);
	  width: calc(2.5rem / 4);
	  margin-top: calc((((100% - (2.5rem / 4)) / 2) / -2) + 1px);
	  right: calc((100% - (2.5rem / 4)) / 2);
	  transform: rotate(-45deg);
	  -webkit-transform: rotate(-45deg);
	}
	.btn-a:hover .icon:hover::before {
	  height: 4rem;
	  width: 4rem;
	}
  }
  @media screen and (max-width: 767px) and (max-width: 767px) {
	.btn-a:hover .icon:hover::before {
	  height: 2.5rem;
	  width: 2.5rem;
	}
  }
  @media screen and (max-width: 767px) {
	.btn-a:hover .btn-a:hover .icon::before {
	  height: 4rem;
	  width: 4rem;
	}
  }
  .btn-a .icon {
	position: relative;
	width: 4rem;
	margin-right: 1.5rem;
  }
  .btn-a .icon::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	box-sizing: border-box;
	border-radius: 50%;
	border: 2px solid #2c4d7a;
	display: inline-block;
	height: 4rem;
	width: 4rem;
	transition: 0.3s;
	transform: translate(-50%, -50%);
  }
  .btn-a .icon::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 25%;
	right: 25%;
	margin: auto;
	border: 2px solid #2c4d7a;
	border-width: 0 2px 2px 0;
	display: inline-block;
	height: calc(4rem / 4);
	width: calc(4rem / 4);
	margin-top: calc((((100% - (4rem / 4)) / 2) / -2) + 1px);
	right: calc((100% - (4rem / 4)) / 2);
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
  }
  .btn-a .icon:hover::before {
	height: 6rem;
	width: 6rem;
  }
  @media screen and (max-width: 767px) {
	.btn-a .icon:hover::before {
	  height: 4rem;
	  width: 4rem;
	}
  }
  .btn-a:hover .btn-a .icon::before {
	height: 6rem;
	width: 6rem;
  }
  .btn-a .icon.multiline {
	height: 2.5rem;
  }
  @media screen and (max-width: 767px) {
	.btn-a .icon {
	  position: relative;
	  width: 2.5rem;
	  margin-right: 0.7rem;
	}
	.btn-a .icon::before {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  box-sizing: border-box;
	  border-radius: 50%;
	  border: 2px solid #2c4d7a;
	  display: inline-block;
	  height: 2.5rem;
	  width: 2.5rem;
	  transition: 0.3s;
	  transform: translate(-50%, -50%);
	}
	.btn-a .icon::after {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 25%;
	  right: 25%;
	  margin: auto;
	  border: 2px solid #2c4d7a;
	  border-width: 0 2px 2px 0;
	  display: inline-block;
	  height: calc(2.5rem / 4);
	  width: calc(2.5rem / 4);
	  margin-top: calc((((100% - (2.5rem / 4)) / 2) / -2) + 1px);
	  right: calc((100% - (2.5rem / 4)) / 2);
	  transform: rotate(-45deg);
	  -webkit-transform: rotate(-45deg);
	}
	.btn-a .icon:hover::before {
	  height: 4rem;
	  width: 4rem;
	}
  }
  @media screen and (max-width: 767px) and (max-width: 767px) {
	.btn-a .icon:hover::before {
	  height: 2.5rem;
	  width: 2.5rem;
	}
  }
  @media screen and (max-width: 767px) {
	.btn-a:hover .btn-a .icon::before {
	  height: 4rem;
	  width: 4rem;
	}
  }
  .btn-a.right {
	justify-content: flex-end;
  }
  .btn-a.small {
	font-size: 1.6rem;
	line-height: 2.4rem;
  }
  @media screen and (max-width: 767px) {
	.btn-a.small {
	  font-size: 1.4rem;
	}
  }
  @media screen and (min-width: 768px) {
	.btn-a.small:hover .icon:before {
	  width: 4rem;
	  height: 4rem;
	}
  }
  .btn-a.small .icon {
	position: relative;
	width: 2.5rem;
	margin-right: 1rem;
  }
  .btn-a.small .icon::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	box-sizing: border-box;
	border-radius: 50%;
	border: 2px solid #2c4d7a;
	display: inline-block;
	height: 2.5rem;
	width: 2.5rem;
	transition: 0.3s;
	transform: translate(-50%, -50%);
  }
  .btn-a.small .icon::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 25%;
	right: 25%;
	margin: auto;
	border: 2px solid #2c4d7a;
	border-width: 0 2px 2px 0;
	display: inline-block;
	height: calc(2.5rem / 4);
	width: calc(2.5rem / 4);
	box-sizing: content-box;
	margin-top: calc((((100% - (2.5rem / 4)) / 2) / -2) + 1px);
	right: calc((100% - (2.5rem / 4)) / 2);
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
  }
  .btn-a.small .icon:hover::before {
	height: 4rem;
	width: 4rem;
  }
  @media screen and (max-width: 767px) {
	.btn-a.small .icon:hover::before {
	  height: 2.5rem;
	  width: 2.5rem;
	}
  }
  .btn-a:hover .btn-a.small .icon::before {
	height: 4rem;
	width: 4rem;
  }
  @media screen and (max-width: 767px) {
	.btn-a.small .icon {
	  position: relative;
	  width: 2rem;
	  margin-right: 0.7rem;
	}
	.btn-a.small .icon::before {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  box-sizing: border-box;
	  border-radius: 50%;
	  border: 2px solid #2c4d7a;
	  display: inline-block;
	  height: 2rem;
	  width: 2rem;
	  transition: 0.3s;
	  transform: translate(-50%, -50%);
	}
	.btn-a.small .icon::after {
	  content: "";
	  position: absolute;
	  top: 50%;
	  left: 25%;
	  right: 25%;
	  margin: auto;
	  border: 2px solid #2c4d7a;
	  border-width: 0 2px 2px 0;
	  display: inline-block;
	  height: calc(2rem / 4);
	  width: calc(2rem / 4);
	  margin-top: calc((((100% - (2rem / 4)) / 2) / -2) + 1px);
	  right: calc((100% - (2rem / 4)) / 2);
	  transform: rotate(-45deg);
	  -webkit-transform: rotate(-45deg);
	}
  }
  @media screen and (max-width: 767px) {
	.btn-a.middle {
	  font-size: 1.6rem;
	}
  }
/* /移植 */

.mainv {
	padding-top: 4.8rem
}

.mainv .kv {
	position: relative
}

.mainv .kv .catch {
	position: absolute;
	top: 9%;
	width: 100%;
	margin: 0;
	text-align: center
}

.mainv .txt {
	padding: 5rem 0 6.5rem;
	text-align: center
}

.mainv .js-f {
	opacity: 0;
	visibility: hidden;
	transform: translateY(40px);
	-moz-transition: all 1.5s;
	-o-transition: all 1.5s;
	-webkit-transition: all 1.5s;
	transition: all 1.5s
}

.mainv .js-f.is-show {
	opacity: 1;
	visibility: visible;
	transform: translateY(0)
}

.page_nav {
	background: #2c4d7a
}

.page_nav ul li {
	border-right: solid .2rem #fff;
	width: calc(100% / 7);
}

.page_nav ul li:first-child {
	border-left: solid .2rem #fff
}

.page_nav ul li a {
	padding: 5.6rem 0 1rem;
	display: block;
	text-align: center;
	height: 100%;
	position: relative
}

.page_nav ul li a img {
	position: absolute;
	left: 50%;
	top: 10%;
	width: 4rem;
	height: 4rem;
	transform: translateX(-50%)
}

.page_nav ul li a .on {
	opacity: 0
}

.page_nav ul li a span {
	font-weight: 700;
	font-style: normal;
	color: #fff;
	line-height: 1.2;
	display: inline-block;
	vertical-align: middle
}

.page_nav ul li a:hover {
	background: #e6ebf1
}

.page_nav ul li a:hover .off {
	opacity: 0
}

.page_nav ul li a:hover .on {
	opacity: 1
}

.page_nav ul li a:hover span {
	color: #2c4d7a;
	-moz-transition: .3s;
	-o-transition: .3s;
	-webkit-transition: .3s;
	transition: .3s
}

section {
	padding-top: 10rem
}

.sec_01 h2 img {
	margin-bottom: 2.5rem
}

.cta {
	margin-top: 10rem;
	position: relative
}

.cta:before {
	content: "";
	position: absolute;
	width: 100%;
	height: 6.8rem;
	background: url(../img/cta_arrow.png) center/contain no-repeat;
	top: 0
}

.cta .txt {
	text-align: center
}

.cta .txt .catch {
	font-size: 2.2rem;
	color: #2c4d7a;
	text-align: center;
	margin-bottom: 3.5rem;
	font-weight: 700;
	font-style: normal
}

@media all and (-ms-high-contrast:active), (-ms-high-contrast:none) {
	.sec_03 h2 {
		letter-spacing: 0
	}
}

.sec_03 h2.ie {
	letter-spacing: 0
}

.sec_03 .cont {
	width: 83%;
	margin: 0 auto 7.5rem
}

.sec_03 .cont .point {
	position: relative;
	margin-bottom: 3.5rem
}

.sec_03 .cont .point .ic {
	width: 9.2rem;
	height: 9.2rem;
	border-radius: 50%;
	background: #2c4d7a;
	margin: 0 auto;
	color: #fff;
	font-weight: 700;
	font-style: normal;
	font-size: 4rem;
	text-align: center;
	line-height: 1;
	display: flex;
	justify-content: center;
	align-items: center
}

.sec_03 .cont .point .ic span.top {
	font-size: 1.6rem;
	display: block
}

.sec_03 .cont .point:after, .sec_03 .cont .point:before {
	content: "";
	width: 42%;
	height: .3rem;
	background: #2c4d7a;
	position: absolute;
	transform: translateY(-50%);
	top: 50%
}

.sec_03 .cont .point:before {
	left: 0
}

.sec_03 .cont .point:after {
	right: 0
}

.sec_03 .cont .wrap p {
	width: 50%;
	padding-right: 2rem
}

.sec_03 .cont .wrap .image {
	width: 50%
}

.sec_03 .cont.pt2 .wrap p {
	order: 2;
	padding-right: 0;
	padding-left: 2rem
}

.sec_03 .cont.pt2 .wrap p .f10 {
	display: block;
	line-height: 1.6;
	margin-top: .5rem
}

.sec_03 .cont.pt2 .wrap .image {
	order: 1
}

.sec_04 .cont {
	width: 83%;
	margin: 0 auto 8rem
}

.sec_04 .cont h3 {
	color: #2c4d7a;
	border-top: solid .3rem #2c4d7a;
	border-bottom: solid .3rem #2c4d7a;
	padding: .5rem 0
}

.sec_04 .cont h3 span {
	margin-right: 1.2rem
}

.sec_04 .cont .wrap .image {
	width: 50%;
	padding-right: 7.5%
}

.sec_04 .cont .wrap p {
	width: 50%
}

.sec_04 .cont .wrap p span.org {
	display: block;
	font-weight: 700
}

.sec_04 .cont .wrap p span.f10 {
	display: block;
	margin-top: .5rem
}

.sec_06 .question {
	margin: 9.5rem 0 3rem;
	position: relative
}

.sec_06 .question:hover {
	cursor: pointer
}

.sec_06 .question:before {
	content: "";
	width: .6rem;
	height: 3.4rem;
	background: #2c4d7a;
	position: absolute;
	right: 1.4rem;
	top: 50%;
	transform: translateY(-50%)
}

.sec_06 .question:after {
	content: "";
	width: 3.4rem;
	height: .6rem;
	background: #2c4d7a;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%)
}

.sec_06 .question .wrap {
	display: flex;
	align-items: center
}

.sec_06 .question .wrap span {
	width: 6.2rem;
	line-height: 5.4rem;
	border-radius: 50%;
	border: solid .4rem #2c4d7a;
	background: #e6ebf1;
	color: #2c4d7a;
	font-size: 3.4rem;
	font-weight: 700;
	text-align: center;
	display: block;
	margin-right: 1.8rem
}

.sec_06 .question .wrap p {
	text-align: left;
	font-size: 2.4rem;
	font-weight: 700;
	width: 82%
}

.sec_06 .question.open:before {
	content: none
}

.sec_06 .answer {
	display: none
}

.sec_06 .answer .wrap {
	display: flex;
	align-items: center
}

.sec_06 .answer .wrap span {
	width: 6.2rem;
	line-height: 6.2rem;
	border-radius: 50%;
	background: #2c4d7a;
	color: #fff;
	font-size: 4rem;
	font-weight: 700;
	text-align: center;
	display: block;
	margin-right: 1.8rem
}

.sec_06 .answer .wrap p {
	width: 82%
}

.sec_06 .answer.a_1 .wrap {
	align-items: flex-start
}

/*220701 追加*/
.sec_assets_01 h2 {	margin: 0 0 20px;}
.sec_assets_01 .flex_wrap ul{
	display: flex;
	flex-wrap: wrap;
	border: solid #2c4d7a;
	border-width: 3px 0;
	padding: 20px 0;
	margin-bottom: 20px;
}
.sec_assets_01 .flex_wrap ul > li{width: calc(100% / 3);}
.sec_assets_01 .txt01{
	font-size: 1.8rem;
	text-align: center;
}
.sec_assets_01 .flex_wrap ul > li > a{
	font-size: 1.8rem;
	text-decoration: underline;
}
.sec_assets_01 .flex_wrap ul > li > a:hover{
	opacity: 0.5;
	text-decoration: none;
}

/*220804 追加*/
.sec_assets_02 .top_table01 {
	width: 100%;
	background: #fff;
	/*max-width: 96rem;*/
}
.sec_assets_02 .top_table01 thead th{background: #fff;}
.sec_assets_02 .top_table01 thead th span{
	display: block;
	font-size: 20px;
	font-weight: bold;
}
.sec_assets_02 .top_table01 th img{
	max-height: 140px;
    margin: 10px auto;
}

.sec_assets_02 .top_table01 tbody th,
.sec_assets_02 .top_table01 tbody td{
	border:1px solid #989898;
	/*font-size:16px;*/
	font-size: 1.4rem;
	text-align: center;
	padding:5px;
}
.sec_assets_02 .top_table01 tbody th{background: #e6ebf1;}
/*.sec_assets_02 .top_table01 tbody th:nth-last-child(-n+3){min-width: 1.4rem;}*/
.sec_assets_02 .top_table01 tbody td{
}
.sec_assets_02 .top_table01 tbody td.yellow_cell{
	background: #e6ebf1;
	text-align: left;
}
.sec_assets_02 .top_table01 tbody td.non_border_cell{
	border-left-width: 0;
	border-right-width: 0;
}
.sec_assets_02 .txt01{font-size: 1.4rem;}

@media only screen and (max-width: 750px) {
	.scroll{
		overflow: auto;
		white-space: nowrap;
	}
	.scroll::-webkit-scrollbar{}
	.scroll::-webkit-scrollbar-track{background: #F1F1F1;}
	.scroll::-webkit-scrollbar-thumb{background: #BCBCBC;}
}
.uetsuki {
	font-size:80%;
	font-weight: bold;
	vertical-align:super;
}
/* /220804 追加*/


.sec_07 {
	padding-bottom: 10rem
}

.sec_07 dl {
	flex-wrap: wrap;
	font-weight: 700;
	border-top: solid .3rem #2c4d7a
}

.sec_07 dl dt {
	width: 14%;
	border-bottom: solid .3rem #2c4d7a;
	background: #e6ebf1;
	display: flex;
	align-items: center;
	justify-content: center
}

.sec_07 dl dd {
	width: 86%;
	padding: 3.5rem 0 3.5rem 2.3rem;
	border-bottom: solid .3rem #2c4d7a
}

.sec_07 dl dd a {
	text-decoration: underline
}

.sec_08 {
	background: #2c4d7a;
	padding-bottom: 10rem
}

.sec_08 h2 {margin-bottom: 10rem}

.sec_08 .wrap {
	width: 83%;
	margin: 0 auto;
	padding: 7rem 5rem;
	background: #fff;
	border-radius: 1rem
}

.sec_08 .wrap .form .txt {
	width: 80%;
	margin: 0 auto;
	padding: 2.4rem 0 0 14rem;
	position: relative
}

.sec_08 .wrap .form .txt:before {
	content: "";
	width: 23%;
	height: 12.6rem;
	background: url(../img/sec_08_img.png) top/contain no-repeat;
	position: absolute;
	left: 0;
	top: 0
}

.sec_08 .wrap .form .txt p {
	font-size: 1.8rem;
	font-weight: 700
}

.sec_08 .wrap .form .txt p.org {
	color: #2c4d7a;
	font-size: 2.2rem;
	margin-bottom: 1rem
}

.sec_08 .wrap .form .btn_wrap {
	justify-content: space-between
}

.sec_08 .wrap .form .btn_wrap .btn {
	width: 48%
}

.sec_08 .wrap .form .btn_wrap .btn a {
	font-size: 2rem
}

.sec_08 .wrap .tel {
	padding-top: 7rem;
	border-top: solid .3rem #2c4d7a
}

.sec_08 .wrap .tel .txt {
	text-align: center;
	margin-bottom: 7rem
}

.sec_08 .wrap .tel .txt p {
	font-size: 1.8rem;
	font-weight: 700;
	text-align: center
}

.sec_08 .wrap .tel .txt p.org {
	color: #2c4d7a;
	font-size: 2.2rem;
	margin-bottom: 1rem
}

.sec_08 .wrap .tel .tel_btn a {
	display: block
}

/* 221201 追加 */
.banner_area{ margin-top: 40px; }
.banner_box{
	background-color: #ffffff;
	flex: 1 1 0px;
	width: calc(50% - 20px);
	max-width: 580px;
	box-shadow: 0 3px 10px 0 rgba(0, 0, 0, 0.16);
	line-height: 1;
	margin: 0 auto;
}
.banner_box a{
	-moz-transition: color .3s, opacity .3s, background .3s;
	-o-transition: color .3s, opacity .3s, background .3s;
	-webkit-transition: color .3s, opacity .3s, background .3s;
	transition: color .3s, opacity .3s, background .3s;
}
.banner_box a:hover {
	opacity: 0.5;
}
.banner_box img {
	width: 100%;
	margin: 0 auto 2rem;
	display: block;
}
.banner_box .txt_box01 .txt01 {
	font-size: 22px;
	font-weight: bold;
	text-align: center;
	margin-bottom: 20px;
}
.banner_box .txt_box01 .txt02 {
	position: relative;
	color: #2c4d7a;
	font-size: 22px;
	font-weight: bold;
	text-align: right;
	margin-right: 1rem;
	padding: 0 0 3rem 3rem;
}
.banner_box .txt_box01 .txt02::before {
	content: "";
	position: absolute; 
	border: solid #2c4d7a;
	border-width: 0 3px 3px 0;
	top: 6px;
	height: calc(4rem / 4);
	width: calc(4rem / 4);
	box-sizing: content-box;
	transform: rotate(-45deg);
	margin-right: 1rem;
	right: 16rem;
}

.banner_box .txt_box01 .txt03 {
	font-size: 20px;
	border: 2px solid #f23400;
	text-align: center;
	text-indent: -1em;
	margin: 0 1em 10px;
	padding: 0.5rem 0.3em 0.5rem 1.3em;
}
@media screen and (max-width: 1024px) {
	.banner_box .txt_box01 .txt03 {font-size: 16px;}
}
@media screen and (max-width: 868px) {
	.banner_box .txt_box01 .txt03 {font-size: 14px;}
}

@media screen and (max-width: 767px) {
	.banner_box { width: 100%; }
	.banner_box .txt_box01 .txt03 {font-size: 22px;}
}

@media screen and (max-width: 540px) {
	.banner_box .txt_box01 .txt03 {	font-size: 18px;}
}


/* EXPOポップアップ 250120版 */
.expo_pop{
	display: none;
	position: fixed;
	bottom: 20px;
	right: 20px;
	border: solid 4px #2c4d7a;
	background: #fffef2;
	max-width: 500px;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
	text-align: center;
	opacity: 0.9;
	z-index: 999999;
	padding: 10px 20px 20px;
}
.expo_pop_inner{
	display: flex;
    justify-content: space-around;
    align-items: center;
}
#expo_close {
	position: absolute;
	top: 10px;
	right: 10px;
	background: #a2a2a2;
	color: #fff;
	font-weight: bold;
	line-height: 0;
	width: 36px;
	height: 36px;
	padding: .5rem;
}
.expo_pop ._img01{
	width: calc(100% - 72px);
	margin: 0 auto 5px;
}
.expo_pop ._txt01 {
	color:#2c4d7a;
	margin-bottom: 5px;
}
.expo_pop ._txt02 {
	display: inline-block;
	font-size: 16px;
	text-align: left;
	margin-bottom: 5px;
}
.expo_pop ._txt03{
	color:#2c4d7a;
	font-size: 18px;
	text-align: left;
}
.expo_pop figure.qr img{max-width: 80px;}
.expo_pop .fa-play {
	color: #7dabcf;
	margin: 0 15px;
}
.expo_pop ._txt04{
	font-size: 14px;
	margin-bottom: 10px;
}
#expo_link {
	display: block;
	background: #2c4d7a;
	border: none;
	color: #fff;
	font-size: 24px;
	border-radius: 1rem;
	cursor: pointer;
	
	-moz-transition: color .3s, opacity .3s, background .3s;
	-o-transition: color .3s, opacity .3s, background .3s;
	-webkit-transition: color .3s, opacity .3s, background .3s;
	transition: color .3s, opacity .3s, background .3s;

	margin: 10px 0;
	padding: 5px;
}
#expo_link i {margin-left: .5em;}
#expo_close:hover,
#expo_link:hover {opacity: 0.5;}
#expo_link a {
	color: #fff !important;;
	font-weight: bold;
	text-decoration: none;
	padding: .5rem 1rem;
}
@media screen and (max-width: 767px) {
	.expo_pop{
		width:90%;
		bottom: 0;
		right: 0;
		left: 0;
		margin: 0 auto 10px;
		padding: 10px;
	}
	#expo_close {
		font-size: 16px;
		width: 30px;
		height: 30px;
		padding: .5rem;
	}
	.expo_pop ._img01{width: calc(100% - 65px);}
	.expo_pop ._txt01,
	.expo_pop ._txt03 {font-size: 14px;}
	.expo_pop ._txt02 {
		font-size: 14px;
		text-indent: -2.7em;
	}
	.expo_pop ._txt04 {font-size: 13px;}
	#expo_link {font-size: 18px;}
}


.page_top {
	position: fixed;
	right: 5rem;
	bottom: 5rem;
	display: none
}

#footer {
	padding: 7.5rem 0 5rem;
	background: #7dabcf;
}

#footer .logo {
	width: 42.6rem;
	margin: 0 auto 4.3rem
}

#footer ul {
	justify-content: center;
	margin-bottom: 1.5rem
}

#footer ul li {
	margin: 0 5.7rem
}

#footer ul li a {
	color: #fff
}

#footer .copy {
	color: #fff;
	text-align: center;
	font-size: 1.2rem
}

@media (min-width:1025px) {
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none
	}
}

@media (min-width:751px) and (max-width:1024px) {
	a:hover img {
		opacity: 1
	}
	a[href*="tel:"] {
		pointer-events: none;
		cursor: default;
		text-decoration: none
	}
/* 	.header .inner {
		width: 100%
	}
	.header .logo {
		margin-left: 4%
	} */
	.page_nav ul li a {
		font-size: 1.4rem
	}
	.sec_03 .cont {
		width: 100%
	}
	.sec_04 .cont {
		width: 100%
	}
	.sec_06 p.question {
		padding-right: 6rem
	}
	.sec_07 dl dd.tel_fax a {
		pointer-events: none!important;
		cursor: default!important;
		text-decoration: none!important
	}
	.sec_08 .wrap {
		width: 100%
	}
	.sec_08 .wrap .form .txt p.org {
		font-size: 2rem
	}
	.sec_08 .wrap .form .btn_wrap .btn a {
		font-size: 1.6rem
	}
	.page_top {
		right: 3%;
		bottom: 3%
	}
}

@media (max-width:750px) {
	a:hover img {
		opacity: 1
	}
	body {
		font-size: 1.4rem
	}
	.pc {
		display: none
	}
	.sp {
		display: block
	}
	h2 {
		font-size: 6.7vw;
		margin-bottom: 3rem
	}
	h2 span.blk {
		font-size: 4vw;
		margin-bottom: 1rem
	}
	h2+p {
		margin-bottom: 3rem;
		font-size: 3.8vw
	}
	h3 {
		font-size: 5.4vw;
		margin-bottom: 4rem;
	}
	.btn {
		width: 100%;
		margin-top: 3rem
	}
	.btn a {
		font-size: 1.8rem;
		font-size: 4.8vw;
		line-height: 5.2rem;
		-ms-box-shadow: 0 0 .5rem .1rem rgba(0, 0, 0, .2);
		box-shadow: 0 0 .5rem .1rem rgba(0, 0, 0, .2)
	}
	.btn a:hover {
		background: #00d2fd;
		color: #fff
	}
	.btn.wh a:hover {
		background: #fff
	}
	.mainv .btn {
		width: 92%;
		margin: 1.5rem auto 0
	}
	/* .header {
		height: 5rem
	}
	.header .gNav .inner {
		width: 100%;
		height: 5rem;
		align-items: normal
	}
	.header .gNav .logo {
		display: flex;
		align-items: center;
		margin-left: 4%
	}
	.header .gNav .logo img {
		width: 10rem
	}
	.header .gNav .nav {
		width: 48%
	}
	.header .gNav .nav li {
		width: 50%
	}
	.header .gNav .nav li a {
		font-size: 3.2vw;
		line-height: 1.4;
		padding: 0;
		height: 100%;
		display: flex;
		justify-content: center;
		align-items: center
	}
	.header .gNav .nav li a:hover {
		color: #fff
	}
	.header.fixed .page_nav {
		display: none
	} */
	.mainv {
		padding-top: 5rem
	}
	.mainv .kv .catch {
		width: 90%;
		top: 7%;
		left: 50%;
		transform: translateX(-50%)
	}
	.mainv .txt {
		padding: 3rem 0
	}
	.page_nav .inner {
		width: 100%
	}
	.page_nav ul {
		flex-wrap: wrap
	}
	.page_nav ul li {
		width: 33.3333%
	}
/*220701 追加*/
	.page_nav ul li:nth-child(n+4) {
		width: 25%;
	}		
	.page_nav ul li:first-child {
		border-left: none
	}
/*220701 改修*/
	.page_nav ul li:nth-child(3),
	.page_nav ul li:nth-child(7) {
		border-right: none
	}
	.page_nav ul li:first-child, .page_nav ul li:nth-child(2), .page_nav ul li:nth-child(3) {
		border-bottom: solid .2rem #fff
	}
	.page_nav ul li a img {
		max-width: 2.5rem;
		max-height: 2.5rem;
		top: 24%
	}
	.page_nav ul li a span {
		font-size: 3.5vw
	}
	.page_nav ul li a:hover {
		background: #2c4d7a
	}
	.page_nav ul li a:hover .off {
		opacity: 1
	}
	.page_nav ul li a:hover .on {
		opacity: 0
	}
	.page_nav ul li a:hover span {
		color: #fff
	}
	section {
		padding-top: 5rem
	}
	.sec_02 .inner {
		width: 100%
	}
	.sec_02 h2, .sec_02 p {
		padding: 0 4%
	}
	.sec_02 p {
		text-align: left
	}
	.sec_02 p .f10 {
		margin-top: 1rem
	}
	.sec_02 p .f10 .n01, .sec_02 p .f10 .n02 {
		display: block;
		padding-left: 2.5rem;
		position: relative
	}
	.sec_02 p .f10 .n01:before, .sec_02 p .f10 .n02:before {
		content: "※1";
		position: absolute;
		left: 0
	}
	.sec_02 p .f10 .n02:before {
		content: "※2"
	}
	.cta {
		margin-top: 5rem;
		padding-top: 10rem
	}
	.cta .btn {
		margin-bottom: 2.5rem
	}
	.sec_03 .cont {
		width: 100%;
		margin-bottom: 4.5rem
	}
	.sec_03 .cont .point {
		margin-bottom: 1.6rem
	}
	.sec_03 .cont .point .ic {
		width: 7.5rem;
		height: 7.5rem;
		font-size: 3.2rem
	}
	.sec_03 .cont .point .ic span.top {
		font-size: 1.2rem
	}
	.sec_03 .cont .point:after, .sec_03 .cont .point:before {
		width: 34%
	}
	.sec_03 .cont .wrap {
		flex-wrap: wrap
	}
	.sec_03 .cont .wrap p {
		width: 100%;
		order: 2;
		padding: 0
	}
	.sec_03 .cont .wrap .image {
		width: 100%;
		order: 1;
		margin-bottom: 3rem
	}
	.sec_03 .cont.pt2 .wrap p {
		padding: 0
	}
	.sec_04 h2 span.blk {
		font-size: 6.7vw
	}
	.sec_04 .cont {
		width: 100%;
		border: solid .2rem #2c4d7a;
		border-radius: .5rem;
		margin-bottom: 4.5rem
	}
	.sec_04 .cont h3 {
		background: #2c4d7a;
		border: none;
		color: #fff;
		height: 7.5rem;
		text-align: left;
		padding: 0 8%;
		font-size: 4.5vw;
		display: flex;
		align-items: center;
		margin: 0;
		position: relative;
		cursor: pointer
	}
	.sec_04 .cont h3 span {
		font-size: 2.7rem;
		margin-right: 5vw
	}
	.sec_04 .cont h3:before {
		content: "";
		width: .3rem;
		height: 1.5rem;
		background: #fff;
		position: absolute;
		right: 1.6rem;
		top: 50%;
		transform: translateY(-50%)
	}
	.sec_04 .cont h3:after {
		content: "";
		width: 1.5rem;
		height: .3rem;
		background: #fff;
		position: absolute;
		right: 1rem;
		top: 50%;
		transform: translateY(-50%)
	}
	.sec_04 .cont h3.open:before {
		content: none
	}
	.sec_04 .cont .wrap {
		display: none;
		padding: 4rem 4%
	}
	.sec_04 .cont .wrap .image {
		width: 100%;
		padding: 0 4%;
		margin-bottom: 4rem
	}
	.sec_04 .cont .wrap p {
		width: 100%
	}
	.sec_05 {
		padding-bottom: 5rem
	}
	.sec_06 .inner {
		padding: 0 4%
	}
	.sec_06 .question {
		margin: 3rem 0 1rem
	}
	.sec_06 .question .wrap span {
		width: 3rem;
		line-height: 2.6rem;
		border-width: .2rem;
		font-size: 1.7rem
	}
	.sec_06 .question .wrap p {
		font-size: 4vw;
		width: 78%
	}
	.sec_06 .question:before {
		width: .3rem;
		height: 1.5rem;
		right: .6rem
	}
	.sec_06 .question:after {
		width: 1.5rem;
		height: .3rem
	}
	.sec_06 .answer .wrap {
		align-items: flex-start
	}
	.sec_06 .answer .wrap span {
		width: 3rem;
		line-height: 3rem;
		font-size: 1.7rem
	}
	.sec_06 .answer .wrap p {
		width: 78%
	}
	.sec_06 .btn {
		margin-top: 5rem
	}
/*220715 追加*/
	.sec_assets_01 .flex_wrap ul{display: block;}
	.sec_assets_01 .flex_wrap ul > li{width: 100%;}
	.sec_assets_01 .txt01,
	.sec_assets_01 .flex_wrap ul > li > a{
		font-size: 3.5vw;
	}

	.sec_07 {
		padding-bottom: 6rem
	}
	.sec_07 dl dt {
		width: 27%;
		font-size: 4vw
	}
	.sec_07 dl dd {
		width: 73%;
		font-size: 3.4vw;
		padding: 1.4rem 0 1.4rem 1.4rem
	}
	.sec_07 dl dd.tel_fax a {
		pointer-events: none!important;
		cursor: default!important;
		text-decoration: none!important
	}
	.sec_08 {
		padding-bottom: 3.8rem
	}
	.sec_08 h2 {
		margin-bottom: 4rem
	}
	.sec_08 .wrap {
		width: 100%;
		padding: 2.6rem 4% 4rem
	}
	.sec_08 .wrap .form {
		margin-bottom: 4.5rem
	}
	.sec_08 .wrap .form .txt {
		width: 92%;
		padding: 0
	}
	.sec_08 .wrap .form .txt p.org {
		padding-left: 7.2rem;
		font-size: 5.4vw;
		margin-bottom: 2rem
	}
	.sec_08 .wrap .form .txt p.org+p {
		text-align: center;
		font-size: 3.5vw
	}
	.sec_08 .wrap .form .txt:before {
		width: 6rem;
		height: 7rem
	}
	.sec_08 .wrap .form .btn_wrap {
		display: block
	}
	.sec_08 .wrap .form .btn_wrap .btn {
		width: 100%
	}
	.sec_08 .wrap .form .btn_wrap .btn a {
		font-size: 4.8vw
	}
	.sec_08 .wrap .tel {
		padding-top: 2.7rem;
		border-width: .2rem
	}
	.sec_08 .wrap .tel .txt {
		margin-bottom: 4.5rem
	}
	.sec_08 .wrap .tel .txt p.org {
		font-size: 5.4vw
	}
	.sec_08 .wrap .tel .txt p.org+p {
		font-size: 3.5vw
	}
	.sec_08 .wrap .tel .tel_btn a {
		pointer-events: auto
	}
	.page_top {
		width: 6rem;
		height: 6rem;
		right: 3%;
		bottom: 3%
	}
	#footer {
		padding: 4rem 0 1.8rem
	}
	#footer .logo {
		width: 60%;
		margin-bottom: 2.5rem
	}
	#footer ul {
		margin-bottom: 3.4rem
	}
	#footer ul li {
		margin: 0
	}
	#footer ul li:first-child {
		margin-right: 4rem
	}
}

/* 汎用 2221201 */
.mb-10{margin-bottom: 10px;}
.mb-20{margin-bottom: 20px;}
.mb-30{margin-bottom: 30px;}
.mb-40{margin-bottom: 40px;}
.txt-left {text-align: left;}
.txt-center {text-align: center;}
.txt-right {text-align: right;}
