@charset "UTF-8";

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400&display=swap');

/*==========================================
 PC  2000px-1280px
 Tab 1279px-481px
 SP  480px-
===========================================*/
html { font-size: 18px; }
@media screen and (max-width: 1279px) {
	html { font-size: 1.406vw; }
}
@media screen and (max-width: 798px) {
	html { font-size: 1.875vw; }
}
body {
  width: 100%;
  color: #323232;
  line-height: 1.5;
  font-size: 1rem;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  background: #fff;
}
:focus {
    outline: none;
}
*, *:before, *:after {
  box-sizing: border-box;
}
a {
  color: #323232;
  text-decoration: none;
}
a:hover {
  color: #a8d7cb;
}
a, a:before, a:after,
button {
	transition-duration: .3s;
}
p {
	text-align: left;
	line-height: 2;
}
strong { font-weight: bold; }
@media screen and (max-width: 768px) {
	a[href^="tel:"],
	#content_area a[href^="tel:"]{
    pointer-events: none;
		text-decoration: none;
  }
}
img {
  -webkit-backface-visibility: hidden;
}
.cf:before, .cf:after {
	content:"";
	display:block;
	overflow:hidden;
}
.cf:after {
	clear:both;
}
.hidden {
	display: none;
}
.bg-gray {
	background-color: #f0f0f2;
}
.bg-blue {
	background-color: #4587ff;
	color: #fff;
}
.bg-green {
	background-color: #dde7e4;
}
.txt-center {
	text-align: center;
}
/*------------
 hoverスタイル
------------*/
.hover_opacity {
  transition-duration: .3s;
}
.hover_opacity:hover {
  opacity: .7;
}

.sp-on { display: none; }
@media screen and (max-width: 768px) {
  .sp-on { display: block; }
	.sp-none { display: none; }
  .pc-on { display: none; }
}

.default-inner {
	display: inline-block;
	width: 2000px;
	margin: 0 -50%;
	padding: 200px 0;
}
@media screen and (max-width: 1279px) {
	.default-inner {
		width: 100%;
		margin: 0;
		padding: 16.875vw 16.406vw;
	}
}
@media screen and (max-width: 768px) {
	.default-inner {
		padding: 30.729vw 11.563vw;
	}
}

main section {
	text-align: center;
	position: relative;
	overflow: hidden;
}
main section .bg-wrapper {
	display: inline-block;
	margin: 0 -50%;
	overflow: hidden;
}
main section .bg img {
	width: 2000px;
	margin: 0 -50%;
}
main section .inner {
	position: absolute;
	top: 20%;
	left: 0;
	right: 0;
}
h2 {
	margin-bottom: 40px;
}
@media screen and (max-width: 1279px) {
	main section .bg-wrapper {
		width: 156%;
		margin: 0 -28%;
	}
	img {
		max-width: 100%;
	}
	h2 {
		margin-bottom: 1.7vw;
	}
	h2 img {
		height: 4.531vw;
	}
}
@media screen and (max-width: 768px) {
	main section .bg-wrapper {
		width: 100%;
		margin: 0;
	}
	main section .inner {
		top: 36.25vw;
		padding-top: 0;
	}
	h2 {
		margin-bottom: 5.208vw;
	}
	h2 img {
		height: 8.333vw;
	}
}

#home-title .bg-wrapper {
	background-color: #439da5;
}
#home-title .inner {
	margin-top: 70px;
	padding: 0 5%;
}
#home-title .logo {
	position: relative;
}
#home-title .circle {
	position: absolute;
	top: -60px;
	left: calc(50% - 550px);
}
@media screen and (max-width: 1279px) {
	#home-title .inner {
		margin-top: 5%;
	}
	#home-title .inner img {
		width: 63%;
	}
	#home-title .circle {
		top: -34%;
		left: calc(50% - 49%);
	}
	#home-title .circle img {
		width: 15vw;
	}
}
@media screen and (max-width: 768px) {
	#home-title .inner {
		margin-top: 27%;
	}
	#home-title .inner img {
		width: 98.9%;
	}
	#home-title .circle {
		top: -33vw;
		left: 0.5%;
	}
	#home-title .circle img {
		width: 23.5vw;
	}
}

#home-debut {
	margin: -185px auto -210px;
	z-index: 5;
}
#home-debut .inner {
	margin-top: 70px;
}
#home-debut .debut-txt {
	position: relative;
}
#home-debut .debut-img-1 {
	position: absolute;
	top: -120px;
	left: -60px;
}
#home-debut .debut-img-2 {
	position: absolute;
	top: -120px;
	right: -150px;
}
#home-debut .debut-img-3 {
	position: absolute;
	bottom: -80px;
	left: -280px;
}
#home-debut .inner p {
	max-width: 41rem;
	margin: 0 auto;
}
@media screen and (max-width: 1279px) {
	#home-debut {
		margin: -14.7% 0 -17%;
	}
	#home-debut .inner {
		margin: 0;
		padding: 5% 0;
	}
	#home-debut .inner p {
		line-height: 2.1;
	}
	#home-debut .debut-img-1 {
		top: -10vw;
		left: -5vw;
	}
	#home-debut .debut-img-1 img {
		width: 10vw;
	}
	#home-debut .debut-img-2 {
		top: -8.5vw;
		right: -8.5vw;
	}
	#home-debut .debut-img-2 img {
		width: 16vw;
	}
	#home-debut .debut-img-3 {
		bottom: -8vw;
		left: -22vw;
	}
	#home-debut .debut-img-3 img {
		width: 20vw;
	}
}
@media screen and (max-width: 768px) {
	#home-debut {
		margin: -15.5% 0 -15%;
	}
	#home-debut .inner {
		padding-top: 0;
	}
	#home-debut .inner p {
		font-size: 3.333vw;
		width: 68.542vw;
		min-width: 200px;
		line-height: 1.8;
	}
	#home-debut .debut-img-1 {
		top: -25.833vw;
		left: -3.542vw;
	}
	#home-debut .debut-img-1 img {
		width: 16.771vw;
	}
	#home-debut .debut-img-2 {
		top: auto;
		bottom: -17.5vw;
		right: -6.146vw;
	}
	#home-debut .debut-img-2 img {
		width: 27.396vw;
	}
	#home-debut .debut-img-3 {
		bottom: -30vw;
		left: -7.813vw;
	}
	#home-debut .debut-img-3 img {
		width: 33.021vw;
	}
}

#home-story {
	color: #fff;
	z-index: 4;
}
#home-story #story-1 {
	position: relative;
	z-index: 3;
}
#home-story #story-2 {
	position: relative;
	margin: -210px auto;
	z-index: 2;
}
#home-story #story-3 {
	position: relative;
	z-index: 1;
}
#home-story #story-4 {
	position: relative;
	margin: -210px auto 0;
	z-index: 0;
}
#home-story .story-inner {
	/*display: none;*/
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	z-index: 5;
}
/*#home-story .story-inner.is-visible {
	display: block;
}*/
#home-story .story-inner h3 {
	float: right;
}
#home-story .story-inner p {
	float: right;
	font-size: 15px;
	padding: 15px 8px;
	line-height: 1.8;
	text-align: justify;
	text-justify: inter-ideograph;
	margin-right: 20px;
}
.r-to-l {
	-ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
	-webkit-text-orientation: mixed;
  text-orientation: mixed;
}
#home-story #story-1 .story-inner {
	top: 200px;
	right: calc(50% - 20px);
}
#home-story #story-1 .story-inner p {
	background-color: #b75d00;
	height: 330px;
}
#home-story #story-2 .story-inner {
	top: 250px;
	right: calc(50% + 40px);
}
#home-story #story-2 .story-inner p {
	background-color: #7c686a;
	height: 300px;
}
#home-story #story-3 .story-inner {
	top: 320px;
	right: calc(50% - 550px);
}
#home-story #story-3 .story-inner p {
	background-color: #1d81b1;
	height: 295px;
}
#home-story #story-4 .story-inner {
	top: 320px;
}
#home-story #story-4 .story-inner h3 {
	float: inherit;
	display: inline-block;
}
@media screen and (max-width: 1279px) {
	#home-story #story-2 {
		margin: -17vw auto;
	}
	#home-story #story-4 {
		position: relative;
		margin: -17vw auto 0;
	}
	#home-story .story-inner h3 img {
		width: 9.375vw;
	}
	#home-story #story-3 .story-inner h3 img,
	#home-story #story-4 .story-inner h3 img {
		width: 14.453vw;
	}
	#home-story .story-inner p {
		font-size: 1.172vw;
		padding: 1.172vw 0.625vw;
		margin-right: 1.719vw;
	}
	#home-story #story-1 .story-inner {
		top: 15.156vw;
		right: calc(50% - 1.953vw);
	}
	#home-story #story-1 .story-inner p {
		height: 25.781vw;
	}
	#home-story #story-2 .story-inner {
		top: 20.313vw;
		right: calc(50% + 3.906vw);
	}
	#home-story #story-2 .story-inner p {
		height: 23.438vw;
	}
	#home-story #story-3 .story-inner {
		top: 22.734vw;
		right: calc(50% - 40vw);
	}
	#home-story #story-3 .story-inner p {
		height: 23.047vw;
	}
	#home-story #story-4 .story-inner {
		top: 25.469vw;
	}
}
@media screen and (max-width: 768px) {
	#home-story .story-inner h3 img {
		width: 19.479vw;
	}
	#home-story #story-3 .story-inner h3 img,
	#home-story #story-4 .story-inner h3 img {
		width: 30.208vw;
	}
	#home-story .story-inner p {
		font-size: 3.021vw;
		padding: 2.188vw 0.938vw;
		margin-right: 2.188vw;
		line-height: 1.55;
	}
	#home-story #story-1 .story-inner {
		top: 21.25vw;
		right: auto;
		left: 6.25vw;
	}
	_::-webkit-full-page-media, _:future, :root #home-story #story-1 .story-inner {
		right: 25vw;
	}
	#home-story #story-1 .story-inner p {
		height: 58.875vw;
	}
	#home-story #story-2 .story-inner {
		top: 29vw;
		right: auto;
		left: 14.375vw;
	}
	_::-webkit-full-page-media, _:future, :root #home-story #story-2 .story-inner {
		right: 15vw;
	}
	#home-story #story-2 .story-inner p {
		height: 58.208vw;
	}
	#home-story #story-3 .story-inner {
		top: 57.896vw;
		right: 0;
		left: 0;
		display: flex;
		flex-direction: row-reverse;
		justify-content: center;
	}
	#home-story #story-3 .story-inner p {
		height: 67.896vw;
	}
	#home-story #story-4 .story-inner {
		top: 50.604vw;
	}
}

