@charset "UTF-8";
/*================================header_top================================*/
@media  print, screen and (min-width: 768px) {
.header_top {
	width:100%;
	max-width:1920px;
	height:1320px;
	margin:0 auto;
	padding:0;
	position: relative;
	z-index: 100;
	}
.header_top h2{
    font-family: 'Kosugi', sans-serif;
	width:auto;
	position:absolute;
	top:287px;
	left:50%;
	transform: translateX(150px);
	z-index:3;
	padding: 0;
    font-size: 24px;
    font-weight: bold;
    color: #081a40;
    line-height: 2.2;
	letter-spacing: 0.05em;
	text-align:right;
	}
@media all and (min-width: 768px) and (max-width: 1366px) {
.header_top h2{
	transform: translateX(84px);
	}
}
.header_top h2 img.pc { display: block !important; }
.header_top h2 img.sp { display: none !important; }
.header_top h2 img{
	width:350px;
	display:block;
	margin:0 0 40px auto;
	}
.header_top .image_wrap {
    width: 430px;
    height: auto;
    position: absolute;
	top:-257px;
	left:50%;
	z-index:2;
}
.header_top .mainvisual{
    width: 100%;
    height: 959px;
	position:relative;
}
.header_top .mainvisual.slider {
    position: absolute;
    top: 120px;
    left: 50%;
    -webkit-transform: translate(-960px,0);
    transform: translate(-960px,0);
    width: 1000px;
    height: 940px;
    margin: auto;
    object-fit: cover;
	z-index: 1;
	box-shadow: 0px 0px 25px rgba(0,0,0,0.3), 0px 0px 25px rgba(0,0,0,0.3), 0px 0px 25px rgba(0,0,0,0.3);
}
.header_top .slider img {
	width:100%;
	height: 940px;
	margin:auto;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
	transition: 10s ease-out;
	}
.header_top .slider .slick-active img {
	-webkit-transform: scale(1.0);
	transform: scale(1.0);
	}
.arrowWrap {
  font-family: 'Bebas Neue', cursive;
  position: absolute;
  left: 50%;
  transform: translateX(575px);
  bottom: 180px;
  height: 170px;
  z-index:2;
  -webkit-text-size-adjust: none;
}
.arrowInner p {
  font-size: 16px;
  font-weight:normal;
  color:#081a40;
  text-align: end;
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}
.arrow {
  width: 2px;
  height: 100px;
  margin: 30px auto 0;
  background-color: #eee;
  position: relative;
  overflow: hidden;
}
.arrow::before {
  content: '';
  width: 2px;
  height: 130px;
  margin: 30px auto 0;
  background-color: #081a40;
  position: absolute;
  top: -150px;
  left: 1px;
  -webkit-animation: arrow 2.5s ease 0s infinite normal;
  animation: arrow 2.5s ease 0s infinite normal;
}
@keyframes arrow {
  0% {
    -webkit-transform: translate3d(-50%, 0, 0);
    transform: translate3d(-50%, 0, 0);
  }

  60% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }

  100% {
    -webkit-transform: translate3d(-50%, 100px, 0);
    transform: translate3d(-50%, 100px, 0);
  }
}
a.anchor_top,
.anchor_top{
  display: block;
  padding-top: 125px!important;
  margin-top: -125px!important;
}
}
@media  print, screen and (max-width: 767px) {
.header_top {
	height:auto;
	position:relative;
	}
/*==
.header_top::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: auto;
    opacity: 0.4;
    background: -moz-linear-gradient(bottom, #000 0, #000 120px, transparent 240px);
    background: -webkit-linear-gradient(bottom, #000 0, #000 120px, transparent 240px);
    background: linear-gradient(to top, #000 0, #000 120px, transparent 240px);
	z-index:1;
}
==*/
.header_top .fr{
	margin-top:0;
	z-index:2;
	}
.header_top h2{
    font-family: 'Noto Sans JP',"游ゴシック Medium","YuGothicM","YuGothic","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
	position: relative;
	width:calc(100% - 40px);
	margin:35px auto 25px;
	padding: 0;
    font-size: 16px;
    font-weight: bold;
    color: #081a40;
    line-height: 1.8;
	letter-spacing: 0.05em;
	z-index:10;
	text-align:center;
	}
@media  print, screen and (max-width: 360px) {
.header_top h2{
	width:calc(100% - 40px);
    font-size: 16px;
	}
}
@media  print, screen and (max-width: 320px) {
.header_top h2{
	width:calc(100% - 40px);
    font-size: 15px;
	}
.header_top h2 br{
	display:none;
	}
}
.header_top .image_wrap {
    position: absolute;
    top: 5%;
    left: 0;
    right: 0;
    margin: auto;
    width: 52%;
    z-index: 1;
}
.header_top h2 span{
	display:block;
	}
.header_top h2 img {
    width: 46%;
    display: block;
    margin: 0 auto 15px;
}
.header_top h2 img.pc { display: none !important; }
.header_top h2 img.sp { display: block !important; }
.header_top .mainvisual.slider{
	background:#fff;
	}
.header_top .slider img {
	width:100%;
	height: auto;
	margin:auto;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
	transition: 15s ease-out;
	}
.header_top .slider .slick-active img {
	-webkit-transform: scale(1.0);
	transform: scale(1.0);
	}
.header_top .mainvisual.slider{
	top: 0px;
	}
.header_top .point {
    position: absolute;
    content: '';
    right: 15px;
	bottom: 40px;
	transform:none;
    display: inline-block;
    z-index: 2;
	width: 50px;
    height: auto;
}
.header_top .point img{
	width: 100%;
	height:auto;
}
.arrowWrap_sp{
  position: absolute;
  bottom: 20px;
  left: 50%;
  z-index: 2;
  display: inline-block;
  -webkit-transform: translate(-50%,0);
  transform: translate(-50%,0);
  z-index:2;
  padding-top: 36px;
}
.arrowWrap_sp a {
  font-family: 'Bebas Neue', cursive;
  text-decoration: none;
  color:#fff;
  font-size:16px;
}
.arrowWrap_sp a.disabled{
    pointer-events: none;
}
.arrowWrap_sp a span {
  position: absolute;
  top: 0;
  left: 50%;
  width: 34px;
  height: 34px;
  margin-left: -17px;
  border: 1px solid #fff;
  border-radius: 100%;
  box-sizing: border-box;
}
.arrowWrap_sp a span::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: '';
  width: 12px;
  height: 12px;
  margin: -10px 0 0 -6px;
  border-left: 1px solid #fff;
  border-bottom: 1px solid #fff;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  box-sizing: border-box;
}
.arrowWrap_sp a span::before {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  content: '';
  width: 34px;
  height: 34px;
  box-shadow: 0 0 0 0 rgba(255,255,255,.1);
  border-radius: 100%;
  opacity: 0;
  -webkit-animation: sdb 3s infinite;
  animation: sdb 3s infinite;
  box-sizing: border-box;
}
@-webkit-keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 40px rgba(255,255,255,.3);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
@keyframes sdb {
  0% {
    opacity: 0;
  }
  30% {
    opacity: 1;
  }
  60% {
    box-shadow: 0 0 0 40px rgba(255,255,255,.3);
    opacity: 0;
  }
  100% {
    opacity: 0;
  }
}
}



/*================================about_area================================*/
#about_area{
	overflow: hidden;
	width:100%;
	max-width:1920px;
	margin:0 auto;
	padding:130px 0 0;
	height:775px;
	clear:both;
	position:relative;
	z-index:1;
	}
