@charset "utf-8";
/* ------------------------------------------------------------
    loading
------------------------------------------------------------ */
#loading{
	position: fixed;
	z-index: 1000;
	width: 100%;
	height: 100vh;
  background-color: #0d1f35;
	overflow: hidden;
  left: 0;
	top: 0;
	display: flex;
	justify-content: center;
	align-items: center;
}
.sk-cube-grid {
  width: 40px;
  height: 40px;
}
.sk-cube-grid .sk-cube {
  width: 33%;
  height: 33%;
  background-color: #fff;
  float: left;
  -webkit-animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out;
          animation: sk-cubeGridScaleDelay 1.3s infinite ease-in-out; 
}
.sk-cube-grid .sk-cube1 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube2 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube3 {
  -webkit-animation-delay: 0.4s;
          animation-delay: 0.4s; }
.sk-cube-grid .sk-cube4 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube5 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }
.sk-cube-grid .sk-cube6 {
  -webkit-animation-delay: 0.3s;
          animation-delay: 0.3s; }
.sk-cube-grid .sk-cube7 {
  -webkit-animation-delay: 0s;
          animation-delay: 0s; }
.sk-cube-grid .sk-cube8 {
  -webkit-animation-delay: 0.1s;
          animation-delay: 0.1s; }
.sk-cube-grid .sk-cube9 {
  -webkit-animation-delay: 0.2s;
          animation-delay: 0.2s; }

@-webkit-keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1); 
  }
}

@keyframes sk-cubeGridScaleDelay {
  0%, 70%, 100% {
    -webkit-transform: scale3D(1, 1, 1);
            transform: scale3D(1, 1, 1);
  } 35% {
    -webkit-transform: scale3D(0, 0, 1);
            transform: scale3D(0, 0, 1);
  } 
}

/* --------------------------------------------------
header
-------------------------------------------------- */
header {
	position: static;
	z-index: 103;
	width: 100%;
	height: 50px;
  /* height: calc(50px + constant(safe-area-inset-top));
  height: calc(50px + env(safe-area-inset-top)); */
  /* padding-top: constant(safe-area-inset-top);
  padding-top: env(safe-area-inset-top); */
	transition: all 0.5s ease 0s;
	background-color: rgba(8, 49, 109, 0);
}
header .logo_wrap {
	height: 100%;
}
header .logo_wrap h1,
header .logo_wrap h1 a {
	display: block;
	height: 100%;
}
header .logo_wrap h1 a {
	display: flex;
	align-items: center;
	padding: 0 10px;
	width: 115px;
}
header .logo_wrap img {
	width: 100%;
}
.scrolled header {
	background-color: #0d1f35;
}
@media screen and (min-width: 1000px){
	header {
		height: 70px;
		height: calc(70px + constant(safe-area-inset-top));
		height: calc(70px + env(safe-area-inset-top));
		display: flex;
		justify-content: space-between;
	}
	header .logo_wrap h1 a {
		width: 140px;
	}
	header #gnav,
	header .gnav_main {
		display: block;
		height: 100%;
	}
}

