/*========================================================================
//
// common
//
//========================================================================*/
/********* SP - iPhone 6 or higher (screen width up to 761px) ************/
@media (max-width:761px) {
	html, body {
		height: 100%;
		font-size: calc(100vw / 37.5);
	}
	article {
		overflow: hidden;
	}
	.wrapper {
		padding: 0 6%;
		position: relative;
	}
	.pc_contents {
		display: none;
	}
}
/*========================================================================
//
// header
//
//========================================================================*/
/********* SP - iPhone 6 or higher (screen width up to 761px) ************/
@media (max-width: 761px) {
	header{
		position: absolute;
		left:0;
		top:0;
		width:100%;
		z-index:900;
	}
	
	.ci_wrap{
		width: 100%;
		margin: 0;
	}
	
	#ci {
		width: 41vw;
		margin: 26px 0 0 16px;
	}

	#ci_sfg_wrap {
		width: 30vw;
		position:absolute;
		right: 80px;
		top: 0;
	}

	/* head_navi start　------------------ */
	
	#head_navi{
		display: none;
	}

	/* head_navi start　------------------ */

	
}
/*========================================================================
//
// Page Top
//
//========================================================================*/
/********* SP - iPhone 6 or higher (screen width up to 761px) ************/
@media (max-width: 761px) {
	.pagetop {
		position: fixed;
		right: -80px;
		bottom: 0;
		transform: translate(0, -50%);
		z-index: 9000;
		transition: all 0.8s cubic-bezier(0.03, 0.36, 0.18, 1) 0s;
	}
	.pagetop_act {
		right: -18px;
	}
	.pagetop li a {
		display: block;
		background: #000000 url(/global/img/arrow_w2.png) no-repeat 16px center;
		background-size: 14px auto;
		width: 64px;
		height: 44px;
		transform: translate(0, 0);
		transition: all 0.4s cubic-bezier(0.03, 0.36, 0.18, 1) 0s;
	}
}