#about_area .inner {
	width: 1248px;
	height: 775px;
    padding: 0;
	margin:0 auto;
	position:relative;
}
#about_area .about_inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: start;
    align-items: start;
	margin:0 24px;
	padding:0;
}
#about_area .inner_text{
	width:600px;
}
#about_area h2{
	width:600px;
	font-family: 'Montserrat', sans-serif;
	position: relative;
	padding:0;
	margin-bottom: 54px;
	font-size:110px;
	font-weight:bold;
	letter-spacing: 0;
	color:#081a40;
	line-height: 1.0;
}
#about_area h2 .text {
	font-family: 'Noto Sans JP',"游ゴシック Medium","YuGothicM","YuGothic","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
	font-size:32px;
	font-weight:bold;
	padding: 0;
	margin-top:15px;
	display:block;
	letter-spacing: 0.07em;
	position:relative;
}
#about_area p {
    margin: 0 auto 35px;
    padding: 0;
	color: #333;
    font-weight: normal;
    font-size: 17px;
	letter-spacing: 0.15em;
    line-height: 2.0;
}
#about_area p.catch {
    margin: 0 auto 35px;
    font-weight:bold;
    font-size: 24px;
    letter-spacing: 0.05em;
	white-space:nowrap;
}
#about_area .grid_content {
    margin: 60px 0 0;
}
#about_area li a:hover img {
	transition-duration: 0.7s;
	opacity: 0.5;
}
@media  print, screen and (max-width: 767px) {
#about_area{
	overflow: hidden;
	width:100%;
	padding:0;
	height:auto;
	}
#about_area .inner {
    width:100%;
	height:auto;
	min-height: inherit;
	margin:0;
    padding: 0;
    box-sizing: border-box;
	font-size:0;
}
#about_area .about_inner {
	position:relative;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 40px 0 0;
    margin: 0;
    text-align:center;
}
#about_area .inner_text{
	width:auto;
}
#about_area h2{
	width:auto;
	display:inline-block;
	margin: 0 auto 20px;
	font-size:46px;
}
#about_area h2 .text {
	margin-top:5px;
    font-size: 16px;
}
#about_area p {
	margin: 0 auto 15px;
    padding: 0 20px;
    text-align: left;
    font-size: small;
	line-height: 1.7;
}
#about_area p.catch {
    margin: 0 auto 15px;
    font-size: 15px;
    letter-spacing: 0.05em;
	white-space: inherit;
    line-height: 1.7;
}
@media  print, screen and (max-width: 360px) {
#about_area p.catch br{
	display:none;
}
}
#about_area .grid_content {
    margin:0;
}
}

/*================================point_area================================*/
#point_area{
	overflow: hidden;
	width:100%;
	padding:130px 0 0;
	height:1462px;
	clear:both;
	position: relative;
	z-index:0;
	}
#point_area .inner {
	width: 1200px;
    padding: 0;
	margin:0 auto;
	z-index: 1;
	position:relative;
}
#point_area h3{
	font-family: 'Montserrat', sans-serif;
	position: relative;
	padding:0;
	margin: 70px 0 15px;
	font-size:40px;
	font-weight:bold;
	letter-spacing: 0;
	color:#081a40;
	line-height: 1.0;
	letter-spacing: 0;
	display:block;
}
#point_area h3 em{
	color:#a8a18e;
}
#point_area ul {
    padding: 0;
    width: 1200px;
}
#point_area li{
	position: relative;
	width:1200px;
	height:auto;
	margin:0 0 100px;
	box-sizing: border-box;
	display: flex;
    flex-wrap: wrap;
	justify-content: space-between;
	}
#point_area a{
	display: block;
	text-decoration: none;
	}
#point_area a:hover{
	opacity:0.6;
	transition-duration: 0.5s;
	}
#point_area .scale_wrap{
	margin:0 auto;
	padding:0;
	position: relative;
	z-index:1;
	}
#point_area .inner_text {
	width: 600px;
	margin:0;
	padding:0;
	position: relative;
	z-index:10;
	vertical-align: middle;
}
#point_area .heading {
	writing-mode: vertical-rl;
	width:auto;
	font-family: 'Montserrat', sans-serif;
	font-size:16px;
	font-weight:bold;
	color:#000;
	position:absolute;
	top:0;
	right:-25px;
	line-height:16px;
	text-align: left;
	letter-spacing: 0.18em;
	z-index:11;
}
#point_area .heading em{
	color:#a8a18e;
}
#point_area p {
	width:510px;
    margin: 0;
    padding: 0;
	color: #333;
    font-weight: normal;
    font-size: 16px;
    letter-spacing: 0.18em;
    line-height: 1.7;
}
#point_area p.catch {
    margin: 0 0 15px;
    font-weight:bold;
    font-size: 24px;
}
#point_area .background_header {
    display: inherit;
    position: absolute;
    top: 0px;
    right: 50%;
    -webkit-transform: translate(480px,0);
    transform: translate(480px,0);
    width: 1490px;
    height: 100%;
    background: #f3f4f5;
    z-index: 0;
}
@media  print, screen and (max-width: 767px) {
#point_area{
	overflow: hidden;
	width:100%;
	height: auto;
	padding:0;
	background: #f3f4f5;
	}
#point_area .inner {
    width: 100%;
    padding: 40px 0 10px;
    box-sizing: border-box;
	font-size:0;
	display: block;
}
#point_area h3{
	display:inline-block;
	padding:0px 20px;
	margin: 0 0 8px;
	font-size:28px;
	line-height: 1.0;
}
#point_area ul{
	width: 100%;
	padding:0;
	}
#point_area li{
	width:100%;
	margin:0 auto 30px;
	height:auto;
	padding:0;
	}
#point_area .scale_wrap{
	text-align:center;
	}
#point_area .scale_wrap img{
	width:70%;
	max-width:565px;
	height:auto;
	}
#point_area .inner_text {
	width:100%;
	margin:0 auto;
	padding:0;
}
#point_area .heading {
	writing-mode: horizontal-tb;
	font-size:12px;
	top:auto;
	bottom:-10px;
	left:15px;
	right:auto;
	line-height:24px;
	padding:0 10px;
	background:#fff;
	letter-spacing: 0.1em;
}
#point_area .inner_text p {
	width: auto;
    margin: 0 auto 15px;
    padding: 0 20px;
    font-size: small;
	letter-spacing: 0.05em;
}
#point_area p.catch {
    margin: 0 auto 8px;
    font-size: 15px;
	letter-spacing: 0.1em;
}
#point_area .background_header {
    display: none;
}
}

/*================================whats_area================================*/
#whats_area{
	overflow: hidden;
	width:100%;
	max-width:1920px;
	margin:-20px auto 0;
	padding:0;
	height:680px;
	clear:both;
	position:relative;
	z-index:1;
	}
#whats_area .inner {
	width: 1200px;
	height: 588px;
    padding: 0;
	z-index: 1;
	margin:0 auto;
	position:relative;
}
#whats_area .whats_inner {
	position:relative;
	margin:0;
	padding:0;
	font-size:0;
	line-height:0;
}
#whats_area .whats_inner:after {
    position: absolute;
    content: '';
    bottom: -30px;
    left:30px;
    display: block;
    width: 1200px;
    height: 350px;
    background-image: url(../images/bg_whats_text.png);
    background-size: contain;
    background-repeat: no-repeat;
	z-index:-1;
}
#whats_area .inner_text{
	background: url(../images/bg_whats.png) no-repeat top center;
	padding:26px 30px 30px;
	height:350px;
	box-sizing:border-box;
	position:relative;
}
#whats_area h2{
	font-family: 'Montserrat', sans-serif;
	position: relative;
	padding:0;
	margin-bottom:0;
	font-size:110px;
	font-weight:bold;
	letter-spacing: 0;
	color:#081a40;
	line-height: 110px;
    margin-bottom: -16px;
}
#whats_area h3{
	font-family: 'Montserrat', sans-serif;
	margin-bottom:10px;
	font-size:50px;
	font-weight:bold;
	letter-spacing: 0.05em;
	color:#fff;
	line-height: 1.1;
}
#whats_area p {
	width:575px;
    margin: 0 0 10px;
    padding: 0;
	color: #fff;
    font-weight: normal;
    font-size: 16px;
	letter-spacing: 0.05em;
    line-height: 1.4;
}
#whats_area p.catch {
	width:auto;
    margin: 0 0 10px;
    font-weight:bold;
    font-size: 20px;
    letter-spacing: 0.15em;
	white-space:nowrap;
}
#whats_area .btn_more {
	margin:20px 0 0;
}
#whats_area .background_header {
    display: inherit;
    position: absolute;
    top: 0px;
    right: 50%;
    -webkit-transform: translate(480px,0);
    transform: translate(480px,0);
    width: 1490px;
    height: 100%;
    background: #f3f4f5;
    z-index: 0;
}
@media  print, screen and (max-width: 767px) {
#whats_area{
	overflow: hidden;
	width:100%;
	margin:0;
	padding:0;
	height:auto;
	background: #f3f4f5;
	}