#home-concept {
	margin-top: -210px;
}
#home-concept .default-inner {
	padding: 280px 0;
}
#home-concept h2 {
	margin-bottom: 0px;
}
#home-concept h3 {
	font-size: 1.5rem;
	text-align: left;
	text-indent: -0.5em;
	margin-bottom: 15px;
}
#home-concept .concept-box {
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	align-items: center;
}
#home-concept .concept-txt {
	margin-left: 50px;
	z-index: 10;
}
#home-concept .concept-img-2 {
	position: absolute;
	bottom: 130px;
	left: calc(50% + 290px);
	z-index: 0;
}
@media screen and (max-width: 1279px) {
	#home-concept {
	margin-top: -16.406vw;
	}
	#home-concept .default-inner {
		padding: 19.531vw 0;
	}
	#home-concept h3 {
		font-size: 2.109vw;
		margin-bottom: 1.172vw;
	}
	#home-concept .concept-txt {
		margin-left: 3.906vw;
	}
	#home-concept .concept-img-1 img {
		width: 21.875vw;
	}
	#home-concept .concept-img-2 {
		bottom: 10.156vw;
		left: calc(50% + 22.656vw);
	}
}
@media screen and (max-width: 768px) {
	#home-concept {
		margin-top: -17vw;
	}
	#home-concept .default-inner {
		padding: 30vw 10%;
	}
	#home-concept h2 {
		margin-bottom: 5vw;
	}
	#home-concept h3 {
		text-align: center;
		font-size: 4.271vw;
		margin-bottom: 5vw;
	}
	#home-concept .concept-box {
		flex-direction: column;
	}
	#home-concept .concept-txt {
		margin-left: 0;
		font-size: 3.333vw;
		margin-bottom: 10vw;
		width: 68.542vw;
	}
	#home-concept .concept-img-1 img {
		width: 41.146vw;
	}
	#home-concept .concept-img-2 {
		display: none;
	}
}

#home-movie {
	margin-top: -210px;
	margin-bottom: -15px;
}
#home-movie .movie-main-wrap {
	max-width: 860px;
	margin: 0 auto 10px;
	background-color: #000;
	padding: 0 30px;
}
#home-movie .movie-nav-wrap {
	display: inline-block;
	height: 200px;
	max-width: 2000px;
	margin: 0 -50%;
	overflow: hidden;
	background-color: #000;
	color: #fff;
	font-size: 0.9rem;
	font-weight: 300;
	text-align: center;
}
#home-movie .movie-nav p {
	white-space: nowrap;
	overflow   : hidden;
}
#home-movie li {
	display: block;
	overflow: hidden;
	position: relative;
}
#home-movie li.hidden {
	display: none;
}
#home-movie .movie-main li {
	max-height: 489px;
	min-height: 489px;
}
#home-movie .movie-main li img {
	width: 800px;
	height: 489px;
	object-fit: cover;
}
#home-movie .movie-nav li {
	margin: 20px 10px 15px;
	position: relative;
}
#home-movie .movie-nav li img {
	height: 120px;
	object-fit: cover;
}
#home-movie li .movie-title {
	padding: 0 15px;
	height: 2.5em;
	line-height: 2.5em;
	color: #fff;
	display: inline-block;
	position: absolute;
	bottom: 5%;
	left: 0;
	background: rgba(0,0,0,0.6);
}
#home-movie .movie-nav li .movie-title {
	font-size: 10px;
	height: 15px;
	line-height: 15px;
	padding: 0 5px;
	white-space: nowrap;
}
#home-movie li:before {
	content: '';
	display: block;
	width: 120px;
  height: 120px;
  background: rgba(0,0,0,0.6);
  border-radius: 50%;
	position: absolute;
	top: calc(50% - 60px);
	left: calc(50% - 58px);
	transition-duration: .3s;
	z-index: 5;
}
#home-movie li:hover:before {
	background: rgba(66,157,164,1);
}
#home-movie li:after {
	content: '';
	display: block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 20px 0 20px 34.6px;
	border-color: transparent transparent transparent #ffffff;
	position: absolute;
	top: calc(50% - 20px);
	left: calc(50% - 10px);
	z-index: 10;
}
#home-movie .movie-nav li:before {
	width: 26px;
  height: 26px;
	top: calc(50% - 10px);
	left: calc(50% - 13px);
}
#home-movie .movie-nav li:after {
	border-width: 6px 0 6px 10.4px;
	top: calc(50% - 3px);
	left: calc(50% - 3px);
}
#home-movie .movie-nav .slick-current{
	opacity: 0.6;
}
@media screen and (max-width: 1279px) {
	#home-movie .movie-nav-wrap .movie-message {
		display     : inline-block;
	  padding-left: 100%;
	  white-space : nowrap;
	  line-height : 1em;
	  animation   : scrollAnime 15s linear infinite;
	}
}
@keyframes scrollAnime{
	0% { transform: translateX(0)}
100% { transform: translateX(-100%)}
}
@media screen and (max-width: 1279px) {
	#home-movie {
		margin-top: -16.406vw;
		margin-bottom: -1vw;
	}
	#home-movie .movie-main-wrap {
		max-width: 67.188vw;
		margin: 0 auto 0.781vw;
		padding: 0 2.344vw;
	}
	#home-movie .movie-nav-wrap {
		height: 15.625vw;
		max-width: 156.25vw;
		font-size: 1.25vw;
	}
	#home-movie .movie-main li {
		max-height: 38.203vw;
		min-height: 38.203vw;
	}
	#home-movie .movie-main li img {
		width: 62.5vw;
		height: 38.203vw;
	}
	#home-movie .movie-nav li {
		margin: 1.563vw 0.781vw 1.172vw;
	}
	#home-movie .movie-nav li img {
		height: 9.375vw;
	}
	#home-movie li .movie-title {
		padding: 0 1.172vw;
	}
	#home-movie .movie-nav li .movie-title {
		font-size: 0.781vw;
		height: 1.172vw;
		line-height: 1.172vw;
		padding: 0 0.391vw;
	}
	#home-movie li:before {
		width: 9.375vw;
	  height: 9.375vw;
		top: calc(50% - 4.688vw);
		left: calc(50% - 4.531vw);
	}
	#home-movie li:after {
		border-width: 1.563vw 0 1.563vw 2.703vw;
		top: calc(50% - 1.563vw);
		left: calc(50% - 0.781vw);
	}
	#home-movie .movie-nav li:before {
		width: 2.031vw;
	  height: 2.031vw;
		top: calc(50% - 0.781vw);
		left: calc(50% - 1.016vw);
	}
	#home-movie .movie-nav li:after {
		border-width: 0.469vw 0 0.469vw 0.813vw;
		top: calc(50% - 0.234vw);
		left: calc(50% - 0.234vw);
	}
}
@media screen and (max-width: 768px) {
	#home-movie {
		margin-top: -17vw;
	}
	#home-movie .movie-main-wrap {
		max-width: none;
		height: 48.229vw;
		margin-left: 7.5vw;
		margin-right: 7.5vw;
		padding: 0 3.438vw;
	}
	#home-movie .movie-nav-wrap {
		width: 100vw;
		height: 32vw;
	}
	#home-movie .movie-main li {
		max-height: none;
		height: 48.229vw;
	}
	#home-movie .movie-main li img {
		width: 77.813vw;
		height: 48.229vw;
	}
	#home-movie .movie-nav li {
		margin: 2.5vw 1.25vw 2.5vw;
	}
	#home-movie .movie-nav li img {
		height: 20vw;
	}
	#home-movie li .movie-title {
		height: 4.583vw;
		line-height: 4.583vw;
		top: 41.979vw;
		font-size: 2.5vw;
	}
	#home-movie .movie-nav li .movie-title {
		top: 80%;
		font-size: 1.354vw;
		height: 2.5vw;
		line-height: 2.5vw;
	}
	#home-movie li:before {
		width: 15vw;
	  height: 15vw;
		top: 20vw;
		left: calc(50% - 7.5vw);
	}
	#home-movie li:after {
		border-width: 3vw 0 3vw 4.5vw;
		top: 25vw;
		left: calc(50% - 1.5vw);
	}
	#home-movie .movie-nav li:before {
		width: 6vw;
	  height: 6vw;
		top: 7vw;
		left: calc(50% - 3vw);
	}
	#home-movie .movie-nav li:after {
		border-width: 1.2vw 0 1.2vw 2vw;
		top: 8.8vw;
		left: calc(50% - 0.6vw);
	}
	#home-movie .movie-nav-wrap .movie-message {
		font-size: 3.333vw;
	}
}