/*========================================================================
//
// btn_view
//
//========================================================================*/
/********* SP - iPhone 6 or higher (screen width up to 761px) ************/
@media (max-width:761px)  {
	.btn_view a {
		position:relative;
		display: block;
		font-family: "Oswald", sans-serif;
		font-weight: 400;
		font-size: 1.5rem;
		line-height: 1;
		padding: 20px 12px 20px 30px;
		text-align: left;
		width: 180px;
		letter-spacing: 0.1rem;
		font-feature-settings: 'palt';
		color: #fff;
		background: #323232;
	}
	.btn_view a:before{
		position: absolute;
		display: inline-block;
		content: "";
		width: 6px;
		height: 6px;
		border-top: 1px solid #ffffff;
		border-right: 1px solid #ffffff;
		transform: rotate(45deg) translate(0, -50%);
		top: 49%;
		right: 22px;
	}
	.btn_view a span {
		font-size: 1.3rem;
		font-weight: 500;
		padding: 0 0 0 14px;
	}
}
/*========================================================================
//
// Hamburger menu
//
//========================================================================*/
/********* SP - iPhone 6 or higher (screen width up to 761px) ************/
@media (max-width:761px) {
	/* Menu ----------------------------- */
	#drawer-icon {
		position: fixed;
		cursor: pointer;
		display: inline-block;
		height: 60px;
		width: 60px;
		top: 0;
		right: 0;
		z-index: 9999;
		background: #323232;
		transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
	}
	#drawer-icon span {
		background: #fff;
		border-radius: 4px;
		display: block;
		height: 2px;
		position: absolute;
		top: 40%;
		left: 50%;
		transform: translate(-50%, -50%);
		transition: all 0.3s ease-in-out;
		width: 22px;
	}
	#drawer-icon span::before, #drawer-icon span::after {
		background: #fff;
		border-radius: 2px;
		content: "";
		display: block;
		height: 100%;
		position: absolute;
		top: 50%;
		left: 0;
		transform: translate(-50%, -50%);
		transform: rotate(0);
		transition: all 0.3s ease-in-out;
		width: 22px;
	}
	#drawer-icon span::before {
		margin-top: -30%;
	}
	#drawer-icon span::after {
		margin-top: 24%;
	}
	#drawer-icon.fix {}
	#drawer-icon:after {
		content: "MENU";
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.0rem;
		letter-spacing: 1px;
		line-height: 100%;
		color: #fff;
		margin: 40px 0 0 0;
		text-align: center;
		display: block;
	}
	/* CLOSE ----------------------------- */
	#drawer-close-icon {
		position: absolute;
		cursor: pointer;
		display: inline-block;
		width: 60px;
		top: 0;
		right: 0;
		z-index: 9999;
		box-sizing: border-box;
		height: 62px;
	}
	#drawer-close-icon:after {
		content: "CLOSE";
		font-family: 'Barlow', sans-serif;
		font-weight: 500;
		font-size: 1.2rem;
		letter-spacing: 0.1rem;
		line-height: 100%;
		color: #fff;
		margin: 37px 0 0 0;
		text-align: center;
		display: block;
	}
	#drawer-close-icon span {
		display: block;
		height: 100%;
		position: absolute;
		top: 34%;
		left: 51%;
		transform: translate(-50%, -50%);
		width: 100%;
	}
	#drawer-close-icon span::before, #drawer-close-icon span::after {
		content: "";
		background: #fff;
		display: block;
		height: 2px;
		width: 20px;
		position: absolute;
		top: 50%;
		left: 32%;
		transform: translate(-50%, -50%);
	}
	#drawer-close-icon span::before {
		transform: rotate(-45deg);
	}
	#drawer-close-icon span::after {
		transform: rotate(45deg);
	}
	/* menu ----------------------------- */
	#drawer-content {
		position: fixed;
		top: 0;
		right: 0;
		z-index: 10001;
		width: calc(100vw);
		max-width: 100%;
		height: 100%;
		background: #000000;
		transition: all 0.5s cubic-bezier(0.215, 0.61, 0.355, 1);
		transform: translateX(100%);
	}
	#drawer-content:after{
		content: "";
		display: block;
		width:100vw;
		height: 100px;
		background:#000000;
		position: absolute;
		top:0;
		left:0;
		z-index:10;
	}
	
	#drawer-content.act {
		overflow-y: auto;
		overflow-x: hidden;
		transform: translateX(0);
		box-shadow: 6px 0 25px rgba(0, 0, 0, 0.16);
	}
	#drawer-content-inner {
		width: 100%;
		height: 100%;
		overflow-y: auto;
		overflow-x: hidden;
	}
	#drawer-close {
		display: none;
		cursor: pointer;
		position: fixed;
		z-index: 10000;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		transition: all 0.3s ease-in-out 0s;
	}
	#drawer-close.act {
		display: block;
	}
	#drawer-content-inner .no_accordion_btn_wrap{
		width: 100%;
		display: flex;
		justify-content: space-between;
		padding: 0 0 50px;
	}
	#drawer-content-inner .no_accordion_btn_wrap li{
	width: 50%;
	}

	
	#drawer-content-inner .no_accordion_btn_wrap a{
		display:block;
		position:relative;
	}
	
	#drawer-content-inner .no_accordion_btn_wrap .nav_bnr_box{
		line-height:0;
	}

	#drawer-content-inner .no_accordion_btn_wrap .nav_txt_wrap{
		position: absolute;
		top: 50%;
		left: 50%;
		transform:translate(-50%, -50%);
		font-family: 'Roboto', sans-serif;
		font-weight:300;
		font-size: 2.4rem;
		letter-spacing: 0.3rem;
		text-align: center;
		line-height: 1.2;
		display:block;
		color :#fff;
		font-feature-settings: 'palt';
	}

	#drawer-content-inner .no_accordion_btn_wrap .nav_txt_wrap span{
		display:block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight:400;
		font-size: 1.3rem;
		letter-spacing: 0.1rem;
		white-space:nowrap;
	}
	
	input.accordion {
		
		display: none;
	}
	.accordion_btn_wrap li a {
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 500;
		font-size: 1.4rem;
		display: block;
		color: #ffffff;
		opacity: 0.8;
		padding: 10px 0 9px 26px;
		position: relative;
	}

	.accordion_btn_wrap li a.noLink{
		opacity:0.4;
		pointer-events: none;
	}

	.accordion_btn_wrap li a span{
		display:block;
		width: 6px;
		position:absolute;
		top: 43%;
		right: 22px;
		transform:translate(0,-50%);
	}


	.accordion_btn_wrap > li:first-child {
		padding: 18px 0 0;
	}
	.accordion_btn_wrap > li:last-child {
		padding: 0 0 18px;
	}
	
	
	

	/* ac BTN */

	.menu_ac_wrap li {
		border-top: 1px solid rgb(255 255 255 / 40%);
	}
	.menu_ac_wrap li a {
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.4rem;
		display: block;
		letter-spacing: 1px;
		padding: 24px 0 26px 22px;
		position: relative;
		color: #fff;
	}
	.menu_ac_wrap li a:before {
		position: absolute;
		content: "";
		top: 50%;
		right: 20px;
		width: 12px;
		transition: all 0.5s ease 0s;
		border-top: 1px solid #fff;
		transform: rotate(0);
	}
	.menu_ac_wrap li a:after {
		position: absolute;
		content: "";
		top: 50%;
		right: 20px;
		width: 12px;
		transition: all 0.5s ease 0s;
		border-top: 1px solid #fff;
		transform: rotate(90deg);
	}
	.menu_ac_wrap li a.no_plus:before, .menu_ac_wrap li a.no_plus:after {
		border-top: none;
	}
	
	/* ac BTN active */
	.menu_ac_wrap li a.active {
		/* background: rgb(2 90 141 / 70%); */
	}
	.menu_ac_wrap li a.active:before {
		transform: rotate(180deg);
	}
	.menu_ac_wrap li a.active:after {
		transform: rotate(360deg);
	}
	.menu_ac_contents {
		background: #323232;
	}


	#drawer-content-inner .ttl{margin: 150px 0 0;}

	#drawer-content-inner .ttl a{
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.4rem;
		display: block;
		letter-spacing: 1px;
		padding:24px 0 26px 22px;
		position: relative;
		color: #fff;
		border-top: 1px solid rgb(255 255 255 / 40%);
	}

	#drawer-content-inner .ttl a span{
		display:block;
		width: 6px;
		position:absolute;
		top: 43%;
		right: 22px;
		transform:translate(0,-50%);
	}


	#drawer-content-inner .co_btn_wrap{
		width: 67vw;
		position: absolute;
		top: 14px;
		left: 17px;
		z-index: 100;
	}
	
	#drawer-content-inner .co_btn_wrap li{
		
	}

	#drawer-content-inner .co_btn_wrap a span{
		display:block;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		letter-spacing: 0.1rem;
		font-size: 1.3rem;
		line-height: 1.2;
		color: #fff;
		text-align: left;
		padding: 4px 0 0 0;
		font-feature-settings: 'palt';
	}
	
	#drawer-content-inner .co_txt{
		font-size: 14px;
		letter-spacing:1px;
		padding: 0 0 0 26px;
		background: url(/global/img/icon_blank_w.gif) no-repeat 0 50%;
		background-size:18px auto;
	}

	
	.scroll-prevent {
		position: fixed;
		z-index: -1;
		width: 100%;
		height: 100%;
		top: 0;
		right: 0;
	}
}
/*========================================================================
//
// info float btn
//
//========================================================================*/
/********* SP - iPhone 6 or higher (screen width up to 761px) ************/
@media (max-width:761px) {
	.info_cv_btn {
		position: fixed;
		right: 160px;
		top: -70px;
		z-index: 9000;
		transition: all 0.8s cubic-bezier(0.03, 0.36, 0.18, 1) 0s;
	}
	.info_cv_btn2 {
		position: fixed;
		right: 60px;
		top: -70px;
		z-index: 9000;
		transition: all 0.8s cubic-bezier(0.03, 0.36, 0.18, 1) 0s;
	}
	.info_cv_btn_act {
		top: 0;
	}
	.info_cv_btn li a {
		display: block;
		background: rgb(102 204 255 / 80%);
		-webkit-backdrop-filter: blur(10px);
		backdrop-filter: blur(10px);
		width: 100px;
		height: 60px;
		box-sizing: border-box;
		font-family: 'Noto Sans JP', sans-serif;
		font-weight: 400;
		font-size: 1.2rem;
		letter-spacing: 0.1rem;
		line-height: 1;
		text-align: center;
		padding: 39px 0 0 0;
		color: #fff;
		position: relative;
		transform: translate(0, 0);
		transition: all 0.4s cubic-bezier(0.03, 0.36, 0.18, 1) 0s;
	}
	.info_cv_btn2 li a{
		background: rgb(153 204 0 / 80%);
		padding: 33px 0 0 0;
		font-size: 1.1rem;
	}
	.info_cv_btn li a span {
		display: block;
		width: 20px;
		position: absolute;
		top: 15px;
		left: 50%;
		transform: translate(-50%, 0);
	}
}
/*========================================================================
//
// footer
//
//========================================================================*/
/********* SP - iPhone 6 or higher (screen width up to 761px) ************/
@media (max-width:761px) {
	footer {
		background: #ffffff;
		position: relative;
	}
	/* ===== 上部：画像ボタン ===== */

  .footer-hero {
    display: block;
  }

  .footer-hero__item {
    position: relative;
    display: block;
    width: 100%;
    margin: 0 0 -2px;
  }

  .footer-hero__item img {
    display: block;   /* ← これ超重要 */
    width: 100%;
    height: 144px;
    object-fit: cover;
  }

  .footer-hero__text {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: center;
    color: #fff;
    font-size: 4.4rem;
    line-height: 1.2;
    font-weight: 300;
    letter-spacing: 0.04em;
    font-family: "Roboto", sans-serif;
  }

.footer-hero__text small {
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  font-family: 'Noto Sans JP', sans-serif;
  font-weight: 300;
}

/* ===== 下部：通常フッター ===== */
.footer-main {
  padding: 39px 8% 23px;
  background: #fff;
  margin: 0 auto 0px;
}

.footer-logo img {
	width: 60%;
}

.footer-catch {
  margin: 4px 0 0 -8px;
  font-size: 1.5rem;
  color: #000000;
  font-family: 'Noto Sans JP', sans-serif;
  white-space: nowrap;
}

.footer-nav {display: none;}

.footer-nav ul {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-nav li {
  margin-bottom: 9px;
}

.footer-nav a {
	font-size: 1.5rem;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	transition: 0.4s;
}

.footer-nav .top_li a{
	font-size: 1.6rem;
	font-weight: 500;
	color: #000000;
	transition: 0.4s;
}

.footer-nav__title{
	font-size: 1.6rem;
	font-weight: 500;
	color: #000000;
	font-family: 'Noto Sans JP', sans-serif;
	margin: 0 0 16px;
}

.footer-nav a:hover {
	color: #0096d7;
}

.footer-nav .top_li a:hover{
	color: #0096d7;
}
	
/* ===== コピーライト ===== */
.footer-bottom {
  padding: 15px;
  text-align: center;
  background: #000;
  color: #fff;
  font-size: 12px;
}

.footer-bottom__wrap{
	border-top:1px solid #e7e7e7;
}

.footer-bottom {
  padding: 16px 40px 0;
  margin: 0 auto;
  background: #fff;
  font-size: 12px;
  color: #666;
  text-align: right;
  font-family: 'Noto Sans JP', sans-serif;
}

.footer-bottom__links {
  /* display: flex; */
  /* gap: 24px; */
  /* list-style: none; */
  margin: 0 0 16px;
}

.footer-bottom__links a {
  color: #666;
  text-decoration: none;
	transition:0.4s;
}

.footer-bottom__links a span img{
	width:13px;
	margin:0 0 1px 8px;
}


.footer-bottom__links a:hover {
  opacity:0.6;
}

.footer-bottom__copyright {
  /* white-space: nowrap; */
  margin: 33px 0 0;
}
}
/*========================================================================
//
// GDPR Cookie
//
//========================================================================*/
/********* SP - iPhone 6 or higher (screen width up to 761px) ************/
@media (max-width:761px) {
	.g-gdpr {
		width: 80%;
		padding: 30px 10%;
		justify-content: center;
		align-items: center;
		background: rgba(0, 0, 0, .75);
		position: fixed;
		bottom: 0;
		left: 0;
		z-index: 10000;
		-webkit-backdrop-filter: blur(15px);
		backdrop-filter: blur(15px);
		transition: 1s;
		transform: translateY(100%);
		animation: anime-gdpr 1s both 1s;
	}
	.is-gdpr_off .g-gdpr {
		animation: anime-gdpr_off 1s both;
	}
	.g-gdpr__text {
		display: block;
		color: #cacaca;
		text-shadow: 0 0 3px #000;
		padding: 0 0 20px;
		font-size: 1.4rem;
		text-align: left;
	}
	.g-gdpr__text a {
		color: #85b9d0;
		text-decoration: underline !important;
		padding: 0 .15em;
		display: inline-block;
	}
	a.g-gdpr__button {
		color: #fff;
		font-size: 1.6rem;
		font-weight: 700;
		line-height: 1;
		text-align: center;
		white-space: nowrap;
		vertical-align: middle;
		padding: 1em 2em 1em 2em;
		display: block;
		background: #0096df;
		border: 1px solid #fff;
		transition: .2s;
		cursor: pointer;
	}
}