#whats_area .inner {
    width:100%;
	height:auto;
	min-height: inherit;
	margin:0;
    padding: 0;
    box-sizing: border-box;
	font-size:0;
}
#whats_area .whats_inner {
	position:relative;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 5px 0 40px;
}
#whats_area .whats_inner:after {
    position: absolute;
    content: '';
    bottom: 0;
    left:0;
    display: block;
    width: 100%;
    height: 50px;
    background-image: url(../images/bg_whats_text.png);
    background-size: 100% auto;
    background-repeat: no-repeat;
	z-index:-1;
}
#whats_area .inner_text{
	background: url(../images/bg_whats.png) no-repeat top center;
	background-size:auto 100%;
	padding:20px 20px;
	height:auto;
}
#whats_area h2{
	display:inline-block;
	margin: 0 0 -7px;
	padding:0 20px;
	font-size:46px;
	line-height: 1.0;
	text-align:left;
}
#whats_area h3 {
    margin-bottom: 5px;
    font-size: 23px;
    line-height: 1.2;
}
@media  print, screen and (max-width: 360px) {
#whats_area h3 br{
	display:none;
}
}
#whats_area p {
	width: auto;
	margin: 0 auto 15px;
    padding: 0;
    text-align: left;
    font-size: small;
	line-height: 1.7;
}
#whats_area p.catch {
    margin: 0 auto 10px;
    font-size: 15px;
    letter-spacing: 0.05em;
	white-space: inherit;
    line-height: 1.7;
}
#whats_area .btn_more {
    margin: 0;
}
#whats_area .background_header {
    display: none;
}
}

/*================================product_area================================*/
#product_area{
    overflow: hidden;
    width: 100%;
	max-width:1920px;
	margin:-80px auto 0;
    padding: 0;
    height: 1060px;
    clear: both;
    position: relative;
	background: url(../images/bg_product.png) no-repeat bottom center;
    z-index: 2;
	}
#product_area .inner {
	width: 1200px;
	height: 654px;
    padding: 0;
	margin:0 auto;
	position:relative;
    z-index: 1;
}
#product_area .product_inner {
	position: absolute;
	top:130px;
	left:0;
	width:540px;
	height:450px;
	margin:0;
	padding:0;
	clear:both;
	z-index:10;
	font-size:0;
}
#product_area h2{
    font-family: 'Montserrat', sans-serif;
    position: relative;
    padding: 0;
    margin-bottom: 22px;
    font-size: 90px;
    font-weight: bold;
    letter-spacing: 0;
    color: #fff;
    line-height: 1.0;
}
#product_area h2 .text {
    color: #fff;
	font-size:20px;
	font-weight:normal;
	margin-bottom:20px;
	letter-spacing: 0.1em;
	line-height:45px;
	position:relative;
	display: block;
}
#product_area h2 .text em{
	background:#ff4b02;
	padding: 12px 16px;
    box-shadow: 0px 4px rgba(0,0,0,0.4);
}
#product_area h2 a {
	color:#000;
	text-decoration:none;
	line-height:1.0;
}
#product_area h2 a:hover,
#product_area h2 a:hover .text{
    opacity: 0.7;
	transition-duration: 0.5s;
}
#product_area p {
    margin: 0 auto 22px;
    padding: 0;
    color: #fff;
    font-weight: normal;
    font-size: 16px;
    letter-spacing: 0.05em;
    line-height: 2.0;
}
#product_area p.catch {
    margin: 0 auto 22px;
    font-weight: bold;
    font-size: 24px;
    letter-spacing: 0.18em;
    line-height: 1.6;
}
#product_area .btn_more {
	position:absolute;
	bottom:0;
	margin:0;
}
#product_area .image_wrap{
    width: auto;
    height: auto;
	z-index:0;
	position: absolute;
	top:80px;
	left:50%;
}
#product_area .image_wrap img{
	width:735px;
}
#product_area .background_header {
    display: inherit;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translate(-960px,0);
    transform: translate(-960px,0);
    width: 1222px;
    height: 654px;
    background: url(../images/bg_product_inner.png) no-repeat 0 0;
    background-size: contain;
    z-index: 0;
}
@media  print, screen and (max-width: 767px) {
#product_area{
	overflow: hidden;
	width:100%;
	height: auto;
	padding:0;
    margin: 0 auto;
    background: #f3f4f5;
	}
#product_area .inner {
    width:100%;
	height:auto;
	min-height: inherit;
	margin:0 0px;
    padding: 0;
    box-sizing: border-box;
	font-size:0;
	text-align:center;
}
#product_area .product_inner {
	position:relative;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 30px 0 20px;
    text-align:center;
	background: url(../images/bg_product_inner.png) no-repeat 0 center;
    background-size: cover;
}
#product_area h2{
    width: auto;
    display: inline-block;
    margin: 0 auto 20px;
    font-size: 40px;
}
#product_area h2 .text {
    font-size: 13px;
	font-weight:bold;
    margin-bottom: 10px;
}
#product_area h2 .text em {
    padding: 8px 16px;
    box-shadow: 0px 3px rgb(0 0 0 / 40%);
}
#product_area p {
    margin: 0 auto 15px;
    padding: 0 20px;
    text-align: left;
    font-size: small;
    line-height: 1.7;
}
#product_area p.catch {
    margin: 0 auto 15px;
    font-size: 15px;
    letter-spacing: 0.05em;
    white-space: inherit;
    line-height: 1.7;
}
#product_area .btn_more {
	position: relative;
    text-align: center;
}
#product_area .image_wrap{
    position: inherit;
    padding-top: 0px;
    display: block;
    width: 100%;
	top: auto;
    left: auto;
	transform: none;
}
#product_area .image_wrap img{
	width:100%;
	min-width: inherit;
}
#product_area .background_header {
    display: none;
}
}