#start-plan .default-inner {
	padding-bottom: 0;
}
#start-plan p {
	text-align: center;
}
#start-plan h2 {
	margin-bottom: 5px;
}
#start-plan h2 + p {
	margin-bottom: 80px;
}
.start-img-1-p picture img {
	vertical-align:top;
}
.start-txt-1-p a {
	display: inline-block;
	background-image: url(../img/pc-start-txt-1-hover.png);
	background-repeat: no-repeat;
	background-size: contain;
}
.start-txt-1-p a img {
	transition-duration: .3s;
}
.start-txt-1-p a:hover img {
	opacity: 0;
}
@media screen and (max-width: 768px) {
	#start-plan .default-inner {
		padding-bottom: 30px;
	}
	#start-plan {
		font-size: 3vw;
	}
	#start-plan h2 + p {
		margin-bottom: 11.979vw;
	}
	.start-txt-1-p {
		margin-top: 10px;
	}
	.start-txt-1-p a {
		background-image: url(../img/sp-start-txt-1-hover.png);
	}
}

#start-plan-green .default-inner {
	padding-top: 120px;
	position: relative;
}
#start-plan-green .default-inner:before,
#start-plan-green .default-inner:after {
	content:"";
  position: absolute;
  left: 0;
  width: 100%;
  height: 200px;
  background: #f0f0f2;
}
#start-plan-green .default-inner:before {
  top: 0;
  clip-path:polygon(0 0, 100% 0, 100% 100%, 0 0);
}
#start-plan-green .default-inner:after {
  bottom: 0;
  clip-path:polygon(0 100%, 100% 0, 100% 100%, 0 100%);
}
#start-plan-green p {
	text-align: center;
}
.green-txt-1-p {
	font-weight: bold;
	font-size: 125%;
	margin-bottom: 0.75em;
	line-height: 1.5;
}
.green-txt-1-p .large {
	font-size: 125%;
}
.green-txt-2-p {
	line-height: 1.5;
}
.green-button-wrap {
	display: block;
	background-color: #fff;
	max-width: 510px;
	height: 5em;
	margin: 3em auto 0;
	position: relative;
	box-shadow: 0px 3px 5px 0px rgba(0, 0, 0, 0.15);
}
.green-button-wrap:hover {
	background-color: #75b7bd;
	color: #323232;
}
.green-button-wrap:before,
.green-button-wrap:after {
	content: '';
	width: calc(100% - 10px);
	height: 100%;
	position: absolute;
	opacity: .5;
}
.green-button-wrap:before {
	border-top: 1px solid #323232;
	border-left: 1px solid #323232;
	top: -10px;
	left: 10px;
}
.green-button-wrap:after {
	border-bottom: 1px solid #323232;
	border-right: 1px solid #323232;
	top: 10px;
	left: 0;
}
.green-button {
	position: absolute;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
	font-weight: bold;
	font-size: 135%;
	letter-spacing: 0.1em;
}
.green-button span {
	display: block;
	font-size: 75%;
}
@media screen and (max-width: 768px) {
	#start-plan-green {
		font-size: 3vw;
	}
	#start-plan-green .default-inner {
		padding-top: 40px;
		padding-bottom: 90px;
	}
	#start-plan-green .default-inner:before,
	#start-plan-green .default-inner:after {
		height: 50px;
	}
	.green-txt-1-p .line-1,
	.green-txt-1-p .line-2 {
		display: block;
	}
	.green-txt-1-p .line-1 {
		text-align: left;
	}
	.green-txt-1-p .line-2 {
		text-align: right;
	}
}

#home-plan .default-inner {
	padding-top: 100px;
}
#home-plan p {
	text-align: center;
}
#home-plan h2 {
	margin-bottom: 5px;
}
#home-plan h2 + p {
	margin-bottom: 80px;
}
#home-plan .plan-txt-1-p {
	margin-bottom: 100px;
}
#home-plan .plan-txt-2 a {
	display: inline-block;
	height: 32px;
}
#home-plan .plan-txt-2 a img {
	transition-duration: .3s;
}
#home-plan .plan-txt-2 a:hover {
	background-image: url(../img/pc-1-9-txt-2-hover.png);
	background-repeat: no-repeat;
}
#home-plan .plan-txt-2 a:hover img {
	opacity: 0;
}
#home-plan .plan-list {
	display: flex;
	justify-content: center;
	margin: 60px 0;
}
#home-plan .plan-list .plan-list-item {
	width: 450px;
	box-sizing: content-box;
	padding: 0 20px;
	border-right: 1px solid #323232;
}
#home-plan .plan-list .plan-list-item:last-child {
	border-right: 0;
}
#home-plan .plan-list .plan-list-item h3 {
	margin-bottom: 1.5rem;
}
#home-plan .plan-list .plan-list-item ul {
	margin-bottom: 10px;
}
#home-plan .plan-list .plan-list-item ul li {
	text-align: left;
	line-height: 2.2;
	margin-left: 1em;
	text-indent: -1em;
}
#home-plan .plan-list .plan-list-item ul li:before {
	content: '';
	display: inline-block;
	width: 0.8em;
  height: 0.8em;
  border-radius: 50%;
	margin-right: 0.1em;
}
#home-plan .plan-list .plan-list-item.plan-list-item-1 ul li:before {
	background: rgba(129,194,180,1);
}
#home-plan .plan-list .plan-list-item.plan-list-item-2 ul li:before {
	background: rgba(152,191,134,1);
}
#home-plan .plan-list .plan-list-item .plan-list-img img {
	margin: 20px 0;
}
#home-plan a.mirabas {
	display: inline-block;
	position: relative;
	padding-left: 0.5em;
	margin-left: 0.2em;
	border-bottom: 1px solid #323232;
	line-height: 1em;
	padding-bottom: 0.2em;
}
#home-plan a.mirabas:before {
	content: '';
	display: block;
	width: 98px;
	height: 39px;
	background-image: url(../img/pc-1-9-fukidashi.png);
	background-size: contain;
	background-repeat: no-repeat;
	position: absolute;
	bottom: 1.3em;
	right: 0.5em;
}
#home-plan a.mirabas:hover {
	border-color: #a8d7cb;
}
#home-plan a.mirabas:hover:before {
	opacity: 0.6;
}
#home-plan .plan-img-5 img {
	vertical-align: bottom;
}
@media screen and (max-width: 1279px) {
	#home-plan h2 + p {
		margin-bottom: 6.25vw;
	}
	#home-plan .plan-img-1 img {
		width: 100vw;
	}
	#home-plan .plan-txt-1-p {
		margin-bottom: 7.813vw;
	}
	#home-plan .plan-txt-1 img,
	#home-plan .plan-txt-2 img {
		height: 2.5vw;
	}
	#home-plan .plan-txt-2 a:hover {
		background-size: contain;
	}
	#home-plan .plan-img-2-p {
		width: 100vw;
		margin: 0 calc(50% - 50vw);
	}
	#home-plan .plan-txt-3 img {
		width: 49.375vw;
	}
	#home-plan .plan-list {
		margin: 3.906vw 0;
	}
	#home-plan .plan-list .plan-list-item {
		width: 35.156vw;
		padding: 0 1.563vw;
		font-size: 1.2vw;
	}
	#home-plan .plan-list .plan-list-item:last-child {
		border-right: 0;
	}
	#home-plan .plan-list .plan-list-item h3 {
		margin-bottom: 2.109vw;
	}
	#home-plan .plan-list .plan-list-item ul {
		margin-bottom: 0.781vw;
	}
	#home-plan .plan-list .plan-list-item .plan-list-img img {
		margin: 1.563vw 0;
	}
	#home-plan a.mirabas:before {
		width: 7.656vw;
		height: 3.047vw;
	}
}
@media screen and (max-width: 768px) {
	#home-plan {
		/*margin-top: -2vw;*/
	}
	#home-plan .default-inner {
		padding-bottom: 0;
	}
	#home-plan h2 {
		margin-bottom: 0;
	}
	#home-plan h2 + p {
		font-size: 3vw;
		margin-bottom: 11.979vw;
	}
	#home-plan .plan-img-1-p {
		width: 90vw;
		margin: 0 calc(50% - 45vw);
	}
	#home-plan .plan-txt-1 img,
	#home-plan .plan-txt-2 img {
		height: 4.375vw;
	}
	#home-plan .plan-txt-3 img {
		width: auto;
		height: 17.188vw;
	}
	#home-plan .plan-list {
		flex-direction: column;
		margin: 9.167vw 0;
	}
	#home-plan .plan-list .plan-list-item {
		width: 100%;
		padding: 0;
		font-size: 3.2vw;
		border: 0;
	}
	#home-plan .plan-list .plan-list-item:first-child {
		margin-bottom: 21.354vw;
	}
	#home-plan .plan-list .plan-list-item h3 {
		margin-bottom: 3.854vw;
	}
	#home-plan .plan-list .plan-list-item h3 img {
		width: 100%;
	}
	#home-plan .plan-list .plan-list-item .plan-list-img img {
		width: 100%;
		margin: 3.333vw 0;
	}
	#home-plan a.mirabas:before {
		width: 18.854vw;
		height: 7.187vw;
	}
	#home-plan .plan-img-5 {
		display: block;
		width: 100vw;
		margin: 0 calc(50% - 50vw);
	}
}

