@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@400;700&family=Noto+Sans+JP:wght@400;700;900&display=swap');

/*! minireset.css v0.0.6 | MIT License | github.com/jgthms/minireset.css */html,body,p,ol,ul,li,dl,dt,dd,blockquote,figure,fieldset,legend,textarea,pre,iframe,hr,h1,h2,h3,h4,h5,h6{margin:0;padding:0}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:normal}ul{list-style:none}button,input,select{margin:0}html{box-sizing:border-box}*,*::before,*::after{box-sizing:inherit}img,video{height:auto;max-width:100%}iframe{border:0}table{border-collapse:collapse;border-spacing:0}td,th{padding:0}

body {
  font-family: 'Noto Sans JP', sans-serif;
}
a {
  color: #222;
  text-decoration: none;
}
img {
  width: 100%;
}

/* component */
.pcOnly-line, .pcOnly-block {
	display: none !important;
}
.spOnly-line {
	display: inline-block !important;
}
.spOnly-block {
	display: block !important;
}
@media print,screen and (min-width: 640px) {
	.spOnly-line, .spOnly-block {
		display: none !important;
	}
	.pcOnly-line {
		display: inline-block !important;
	}
	.pcOnly-block {
		display: block !important;
	}
}

section.field {
  margin: 3rem 0;
}
.full-contents-inner {
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
.wide-contents-inner {
	position: relative;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	display: flex;
	flex-direction: column;
	justify-content: center;
}
@media print,screen and (min-width: 1160px) {
  .full-contents-inner {
    width: calc(100% - 120px);
		min-width: 1160px;
  }
	.wide-contents-inner {
		width: 1160px;
	}
}
.contents-inner {
	position: relative;
	margin: 0 auto;
	padding: 0 0 3rem;
	width: calc(100% - 30px);
	display: flex;
	flex-direction: column;
	justify-content: center;
}
@media print,screen and (min-width: 1160px) {
	.contents-inner {
    padding: 0 50px 3rem;
		width: 1160px;
	}
}
/* 画像スライダー */
#slider {
	width: 100%;
	height: 640px;
}
.video-wrapper {
	position: relative;
}
.video-wrapper-inner {
  width: calc(100% - 30px);
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	flex-direction: column;
	justify-content: center;
}
@media print,screen and (max-width: 640px) {
	#slider {
		height: 70vh;
	}
}

/* ロゴ・キャッチコピー */
.ft-header {
  margin: 2rem 0;
}
.mark-logo a {
  display: inline-block;
  vertical-align: middle;
  transition: .3s ease;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  overflow: hidden;
  text-indent: -9999px;
}
.mark-logo.mark-logo-bluetti a {
  background-image: url(../img/logo_bluetti.svg);
  width: 226px;
  height: 46px;
}
.mark-logo.mark-logo-trend a {
  background-image: url(../img/logo_trend.svg);
  width: 189px;
  height: 46px;
}
.mark-tieup {
  position: relative;
  top: -2px;
  margin: 0 1.25rem;
  color: #bbb;
  font-size: 2rem;
  font-weight: bold;
}
@media print,screen and (max-width: 640px) {
  .mark-logo.mark-logo-bluetti a {
    width: 164px;
    height: 32px;
  }
  .mark-logo.mark-logo-trend a {
    width: 138px;
    height: 32px;
  }
  .mark-tieup {
    top: -1px;
    margin: 0 1rem;
    font-size: 1.25rem;
  }
}
h2.tieup_cc {
	word-break: break-all;
	position: relative;
	margin: 1rem 0;
  font-family: 'Noto Sans JP', sans-serif;
	font-size: 3.75rem;
	font-weight: bold;
	color: #fff;
	text-align: center;
  text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.4);
}
@media print,screen and (max-width: 640px) {
  .ft-header {
    margin: 1rem 0;
  }
  h2.tieup_cc {
    font-size: 2.5rem;
  }
}

/* 見出し */
h2.ft-title {
  position: relative;
  display: inline-block;
  font-size: 36px;
  font-weight: bold;
  text-align: center;
  margin: 3.75rem auto;
  padding: 0 100px;
}
h2.ft-title:before, h2.ft-title:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 80px;
  height: 2px;
  background-color: black;
}
h2.ft-title:before {
  left:0;
}
h2.ft-title:after {
  right: 0;
}
@media print,screen and (max-width: 640px) {
  h2.ft-title {
    margin: 2rem auto;
  }
}
h2.ft-title-l {
  position: relative;
  display: inline-block;
  font-size: 30px;
  font-weight: bold;
  text-align: left;
  margin: 2rem 0;
}