/*================================plan_area================================*/
#plan_area{
	overflow: hidden;
	width:100%;
	max-width:1920px;
	margin:-70px auto;
	padding:210px 0 0;
	height:auto;
	min-height:4806px;
	clear:both;
	position:relative;
	z-index:3;
	background: url(../images/bg_plan.png) ,-moz-linear-gradient(bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background: url(../images/bg_plan.png) , -ms-linear-gradient(bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background: url(../images/bg_plan.png) , -moz-linear-gradient(bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background: url(../images/bg_plan.png) ,-webkit-linear-gradient(bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background: url(../images/bg_plan.png) ,linear-gradient(to bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: auto;
	}
#plan_area .inner {
	width:100%;
	max-width:1920px;
	height:auto;
	min-height:4720px;
    padding: 90px 0 60px;
	box-sizing:border-box;
	margin:0 auto;
	position:relative;
	background:url(../images/bg_plan_inner.png) repeat-y top center;
	/*==
	box-shadow: 0px 0px 25px rgba(0,0,0,0.1), 0px 0px 25px rgba(0,0,0,0.1), 0px 0px 25px rgba(0,0,0,0.1);
	==*/
	clear:both;
	z-index:1;
}
#plan_area .inner_bottom {
	width:100%;
	max-width:1920px;
	height:26px;
    margin:0 auto;
	position:relative;
	background:url(../images/bg_plan_inner_bottom.png) no-repeat top center;
	z-index:1;
}
#plan_area .inner_text{
	width: 1200px;
	padding:0 0 125px;
	margin:0 auto;
	box-sizing: border-box;
}
#plan_area h2{
	width:1200px;
	font-family: 'Montserrat', sans-serif;
	position: relative;
	padding:0;
	margin:0 auto;
	margin-bottom: -16px;
	font-size:110px;
	font-weight:bold;
	letter-spacing: 0;
	color:#fff;
	line-height: 1.0;
	z-index:2;
}
#plan_area h2 .text{
    font-family: 'Noto Sans JP',"游ゴシック Medium","YuGothicM","YuGothic","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
    font-size: 32px;
    font-weight: bold;
    padding: 0;
    margin-bottom: 30px;
    display: block;
    letter-spacing: 0.15em;
    position: relative;
}
#plan_area .point{
	position: absolute;
	top:0;
    left: 50%;
    -webkit-transform: translate(300px,0);
    transform: translate(300px,0);
	z-index:1;
}
#plan_area h3{
	font-size:36px;
	font-weight:bold;
	color:#fff;
	padding: 0;
	margin-bottom:25px;
	display:block;
	letter-spacing: 0.12em;
	position:relative;
	text-align:center;
	line-height:80px;
	border-radius:5px;
	background:#081a40;
}
#plan_area h3 img{
	position: absolute;
	top:-23px;
	left:60px;
}
#plan_area .type01{
	background:#34a4a8;
}
#plan_area .type02{
	background:#2e61a9;
}
#plan_area .type03{
	background:#615a96;
}
#plan_area .caption_box{
	display: flex;
    flex-wrap: nowrap;
	justify-content: space-between;
}
#plan_area .image_wrap img{
	margin-left:10px;
}
#plan_area p {
    margin: 0 auto 20px;
    padding: 0;
	color: #333;
    font-weight: normal;
    font-size: 16px;
	letter-spacing: 0.1em;
	line-height: 1.5;
}
#plan_area p.caption {
    margin: 10px auto 0;
	text-align:center;
}
#plan_area p.detail {
	font-size: 24px;
	border:2px solid #d9dfe3;
	border-radius:5px;
	line-height:1.0;
	padding:0 40px;
	margin:0 12px 20px 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
	white-space:nowrap;
}
#plan_area p.catch {
    margin: 0 auto 10px;
    font-weight:bold;
    font-size: 24px;
    letter-spacing: 0.1em;
	white-space:nowrap;
	border-bottom: solid 3px #ff4b02;
	display: inline-block;
}
#plan_area li a:hover img {
	transition-duration: 0.7s;
	opacity: 0.5;
}
#plan_area .background_header {
    display: inherit;
    position: absolute;
    top: 70px;
    left: 0;
    width: 1920px;
    height: 600px;
    background: #081a40;
    z-index: 0;
}
@media  print, screen and (max-width: 767px) {
#plan_area{
	overflow: hidden;
	width:100%;
	padding:90px 0 0;
	margin:-25px auto 0;
	height:auto;
	min-height:inherit;
	background:none;
	}
#plan_area .inner {
    width:100%;
	height:auto;
	min-height: inherit;
	margin:0;
    padding: 20px 20px 0;
    box-sizing: border-box;
	font-size:0;
}
#plan_area .inner_bottom {
	display:none;
}
#plan_area .inner_text{
	width: auto;
	padding:0 0 40px;
}
#plan_area h2{
	width:auto;
	padding:0 20px;
    margin-bottom: -6px;
	font-size:43px;
}
#plan_area h2 .text {
	margin-bottom:8px;
    font-size: 16px;
}
#plan_area .point{
	position: absolute;
	top:0;
    left:auto;
	right:15px;
    transform: none;
}
#plan_area .point img{
	width:auto;
	height:200px;
}
#plan_area h3 {
    font-size: 17px;
    margin-bottom: 15px;
    letter-spacing: 0.08em;
    line-height: 1.0;
	padding:20px 10px;
}
#plan_area h3.type01 {
	margin-top:40px;
    padding:25px 10px 20px;
}
#plan_area h3 img {
    position: absolute;
    top: -55px;
    left: 50%;
	transform: translate(-50%,0);
	width:auto;
	height:70px;
}
#plan_area .caption_box{
	display: block;
}
#plan_area .image_wrap {
    margin-bottom: 15px;
	text-align:center;
}
#plan_area .image_wrap img {
    margin:0 5px;
	width: auto;
    height: 58px;
}
#plan_area .imgC {
	overflow-x:scroll;
}
#plan_area .imgC img{
	width:800px;
	height:auto;
}
#plan_area p {
	margin: 0 auto 10px;
    padding: 0;
    text-align: left;
    font-size: small;
	line-height: 1.5;
}
#plan_area p.catch {
    margin: 0 auto 12px;
    padding: 0;
    font-size: 15px;
    letter-spacing: 0.05em;
    white-space: inherit;
    border-bottom:none;
	line-height: 1.4;
	position:relative;
}
#plan_area p.catch:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 2px #ff4b02;
  bottom: -7px;
  width: 100%;
}
#plan_area p.caption {
	text-align:left;
}
#plan_area p.detail {
    font-size: 15px;
    line-height: 1.0;
    padding: 10px 40px;
    margin: 0 auto 8px;
    display: block;
	text-align:center;
}
#plan_area .background_header {
    display: inherit;
    position: absolute;
    top: 20px;
    left: 0;
    width: 100%;
    height: 200px;
}
}