/* --------------------------------------------------
gnav
-------------------------------------------------- */
#gnav {
  overflow: hidden;
}
#gnav .gnav_main {
	overflow: hidden;
	overflow-y: scroll;
	-webkit-overflow-scrolling: touch;
	position: fixed;
	z-index: 101;
	top: 0;
	right: 0;
	width: 100%;
	height: calc(100% - 50px);
	height: calc(100% - 50px - constant(safe-area-inset-bottom));
	height: calc(100% - 50px - env(safe-area-inset-bottom));	
	background-color: #0d1f35;
	display: none;
	
	-ms-overflow-style: none; /* scroll bar hide *//* IE, Edge 対応 */
  scrollbar-width: none; /* scroll bar hide *//* Firefox 対応 */
}
#gnav .gnav_main::-webkit-scrollbar { /* scroll bar hide *//* Chrome, Safari 対応 */
	display:none;
}
#gnav .gnav_main_box {
	width: 100%;
	padding: 80px 0;
}
#gnav .gnav_main_in {
	width: 80%;
	margin: 0 auto;
}
#gnav .gnav_list,
#gnav .gnav_links {
	display: flex;
	flex-wrap: wrap;
}
#gnav .gnav_list li,
#gnav .gnav_links li {
	width: 50%;
}
#gnav .gnav_list li a ,
#gnav .gnav_links li a {
	color: #fff;
	position: relative;
	/* overflow: hidden; */
	display: block;
}
#gnav .gnav_list li a {
	padding: 15px 0 30px;
}
#gnav .gnav_list li a .en {
	font-size: 1.8rem;
	line-height: 1;
}
#gnav .gnav_list li a .ja {
	font-size: 1.0rem;
	line-height: 1;
	margin-top: 5px;
}
#gnav .gnav_list li a::before {
	content: '';
	display: block;
	position: absolute;
	background-color: rgba(255,255,255,.5);
	left: 0;
	top: 0;
	width: 20px;
	height: 1px;
}
#gnav .gnav_links li a {
	font-size: 1.3rem;
	padding: 15px 0 15px 15px;
	background: url(../images/common/ico_arr.svg) no-repeat left center;
	background-size: 8px;
}
#gnav .gnav_buttons {
	display: none;
}
#gnav .gnav_list li.soon .lbl {
	opacity: .2;
}
#gnav .gnav_list li.soon,
#gnav .gnav_list li.new {
	position: relative;
}
#gnav .gnav_list li .ico {
  font-size: 10px;
  font-size: 1.0rem;
	line-height: 1;
	position: absolute;
	width: 100%;
	top: 0;
	left: 30px;
	transform: translateY(-50%);
}
#gnav .gnav_list li .ico.new {
    color: #e0cd7e	
}
#gnav .gnav_list li .ico_soon {
	color: #999;
}

#gnav .gnav_pop .gnav_links .gnav_map{
    width: 100%;
}



@media screen and (min-width: 1200px){
	#gnav {
		height: 100%;
		display: block;
	}
	#gnav .gnav_main {
		position: relative;
		display: block;
		height: 100%;
		overflow-y: visible;
		margin-right: 0;
		padding-right: 0;
		width: 100%;
		background-color: transparent;
	}
	#gnav .gnav_main_box {
		display: block;
		padding: 0;
		height: 100%;
	}
	#gnav .gnav_main_in {
		width: 100%;
		display: flex;
		justify-content: flex-end;
		height: 100%;
	}
	#gnav .gnav_list {
		margin-right: 10px;
		display: flex;
	}
	#gnav .gnav_list li {
		width: auto;
		height: 100%;
		display: block;
	}

	#gnav .gnav_list li a {
		width: 100%;
		height: 100%;
		line-height: 1;
		padding: 0 8px;
	}
	#gnav .gnav_list li a .en {
		font-size: 1.5rem;
	}
	#gnav .gnav_list li a .ja {
		font-size: 0.8rem;
	}
	#gnav .gnav_list li a .lbl {
		height: 100%;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		position: relative;
	}
	#gnav .gnav_list li a .lbl::after {
		content: '';
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		background-color: #fff;
		width: 100%;
		height: 1px;
		transform-origin: right top;
		transform: scale(0, 1);
		transition: transform .5s;
	}
	#gnav .gnav_list li a:hover .lbl::after {
		transform-origin: left top;
		transform: scale(1, 1);
	}
	#gnav .gnav_pop {
		display: flex;
	}
	#gnav .gnav_links {
		display: flex;
		flex-direction: column;
		justify-content: center;
		width: 112px;
		margin-right: 5px;
	}
	#gnav .gnav_links li {
		display: block;
		width: auto;
	}
	#gnav .gnav_links li a {
		display: block;
		padding: 6px 10px 6px 10px;
		background-size: 6px;
		font-size: 11px;
		font-size: 1.0rem;
		line-height: 1;
	}
	#gnav .gnav_list li a::before,
	#gnav .gnav_links li a::before {
		display: none;
	}
	#gnav .gnav_buttons {
		padding-top: 0;
		display: flex;
	}
	#gnav .gnav_buttons .gnav_button {
		height: 100%;
		margin-top: 0;
	}
	#gnav .gnav_buttons .gnav_button a {
		height: 100%;
		width: 85px;
		padding: 0;
		display: flex;
		flex-direction: column;
		justify-content: center;
		align-items: center;
		font-size: 1.1rem;
	}
	#gnav .gnav_list li .ico {
		top: 4px;
		text-align: center;
		left: 0;
		transform: translateY(0);
	}
}
@media screen and (min-width: 1300px){
	#gnav .gnav_buttons .gnav_button a {
		width: 95px;
	}
}
@media screen and (min-width: 1500px){
	#gnav .gnav_list li a {
		padding: 0 12px;
	}
	#gnav .gnav_list li a .en {
		font-size: 1.6rem;
	}
	#gnav .gnav_list li a .ja {
		font-size: 0.9rem;
	}
	#gnav .gnav_links {
		width: 120px;
		margin-right: 10px;
	}
	#gnav .gnav_links li a {
		font-size: 1.1rem;
	}
	#gnav .gnav_buttons .gnav_button a {
		width: 110px;
		font-size: 1.3rem;
	}
}
@media screen and (min-width: 1700px){
	#gnav .gnav_list li a {
		padding: 0 10px;
	}
	#gnav .gnav_list li a .en {
		font-size: 1.6rem;
	}
	#gnav .gnav_list li a .ja {
		font-size: 1.0rem;
	}
	#gnav .gnav_links {
		width: auto;
	}
}