#home-news {
	font-weight: 300;
}
#home-news .default-inner {
	padding-left: 0;
	padding-right: 0;
	padding-bottom: 0;
}
#home-news .default-inner h2 {
	margin-bottom: 0;
}
#home-news .news-img-1 img {
	width: 2000px;
	margin: 150px -50% 0;
}
.news-to-btn-area {
	width: 1080px;
	text-align: right;
	margin: 0 0 13px;
	display: inline-block;
	height: 29px;
}
#home-news .news-to-btn-area.news-to-btn-list {
	background-image: url(../img/btn-top-news-list-o.png);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: contain;
}
.news-to-btn-area img {
	vertical-align: top;
	transition-duration: .3s;
	background-color: #4587ff;
	height: 29px;
}
.news-to-btn-area a:hover img {
	opacity: 0;
}
.slider-wrapper {
	max-width: 1080px;
	margin: 0 auto;
	padding-right: 1px;
}
.news-slider {
	position: relative;
	/*border-right: 1px solid #fff;*/
}
.news-slider .news-items {
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	padding: 25px;
	color: #fff;
}
.news-slider a:last-of-type .news-items {
	border-right: 1px solid #fff;
}
.news-slider a .news-items {
	transition-duration: .3s;
}
.news-slider a:hover .news-items {
	background-color: #5793ff;
}
.news-slider .news-items .news-category img {
	height: 27px;
	margin-bottom: 15px;
}
.news-slider .news-items .news-thumb img {
	width: 310px;
	height: 225px;
	object-fit: cover;
	/*height: 72.6vw;
	max-height: 225px;*/
}
.news-slider .news-items .news-top-title {
	font-weight: 400;
	font-size: 1rem;
	line-height: 1.4;
	padding: 20px 0 20px;
	position: relative;
}
.news-slider .news-items .news-top-title span {
	/* 行数でカット */
	display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}
.news-slider .news-items .news-top-title:after {
	content: '';
	width: 50px;
	height: 3px;
	background-color: #fff;
	display: block;
	position: absolute;
	bottom: 0;
	left: calc(50% - 25px);
}
.news-slider .news-items .news-top-body {
	font-size: 0.75rem;
	line-height: 1.8;
	margin-top: 20px;
	/* 行数でカット */
	display: -webkit-box;
  -webkit-line-clamp: 5;
  -webkit-box-orient: vertical;
  overflow: hidden;
	height: 9em;
}
.news-slider .news-items .news-date {
	border: 1px solid #fff;
	display: inline-block;
	padding: 0 1em;
	margin-right: 1em;
	line-height: 1em;
}
.slick-arrow:before{
  content:""!important;
  width: 27px!important;
  height: 37px!important;
  position: absolute;
  top: 0;
  left: 0;
}
.slick-prev, .slick-next {
	width: 27px!important;
  height: 37px!important;
}
.slick-prev {
	left: -50px;
}
.slick-prev:before{
  background: url(../img/arrow_l.png)!important;
  background-size: contain!important;
	background-repeat: no-repeat !important;
}
.slick-next {
	right: -50px;
}
.slick-next:before{
  background: url(../img/arrow_r.png)!important;
  background-size: contain!important;
	background-repeat: no-repeat !important;
}
/*
.slick-prev:before {
	content: '';
	position: absolute;
  top: 50%;
  left: -10px;
  width: 20px;
  height: 20px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
	-moz-transform: rotate(225deg);
	-webkit-transform: rotate(225deg);
	-o-transform: rotate(225deg);
	-ms-transform: rotate(225deg);
  transform: rotate(225deg);
  margin-top: -10px;
}
.slick-next:before {
	content: '';
	position: absolute;
  top: 50%;
  right: -10px;
  width: 20px;
  height: 20px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -10px;
}*/
@media screen and (max-width: 1279px) {
/*	#home-news h2 {
		margin-bottom: 3.906vw;
	}*/
	.news-to-btn-area {
		width: 84.375vw;
		margin: 0 0 1.016vw;
	}
	.news-to-btn-area {
		height: 2.266vw;
	}
	.news-to-btn-area img {
		height: 2.266vw;
	}

	.slider-wrapper {
		width: 84.375vw;
		max-width: none;
	}
	.news-slider .news-items {
		padding: 1.953vw;
	}
	.news-slider .news-items .news-category img {
		height: 2.109vw;
		width: auto;
		margin-bottom: 1.172vw;
	}
	.news-slider .news-items .news-thumb img {
		width: 24.219vw;
		height: 17.578vw;
	}
	.news-slider .news-items .news-top-title {
		font-size: 1.406vw;
		padding: 1.563vw 0 1.563vw;
	}
	.news-slider .news-items .news-top-title:after {
		width: 3.906vw;
		height: 0.234vw;
		left: calc(50% - 1.953vw);
	}
	.news-slider .news-items .news-top-body {
		font-size: 1.12vw;
		margin-top: 1.563vw;
	}
	.slick-arrow:before{
	  width: 2.109vw !important;
	  height: 2.891vw !important;
	}
	.slick-prev, .slick-next {
		width: 2.109vw !important;
	  height: 2.891vw !important;
	}
	.slick-prev {
		left: -3.906vw;
	}
	.slick-next {
		right: -3.906vw;
	}
	/*
	.slick-prev:before {
	  left: -0.781vw;
	  width: 1.563vw;
	  height: 1.563vw;
	  margin-top: -0.781vw;
	}
	.slick-next:before {
	  right: -0.781vw;
	  width: 1.563vw;
	  height: 1.563vw;
	  margin-top: -0.781vw;
	}*/
}
@media screen and (max-width: 768px) {
	#home-news {
		position: relative;
	}
	#home-news h2 {
		padding-bottom: 7.292vw;
	}
	.news-to-btn-area {
		width: 81.25vw;
		margin: 0 0 2.292vw;
	}
	.news-to-btn-area {
		height: 5.313vw;
	}
	.news-to-btn-area img {
		height: 5.313vw;
	}

	.slider-wrapper {
		width: 100%;
	}
	.news-slider {
		border-right: 0;
	}
	.news-slider a {
		width: 66.875vw;
	}
	.news-slider .news-items {
		padding: 4.688vw;
	}
	.news-slider a:last-child .news-items {
		border-right: 1px solid #fff;
	}
	.news-slider .news-items .news-category img {
		height: 5.313vw;
		margin-bottom: 1.953vw;
	}
	.news-slider .news-items .news-thumb img {
		width: 58.125vw;
		height: 42.188vw;
	}
	.news-slider .news-items .news-top-title {
		font-size: 3.75vw;
		padding: 3.767vw 0 2.917vw;
	}
	.news-slider .news-items .news-top-title:after {
		width: 6.771vw;
		height: 0.729vw;
		left: calc(50% - 3.385vw);
	}
	.news-slider .news-items .news-top-body {
		font-size: 3.333vw;
		margin-top: 3.646vw;
	}
	.slick-arrow {
		z-index:2!important;
	}
	.slick-arrow:before{
	  width: 9.688vw !important;
	  height: 9.688vw !important;
	}
	.slick-prev, .slick-next {
		width: 9.688vw !important;
	  height: 9.688vw !important;
	}
	.slick-prev {
		left: 5vw;
	}
	.slick-prev:before{
	  background: url(../img/arrow_l_sp.png)!important;
	  background-size: contain!important;
		background-repeat: no-repeat !important;
	}
	.slick-next {
		right: 5vw;
	}
	.slick-next:before{
	  background: url(../img/arrow_r_sp.png)!important;
	  background-size: contain!important;
		background-repeat: no-repeat !important;
	}
	/*
	.slick-prev:before {
		left: 11.667vw;
		width: 5.625vw;
  	height: 5.625vw;
	  margin-top: -2.812vw;
		border-top: 3px solid #fff;
	  border-right: 3px solid #fff;
		z-index: 50;
	}
	.slick-next:before {
		right: 11.667vw;
		width: 5.625vw;
	 	height: 5.625vw;
	 	margin-top: -2.812vw;
		border-top: 3px solid #fff;
	  border-right: 3px solid #fff;
	}*/
}