/*================================flow_area================================*/
#flow_area{
	overflow: hidden;
	width:100%;
	max-width:1920px;
	margin:-70px auto 0;
	padding:210px 0 730px;
	height:auto;
	clear:both;
	position:relative;
	z-index:3;
	background: url(../images/bg_flow.png) ,-moz-linear-gradient(bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background: url(../images/bg_flow.png) , -ms-linear-gradient(bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background: url(../images/bg_flow.png) , -moz-linear-gradient(bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background: url(../images/bg_flow.png) ,-webkit-linear-gradient(bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background: url(../images/bg_flow.png) ,linear-gradient(to bottom, transparent 0, transparent 90px, #f3f3f3 90px);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: auto;
	}
#flow_area .inner {
	width:100%;
	max-width:1920px;
	height:auto;
    padding: 90px 0 60px;
	box-sizing:border-box;
	margin:0 auto;
	position:relative;
	background:url(../images/bg_plan_inner.png) repeat-y top center;
	/*==
	box-shadow: 0px 0px 25px rgba(0,0,0,0.1), 0px 0px 25px rgba(0,0,0,0.1), 0px 0px 25px rgba(0,0,0,0.1);
	==*/
	z-index:1;
}
#flow_area .inner_bottom {
	width:100%;
	max-width:1920px;
	height:26px;
    margin:0 auto;
	position:relative;
	background:url(../images/bg_plan_inner_bottom.png) no-repeat top center;
	z-index:1;
}
/*======tab_area======*/
.tab_area {
  width: 1200px;
  margin: auto;
}
.tab_link {
	width:100%;
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
	list-style-type: none;
}
.tab_link li {
  width: calc(100% / 2 - 10px);
  height: auto;
  background:#f3f3f3;
  line-height: 100px;
  font-size: 32px;
  font-weight:bold;
  letter-spacing: 0.12em;
  text-align: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin:0 0 90px;
  order: -1;
  transition: all 0.7s ease;
  border-radius:5px 5px 0 0;
  position:relative;
}
.tab_link li:first-child {
	margin-left: 0;
}
.tab_link li br{
	display:none;
}
.tab_link li span{
  padding-left:50px;
  background:url(../images/arrow_tav02.svg) no-repeat center left;
}
.tab_link li:after {
	content: '';
	position: absolute;
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-top: 10px solid #081a40;
	display: none;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
}
.tab_link li.active, .tab_link li:hover {
	background: #081a40;
	color: #fff;
	font-weight: bold;
}
.tab_link li.active:after, .tab_link li:hover:after {
	display: block;
}
.tab_link li.active  span, .tab_link li:hover span{
  background:url(../images/arrow_tav01.svg) no-repeat center left;
}
.tab-content {
	align-items: baseline;
}
/*======tab_area======*/
#flow_area .inner_text{
	width: 1200px;
	padding:0 0 30px;
	margin:0 auto;
	box-sizing: border-box;
	text-align:center;
}
#flow_area h2{
	width:1200px;
	font-family: 'Montserrat', sans-serif;
	position: relative;
	padding:0;
	margin:0 auto;
	margin-bottom: -16px;
	font-size:110px;
	font-weight:bold;
	letter-spacing: 0;
	color:#fff;
	line-height: 1.0;
	z-index:2;
	text-align:right;
}
#flow_area h2 .text{
    font-family: 'Noto Sans JP',"游ゴシック Medium","YuGothicM","YuGothic","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
    font-size: 32px;
    font-weight: bold;
    padding: 0;
    margin-bottom: 30px;
    display: block;
    letter-spacing: 0.15em;
    position: relative;
}
#flow_area .point{
	position: absolute;
	top:0;
    right: 50%;
    -webkit-transform: translate(-300px,0);
    transform: translate(-300px,0);
	z-index:1;
}
#flow_area ul.flow{
	margin-bottom:0;
	text-align:left;
}
#flow_area ul.flow li{
	display: flex;
    flex-wrap: nowrap;
	justify-content: start;
    align-items: center;
	padding:0;
	border:1px solid #081a40;
	margin-bottom:50px;
	position:relative;
}
#flow_area ul.flow li::after{
   content:"";
   display:block;
   width:1px;
   height:50px;
   background-color:#081a40;
   position:absolute;
   bottom:-51px;
   left:50%;
}
#flow_area ul.flow li:last-child::after{
   display:none;
}
#flow_area ul.flow li .text{
	padding:25px 130px 25px 35px;
	border-left:1px solid #081a40;
}
#flow_area ul.flow li p{
    margin: 0 auto 10px;
}
#flow_area ul.flow li p.catch {
    margin: 0 auto 15px;
}
#flow_area ul.flow li img{
	padding:0 45px;
}
#flow_area ul.preparation{
	display: flex;
    flex-wrap: wrap;
	justify-content: space-between;
	text-align:left;
	margin-bottom:40px;
}
#flow_area ul.preparation li{
	width: calc(100% / 2 - 20px);
	display: flex;
    flex-wrap: nowrap;
	justify-content: start;
    align-items: center;
	padding:30px;
	box-sizing:border-box;
	margin-bottom:20px;
	position:relative;
	background:#f3f3f3;
}
#flow_area ul.preparation li p{
    margin: 0;
	letter-spacing: 0;
}
#flow_area ul.preparation li em {
	font-weight:bold;
	font-size: 20px;
	letter-spacing: 0.1em;
	display:block;
}
#flow_area ul.preparation li img{
	margin-right:20px;
}
#flow_area p {
    margin: 0 auto 20px;
    padding: 0;
	color: #333;
    font-weight: normal;
    font-size: 16px;
	letter-spacing: 0.1em;
	line-height: 1.5;
}
#flow_area p.catch {
    margin: 0 auto 10px;
    font-weight:bold;
    font-size: 24px;
	white-space:nowrap;
	border-bottom: solid 3px #ff4b02;
	display: inline-block;
}
#flow_area p.catch.second {
	font-size: 26px;
    margin: 0 auto 45px;
	line-height: 1.7;
}
#flow_area .background_header {
    display: inherit;
    position: absolute;
    top: 70px;
    left: 0;
    width: 1920px;
    height: 600px;
    background: #081a40;
    z-index: 0;
}
@media  print, screen and (max-width: 767px) {
#flow_area{
	overflow: hidden;
	width:100%;
	padding:90px 0 0;
	margin:-25px auto 0;
	height:auto;
	min-height:inherit;
	background:none;
	}
#flow_area .inner {
    width:100%;
	height:auto;
	min-height: inherit;
	margin:0;
    padding: 20px 20px 0;
    box-sizing: border-box;
	font-size:0;
}
#flow_area .inner_bottom {
	display:none;
}
/*======tab_area======*/
.tab_area {
  width: 100%;
  margin: auto;
}
.tab_link {
	width:auto;
	display: flex;
	justify-content: space-between;
	margin: -10px -10px 0;
	padding: 0;
	list-style-type: none;
}
.tab_link li {
  width: calc(100% / 2);
  line-height: 1.4;
  font-size: 16px;
  letter-spacing: 0.07em;
  margin:0 1px 30px;
}
@media  print, screen and (max-width: 320px) {
.tab_link li {
  font-size: 15px;
}
}
.tab_link li:first-child {
	margin-left: 0;
}
.tab_link li br{
	display:inherit;
}
.tab_link li span{
  padding:15px 0px 15px 28px;
  background:url(../images/arrow_tav02.svg) no-repeat center left;
  background-size:16px auto;
}
.tab_link li.active  span, .tab_link li:hover span{
  background:url(../images/arrow_tav01.svg) no-repeat center left;
  background-size:16px auto;
}
/*======tab_area======*/
#flow_area .inner_text{
	width: auto;
	padding:0 0 15px;
}
#flow_area h2{
	width:auto;
	padding:0 20px;
    margin-bottom: -6px;
	font-size:43px;
}
#flow_area h2 .text {
	margin-bottom:8px;
    font-size: 16px;
}
#flow_area h2 .check{
	display:block;
}
#flow_area .point{
	position: absolute;
	top:0;
    left:15px;
    transform: none;
}
#flow_area .point img{
	width:auto;
	height:200px;
}
#flow_area ul.flow{
}
#flow_area ul.flow li{
	display: block;
	margin-bottom:20px;
	text-align:center;
}
#flow_area ul.flow li::after{
   height:20px;
   bottom:-21px;
}
#flow_area ul.flow li .text{
	padding:8px 15px 15px;
	border-left:none;
}
#flow_area ul.flow li p{
    margin: 0;
}
#flow_area ul.flow li p.catch {
    margin: 0 auto 15px;
}
#flow_area ul.flow li img{
	padding:15px 0 0;
	width:auto;
	height:50px;
}
#flow_area ul.preparation{
	display: block;
	margin-bottom:20px;
}
#flow_area ul.preparation li{
	width: 100%;
	padding:15px;
	margin-bottom:10px;
}
#flow_area ul.preparation li em {
	font-size: 14px;
	letter-spacing: 0.07em;
}
#flow_area ul.preparation li img{
	margin-right:15px;
	width:25px;
	height:auto;
}
#flow_area p {
	margin: 0 auto 10px;
    padding: 0;
    text-align: left;
    font-size: small;
	line-height: 1.5;
}
#flow_area p.catch {
    margin: 0 auto 12px;
    padding: 0;
    font-size: 15px;
    letter-spacing: 0.05em;
    white-space: inherit;
    border-bottom:none;
	line-height: 1.4;
	position:relative;
}
#flow_area p.catch.second {
	font-size: 16px;
    margin: 0 auto 25px;
	line-height: 1.7;
}
#flow_area p.catch:after {
  position: absolute;
  content: " ";
  display: block;
  border-bottom: solid 2px #ff4b02;
  bottom: -7px;
  width: 100%;
}
#flow_area p.detail {
    font-size: 15px;
    line-height: 1.0;
    padding: 10px 40px;
    margin: 0 auto 8px;
    display: block;
	text-align:center;
}
#flow_area .background_header {
    display: inherit;
    position: absolute;
    top: 20px;
    left: 0;
    width: 100%;
    height: 200px;
}
}