body {
	overflow: auto;
}
body.drawer-open {
	overflow: hidden;
}

/* Hamburger
------------------------------ */
.drawer-hamburger {
	position: fixed;
	z-index: 104;
	top: 0;
	right:0;
	display: block;
	box-sizing: content-box;
	width: 30px;
	padding:25px 18px 24px;
	-webkit-transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	transition: all .6s cubic-bezier(0.190, 1.000, 0.220, 1.000);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	border: 0;
	outline: 0;
	background-color: transparent;
  cursor: pointer;
}
.drawer-hamburger-icon,
.drawer-hamburger-icon::before,
.drawer-hamburger-icon::after {
  content: '';
	display: block;
  width: 100%;
	height: 1px;
	transition: all .6s ease;
	background-color: #fff;
  transform: translateY(0);
}
.drawer-hamburger-icon{
  position: relative;
  transition: .3s ease;
}
.drawer-hamburger-icon::before{
  position: absolute;
  top: -7px;
  animation: cross_center_top_re .6s ease forwards;
}
.drawer-hamburger-icon:after {
	position: absolute;
  top: 7px;
  animation: cross_center_btm_re .6s ease forwards;
}

/* drawer-open */
.drawer-open .drawer-hamburger-icon{
  background-color: transparent;
}
.drawer-open .drawer-hamburger-icon::before {
  animation: cross_center_top .6s ease forwards;
}
.drawer-open .drawer-hamburger-icon::after {
  animation: cross_center_btm .6s ease forwards;
}
@media screen and (min-width: 1000px){
	.drawer-hamburger {
		padding:35px 20px 34px;
	}
}
@media screen and (min-width: 1200px){
	.drawer-hamburger {
		display: none;
	}
}