#home-rsv {
	font-weight: 300;
}
#home-rsv .default-inner {
	padding-bottom: 0;
}
#home-rsv .rsv-description {
	width: 940px;
	margin: 0 auto;
	position: relative;
	padding-left: 180px;
}
#home-rsv .rsv-description .rsv-shape-1 img {
	width: 760px;
	position: absolute;
	top: 0;
	right: 0;
}
.rsv-d-1 {
	font-size: 1.15rem;
	font-weight: 400;
	line-height: 1.4;
	padding: 20px 0 15px;
}
.rsv-d-2 {
	font-size: 0.85rem;
	margin: 20px 0 25px;
}
.rsv-d-3 {
	font-weight: 400;
}
.rsv-d-4 {
	font-size: 0.9rem;
	letter-spacing: 0.05em;
}
.rsv-img-2 img {
	margin-top: 64px;
}
.rsv-phone {
	line-height: 1;
	margin: 5px 0;
}
.top-map {
	max-width: 900px;
	margin: 40px auto 0;
	font-weight: 400;
}
.top-map p {
	vertical-align: top;
	margin-bottom: 15px;
}
.map-address {
	display: inline-block;
	margin-left: 1.8em;
	font-size: 16px;
	font-weight: 300;
}
@media screen and (max-width: 1279px) {
	#home-rsv .default-inner {
		padding-left: 0;
		padding-right: 0;
	}
	#home-rsv .rsv-description {
		width: 73.438vw;
		padding-left: 14.063vw;
	}
	#home-rsv .rsv-description .rsv-shape-1 img {
		width: 59.375vw;
	}
	.rsv-d-1 {
		font-size: 1.641vw;
		padding: 1.563vw 0 1.172vw;
	}
	.rsv-d-2 {
		font-size: 1.25vw;
		margin: 0.963vw 0 1.953vw;
	}
	.rsv-d-4 {
		font-size: 1.25vw;
	}
	.rsv-phone img {
		width: 24.609vw;
	}
	.rsv-img-2 img {
		width: 53.594vw;
		margin-top: 5vw;
	}
	.rsv-phone {
		margin: 0.391vw 0;
	}
	.top-map {
		max-width: 70.313vw;
		margin: 3.125vw auto 0;
	}
	.top-map iframe {
		height: 25.078vw;
	}
	.top-map p {
		margin-bottom: 1.172vw;
	}
	.map-address {
		font-size: 1.25vw;
	}
}
@media screen and (max-width: 768px) {
	#home-rsv .rsv-description {
		width: 100%;
		padding-left: 9%;
	}
	#home-rsv .rsv-description .rsv-shape-1 img {
		width: 91%;
		top: 5vw;
	}
	.rsv-d-1 {
		font-size: 3.75vw;
		padding: 0 0 3.5vw;
	}
	.rsv-d-2 {
		font-size: 3.15vw;
		margin: 2.5vw 0 4vw;
	}
	#home-rsv .rsv-description .rsv-shape-2 img {
		width: 82%;
		margin-bottom: 4vw;
	}
	.rsv-d-3 {
		font-size: 3.75vw;
	}
	.rsv-d-4 {
		font-size: 3.542vw;
	}
	.rsv-phone {
		margin: 0.391vw 0;
	}
	.rsv-phone img {
		width: 61.979vw;
	}
	.rsv-img-2 img {
		width: 81.25vw;
	}
	.top-map {
		max-width: 81.25vw;
		margin: 5vw auto 0;
	}
	.top-map iframe {
		height: 51.042vw;
	}
	.top-map p {
		font-size: 3.75vw;
		margin-bottom: 1.172vw;
		line-height: 3.75vw;
	}
	.map-address {
		display: block;
		font-size: 3.1vw;
		margin: 1vw 0 3vw;
	}
}

#home #consult .default-inner {
	padding: 200px 30px 450px;
	position: relative;
}
#home #consult .home-consult-inner:before {
	content: "";
  display: block;
  padding-top: calc(100% + 350px);
}
#home #consult .default-inner .home-consult-form-inner {
	position: absolute;
	top: 200px;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
  height: 100%;
	z-index: 10;
}
#home #consult .default-inner .bg-wrapper {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
	margin: 0;
}
#home #consult .default-inner .bg-wrapper .bg img {
	vertical-align: bottom;
}
@media screen and (max-width: 1279px) {
	#home #consult .default-inner {
		padding: 15.625vw 2.344vw 35.156vw;
	}
	#home #consult .home-consult-inner:before {
		padding-top: calc(100% + 82vw);
	}
	#home #consult .default-inner .home-consult-form-inner {
		top: 15.625vw;
	}
	#home #consult .default-inner .bg-wrapper {
		left: -28%;
		right: -28%;
	}
}
@media screen and (max-width: 768px) {
	#home #consult .home-consult-inner:before {
		padding-top: 590vw;
	}
	#home #consult .default-inner .bg-wrapper {
		left: 0;
		right: 0;
	}
}
#consult .default-inner {
	padding: 150px 30px;
}
#consult h2 {
	margin-bottom: 0;
}
#consult h2 + p {
	margin-bottom: 40px;
	line-height: 1.6;
}
@media screen and (max-width: 1279px) {
	#consult .default-inner {
		padding: 11.719vw 2.344vw;
	}
	#consult h2 img {
		height: 4.844vw;
	}
	#consult h2 + p {
		margin-bottom: 3.125vw;
	}
}
@media screen and (max-width: 768px) {
	#consult h2 {
		margin-bottom: 0.5vw;
	}
	#consult h2 img {
		height: auto;
		width: 81.563vw;
	}
	#consult h2 + p {
		font-size: 3.125vw;
		margin-bottom: 7.708vw;
	}
}

.form-tbl {
	width: 100%;
	max-width: 900px;
	margin: 5px auto;
	color: #323232;
	text-align: left;
	background-color: #f0f0f2;
	font-size: 16px;
}
.form-tbl tr {
	border-top: 1px solid #a3a3a3;
}
.form-tbl thead {
	background-color: #e3e3e5;
}
.form-tbl th {
	white-space: nowrap;
	padding: 20px;
	font-weight: normal;
	width: 230px;
	vertical-align: middle;
}
.form-tbl th.v-top {
	vertical-align: top;
}
.form-tbl th.hissu {
	position: relative;
	padding-right: 80px;
}
.form-tbl th.hissu span {
	background-color: #dd5112;
	display: inline-block;
	color: #fff;
	font-size: 12px;
	font-weight: 300;
	padding: 0;
	text-align: center;
	width: 45px;
	position: absolute;
	right: 0;
	top: calc(50% - 0.75em);
	right: 20px;
}
.form-tbl th.hissu.jusho span {
	top: calc(20px + 0.25em);
}
.form-tbl td {
	padding: 20px 20px 20px 0;
}
.form-tbl td p {
	margin-bottom: 1em;
}
.form-tbl td.nichiji p {
	margin-top: 1em;
	margin-bottom: 0;
}
.form-tbl td.nichiji p:first-child {
	margin-top: 0;
}
.form-tbl thead td {
	font-size: 23px;
	padding: 20px;
	font-weight: bold;
}
.form-tbl thead td span {
	display: inline-block;
	font-size: 16px;
	font-weight: normal;
	color: #067e88;
	margin-left: 2em;
}
.form-tbl .nichiji-o {
	color: #dd5112;
	font-size: 15px;
	line-height: 1.5;
}
.form-tbl td.td-submit {
	padding: 30px 20px;
}
.form-tbl td.td-submit a {
	color: #067e88;
	text-decoration: underline;
	display: inline-block;
	margin: 0 5px;
}
.form-tbl td.td-submit a:hover {
	color: #69b2b7;
}
#consult button {
	display: block;
	border: 0;
	background-color: #429da4;
	color: #fff;
	font-size: 15px;
	font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-weight: 400;
	width: 100%;
	height: 42px;
	line-height: 42px;
	max-width: 280px;
	margin: 20px auto 0;
	position: relative;
	letter-spacing: 0.15em;
}
#home #consult button {
	margin: 40px auto 30px;
}
#thanks #consult button {
	margin: 40px auto 0;
}
#consult button.btn-back {
	background-color: #adadad;
	margin: 15px auto;
}
#consult button:before {
	content: '';
	position: absolute;
  top: 50%;
  right: 12px;
  width: 10px;
  height: 10px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -5px;
}
#consult button.btn-back:before,
#consult button.btn-back-top:before {
	left: 12px;
	right: auto;
	-moz-transform: rotate(225deg);
	-webkit-transform: rotate(225deg);
	-o-transform: rotate(225deg);
	-ms-transform: rotate(225deg);
	transform: rotate(225deg);
}
#consult button:hover {
	background-color: #7bbabf;
}
#consult button.btn-back:hover {
	background-color: #c1c1c1;
}