/*================================faq_area================================*/
#faq_area{
	overfaq: hidden;
	width:100%;
	max-width:1920px;
	margin:-620px auto 0;
	padding:0 0 220px;
	height:auto;
	clear:both;
	position:relative;
	z-index:3;
	background:-moz-linear-gradient(bottom, transparent 0, transparent 620px, #f8f8f8 620px);
    background:-ms-linear-gradient(bottom, transparent 0, transparent 620px, #f8f8f8 620px);
    background:-moz-linear-gradient(bottom, transparent 0, transparent 620px, #f8f8f8 620px);
    background:-webkit-linear-gradient(bottom, transparent 0, transparent 620px, #f8f8f8 620px);
    background:linear-gradient(to bottom, transparent 0, transparent 620px, #f8f8f8 620px);
    background-repeat: no-repeat;
    background-position: bottom center;
    background-size: auto;
	}
#faq_area .inner {
	width:100%;
	max-width:1920px;
	height:auto;
    padding: 40px 0 130px;
	box-sizing:border-box;
	margin:0 auto;
	position:relative;
	background:url(../images/bg_plan_inner.png) repeat-y top center;
	/*==
	box-shadow: 0px 0px 25px rgba(0,0,0,0.1), 0px 0px 25px rgba(0,0,0,0.1), 0px 0px 25px rgba(0,0,0,0.1);
	==*/
	z-index:1;
}
#faq_area .inner_bottom {
	width:100%;
	max-width:1920px;
	height:26px;
    margin:0 auto;
	position:relative;
	background:url(../images/bg_plan_inner_bottom.png) no-repeat top center;
	z-index:1;
}
#faq_area .inner_text{
	width: 1200px;
	padding:0;
	margin:0 auto;
	box-sizing: border-box;
	text-align:left;
	border-bottom:2px solid #e0e4e2;
}
#faq_area h2{
	width:1200px;
	font-family: 'Montserrat', sans-serif;
	position: relative;
	padding:0;
	margin:0 auto;
	margin-bottom: -16px;
	font-size:110px;
	font-weight:bold;
	letter-spacing: 0;
	color:#081a40;
	line-height: 1.0;
	z-index:2;
	text-align:center;
}
#faq_area h3{
	width:1200px;
    font-size: 32px;
    font-weight: bold;
	color:#081a40;
    padding: 0;
	margin:0 auto 70px;
    display: block;
    letter-spacing: 0.15em;
    position: relative;
	text-align:center;
}
#faq_area p {
    margin: 0;
    padding: 0px 90px 40px 138px;
	color: #333;
    font-weight: normal;
    font-size: 20px;
	letter-spacing: 0.1em;
	line-height: 1.5;
	background:url(../images/icon_a.svg) no-repeat top 4px left 92px;
}
.acd-check{
    display: none;
}
.acd-label{
    color: #333;
	font-size:20px;
    display: block;
    padding: 40px 90px;
    position: relative;
	letter-spacing: 0.1em;
	line-height: 1.5;
	border-top:2px solid #e0e4e2;
}
.acd-label span{
    background:url(../images/icon_q.svg) no-repeat center left;
    padding: 0 0 0 48px;
}
.acd-label:after{
    position: absolute;
    content: '';
    top: 50%;
    right: 0;
	transform: translate(0,-50%);
    display: block;
    width: 30px;
    height: 30px;
    background-image: url(../images/icon_plus.svg);
    background-size: contain;
    background-repeat: no-repeat;
}
.acd-content{
    display: block;
    height: 0;
    opacity: 0;
    padding: 0;
    transition: 0.7s;
    visibility: hidden;
}
.acd-check:checked + .acd-label:after{
    width: 30px;
    height: 3px;
    background-image: url(../images/icon_minus.svg);
    background-size: contain;
    background-repeat: no-repeat;
}
.acd-check:checked + .acd-label + .acd-content{
    height: 100px;
    opacity: 1;
    padding: 0;
    visibility: visible;
}
.acd-check:checked + .acd-label + .acd-content.short{
    height: 70px;
}
.acd-check:checked + .acd-label + .acd-content.long{
    height: 130px;
}
@media  print, screen and (max-width: 767px) {
#faq_area{
	overfaq: hidden;
	width:100%;
	padding:40px 0 0;
	margin:0 auto;
	height:auto;
	min-height:inherit;
	background: #f8f8f8;
	}
#faq_area .inner {
    width:100%;
	height:auto;
	min-height: inherit;
	margin:0;
    padding: 15px 20px 20px 20px;
    box-sizing: border-box;
	font-size:0;
}
#faq_area .inner_bottom {
	display:none;
}
#faq_area .inner_text{
	width: auto;
	padding:0;
}
#faq_area h2{
	width:auto;
	padding:0 20px;
    margin-bottom: -6px;
	font-size:43px;
}
#faq_area h3{
	width:auto;
    font-size: 16px;
	margin:0 auto 20px;
    display: block;
    letter-spacing: 0.1em;
}
#faq_area p {
	margin: 0 auto;
    padding: 0 0 0 32px;
    text-align: left;
    font-size: small;
	line-height: 1.5;
	background:url(../images/icon_a.svg) no-repeat top 4px left;
	background-size:auto 18px;
}
.acd-check{
    display: none;
}
.acd-label{
	font-size:15px;
    display: block;
    padding: 16px 32px;
	background:url(../images/icon_q.svg) no-repeat center left;
	background-size:auto 20px;
}
.acd-label span{
    background:none;
	padding:0;
}
.acd-label:after{
    width: 18px;
    height: 18px;
}
.acd-content{
    transition: 0;
}
.acd-check:checked + .acd-label:after{
    width: 18px;
    height: 2px;
    background-image: url(../images/icon_minus.svg);
    background-size: contain;
    background-repeat: no-repeat;
}
.acd-check:checked + .acd-label + .acd-content{
    height: auto;
	padding: 0 0 16px;
}
.acd-check:checked + .acd-label + .acd-content.short{
    height: auto;
}
.acd-check:checked + .acd-label + .acd-content.long{
    height: auto;
}
}

/*================================info_area================================*/
#info_area{
	overinfo: hidden;
	width:100%;
	max-width:1920px;
	margin:0 auto;
	padding:0 0 280px;
	height:auto;
	clear:both;
	position:relative;
	z-index:3;
	background:#f8f8f8 url(../images/bg_info_shadow.png) no-repeat calc(50% - -30px) calc(100% - 250px);
	}