/* テキスト表示行数制限 */
@supports (-webkit-line-clamp: 2) {
  .ellipsis-two {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
  }
}
@supports (-webkit-line-clamp: 3) {
  .ellipsis-three {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical
  }
}
@supports (-webkit-line-clamp: 4) {
  .ellipsis-four {
    display: -webkit-box;
    overflow: hidden;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical
  }
}

.ft-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

ul.ft-l-list {
  list-style: none;
}
ul.ft-l-list .ft-item {
  margin-bottom: 40px;
}
ul.ft-l-list .ft-item a {
  font-size: 16px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row;
  transition: .3s;
}
ul.ft-l-list .ft-item a:hover {
  opacity: .7;
}
ul.ft-l-list .ft-item-img {
  background-color: #ddd;
  background-size: cover;
  background-position: 50% 50%;
  width: 40%;
  max-width: 100%;
  aspect-ratio: 16/10;
	height: auto;
  border-radius: 8px;
}
ul.ft-l-list .ft-item-info {
  flex: 1;
  margin: 0 0 0 30px;
}
ul.ft-l-list .ft-item-info-time {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 10px;
}
ul.ft-l-list .ft-item-info-time-date {
  font-size: 13px;
  color: #777;
}
ul.ft-l-list .ft-item-info-txt-title {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid;
}
ul.ft-l-list .ft-item-info-txt-about {
  font-size: 14px;
  color: #444;
  margin-bottom: 20px;
}
ul.ft-l-list .ft-item-info-txt-more {
  font-weight: 700;
  text-align: right;
}
@media print,screen and (max-width: 640px) {
  ul.ft-l-list .ft-item a {
    flex-direction: column;
  }
  ul.ft-l-list .ft-item-img {
    width: 100%;
    aspect-ratio: 16/10;
  }
  ul.ft-l-list .ft-item-info {
    margin: 20px 0 0;
  }
}

/* list */
#tieup_list {
	position: relative;
}
#tieup_list .row {
	position: relative;
	z-index: 1;
}
.tieup_list-item-img {
	position: relative;
	background-color: #ddd;
	background-position: 50% 50%;
	background-size: cover;
  aspect-ratio: 16/9;
	width: 100%;
	height: auto;
	border-radius: 12px;
}
a:hover .tieup_list-item-img,
a:hover .affiliate-item-img {
	opacity: .7;  
	transition: 0.3s;
}
a .tieup_list-item-txt {
	position: relative;
	color: #222;
	font-weight: bold;
	z-index: 3;
	margin-top: 10px;
	transition: 0.2s;
}
.tieup_list-item-sort {
	margin-top: 10px;
  padding: 4px 8px;
  display: inline-block;
  color: #888;
  font-size: .6875rem;
  line-height: 1;
  border: 1px solid;
  border-radius: 48px;  
}
a:hover .tieup_list-item-txt {
	color: #02a5e0;
}

/* グリッドレイアウト */
.grid-box {
  display: grid;
  column-gap: 10px;
  row-gap: 40px;
}
.grid-box.separate-double {
  grid-template-columns: repeat(2,1fr);
}
.grid-box.separate-triple {
  grid-template-columns: repeat(3,1fr);
}
.grid-box.separate-quad {
  grid-template-columns: repeat(4,1fr);
}
.grid-item-img {
	position: relative;
	background-position: 50% 50%;
	background-size: cover;
  aspect-ratio: 16 / 10;
	width: 100%;
	height: auto;
}
.grid-item-exp {
  display: flex;
  flex-direction: column;
  align-items: left;
  justify-content: center;
  margin: 0 0 0 30px;
}
.grid-item-txt {
  margin-bottom: 12px;
}
@media print,screen and (max-width: 640px) {
  .grid-box.separate-double {
    grid-template-columns: repeat(1,1fr);
    row-gap: 10px;
  }
  .grid-box.separate-triple {
    grid-template-columns: repeat(2,1fr);
  }
  .grid-box.separate-quad {
    grid-template-columns: repeat(2,1fr);
  }
  .grid-item-img {
    aspect-ratio: 16 / 9;
  }
  .grid-item-exp {
    margin: 20px 0 0;
  }
}