.form-tbl input,
.form-tbl select,
.form-tbl textarea {
	padding: 10px;
	font-size: 16px;
	font-weight: 300;
	font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
}
.form-tbl input[type="text"] {
	width: 80%;
}
.form-tbl input[type="email"] {
	width: 70%;
}
.form-tbl input[name^="tel"] {
	width: 20%;
}
.form-tbl input[name="zip"] {
	width: 12em;
}
.form-tbl textarea {
	width: 100%;
	height: 15em;
}
.form-tbl .select-wrap {
	display: inline-block;
	width: 7em;
	border: 1px solid #666;
	background-color: #fff;
	position: relative;
	z-index: 1;
}
.form-tbl .select-wrap:after {
	position: absolute;
	content: '';
	right: 0;
	top: 0;
	bottom: 0;
	width: 28px;
	height: 100%;
	border-left: 1px solid #666;
	background-color: #f3f2f3;
	z-index: 3;
}
.form-tbl .select-wrap:before {
	position: absolute;
  content: '';
  right: 10px;
  top: calc(50% - 4px);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 6.9px 4px 0 4px;
	border-color: #000000 transparent transparent transparent;
  z-index: 5;
}
.form-tbl td.jusho .select-wrap {
	width: 12em;
}
.form-tbl select::-ms-expand {
	display: none;
}
.form-tbl select {
	position: relative;
	z-index: 0;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	width: 7em;
	background: none;
	border: none;
	z-index: 10;
}
.form-tbl td.jusho select {
	width: 12em;
}
@media screen and (max-width: 1279px) {
	.form-tbl {
		max-width: 70.313vw;
		margin: 0.391vw auto;
		font-size: 1.25vw;
	}
	.form-tbl th {
		padding: 1.563vw;
		width: 17.969vw;
	}
	.form-tbl th.hissu {
		padding-right: 6.5vw;
	}
	.form-tbl th.hissu span {
		font-size: 0.938vw;
		width: 3.906vw;
		right: 1.563vw;
	}
	.form-tbl th.hissu.v-top span {
		top: calc(1.563vw + 0.25em);
	}
	.form-tbl td {
		padding: 1.563vw 1.563vw 1.563vw 0;
	}
	.form-tbl thead td {
		font-size: 1.797vw;
		padding: 1.563vw;
	}
	.form-tbl thead td span {
		font-size: 1.25vw;
	}
	.form-tbl .nichiji-o {
		font-size: 1.172vw;
	}
	.form-tbl td.td-submit {
		padding: 2.344vw 1.563vw;
	}
	.form-tbl td.td-submit a {
		margin: 0 0.391vw;
	}
	#consult button {
		font-size: 1.172vw;
		height: 3.281vw;
		line-height: 3.281vw;
		max-width: 21.875vw;
		margin: 1.563vw auto 0;
	}
	#home #consult button {
		margin: 3.125vw auto 2.344vw;
	}
	#thanks #consult button {
		margin: 3.125vw auto 0;
	}
	#consult button.btn-back {
		margin: 1.172vw auto;
	}
	#consult button:before {
	  right: 0.938vw;
	  width: 0.625vw;
	  height: 0.625vw;
	  margin-top: -0.312vw;
	}
	#consult button.btn-back:before,
	#consult button.btn-back-top:before {
		left: 0.938vw;
	}

	.form-tbl input,
	.form-tbl select,
	.form-tbl textarea {
		padding: 0.781vw;
		font-size: 1.25vw;
	}
	.form-tbl .select-wrap:after {
		width: 2.188vw;
	}
	.form-tbl .select-wrap:before {
	  right: 0.781vw;
	  top: calc(50% - 0.313vw);
		border-width: 0.539vw 0.313vw 0 0.313vw;
	}
}
@media screen and (max-width: 768px) {
	.form-tbl {
		max-width: 81.25vw;
		font-size: 3.646vw;
		margin-bottom: 1em;
	}
	.form-tbl th, .form-tbl td {
		display: block;
    width: 100%;
	}
	.form-tbl thead td {
		font-size: 4.063vw;
		text-align: center;
		padding: 5.25vw 3.75vw 3vw;
	}
	#confirm .form-tbl thead td {
		padding: 5.25vw 3.75vw;
	}
	.form-tbl thead td span {
		font-size: 2.813vw;
		margin-left: 0;
	}
	.form-tbl th {
		padding: 3.75vw 3.75vw 2vw;
	}
	.form-tbl th.hissu span {
		position: static;
		font-size: 2.5vw;
		width: 9.479vw;
		margin-left: 1.5em;
	}
	.form-tbl td {
		padding: 0 3.75vw 3.75vw;
	}
	.form-tbl td.nichiji {
		padding-left: 13.333vw;
	}
	#confirm .form-tbl td.nichiji {
		padding-left: 3.75vw;
	}
	.kiboubi-flex {
		display: flex;
		margin-bottom: 1em;
	}
	.form-tbl td.nichiji p.kiboubi {
		margin-right: 1em;
	}
	.form-tbl .select-wrap {
		width: 5em;
		margin-bottom: 0.8em;
	}
	.form-tbl td.jusho .select-wrap {
		width: 8.5em;
	}
	.form-tbl .select-wrap:after {
		width: 4.375vw;
	}
	.form-tbl .select-wrap:before {
	  right: 1vw;
	  top: calc(50% - 0.5vw);
		border-width: 1.5vw 1vw 0 1vw;
	}
	.form-tbl select {
		width: 5em;
	}
	.form-tbl td.jusho select {
		width: 8.5em;
	}
	.form-tbl td.nichiji p.nichiji-o {
		margin-left: -9.583vw;
		font-size: 2.5vw;
	}
	.form-tbl input,
	.form-tbl select,
	.form-tbl textarea {
		padding: 2vw 2.604vw;
	}
	.form-tbl select {
		font-size: 3.646vw;
	}
	.form-tbl textarea {
		font-size: 2.7vw;
	}
	.form-tbl input {
		font-size: 3.125vw;
	}
	.form-tbl input[type="text"],
	.form-tbl input[type="email"] {
		width: 100%;
	}
	.form-tbl input[name^="tel"] {
		width: 25%;
	}
	.form-tbl input[name="zip"] {
		width: 10em;
	}
	.form-tbl td.td-submit {
		padding: 3.75vw;
		font-size: 3.1vw;
	}
	.form-tbl td.td-submit p {
		line-height: 1.6;
	}
	#consult button {
		max-width: inherit;
		font-size: 3.646vw;
		height: 9.896vw;
		line-height: 9.896vw;
	}
	#home #consult button {
		margin: 6vw 0 0.5vw;
	}
	#confirm #consult button.btn-back {
		margin-top: 1em;
	}
	#thanks #consult button {
		margin: 3.125vw auto 0;
	}
	#consult button:before {
	  right: 1em;
	  width: 0.6em;
	  height: 0.6em;
		border-top: 3px solid #fff;
	  border-right: 3px solid #fff;
	  margin-top: -0.3em;
	}
	#consult button.btn-back:before,
	#consult button.btn-back-top:before {
		left: 1em;
	}
}