#info_area .inner {
	width:100%;
	max-width:1920px;
	height:auto;
    padding: 40px 0 90px;
	box-sizing:border-box;
	margin:0 auto;
	position:relative;
	background:url(../images/bg_info_inner.png) repeat-y top center;
	/*==
	box-shadow: 0px 0px 25px rgba(0,0,0,0.1), 0px 0px 25px rgba(0,0,0,0.1), 0px 0px 25px rgba(0,0,0,0.1);
	==*/
	z-index:1;
}
#info_area h2{
    width: 1200px;
    font-family: 'Montserrat', sans-serif;
    position: relative;
    padding: 0;
    margin: 0 auto;
    margin-bottom: 80px;
    font-size: 50px;
    font-weight: bold;
    letter-spacing: 0;
    color: #081a40;
    line-height: 1.0;
    z-index: 2;
	text-align:center;
}
#info_area h2 .text {
    font-family: 'Noto Sans JP',"游ゴシック Medium","YuGothicM","YuGothic","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
    font-size: 32px;
    font-weight: bold;
    padding: 0;
    margin-top: 14px;
    display: block;
    letter-spacing: 0.15em;
    position: relative;
}
#info_area p {
    margin: 0;
    padding: 0px 90px 40px 138px;
	color: #333;
    font-weight: normal;
    font-size: 20px;
	letter-spacing: 0.1em;
	line-height: 1.5;
	background:url(../images/icon_a.svg) no-repeat top 4px left 92px;
}
#info_area .news {
	width: 1200px;
	padding:0;
	margin:0 auto;
	box-sizing: border-box;
	text-align:left;
}
#info_area dl {
	width:1200px;
	border-bottom: 2px solid #eaeff2;
	display: flex;
    align-items: center;
}
#info_area dt {
	width:280px;
	font-size:16px;
	color:#333;
	padding:43px 0;
	line-height: 1.8;
	text-align: center;
}
#info_area dd {
	width:920px;
	font-size:16px;
	color:#333;
	padding:43px 0;
	line-height: 1.8;
	letter-spacing: 0.15em;
}
#info_area dd em{
	display:block;
	font-size:16px;
	color:#333;
	font-weight:bold;
}
#info_area dd a {
	padding-right:80px;
	color:#111;
	font-weight:normal;
	text-decoration:none!important;
	display:block;
	position:relative;
}
#info_area dd a:after {
    position: absolute;
    right: 20px;
    top: 50%;
    margin-top: -6px;
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    border-top: solid 1px #333;
    border-right: solid 1px #333;
    transform: rotate(45deg);
    z-index: 2;
}
#info_area dd a:hover,
#info_area dd a:hover em{
	color: #555;
    text-decoration:underline!important;
}
@media  print, screen and (max-width: 767px) {
#info_area{
	overinfo: hidden;
	width:100%;
	padding:40px 0 0;
	margin:0 auto;
	height:auto;
	min-height:inherit;
	background: #f8f8f8;
	}
#info_area:after {
    display: none;
}
#info_area .inner {
    width:100%;
	height:auto;
	min-height: inherit;
	margin:0;
    padding: 12px 20px 22px 20px;
    box-sizing: border-box;
	font-size:0;
}
#info_area .inner_text{
	width: auto;
	padding:0;
}
#info_area h2{
	width:auto;
	padding:0 20px;
	margin-bottom: 20px;
	font-size:30px;
}
#info_area h2 .text {
    margin-top: 6px;
    font-size: 16px;
}
#info_area p {
	margin: 0 auto;
    padding: 0 0 0 32px;
    text-align: left;
    font-size: small;
	line-height: 1.5;
	background:url(../images/icon_a.svg) no-repeat top 4px left;
	background-size:auto 18px;
}
#info_area .news {
    width: auto;
    margin: 0 auto;
}
#info_area dl {
	width:100%;
	display: block;
}
#info_area dt {
	width:auto;
	letter-spacing: 0.04em;
    font-size: 11px;
	padding:12px 0 6px;
    line-height: 1.7;
	text-align:left;
}
#info_area dd {
	width:auto;
	font-size:small;
	padding:0 0 12px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}
#info_area dd em{
	font-size:small;
}
#info_area dd a {
	background-size:6px auto;
	padding-right:20px;
}
#info_area dd a:after {
    right: 0;
    margin-top: -4px;
    width: 8px;
    height: 8px;
}
}

/*================================shop_area================================*/
#shop_area{
	overflow: hidden;
	width:100%;
	max-width:1920px;
	margin:0 auto;
	padding:0 0 877px;
	height:auto;
	clear:both;
	position:relative;
	z-index:3;
	background:#f8f8f8 url(../images/bg_shop.png) no-repeat bottom center;
	}
#shop_area .inner {
	width: 1200px;
	min-height: 540px;
    padding: 0;
	margin:0 auto 70px;
	position:relative;
}
#shop_area .shop_inner {
	position: absolute;
	top:0;
	left:0;
	width:600px;
	height:auto;
	margin:0;
	padding:0;
	clear:both;
	z-index:10;
}
#shop_area h2{
    width: 1200px;
    font-family: 'Montserrat', sans-serif;
    position: relative;
    padding: 0;
    margin: 0 auto;
    margin-bottom: 80px;
    font-size: 50px;
    font-weight: bold;
    letter-spacing: 0;
    color: #081a40;
    line-height: 1.0;
    z-index: 2;
	text-align:center;
}
#shop_area h2 .text {
    font-family: 'Noto Sans JP',"游ゴシック Medium","YuGothicM","YuGothic","ヒラギノ角ゴ Pro","Hiragino Kaku Gothic Pro","メイリオ","Meiryo",sans-serif;
    font-size: 32px;
    font-weight: bold;
    padding: 0;
    margin-top: 14px;
    display: block;
    letter-spacing: 0.15em;
    position: relative;
}
#shop_area h3{
    width: auto;
    padding: 0;
    margin-bottom: 25px;
    font-size: 24px;
    font-weight: bold;
    letter-spacing: 0;
    color: #081a40;
    line-height: 1.0;
}
#shop_area h3.second{
	font-family: 'Montserrat', sans-serif;
	margin-bottom: 30px;
    font-size: 32px;
}
#shop_area .image_wrap{
    width: auto;
    height: auto;
	z-index:0;
	position: absolute;
	top:0;
	left:50%;
	-webkit-transform: translate(40px,0);
    transform: translate(40px,0);
}
.gmap iframe,
.gmap object,
.gmap embed {
  -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
  -webkit-transition: all 0.7s ease;
  -moz-transition: all 0.7s ease;
  -o-transition: all 0.7s ease;
  transition: all  0.7s ease;
}
.gmap iframe:hover,
.gmap object:hover,
.gmap embed:hover {
  -webkit-filter: grayscale(0%);
  -moz-filter: grayscale(0%);
  -ms-filter: grayscale(0%);
  -o-filter: grayscale(0%);
  filter: grayscale(0%);
}
@media  print, screen and (max-width: 767px) {
#shop_area{
    overinfo: hidden;
    width: 100%;
    padding: 40px 0 200px;
    margin: 0 auto;
    height: auto;
    min-height: inherit;
    background:#f8f8f8 url(../images/bg_shop.png) no-repeat bottom center;
	background-size:auto 240px;
	}
#shop_area .inner {
    width: 100%;
	min-height: inherit;
    padding: 0 20px;
    box-sizing: border-box;
	margin: 0 auto 30px;
    font-size: 0;
    display: block;
}
#shop_area .shop_inner {
	position:relative;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
    padding: 0;
}
#shop_area h2{
	width:auto;
	padding:0 20px;
	margin-bottom: 25px;
	font-size:30px;
}
#shop_area h2 .text {
    margin-top: 6px;
    font-size: 16px;
}
#shop_area h3{
    margin-bottom: 13px;
    font-size: 15px;
    letter-spacing: 0.05em;
	text-align:center;
}
#shop_area h3.second {
    margin-bottom: 20px;
    font-size: 22px;
}
#shop_area .image_wrap{
    position: inherit;
    padding-top: 15px;
    display: block;
    width: 100%;
	top:auto;
	left:auto;
	transform: none;
	text-align:center;
}
#shop_area .image_wrap img{
	width:100%;
	min-width: inherit;
}
}

/*================================table================================*/
table {
	width:100%;
	border-collapse: collapse;
    margin-bottom: 0;
	}
th,td {
	padding: 10px 20px;
    word-break:break-all;
    line-height: 1.0;
	background: rgba(255,255,255,0.7);
	color:#333;
	text-align:center;
	}