/* animation */
@keyframes cross_center_top {
  0% {
    transform: translateY(0) rotate(0);
  }
  30% {
    transform: translateY(7px) rotate(0);
  }
  100% {
    transform: translateY(7px) rotate(20deg);
  }
}
@keyframes cross_center_top_re {
  0% {
    transform: translateY(7px) rotate(20deg);
  }
  30% {
    transform: translateY(7px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
@keyframes cross_center_btm {
  0% {
    transform: translateY(0) translateX(0) rotate(0);
  }
  30% {
    transform: translateY(-7px) rotate(0);
  }
  100% {
    transform: translateY(-7px) rotate(-20deg);
  }
}
@keyframes cross_center_btm_re {
  0% {
    transform: translateY(-7px) rotate(-20deg);
  }
  30% {
    transform: translateY(-7px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}

/* --------------------------------------------------
gnav_fix
-------------------------------------------------- */
.nav_fix {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  z-index: 102;
  height: 50px;
  height: calc(50px + constant(safe-area-inset-bottom));
  height: calc(50px + env(safe-area-inset-bottom));
  transition: all .5s;
	background-color: #0d1f35;
}
.nav_fix ul {
	display: flex;
	height: 100%;
}
.nav_fix li {
	text-align: center;
	width: 100%;
	font-size: 10px;
	font-size: 1.0rem;
	line-height: 1.2;
	letter-spacing: 0;
}
.nav_fix li a {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	height: 100%;
	color: #fff;
}
.nav_fix .ico {
	padding: 0 0 2px;
}
.nav_fix .ico img {
	width: 14px;
	height: 14px;
}
@media screen and (min-width: 1200px){
	.nav_fix {
		display: none;
	}
}

/* --------------------------------------------------
ttl
-------------------------------------------------- */
.s_ttl {
	background-color: #08316d;
	height: 200px;
	/*background-image: url(../images/common/bg_ttl_1_sp.jpg);*/
	background-repeat: no-repeat;
	background-size: 42.96875%;
	background-position: 0 0;
}
.s_ttl_in {
	display: flex;
  justify-content: center;
	align-items: center;
	height: 100%;
	/*background-image: url(../images/common/bg_ttl_2_sp.jpg);*/
	background-repeat: no-repeat;
	background-size: 41.66666667%;
	background-position: 100% 100%;
}
.s_ttl h2 {
	transform: translateY(30%);
	font-weight: normal;
	letter-spacing: 0.2em;
	color: #e0cd7e;
	line-height: 1.4;
	font-size: 20px;
	font-size: 2.0rem;
	width: 80%;
	max-width: 290px;
	text-align: center;
}
.s_ttl h2 .c-txt-en {
	font-size: 14px;
	font-size: 1.4rem;
	border-bottom: 1px solid rgba(224,205,126,.4);
	padding-bottom: 5px;
	margin-bottom: 5px;
}
@media screen and (min-width: 768px){
	.s_ttl {
		height: 260px;
		/*background-image: url(../images/common/bg_ttl_1_pc.jpg);*/
		background-size:700px;
		background-position-x: calc(60% - 500px);
		background-position-y: 0;
	}
	.s_ttl_in {
		/*background-image: url(../images/common/bg_ttl_2_pc.jpg);*/
		background-size:616px;
		background-position-x: calc(40% + 436px);
		background-position-y: 0;
	}
	.s_ttl h2 {
		font-size: 26px;
  	font-size: 2.6rem;
	}
}
@media screen and (min-width: 1100px){
	.s_ttl {
		background-position-x: calc(60% - 700px);
	}
	.s_ttl_in {
		background-position-x: calc(40% + 650px);
	}
}
@media screen and (min-width: 1700px){
	.s_ttl {
		background-position-x: 0;
	}
	.s_ttl_in {
		background-position-x: 100%;
	}
}

/* --------------------------------------------------
main_in
-------------------------------------------------- */
.s_notes {
	padding: 30px 0 15px;
}
div.inner{
	padding: 0 15px;
}
@media screen and (min-width: 768px){
	.s_notes {
		padding-top: 60px;
	}
	div.inner{
		max-width: 1230px;
		margin: 0 auto;	
	}
}

.bnr_float {
	width: 100%;
	position: fixed;
	z-index: 102;
	bottom: 60px;
	left: 0;
	pointer-events: none;
	opacity: 0;
	transition: opacity .5s;
}

.scrolled .bnr_float {
	pointer-events: initial;
	opacity: 1;
}
.bnr_float-sp {
	position: relative;
	cursor: pointer;
}
.bnr_float-sp ._large {
	position: absolute;
	bottom: 0;
	transform: translateY(50%);
	opacity: 0;
	visibility: hidden;
	transition: transform 0.4s, opacity 0.4s, visibility 0.4s;
}
.bnr_float-sp.open ._large {
	transform: translateY(0%);
	opacity: 1;
	visibility: visible;
}
.bnr_float-sp ._large ._toggle > div > span::before {
    top: 6px;
    transform: translate(50%, -50%) rotate(135deg);
}
.bnr_float-sp ._small {
	position: relative;
	transform: translateY(0%);
	opacity: 1;
	visibility: visible;
	transition: transform 0.4s, opacity 0.4s, visibility 0.4s;
}
.bnr_float-sp.open ._small {
	transform: translateY(-50%);
	opacity: 0;
	visibility: hidden;
}
.bnr_float-sp ._toggle > div > span::before {
    top: 8px;
    transform: translate(50%, -50%) rotate(-45deg);
}
.bnr_float-sp ._toggle {
	position: absolute;
	top: -12px;
	width: 100%;
	height: 24px;
}
.bnr_float-sp ._toggle > div {
	overflow: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	width: 160px;
	height: 100%;
	margin: 0 auto;
	background: #918242;
	border-radius: 20px;
	font-family: '游明朝','Yu Mincho',YuMincho,'Hiragino Mincho Pro',serif;
	font-weight: 400;
	text-align: center;
	line-height: 1;
}
.bnr_float-sp ._toggle > div > span {
	display: block;
	position: absolute;
	top: 5px;
	right: 5px;
	width: 14px;
	height: 14px;
	background: #fff;
	border-radius: 50%;
}

@keyframes shine {
	0%   {left: -75%;}
	60%  {left: -75%;}
	100% {left: 125%;}
}
.bnr_float-sp ._toggle > div::before {
	content: '';
	position: absolute;
	top: 0;
	left: -75%;
	width: 50%;
	height: 100%;
	background: linear-gradient(to right, rgba(255,255,255,0) 0%, rgba(255,255,255,.3) 100%);
	transform: skewX(-25deg);
	animation: shine 1.8s infinite;
}
.bnr_float-sp ._toggle > div > span::before {
    content: '';
    position: absolute;
    right: 7px;
    width: 5px;
    height: 5px;
    border-top: 1px solid #918242;
    border-right: 1px solid #918242;
}
@media screen and (min-width: 768px){
	.bnr_float-sp {
		display: none;
	}
}

.bnr_float-pc {
	display: none;
}
@media screen and (min-width: 768px){
	.bnr_float-pc {
		display: block;
	}
}

.bnr_float .close {
  display: flex;
  justify-content: flex-end;
  margin-bottom: -20px;
}
.bnr_float .close .btn {
  width: 24px;
  height: 24px;
  background-color: rgba(255,255,255,.5);
  cursor: pointer;
  position: relative;
}
.bnr_float .close .btn::before,
.bnr_float .close .btn::after {
  content: '';
  display: block;
  width: 1px;
  height: 14px;
  background-color: #000;
  position: absolute;
  left: 50%;
  top: 50%;
}
.bnr_float .close .btn::before {
  transform: translate(-50%, -50%) rotate(45deg);
}
.bnr_float .close .btn::after {
  transform: translate(-50%, -50%) rotate(-45deg);
}
@media screen and (min-width: 768px){
	.bnr_float {
		width: 220px;
		width: 334px;
		bottom: 110px;
		left: auto;
		right: 20px;
	}
	.bnr_float .close {
		margin-bottom: 0;
	  }
}

/* --------------------------------------------------
footer
-------------------------------------------------- */
footer {
	padding-bottom: constant(safe-area-inset-bottom);
  padding-bottom: env(safe-area-inset-bottom);
}
/* UA_PC */
.ua_pc .contact a{
  cursor: default;
}
.foot_in {
	background-color: #4d4d4d;
	padding: 0 0 70px;
	overflow: hidden;
}
.foot_in .contact {
	text-align: center;
    background-color: #404040;
    padding: 40px 0;
}
.foot_in .contact .mi {
	font-size: 1.3rem;
	line-height: 1.5;
}
.foot_in .contact .tel {
	margin: 10px 0 10px;
}
.foot_in .contact .tel img {
	width: 36px;
	margin-right: 5px;
	vertical-align: baseline;
}
.foot_in .contact .tel a {
	font-size: 3.8rem;
	line-height: 1;
}
.foot_in .contact .time {
	font-size: 1.1rem;
	line-height: 1.6;
}
.foot_in .haseko {
	text-align: center;
    margin: 40px 0 0;
}
.foot_in .haseko img{
    max-width: 165px
}
.foot_in .staff {
	display: flex;
	width: 92%;
	max-width: 380px;
	margin: 40px auto 0;
}
.foot_in .staff a .c-txt-notes {
	margin-bottom: 5px;
}
.foot_in .staff_1 {
	flex: 1;
	margin-right: 40px;
	margin-right: 12%;
}
.foot_in .staff_2 {
	flex: 1.27989737;
}
.foot_in .staff img {
	width: 100%;
}
.foot_copy small {
	font-size: 1.0rem;
	line-height: 1.4;
	display: block;
	padding: 20px 5% 70px;
	text-align: center;
	color: #ffffff;
}
.foot_in .g-footer__branchera{
	max-width: 890px;
	margin: 0 auto;
	padding: 0 50px;
}
@media only screen and (max-width: 767px) {
	.foot_in .g-footer__branchera{
		max-width: 600px;
		margin-bottom: 0;
		padding: 0 5.33vw 60px;
	}
}
.foot_in .g-footer__branchera .txt{
	text-align: center;
	font-size: 1.4rem;
    padding-bottom: 5px;
    margin-bottom: 12px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.3);
	margin-left: auto;
	margin-right: auto;
}
.foot_in .g-footer__branchera .swiper-wrapper{
	/* display: flex;
	text-align: center;
	flex-direction: column; */
	margin-left: auto;
	margin-right: auto;
	padding-bottom: 40px;
}
@media only screen and (max-width: 767px) {
	.foot_in .g-footer__branchera .swiper-wrapper{
		padding-bottom: 30px;
	}
}
.foot_in .g-footer__branchera .swiper .swiper-slide li{
	width: calc(100% - 8px) !important;
    max-width: 440px;
    margin: 0 4px;
}
.g-footer__branchera .swiper .swiper-slide img {
	width: 100%;
	height: auto;
}
.g-footer__branchera .swiper .swiper-slide a {
	-webkit-transition: opacity 0.4s;
	transition: opacity 0.4s;
}
.ua_pc .g-footer__branchera .swiper .swiper-slide a:hover, .ua_sp .g-footer__branchera .swiper .swiper-slide a:active {
	opacity: 0.75;
}

.foot_in .g-footer__branchera .swiper .swiper-pagination {
	position: absolute;
	bottom: 0;
	text-align: center;
	width: 100%;  
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
	z-index: 10;

}
.foot_in .g-footer__branchera .swiper .swiper-pagination .swiper-pagination-bullet {
	margin: 0 15px;
	width: 8px;
	height: 8px;
	border-radius: 100%;
	background-color: #979797;
	opacity: 1 !important;
	-webkit-transition: 0.4s;
	transition: 0.4s;
	display: inline-block;
}
@media only screen and (max-width: 767px) {
	.foot_in .g-footer__branchera .swiper .swiper-pagination .swiper-pagination-bullet {
	margin: 0 10px;
	width: 4px;
	height: 4px;
	}
}
.foot_in .g-footer__branchera .swiper .swiper-pagination .swiper-pagination-bullet-active,
.ua-pc .foot_in .g-footer__branchera .swiper .swiper-pagination .swiper-pagination-bullet:hover, 
.ua-sp .foot_in .g-footer__branchera .swiper .swiper-pagination .swiper-pagination-bullet:active {
	background-color: #fff;
}


@media screen and (min-width: 768px){
    .foot_in .contact {
    padding: 60px 0;
	}
	.foot_in .contact .mi {
		font-size: 1.4rem;
	}
	.foot_in .contact .tel img {
		width: 45px;
	}
	.foot_in .contact .tel a {
		font-size: 4.8rem;
	}
	.foot_in .contact .time {
		font-size: 1.2rem;
	}
    .foot_in .haseko {
	text-align: center;
    margin: 60px 0 0;
	}
	.foot_copy small {
		font-size: 1.1rem;
	}
	.foot_in .g-footer__branchera{
		margin-bottom: 60px;
	}
	.foot_in .g-footer__branchera .txt{
		max-width: 900px;
		font-size: 1.8rem;
		padding-bottom: 10px;
		margin-bottom: 20px;
	}
	.foot_in .g-footer__branchera .swiper-wrapper{
		/* display: flex;
		flex-direction: row;
		justify-content: center; */
		max-width: 900px;
		margin-left: auto;
		margin-right: auto;
	}
}

@media screen and (min-width: 1200px){
	.foot_copy small {
		padding: 25px;
	}
}
@media screen and (min-width: 1000px){
	.foot_in .contact {
		display: flex;
		align-items: flex-end;
        justify-content: center;
        text-align: left;
	}
	.foot_in .contact .time {
		margin-left: 25px;
	}
	.foot_in .contact .tel {
		margin-bottom: 0;
	}
}

.bnr_premiumplan{
	max-width: 1200px;
	margin: 0px auto 60px;
	width: 90%;
}

.bnr_premiumplan .pc{
	display: none;
}

.bnr_premiumplan a:hover{
	opacity: 0.5;
	transition: all 0.5s;
}

@media screen and (min-width: 768px){
.bnr_premiumplan{
	margin: 30px auto 100px;
}
	
.bnr_premiumplan .sp{
	display: none;
}	
	
.bnr_premiumplan .pc{
	display: block;
}
	
}

.bnr_lifestyle{
	max-width: 1200px;
	margin: 0px auto 40px;
	width: 90%;
}

@media screen and (min-width: 768px){
.bnr_lifestyle{
	margin: 0px auto 100px;
    text-align: center;
}
	
	
.bnr_gallery{
	max-width: 1200px;
	margin: 0px auto 100px;
	width: 90%;
}

@media screen and (min-width: 768px){
.bnr_gallery{
	margin: 0px auto 10px;
    text-align: center;
}	


/* --------------------------------------------------
相互リンクバナー
-------------------------------------------------- */
/* .sougo-banner {
	display: none;
	margin: 40px auto 0;
	padding: 5px 0 60px;
	width: 92%;
	flex-wrap: wrap;
	justify-content: center;
	overflow: hidden;
  }
  .top .sougo-banner {
	display: block;
  }
  .sougo-banner .sougo-ttl {
	flex-basis: 100%;
	text-align: center;
	font-size: 14px;
	font-weight: 500;
	border-top: 1px solid #014165;
	border-bottom: 1px solid #CCD6DE;
	padding: 10px 0;
	margin-bottom: 25px;
  }
  .sougo-banner .sougo-ttl:nth-of-type(n+2) {
	margin-top: 30px;
  }
  .sougo-banner .sougo-bnr{
	width: 90%;
	max-width: 440px;
	margin: 0 auto;
  }
  .sougo-banner .sougo-slider{
	width: calc(90% + 8px);
	margin: 0 auto;
	position: relative;
  }
  
  @media screen and (min-width: 751px) {
  .sougo-banner .sougo-slider._short .sougo-list{
	justify-content: center;
  }
  }
  
  
  .sougo-banner .sougo-slider .sougo-list li{
	width: calc(100% - 8px) !important;
	max-width: 440px;
	margin: 0 4px;
  }
  .sougo-banner .sougo-ttl:nth-of-type(n+2){
	margin-top: 80px!important;
  }
  
  .sougo-banner .swiper-container-horizontal>.swiper-pagination-bullets{
	bottom: -25px;
  }
  .sougo-banner .swiper-pagination-bullet {
	width: 30px;
	height: 5px;
	border-radius: 0;
  }
  .swiper-pagination-bullet-active {
	opacity: 1;
	background: #18548f;
  }
  .sougo-banner a {
	transition: .4s;
  }
  .sougo-banner a:hover {
	opacity: .7;
  }
  
  @media screen and (min-width: 751px) {
	.sougo-banner {
	  margin: 60px auto;
	  max-width: 1150px;
	  padding: 5px 0 20px;
	}
	.sougo-banner .sougo-bnr{
	  width: calc(33.3% - 16px) !important;
	}
	.sougo-banner .sougo-slider{
	  width: 100%;
	}
	.sougo-banner .sougo-slider .sougo-list li{
	  width: calc(33.3% - 16px) !important;
	  margin: 0 8px;
	}
	.sougo-banner .swiper-pagination-bullet {
	  width: 60px;
	}
  } */