footer #f-logo {
	margin: 85px 0 20px;
}
footer #f-description {
	background-color: #f0f0f2;
	padding-top: 35px;
}
footer #f-description .f-address {
	font-size: 0.9rem;
	margin-left: 2em;
}
footer #f-description .flex-wrap {
	display: flex;
	justify-content: center;
	padding: 30px 0;
}
footer #f-description .flex-item p {
	line-height: 1.5;
}
footer #f-description .flex-item > p {
	font-size: 0.8rem;
	color: #067e88;
}
footer #f-description .flex-item > p + p {
	font-size: 0.7rem;
	color: inherit;
	margin-top: 0.2em;
}
footer #f-description .flex-item {
	padding: 0 30px;
	margin: 0 30px;
	border-left: 1px solid #a3a3a3;
	border-right: 1px solid #a3a3a3;
}
footer #f-description .flex-item:first-child,
footer #f-description .flex-item:last-child {
	padding: 0;
	margin: 0;
	border-left: 0;
	border-right: 0;
}
footer #f-menu {
	background-color: #429da4;
	color: #fff;
	text-align: center;
	font-weight: 300;
}
footer #f-menu nav a {
	display: inline-block;
	padding: 18px;
	color: #fff;
	white-space: nowrap;
	font-size: 0.8rem;
}
footer #f-menu nav a:hover {
	color: #b3d8db;
}
footer #f-menu .copyright {
	font-size: 0.6rem;
	border-top: 1px solid #fff;
	padding: 10px 0 25px;
}
@media screen and (max-width: 1279px) {
	footer #f-logo {
		margin: 6.641vw 0 1.563vw;
	}
	footer #f-logo img {
		max-width: none;
		width: 26.875vw;
	}
	footer #f-description {
		padding-top: 2.734vw;
	}
	footer #f-description .f-address {
		font-size: 1.172vw;
	}
	footer #f-description .flex-wrap {
		padding: 2.344vw 0;
	}
	footer #f-description .flex-item > p {
		font-size: 1.016vw;
	}
	footer #f-description .flex-item > p + p {
		font-size: 0.938vw;
	}
	footer #f-description .flex-item {
		padding: 0 2.344vw;
		margin: 0 2.344vw;
	}
	footer #f-menu nav a {
		padding: 1.406vw;
		font-size: 1.094vw;
	}
	footer #f-menu .copyright {
		font-size: 0.859vw;
		padding: 0.781vw 0 1.953vw;
	}
}
@media screen and (max-width: 768px) {
	footer #f-logo {
		margin: 10.938vw 0 3.646vw;
	}
	footer #f-logo img {
		max-width: none;
		width: 53.438vw;;
	}
	footer #f-description {
		padding: 4.5vw 0 5.729vw;
		font-size: 3.646vw;
	}
	footer #f-description .f-address {
		display: block;
		font-size: 3.125vw;
		height: 1em;
		line-height: 1em;
		margin-left: 0;
	}
	footer #f-description .flex-wrap {
		display: none;
	}
	footer #f-menu nav {
		padding: 2vw 0 5vw;
	}
	footer #f-menu nav a {
		font-size: 3.333vw;
		padding: 3vw 8vw 0 4vw;
		position: relative;
	}
	footer #f-menu nav a:nth-child(3),
	footer #f-menu nav a:last-child {
		padding-right: 0;
	}
	footer #f-menu nav a:before {
		content: '';
		position: absolute;
	  top: 50%;
	  left: 0;
	  width: 0.7em;
	  height: 0.7em;
	  border-top: 1px solid #fff;
	  border-right: 1px solid #fff;
		-moz-transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		-o-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
	  transform: rotate(45deg);
	  margin-top: 0.1em;
	}
	footer #f-menu .copyright {
		font-size: 2.604vw;
		padding: 2.396vw 0 3.542vw;
	}
}

/* loader */
#loader {
	position: fixed;
	display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100vh;
  background-color: #fff;
	z-index: 100;
}

/* メールフォーム ------------------------------------- */
.form-warning {
	color: #f00;
}

/* confirm */
.bg-blue .form-inner {
	color: #323232;
}
.form-inner {
	max-width: 900px;
	margin: 0 auto;
	padding: 55px 30px;
}
#confirm .form-inner {
	padding-bottom: 0;
}
.confirm-message {
	padding-bottom: 1.5em;
	font-size: 0.9rem;
}
@media screen and (max-width: 1279px) {
	.form-inner {
		max-width: 70.313vw;
		padding: 4.297vw 2.344vw;
	}
	.confirm-message {
		font-size: 1.25vw;
	}
}
@media screen and (max-width: 768px) {
	#confirm h2 + p {
		margin-bottom: 3.958vw;
	}
	.form-inner {
		max-width: 81.25vw;
		padding: 6vw 4.688vw;
	}
	.confirm-message {
		text-align: left;
		font-size: 3.2vw;
		letter-spacing: -0.07em;
	}
}

/* thanks */
#thanks h3 {
	font-size: 1.4rem;
	margin-bottom: 30px;
}
#thanks .form-inner {
	font-size: 0.85rem;
}
#thanks .form-inner p {
	margin-bottom: 1.5em;
}
@media screen and (max-width: 1279px) {
}
@media screen and (max-width: 768px) {
	#thanks h2 + p {
		margin-bottom: 3.958vw;
	}
	#thanks h3 {
		font-size: 4.2vw;
		margin-bottom: 4.688vw;
	}
	#thanks .form-inner {
		font-size: 3.2vw;
	}
	#thanks .form-inner p {
		text-align: left;
	}
}

/* -------------------------------------------------------------------
	news
 ------------------------------------------------------------------- */