/* ループアニメーション */
.loop {
  -webkit-animation: bgloop 120s linear infinite;
  animation: bgloop 120s linear infinite;
}
@-webkit-keyframes bgloop {
  from {
      background-position: 0  0;
  }
  to {
      background-position: -2560px 0;
  }
}
@keyframes bgloop {
  from {
      background-position: 0 0;
  }
  to {
      background-position: -2560px 0;
  }
}

/* layout */
.row {
	display: flex;
	flex-wrap: wrap;
}
.row .col.l1 {
	width: 8.3333333333%;
	left: auto;
	right: auto;
}
.row .col.l2 {
	width: 16.6666666667%;
	left: auto;
	right: auto;
}
.row .col.l3 {
	width: 25%;
	left: auto;
	right: auto;
}
.row .col.l4 {
	width: 33.3333333333%;
	left: auto;
	right: auto;
}
.row .col.l5 {
	width: 41.6666666667%;
	left: auto;
	right: auto;
}
.row .col.l6 {
	width: 50%;
	left: auto;
	right: auto;
}
.row .col.l7 {
	width: 58.3333333333%;
	left: auto;
	right: auto;
}
.row .col.l8 {
	width: 66.6666666667%;
	left: auto;
	right: auto;
}
.row .col.l9 {
	width: 75%;
	left: auto;
	right: auto;
}
.row .col.l10 {
	width: 83.3333333333%;
	left: auto;
	right: auto;
}
.row .col.l11 {
	width: 91.6666666667%;
	left: auto;
	right: auto;
}
.row .col.l12 {
	width: 100%;
	left: auto;
	right: auto;
}
@media print,screen and (max-width: 640px) {
	.row .col.s1 {
		width: 8.3333333333%;
		left: auto;
		right: auto;
	}
	.row .col.s2 {
		width: 16.6666666667%;
		left: auto;
		right: auto;
	}
	.row .col.s3 {
		width: 25%;
		left: auto;
		right: auto;
	}
	.row .col.s4 {
		width: 33.3333333333%;
		left: auto;
		right: auto;
	}
	.row .col.s5 {
		width: 41.6666666667%;
		left: auto;
		right: auto;
	}
	.row .col.s6 {
		width: 50%;
		left: auto;
		right: auto;
	}
	.row .col.s7 {
		width: 58.3333333333%;
		left: auto;
		right: auto;
	}
	.row .col.s8 {
		width: 66.6666666667%;
		left: auto;
		right: auto;
	}
	.row .col.s9 {
		width: 75%;
		left: auto;
		right: auto;
	}
	.row .col.s10 {
		width: 83.3333333333%;
		left: auto;
		right: auto;
	}
	.row .col.s11 {
		width: 91.6666666667%;
		left: auto;
		right: auto;
	}
	.row .col.s12 {
		width: 100%;
		left: auto;
		right: auto;
	}
}


/* フッター */
.is-bg-jcorange {
  background-color: #FF6338;
}
.footer-wrapper a {
  color: rgba(255,255,255,0.7);
  transition: .2s
}
.footer-wrapper a:hover {
  color: #fff
}
.footer-wrapper a:visited {
  color: rgba(255,255,255,0.7)
}
.footer-wrapper {
  width: 100%;
}
.footer-wrapper .footer-container.for_form {
  width: 100%;
  min-width: 100%;
  justify-content: center !important
}
.footer-wrapper .footer-content {
  padding: 40px 15px
}
.footer-wrapper .footer-content-list-title {
  margin-bottom: 20px;
  font-size: 1rem;
  font-weight: bold;
  color: #fff
}
.footer-wrapper .footer-content-list {
  list-style-type: none;
  margin-top: 0px;
  margin-bottom: 20px;
  padding: 0
}
.footer-wrapper .footer-content-list:last-of-type {
  margin-bottom: 0
}
.footer-wrapper .footer-content-list-item {
  margin-bottom: 8px;
  font-size: 0.875rem
}
.footer-wrapper .footer-content-list-item:last-of-type {
  margin-bottom: 0
}
.footer-wrapper .footer_copyright {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  margin: 10px 0;
  padding: 0 10px
}
.footer-wrapper .copyright {
  font-size: 0.6875rem;
  margin-bottom: 0
}
.footer-wrapper .copyright .imgPrivacymark {
  flex-shrink: 0;
  width: 60px
}
@media print,screen and (min-width: 1160px) {
  .footer-wrapper {
    min-width: 1160px
  }  
	.footer-container {
		width: 1160px;
    margin: 0 auto;
    padding: 0 15px
	}
}
@media screen and (max-width: 640px) {
	.is-sp-mg-top {
		margin-top: 2rem;
	}
}