.second th,.second td{
	padding: 10px 0;
	background:none;
	text-align:left;
	line-height: 1.6;
	border-bottom:2px solid #dce1de;
	font-size: small;
	}
.second th{
	color:#999;
	}
td{
	padding: 8px 10px;
	font-size:18px;
	}
.second td{
	padding: 10px 0 10px 15px!important;
	}
td.text01{
	color:#34a4a8;
}
td.text02{
	color:#2e61a9;
}
td.text03{
	color:#615a96;
}
table tbody tr:nth-child(odd){
  background: #ccc;
}
table.second tbody tr:nth-child(odd){
  background:none!important;
}
table thead th {
	font-weight: normal;
	text-align: center;
	color: #fff;
	font-size: 16px;
	padding: 0;
    line-height: 1.2;
	}
@media  print, screen and (max-width: 320px) {
table thead th {
	font-size: 15px;
	}
}
table thead th br{
	display:inherit!important;
	}
table thead th .type01,
table thead th .type02,
table thead th .type03{
	margin:0 1px;
	border-radius:3px 3px 0 0;
	padding: 15px 10px;
}
table tbody th {
	font-weight:normal;
	width: 35%;
	text-align: left;
	vertical-align: top;
	line-height: 1.4;
	font-size:small;
	padding: 6px;
	}
table.second tbody th {
	width: 30%;
	}
@media  print, screen and (max-width: 320px) {
table tbody th {
	width: 28%;
	}
table.second tbody th {
	width: 25%;
	}
}
th span{
	display:block;
	}
table p {
    line-height: 1.6;
	padding: 0 0 10px;
}
table td p:last-child{
	padding: 0;
	}
/*===PC===*/
@media  print, screen and (min-width: 768px) {
table {
    margin-bottom: 0;
	}
td{
	padding: 10px 20px;
	font-size:36px;
	}
.second th,.second td{
	padding: 13px 0!important;
	font-size:16px;
	}
table thead th {
	font-weight:normal;
	text-align: center;
	color: #fff;
	font-size: 32px;
	padding: 0;
    line-height: 1.0;
	}
table thead th br{
	display: none!important;
	}
table thead th .type01,
table thead th .type02{
	margin:0 6px;
	border-radius:5px 5px 0 0;
	padding:30px 0;
}
table thead th .type03{
	margin:0 0 0 6px;
	border-radius:5px 5px 0 0;
	padding:30px 0;
}
table tbody th {
	font-weight: normal;
	width: 25%;
	text-align: center;
	vertical-align: middle;
	font-size: 17px;
	}
table.second tbody th {
	width: 25%;
	text-align:left;
	font-size: 16px;
	}
}

/*================================ note ================================*/
#note_area{
width: 100%;
max-width: 1920px;
margin: 0 auto;
padding: 0 0 80px;
height: auto;
clear: both;
position: relative;
z-index: 3;
}
#note_area .inner{
width: 100%;
max-width: 1200px;
height: auto;
box-sizing: border-box;
margin: 0 auto;
position: relative;
z-index: 1;
}
#note_area .inner h3.ttl{
font-family: 'Montserrat', sans-serif;
position: relative;
padding: 0 0 30px;
margin: 0;
font-size: 40px;
font-weight: bold;
letter-spacing: 0;
color: #081a40;
line-height: 1.0;
display: block;
}
#note_area .inner .btn02{
position: absolute;
top: 0;
right: 0;
}
#note_area .note_list {
box-sizing: border-box;
text-align: left;
display: flex;
flex-wrap: wrap;
gap: 10px;
margin-bottom: 50px;
}
#note_area .note_list li {
width: calc((100% - 10px) / 2);
}
#note_area .note_list li a {
display: flex;
flex-wrap: wrap;
gap: 20px;
color: #333;
text-decoration: none;
border: solid 1px #ececec;
padding: 15px;
box-sizing: border-box;
background: #fff;
}
#note_area .note_list li a .image_wrap {
width: 150px;
}
#note_area .note_list li a .image_wrap img {
width: 100%;
height: auto;
}
#note_area .note_list li a .text_wrap {
width: 350px;
}
#note_area .note_list li a .text_wrap .date {
display: block;
line-height: 1.5;
margin-bottom: 10px;
}
#note_area .note_list li a .text_wrap .ttl {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
font-size: 16px;
font-weight: 500;
line-height: 1.6;
margin: 0;
overflow: hidden;
}
#note_area .note_list li a .text_wrap p:not(.ttl) {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4;
font-size: 14px;
text-align: justify;
line-height: 1.5;
margin-bottom: 0;
overflow: hidden;
}
#note_area .background_header {
display: inherit;
position: absolute;
top: 0px;
right: 50%;
-webkit-transform: translate(480px,0);
transform: translate(480px,0);
width: 1490px;
height: 100%;
background: #f3f4f5;
z-index: 0;
}
/*===== SP =====*/
@media screen and (max-width: 767px) {
#note_area{
padding: 30px 0 10px;
background: #f3f4f5;
}
#note_area .inner h3.ttl{
padding: 0 0 10px;
font-size: 28px;
}
#note_area .inner .btn02{
position: initial;
margin: 0 auto;
}
#note_area .inner .note_list {
flex-direction: column;
margin-bottom: 30px;
}
#note_area .inner .note_list li {
width: 100%;
}
#note_area .inner .note_list li a {
gap: 10px;
padding: 10px;
}
#note_area .inner .note_list li a .image_wrap {
width: 90px;
}
#note_area .inner .note_list li a .text_wrap {
width: calc(100% - 90px - 10px);
}
#note_area .inner .note_list li a .text_wrap .date {
font-size: small;
margin-bottom: 5px;
}
#note_area .note_list li a .text_wrap .ttl {
font-size: 15px;
}
#note_area .inner .note_list li a .text_wrap p:not(.ttl) {
-webkit-line-clamp: 2;
}
#note_area .background_header {
display: none;
}
}

/*================================ instagram_area ================================*/
#instagram_area{
width: 100%;
max-width: 1920px;
margin: 0 auto;
padding: 0 0 80px;
height: auto;
clear: both;
position: relative;
z-index: 1;
}
#instagram_area .inner{
position: relative;
width: 1200px;
margin: auto;
z-index: 10;
}
#instagram_area .inner h3.ttl{
font-family: 'Montserrat', sans-serif;
position: relative;
padding: 0 0 30px;
margin: 0;
font-size: 40px;
font-weight: bold;
letter-spacing: 0;
color: #081a40;
line-height: 1.0;
display: block;
}
#instagram_area .inner .btn02{
position: absolute;
top: 0;
right: 0;
}
#instagram_area .inner .wrap{
width: 1200px;
height: 400px;
overflow: hidden
}
#instagram_area .inner .wrap iframe{
width: 100%;
height: 550px;
margin-top: -110px;
}
#instagram_area .background_header {
display: inherit;
position: absolute;
top: 0px;
right: 50%;
-webkit-transform: translate(480px,0);
transform: translate(480px,0);
width: 1490px;
height: 100%;
background: #f3f4f5;
z-index: 0;
}
/*===== SP =====*/
@media screen and (max-width: 767px) {
#instagram_area{
width: 100%;
max-width: 100%;
padding: 30px 0;
background: #f3f4f5;
}
#instagram_area .inner{
width: 100%;
margin: auto;
}
#instagram_area .inner h3.ttl{
padding: 0 0 10px;
font-size: 28px;
}
#instagram_area .inner .btn02{
position: initial;
margin: 0 auto;
}
#instagram_area .inner .wrap{
width: 100%;
height: 300px;
margin: 0 0 20px;
}
#instagram_area .inner .wrap iframe{
height: 550px;
margin-top: -170px;
}
#instagram_area .background_header {
display: none;
}	
}