#news-list .default-inner {
	padding: 0 0 56px;
}
.news-header img {
	vertical-align: bottom;
}
.breadcrumbs {
	font-size: 12px;
	line-height: 1.8em;
	margin: 10px auto 45px;
	text-align: left;
	width: 1080px;
}
.breadcrumbs li {
	list-style-type: none;
	display: inline-block;
	color: #fff;
	vertical-align: bottom;
}
.breadcrumbs li:after {
	content: '\0ff1e'; /* 16進数コードで指定「＞」 */
	display: inline-block;
	margin: 0 0.5em;
}
/*.breadcrumbs li:last-of-type a {
	pointer-events: none;
}*/
.breadcrumbs li:last-of-type:after {
	content: '';
}
.breadcrumbs li a {
	color: #fff;
	vertical-align: bottom;
}
.breadcrumbs li a:hover {
	opacity: 0.6;
}
/* news-list ---------------------------------------- */
.news-to-btn-area.news-to-btn-top {
	background-image: url(../img/btn-top-page-o.png);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: contain;
}
#news-list h2 {
	margin-bottom: 15px;
}
#news-list .news-slider {
	width: 1080px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	border-right: 0;
}
#news-list .news-slider a {
	margin-bottom: 64px;
}
#news-list .news-slider .news-items {
	width: 360px;
}
#news-list .news-slider a:nth-of-type(3n) .news-items,
#news-list .news-slider a:last-of-type .news-items {
	border-right: 1px solid #fff;
}
#news-list .news-slider .news-items .news-category img {
	display: block;
}
#news-list .news-slider .news-items .news-thumb img {
	width: 310px;
	height: 225px;
	object-fit: cover;
}
.pager .pagination {
  text-align: center;
}
.pager .pagination li {
  display: inline;
  margin: 0 2px;
  padding: 0;
  display: inline-block;
  width: 50px;
  height: 50px;
  text-align: center;
  position: relative;
}
.pager .pagination li.pre,
.pager .pagination li.next {
	border: 1px solid #fff;
}
.pager .pagination li a {
  vertical-align: middle;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  text-align: center;
  display:table;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all  0.3s ease;
}
.pager .pagination li a span {
  display:table-cell;
  vertical-align:middle;
	color: #fff;
}
.pager .pagination li a:hover,
.pager .pagination li a.active{
  background: #6199fe;
}
.pager .pagination li a.active{
	pointer-events:none;
}
/* news-detail ---------------------------------------- */
#news-detail .default-inner {
	padding: 0 0 120px;
}
#news-detail .news-detail-btn-wrapper {
	display: inline-block;
	width: 900px;
	text-align: right;
}
#news-detail .news-to-btn-area {
	width: auto;
}
#news-detail .news-to-btn-area:first-of-type {
	border-right: 1px solid #fff;
}
.news-to-btn-area.news-to-btn-list {
	background-image: url(../img/btn-news-list-o.png);
	background-repeat: no-repeat;
	background-position: right top;
	background-size: contain;
}
.news-detail-wrapper {
	width: 900px;
	margin: 0 auto;
	text-align: left;
}
.news-detail-inner {
	padding: 16px;
	color: #323232;
}
#news-detail .news-category img {
	height: 20px;
}
#news-detail h3 {
	font-size: 30px;
	text-align: center;
	width: 670px;
	margin: 45px auto 25px;
	position: relative;
	padding-bottom: 30px;
}
#news-detail h3:after {
	content: '';
	width: 50px;
	height: 3px;
	background-color: #323232;
	display: block;
	position: absolute;
	bottom: 0;
	left: calc(50% - 25px);
}
#news-detail .news-date,
#news-detail .news-address {
	text-align: center;
	width: 670px;
	margin: 0 auto;
	font-size: 17px;
	font-weight: bold;
}
#news-detail .news-info-area {
	margin-bottom: 45px;
}
#news-detail .news-date span,
#news-detail .news-address span {
	background-color: #4587ff;
	color: #fff;
	font-size: 14px;
	line-height: 17px;
	padding: 0 1em;
	margin-right: 1em;
	font-weight: 400;
}
.news-block {
	width: 670px;
	margin: 0 auto;
}
.news-block .news-block-img img {
	max-width: 670px;
	display: block;
	margin: 0 auto;
	vertical-align: bottom;
}
.news-block h4 {
	font-size: 23px;
}
.news-block h4,
.news-block p {
	margin: 1.5em 0;
}
.news-block iframe {
	margin: 1em 0;
}
.news-block iframe {
	width: 670px;
	height: 376.875px;
}
.news-block p.news-file {
	text-align: center;
	border: 3px solid #4587ff;
	transition-duration: .3s;
}
.news-block p.news-file:hover {
	background-color: #4587ff;
}
.news-block p.news-file a {
	color: #4587ff;
}
.news-block p.news-file:hover a,
.news-block p.news-file.iconXls:hover a,
.news-block p.news-file.iconDoc:hover a,
.news-block p.news-file.iconPdf:hover a {
	color: #fff;
}
.news-block p.news-file i {
	margin-right: 0.5em;
}
.news-block p.news-file.iconXls { border-color: #117d33; }
.news-block p.news-file.iconXls:hover { background-color: #117d33; }
.news-block p.news-file.iconXls a { color: #117d33; }
.news-block p.news-file.iconDoc { border-color: #1938bd; }
.news-block p.news-file.iconDoc:hover { background-color: #1938bd; }
.news-block p.news-file.iconDoc a { color: #1938bd; }
.news-block p.news-file.iconPdf { border-color: #d42525; }
.news-block p.news-file.iconPdf:hover { background-color: #d42525; }
.news-block p.news-file.iconPdf a { color: #d42525; }
.news-contact {
	width: 670px;
	margin: 0 auto;
	text-align: center;
	font-size: 16px;
}
.news-contact img {
	vertical-align: bottom;
	margin: 0.5em auto;
}
.news-contact-txt-1 {
	font-size: 17px;
	font-weight: bold;
}
.news-contact p {
	text-align: center;
}
.news-guide {
	text-align: center;
	font-size: 16px;
	margin-top: 73px;
}
.news-guide span {
	border: 1px solid #323232;
	padding: 0 1em;
	margin-right: 1em;
}
#news-detail button {
	display: block;
	border: 0;
	background-color: #4587ff;
	color: #fff;
	font-size: 15px;
	font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-weight: 400;
	width: 100%;
	line-height: 1em;
	padding: 1em;
	max-width: 280px;
	margin: 20px auto 0;
	position: relative;
}
#news-detail button:hover {
	opacity: 0.6;
}
#news-detail button:before {
	content: '';
	position: absolute;
  top: 50%;
  right: 12px;
  width: 10px;
  height: 10px;
  border-top: 1px solid #fff;
  border-right: 1px solid #fff;
	-moz-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-o-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
  transform: rotate(45deg);
  margin-top: -5px;
}
@media screen and (max-width: 1279px) {
	#news-list .default-inner,
	#news-detail .default-inner {
		padding: 0 0 4.375vw;
	}
	.breadcrumbs {
		font-size: 0.938vw;
		margin: 0.781vw auto 3.516vw;
		width: 84.375vw;
	}
	/* news-list ---------------------------------------- */
	#news-list h2 {
		margin-bottom: 1.172vw;
	}
	#news-list .news-slider {
		width: 84.375vw;
	}
	#news-list .news-slider a {
		margin-bottom: 5vw;
	}
	#news-list .news-slider .news-items {
		width: 28.125vw;
	}
	#news-list .news-slider .news-items .news-thumb img {
		width: 24.219vw;
		height: 17.578vw;
	}
	.pager .pagination li {
	  margin: 0 0.156vw;
	  width: 3.906vw;
	  height: 3.906vw;
	}
	/* news-detail ---------------------------------------- */
	#news-detail .default-inner {
		padding: 0 0 9.375vw;
	}
	#news-detail .news-detail-btn-wrapper {
		width: 70.313vw;
	}
	.news-detail-wrapper {
		width: 70.313vw;
	}
	.news-detail-inner {
		padding: 1.25vw;
	}
	#news-detail .news-category img {
		height: 1.563vw;
	}
	#news-detail h3 {
		font-size: 2.344vw;
		width: 52.344vw;
		margin: 3.516vw auto 1.953vw;
		padding-bottom: 2.344vw;
	}
	#news-detail h3:after {
		width: 3.906vw;
		height: 0.234vw;
		left: calc(50% - 1.953vw);
	}
	#news-detail .news-date,
	#news-detail .news-address {
		width: 52.344vw;
		font-size: 1.328vw;
	}
	#news-detail .news-info-area {
		margin-bottom: 3.516vw;
	}
	#news-detail .news-date span,
	#news-detail .news-address span {
		font-size: 1.094vw;
		line-height: 1.328vw;
	}
	.news-block {
		width: 52.344vw;
	}
	.news-block .news-block-img img {
		max-width: 52.344vw;
	}
	.news-block h4 {
		font-size: 1.797vw;
	}
	.news-block iframe {
		width: 52.344vw;
		height: 29.443vw;
	}
	.news-contact {
		width: 52.344vw;
		font-size: 1.25vw;
		margin-top: 5.078vw;
	}
	.news-contact-txt-1 {
		font-size: 1.328vw;
	}
	.news-phone img {
		width: 24.609vw;
		height: auto;
	}
	.news-guide {
		font-size: 1.25vw;
		margin-top: 5.703vw;
	}
	#news-detail-map iframe {
		width: 70.313vw;
		/*height: 25.078vw;*/
		height: 30vw;
	}
	#news-detail button {
		font-size: 1.172vw;
		max-width: 21.875vw;
		margin: 1.563vw auto 0;
	}
	#news-detail button:before {
	  right: 0.938vw;
	  width: 0.781vw;
	  height: 0.781vw;
	  margin-top: -0.391vw;
	}
}
@media screen and (max-width: 768px) {
	.breadcrumbs {
		position: absolute;
		left: 0;
		bottom: 0;
		font-size: 3.021vw;
		margin: 0 0 4vw;
		width: 81.25vw;
		left: 8vw;
	}
	/* news-list ---------------------------------------- */
	#news-list .default-inner {
		padding: 0 0 8.333vw;
	}
	#news-list h2 {
		margin-top: 10.417vw;
		margin-bottom: 3.125vw;
	}
	#news-list .news-slider {
		width: 81.25vw;
		flex-direction: column;
	}
	#news-list .news-slider a {
		margin-bottom: 11.979vw;
	}
	#news-list .news-slider .news-items {
		width: 81.25vw;
		border-right: 1px solid #fff;
		padding: 5.208vw;
	}
	#news-list .news-slider .news-items .news-thumb img {
		width: 70.25vw;
		height: 47.723vw;
	}
	.pager .pagination {
		margin-bottom: 11.979vw;
	}
	.pager .pagination li {
	  margin: 0 0.5vw;
	  width: 10vw;
	  height: 10vw;
		font-size: 3.333vw;
	}
	/* news-detail ---------------------------------------- */
	#news-detail .default-inner {
		padding: 0 0 18.75vw;
	}
	#news-detail .news-detail-btn-wrapper {
		width: 81.25vw;
		margin-top: 68px;
	}
	.news-detail-wrapper {
		width: 81.25vw;
	}
	.news-detail-inner {
		padding: 2.292vw;
	}
	#news-detail .news-category img {
		height: 3.854vw;
	}
	#news-detail h3 {
		font-size: 4.25vw;
		width: 68.542vw;
		margin: 5vw auto 4.5vw;
		padding-bottom: 4.5vw;
	}
	#news-detail h3:after {
		width: 6.25vw;
		height: 0.625vw;
		left: calc(50% - 3.125vw);
	}
	#news-detail .news-date,
	#news-detail .news-address {
		width: 68.542vw;
		font-size: 2.917vw;
	}
	#news-detail .news-info-area {
		margin-bottom: 7.292vw;
	}
	#news-detail .news-date span,
	#news-detail .news-address span {
		font-size: 2.25vw;
		font-size: 2.917vw;
	}
	.news-block {
		width: 68.542vw;
	}
	.news-block .news-block-img img {
		max-width: 68.542vw;
	}
	.news-block h4 {
		font-size: 3.75vw;
	}
	.news-block iframe {
		width: 68.542vw;
		height: 38.555vw;
	}
	.news-block	p {
		font-size: 3.333vw;
	}
	.news-contact {
		width: 68.542vw;
		font-size: 3vw;
		margin-top: 14.063vw;
	}
	.news-contact-txt-1 {
		font-size: 3.25vw;
	}
	.news-phone img {
		width: 61.979vw;
	}
	.news-guide {
		font-size: 3.125vw;
		margin-top: 10vw;
	}
	#news-detail-map iframe {
		width: 81.25vw;
		height: 28.979vw;
	}
	#news-detail button {
		font-size: 3.646vw;
		max-width: none;
		margin: 1.563vw auto 0;
	}
	#news-detail button:before {
	  right: 3vw;
	  width: 2.5vw;
	  height: 2.5vw;
	  border-top: 0.5vw solid #fff;
	  border-right: 0.5vw solid #fff;
	  margin-top: -1.125vw;
	}
}
