@charset "utf-8";

/************************

blantonsブランドサイト CSS　2026 by FLICKS

************************/

/*----fontは字詰めの美しさを優先してwebフォントを使わないことにしました
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Shippori+Mincho:wght@400;600;700&display=swap');
----*/
html {
	scrollbar-gutter: stable;
}

body {
	-webkit-text-size-adjust: 100%;
}

#content-nav {
	color: #3a3a3a;
	margin: 20px auto 25px;
	max-width: 1024px;
	height: 26px;
	overflow: hidden;
}

.blantons-contents {
	/*fontは字詰めの美しさを優先してwebフォントを使わないことにしました*/
	font-family:
		"Hiragino Mincho ProN",
		"Yu Mincho",
		"YuMincho",
		"Hiragino Serif",
		serif;
	color: #f1f1f1;
	font-weight: 400;
	font-feature-settings: "palt";
	font-style: normal;
	line-height: 1.8;
	font-size: 16px;
	background: #080606;
}

.blantons-contents * {
	box-sizing: border-box;
	/*max-height: 100%;*/
}

.blantons-contents p+p {
	margin-top: 1em;
}

.blantons-contents a,
.blantons-contents a:link {
	color: inherit;
	text-decoration: none;
}

.blantons-contents a img {
	transition: opacity .3s ease;
}


.blantons-contents a:hover img {
	opacity: 0.8;
}

.blantons-contents img {
	max-width: 100%;
	height: auto;
}

.l-inner {
	max-width: 1024px;
	margin: 0 auto;
	padding: 0 16px;
}

/* ---　PCサイズのみ　---*/
@media all and (min-width:768px) {
	.blantons-contents .sp {
		display: none !important;
	}

	.blantons-contents {
		min-width: 1024px;
	}
}

/* ---　SPサイズのみ　---*/
@media all and (max-width:767px) {
	.blantons-contents .pc {
		display: none !important;
	}

	.blantons-contents {
		width: 100%;
	}
}


/**********************************
 
utility
 
**********************************/
.u-gothic {
	font-family:
		Arial,
		"Yu Gothic",
		"Hiragino Sans",
		sans-serif;
}

.u-align-center {
	text-align: center;
}

.u-align-center img {
	display: inline-block;
}

.u-align-right {
	text-align: right;
}

.u-mb-0 {
	margin-bottom: 0;
}

.u-mb-1 {
	margin-bottom: 1em;
}

.u-mb-2 {
	margin-bottom: 2em;
}

.u-mb-3 {
	margin-bottom: 3em;
}

.u-mb-4 {
	margin-bottom: 4em;
}

.u-mb-5 {
	margin-bottom: 5em;
}

.u-mt-0 {
	margin-top: 0;
}

.u-mt-1 {
	margin-top: 1em;
}

.u-mt-2 {
	margin-top: 2em;
}

.u-mt-3 {
	margin-top: 3em;
}

.u-mt-4 {
	margin-top: 4em;
}

.u-fz-sm {
	font-size: 80%;
}

.u-fz-s {
	font-size: 70%;
}

.u-nowrap {
	display: inline-block;
}

/**********************************
 
blantons-header
 
**********************************/

.blantons-header {
	width: 100%;
	position: sticky;
	top: 0;
	z-index: 100;
	background: rgba(8, 6, 6, 0.96);
}

.blantons-header .l-inner {
	margin: 0 auto;
	padding: 10px 16px;
	height: 90px;
	max-width: 1056px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
}

.blantons-header__logo {
	width: 150px;
	display: block;
}

.blantons-menu-btn {
	display: none;
}

.blantons-nav ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 2em;
	font-size: 15px;
	letter-spacing: 0.1em;
}

.blantons-nav ul a {
	padding: 0.54em 0;
	border-bottom: #080606 1px solid;
	transition: 0.2s;
}

.blantons-nav ul a:not(.active):hover {
	color: #fff;
	border-bottom: #8a8a8a 1px solid;
}

.blantons-nav ul .active {
	border-bottom: #e0bb47 1px solid;
	color: #fff;
}

/* SP */
@media all and (max-width:767px) {
	.blantons-header .l-inner {
		height: 58px;
		padding: 10px 12px;
	}

	.blantons-header__logo {
		width: 100px;
		z-index: 100;
		position: relative;
	}

	.blantons-menu-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		height: 40px;
		padding: 0 12px;
		border: 1px solid rgba(193, 161, 61, 0.55);
		background: transparent;
		color: #e6e6e6;
		font: inherit;
		font-size: 13px;
		letter-spacing: 0.12em;
		cursor: pointer;
	}

	.blantons-header .blantons-nav {
		position: fixed;
		inset: 0;
		background: rgba(8, 6, 6, 0.98);
		z-index: 90;

		align-items: center;
		justify-content: center;
		text-align: center;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transition: opacity .25s ease;
	}

	.blantons-header.is-open .blantons-nav,
	.blantons-header.is-closing .blantons-nav {
		display: flex;
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
	}

	.blantons-header.is-closing .blantons-nav {
		opacity: 0;
		pointer-events: none;
	}

	.blantons-nav ul {
		display: block;
		font-size: 16px;
		letter-spacing: 0.12em;
	}

	.blantons-nav li+li {
		margin-top: 1.6em;
		border: none;
	}

	.blantons-nav ul a {
		display: inline-block;
		padding: 0;
		border: none;
	}

	body.menu-open {
		position: fixed;
		left: 0;
		width: 100%;
	}
}

.blantons-menu-btn {
	display: none;
}

@media all and (max-width:767px) {

	.blantons-menu-btn {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 24px;
		height: 24px;
		border: none;
		background: transparent;
		cursor: pointer;
		position: relative;
		z-index: 120;
	}

	.blantons-menu-btn span,
	.blantons-menu-btn::before,
	.blantons-menu-btn::after {
		content: "";
		position: absolute;
		width: 22px;
		height: 1px;
		background: #e6e6e6;
		transition: transform .25s ease, opacity .25s ease;
	}

	/* 上線 */
	.blantons-menu-btn::before {
		transform: translateY(-7px);
	}

	/* 中線 */
	.blantons-menu-btn span {}

	/* 下線 */
	.blantons-menu-btn::after {
		transform: translateY(7px);
	}

	/* 開いた状態 */

	.blantons-header.is-open .blantons-menu-btn::before {
		transform: rotate(45deg);
	}

	.blantons-header.is-open .blantons-menu-btn::after {
		transform: rotate(-45deg);
	}

	.blantons-header.is-open .blantons-menu-btn span {
		opacity: 0;
	}
}

/**********************************
 
.page-title
 
**********************************/
.page-title {
	text-align: center;
	height: 342px;
	overflow: hidden;
	position: relative;
	align-content: center;
	letter-spacing: 0.07em;
}

.page-title h1 {
	font-size: 36px;
	line-height: 1.5;
	padding-bottom: 0.2em;
	font-weight: 700;
	text-shadow:
		0 0 2px rgba(0, 0, 0, .9),
		0 0 6px rgba(0, 0, 0, .9),
		0 0 12px rgba(0, 0, 0, .9),
		0 0 24px rgba(0, 0, 0, .9);
}

.page-title .page-title__sub {
	font-size: 60%;
	font-weight: 500;
	display: block;
	margin: 0.2em auto 0;
}

/* 背景画像フェード */
.page-title::before {
	content: "";
	position: absolute;
	inset: 0;
	background: url(../images/one_and_only/page-title.webp) center / cover no-repeat;
	opacity: 0;
	animation: bgFade 1.2s ease forwards;
}

#about .page-title::before {
	background: url(../images/about/page-title.webp) center / cover no-repeat;
}

#bourbon .page-title::before {
	background: url(../images/bourbon/page-title.webp) center / cover no-repeat;
}

#recipes .page-title::before {
	background: url(../images/recipes/page-title.webp) center / cover no-repeat;
}

#one_and_only .page-title::before {
	background: url(../images/one_and_only/page-title.webp) center / cover no-repeat;
}

#blantons-products .page-title::before {
	background: url(../images/products/page-title.webp) center / cover no-repeat;
}

#awards .page-title::before {
	background: url(../images/awards/page-title.webp) bottom right / cover no-repeat;
}

/* テキストフェード */
.page-title h1 {
	position: relative;
	opacity: 0;
	transform: translateY(0.1em);
	animation: textFade 0.8s ease forwards;
	animation-delay: .4s;
}

.page-title h1 .page-title__sub {
	transform: translateY(0.06em);
	animation: textFade 0.6s ease forwards;
	animation-delay: .6s;
}

/* アニメーション */

@keyframes bgFade {
	to {
		opacity: 1;
	}
}

@keyframes textFade {
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

/**********************************
 
.anchor-nav
ページ内ナビ
 
**********************************/
.anchor-nav {
	margin: 40px auto 60px;
	font-size: 18px;
	font-weight: 400;
	letter-spacing: 0.01em;
}

.anchor-nav li {
	margin-bottom: 4px;
}

.anchor-nav a {
	background: linear-gradient(to bottom, #331910, #28140d);
	padding: 0.4em 1.35em 0.4em 3.0em;
	display: block;
	width: 100%;
	position: relative;
	isolation: isolate;
	transition: .25s ease;
}

.anchor-nav a::after {
	content: "";
	position: absolute;
	inset: 0;
	background: linear-gradient(to bottom, #3c1f14, #2f170f);
	opacity: 0;
	transition: opacity .25s ease;
	z-index: -1;
}

.anchor-nav a:hover {
	color: #fff;
}

.anchor-nav a:hover::after {
	opacity: 1;
}

.anchor-nav a::before {
	content: "";
	position: absolute;
	top: 50%;
	left: 1.35em;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-left: .3em solid transparent;
	border-right: .3em solid transparent;
	border-top: .4em solid #bd9d4c;
	transition: border-top-color .2s ease;
}

.anchor-nav a:hover::before {
	border-top-color: #e0c26b;
}

/**********************************
 
section
 
**********************************/
.blantons-article>section {
	padding: 80px 0;
}

.section-title {
	font-size: 36px;
	line-height: 1.4;
	width: fit-content;
	margin: 0 auto;
	border-bottom: 1px solid currentColor;
	padding-bottom: 0.33em;
	margin-bottom: 1.6em;
	font-weight: 500;
	letter-spacing: 0.08em;
}

.section-h2 {
	font-size: 30px;
	line-height: 1.4;
	margin-bottom: 0.7em;
	font-weight: 500;
	letter-spacing: 0.08em;
}

.section-h2__sub {
	font-size: 56%;
	font-weight: 400;
	letter-spacing: 0.03em;
	display: block;
	margin-top: 0.5em;
	margin-bottom: 1.7em;
}

.section-h3 {
	font-size: 26px;
	line-height: 1.4;
	margin-bottom: 0.5em;
	font-weight: 500;
	letter-spacing: 0.08em;
}

p+.section-h3,
.basics__text+.section-h3 {
	margin-top: 1.9em;
}

/*----------------
media（画像 + テキスト横並び）
----------------*/
.media {
	display: grid;
	grid-template-columns: 1fr 418px;
	gap: 60px;
	align-items: center;
}

.media__img img {
	width: 100%;
	height: auto;
	display: block;
}

/*---画像幅バリエーション---*/
.media--img-wide {
	grid-template-columns: 3fr 2fr;
}

.media--text-wide {
	grid-template-columns: 2fr 3fr;
}

/*---左右反転---*/
.media--reverse {
	direction: rtl;
	/*grid-template-columns: 418px 1fr; リーさんの写真が大きくなっちゃう*/
}

.media--reverse * {
	direction: ltr;
}

/*---SP---*/
@media (max-width:768px) {

	.media {
		grid-template-columns: 1fr;
		gap: 9vw;
	}

	.media__img--men img {
		width: 360px;
		max-width: 100%;
		text-align: center;
		margin: auto;
		display: block;
	}

}

/*----------------
huge-image
----------------*/
.huge-image {
	height: clamp(230px, 45.24vw, 618px);
	overflow: hidden;
	margin-top: 3em;
	overflow: hidden;
}


.huge-image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 50% 15%;
	display: block;

	transform: scale(1.02);
	/* 待機 */
	transform-origin: center;
	will-change: transform;
}

#single-barrel-history .huge-image {
	height: clamp(230px, 45.24vw, 472px);
}

#single-barrel-history .huge-image img {
	object-position: 50% 50%;
	display: block;

	transform: scale(1.02);
	/* 待機 */
	transform-origin: center;
	will-change: transform;
}

.huge-image img.zoom-start {
	animation: hugeZoomOut 10s cubic-bezier(.25, .7, .2, 1) 1 both 0.5s;
}

@keyframes hugeZoomOut {
	from {
		transform: scale(1.02);
	}

	to {
		transform: scale(1);
	}
}

/*----------------
.c-box
----------------*/
.c-box {
	background: url(../images/bg_box.png);
	padding: 40px 30px;
	margin: 1.5em 0 3em;
}

/*----------------
#stoppers 8種類のボトルキャップsection
----------------*/
#stoppers {
	padding-top: 140px;
	background: #3d2a17 url(../images/one_and_only/img_06.webp) no-repeat bottom center / 131%;
	position: relative;
}

#stoppers::after {
	content: "";
	display: block;
	height: clamp(100px, 26vw, 500px);
}

@media (min-width:1700px) {
	#stoppers {
		background-size: 2360px;
	}
}

/*----------------
#how-made ブラントンができるまでsection
----------------*/
#how-made {
	background: #100b03 url(../images/ptn_01.gif);
}

.how-made__leader {
	text-align: center;
	margin-bottom: 3em;
}

.process-item {
	background: #291905;
	border-radius: 11px;
	border: #c1a13d 1px solid;
	text-align: center;
	padding: 36px 50px 24px;
	margin: 52px 80px;
	position: relative;
}

.process-item:first-child {
	background: #291905 url(../images/one_and_only/process_01.webp) no-repeat center top -20px;
}

.process-item:nth-child(2) {
	background: #291905 url(../images/one_and_only/process_02.webp) no-repeat center top -20px;
}

.process-item:nth-child(3) {
	background: #291905 url(../images/one_and_only/process_03.webp) no-repeat center top -120px;
	margin-bottom: 0;
}

/* 下向き三角 */
.process-item:not(:last-child)::after {
	content: "";
	position: absolute;
	left: 50%;
	bottom: -39px;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-left: 50px solid transparent;
	border-right: 50px solid transparent;
	border-top: 24px solid #af932b;
}

.process-item__title {
	font-size: 23px;
	line-height: 1.5;
	margin-bottom: 1em;
	font-weight: 600;
	letter-spacing: 0.08em;
}

.process-item__title-eng {
	font-size: 70%;
	color: #dbbb46;
	display: block;
	font-weight: 400;
}

.process-item__list li {
	border-top: 1px solid #83723c;
	padding: 1em;
}

/*----------------
動画
----------------*/


iframe[src*="youtube.com"],
iframe[src*="youtube-nocookie.com"] {
	aspect-ratio: 16 / 9;
	width: 100%;
	height: auto;
}

/* ---　PCサイズのみ　---*/
@media all and (min-width:768px) {
	#movie-blanton .section-title {
		font-size: 30px;
		margin-top: 40px;
		margin-bottom: 2em;
	}
}

/* ---　SPサイズのみ　---*/
@media all and (max-width:767px) {
	#movie-blanton .section-title {
		font-size: 17px;
	}
}

/*----------------
#statue-of-albert-blanton 像/台座section
----------------*/
.statue-box {
	background: #2d2c2c url(../images/ptn_02.gif);
	padding: 36px 50px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 2em;
}


/* ---　PCサイズのみ　---*/
@media all and (min-width:768px) {
	.statue-box__jpn {
		line-height: 2.2;
		margin-top: 0 !important;
	}

	.statue-box__eng {
		line-height: 1.6;
	}
}

/* ---　小さいスマホ　---*/
@media all and (max-width:600px) {


	#statue-of-albert-blanton figure img {
		object-fit: cover;
		aspect-ratio: 1 / 1;
		object-position: left top;
	}
}

/*----------------
#basics 雑学 バーボンの基礎知識 section
----------------*/
#bourbon #basics {
	background: url(../images/bourbon/img_01.webp) no-repeat calc(50% + 240px) calc(50% + -12px);
	background-size: 905px;
}

.basics__text {
	width: 600px;
	max-width: 100%;
}

/*----------------
#home 雑学 バーボンの故郷 section
----------------*/
#bourbon #home {
	background: url(../images/bourbon/img_03.webp) no-repeat;
	background-size: contain;
	padding-top: 8em;
}

#bourbon #home .huge-image {
	height: clamp(230px, 60.24vw, 618px);
}

#bourbon #home .huge-image img {
	object-position: 50% 55%;
}

/*----------------
#episode 雑学 バーボン事情通 section
----------------*/
#bourbon #episode {
	background: url(../images/bourbon/img_06.webp) no-repeat;
	background-size: cover;
}

/*----------------
#blantons-products 商品ラインアップ
----------------*/
.products-list {
	padding-top: 30px;
}

.products-item {
	display: flex;
	gap: 80px;
	flex-direction: row-reverse;
	justify-content: space-between;
	align-items: center;
	border-bottom: #796114 1px solid;
	padding: 60px 46px;
}


.products-item--text {
	flex: 1;
	max-width: 100%;
	padding-top: 1.5em;
}

.products-item--text p.gentei {
	font-size: 14px;
	line-height: 1;
	border: #a1a1a1 1px solid;
	display: inline-block;
	padding: 0.35em 0.4em 0.3em;
	margin-top: 1.6em;
}

.products-item--name {
	font-size: 31px;
	color: #e7be4c;
	line-height: 1.55;
	margin-bottom: 0.55em;
	font-weight: 600;
}

.products-item--eng {
	font-size: 50%;
	display: block;
	font-weight: 400;
}

.products-item--img {
	width: 256px;
}

/* ---　PCサイズのみ　---*/
@media all and (min-width:768px) {

	.products-item--text p {
		font-size: 15px;
		line-height: 1.7;
	}

	.products-item--text p:first-of-type {
		font-size: 16px;
	}

	.products-item--text p.taste,
	.products-item--text p.taste+p {
		line-height: 1.55;
	}
}

/*----------------
.recipe-list
----------------*/

.recipe-list {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	width: 900px;
}


.recipe-item {
	width: 40%;
	margin-bottom: 40px;
}

.recipe--name {
	font-size: 24px;
	color: #e7be4c;
	line-height: 1.55;
	margin: 0.8em 0 0.3em;
	font-weight: 600;
	text-align: center;
}

.recipe--img {
	display: flex;
	margin: auto;
	width: 220px;
	max-width: 100%;
	min-height: 310px;
	align-items: flex-end;
}

.recipe-item h3 {
	font-size: 16px;
	font-weight: 200;
	color: #e7be4c;
	line-height: 1;
	margin: 1em 0 0.85em;
	font-weight: 600;
	text-align: center;
	border: #8b7326 1px solid;
	border-left: none;
	border-right: none;
	padding: 0.4em;
}

.recipe-item p {
	line-height: 1.52;
}

.recipe-item p.ingredients,
.recipe-item p.ingredients+p {
	font-size: 15px;
	font-weight: 300;
}

.recipe-item p.ingredients {
	/*padding-left: 1.2em;
	position: relative;*/
}

.recipe-item p.ingredients:before {
	content: "■ ";
	/*position: absolute;
	top: 0;
	left: 0;*/
}

.recipe-item p.ingredients+p {
	margin-top: 0.5em;
	line-height: 1.4;
}

/*----------------
#awards コンペティション入賞
----------------*/
.announce {
	line-height: 1.4;
	text-align: center;
	margin-top: 80px;
	border-top: #e0bb47 3px solid;
	border-bottom: #e0bb47 3px solid;
	padding: 1.8em 1em;
	font-size: 24px;
	background: linear-gradient(to bottom,
			#312507,
			#080606 28%,
			#080606 72%,
			#312507 100%);
}

.announce p+p {
	margin-top: 0.4em;
}

.announce__prize {
	color: #e0bb47;
	display: inline-block;
}

.awards-list {
	margin: 0 16px;
}

.awards-item {
	background: linear-gradient(225deg, #e8b429 0%, #edc21c 33%, #fff0bb 60%, #e0ab1d 100%);
	border: #b18c0f 7px solid;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 0px;
	margin-top: 30px;

}

.awards-item__img {
	padding-top: 10px;
	padding-left: 70px;
	width: 185px;
	max-width: 100%;
	box-sizing: content-box;
}

.awards-item__data {
	flex: 1;
	padding: 0 50px;
}

.awards-item__name {
	font-size: 32px;
	font-weight: 900;
	text-align: center;
	color: #000000;
	background:
		linear-gradient(#c09e2b, #c09e2b) top/100% 1px no-repeat,
		linear-gradient(#c09e2b, #c09e2b) 0 3px/100% 1px no-repeat,
		linear-gradient(#c09e2b, #c09e2b) bottom/100% 1px no-repeat,
		linear-gradient(#c09e2b, #c09e2b) 0 calc(100% - 3px)/100% 1px no-repeat;
	padding: 0.9em 0 0.8em;
	line-height: 1.3;
	margin-bottom: 26px;
}

.awards-item__name-sub {
	font-size: 14px;
	display: block;
	margin: 0.1em auto 0;
}

.awards-item__prize {
	display: flex;
	padding: 0 10px;
	justify-content: space-between;
	gap: 28px;
}

.about-award {
	padding: 36px 0;
}

.about-award h2 {
	color: #e0bb47;
	font-size: 26px;
	margin: 2em 0 0.7em;
	border-top: #e0bb47 2px solid;
	border-bottom: #e0bb47 2px solid;
	padding: 0.8em;
	font-size: 24px;
	text-align: center;
	background: linear-gradient(to bottom,
			#312507,
			#080606 28%,
			#080606 72%,
			#312507 100%);

}

/**********************************
 
.blantons-footer
 
**********************************/
.blantons-footer {
	background: #000;
	padding: 70px 0 50px;
}

.blantons-footer__banner ul {
	display: flex;
	justify-content: center;
	gap: 16px;
}

.blantons-footer .blantons-nav ul {
	text-align: center;
	justify-content: center;
}

.blantons-footer__logo {
	width: 176px;
	margin: 50px auto 30px;
}

/**********************************
 
fadein
 
**********************************/
/*----------------
'.js-fadein'
----------------*/
.js-fadein {
	opacity: 0;
	transform: translateY(10px);
	transition: 0.8s;
}

.js-fadein.is-visible {
	opacity: 1;
	transform: none;
}

/*----------------
(中身要素時間差)
----------------*/
.js-delay-fade>* {
	opacity: 0;
	transform: translateY(10px);
	transition: opacity .6s ease, transform .6s ease;
}

.js-delay-fade.is-visible>* {
	opacity: 1;
	transform: translateY(0);
}







/**********************************
  自作モーダル
**********************************/
.video-modal[hidden] {
	display: none;
}

.video-modal {
	position: fixed;
	inset: 0;
	z-index: 9999;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.4s ease, visibility 0.4s ease;
}

.video-modal.is-open {
	opacity: 1;
	visibility: visible;
}

.video-modal__overlay {
	position: absolute;
	inset: 0;
	background: rgba(0, 0, 0, 0.8);
	opacity: 0;
	transition: opacity 0.4s ease;
}

.video-modal.is-open .video-modal__overlay {
	opacity: 1;
}

.video-modal__content {
	position: absolute;
	top: 50%;
	left: 50%;
	width: min(90vw, 960px);
	opacity: 0;
	transform: translate(-50%, -48%) scale(0.965);
	will-change: transform, opacity;
	transition:
		opacity 0.55s ease,
		transform 0.6s cubic-bezier(.16, 1, .3, 1);
}

.video-modal.is-open .video-modal__content {
	opacity: 1;
	transform: translate(-50%, -50%) scale(1);
}

.video-modal__inner {
	aspect-ratio: 16 / 9;
	background: #000;
}

.video-modal__inner iframe {
	display: block;
	width: 100%;
	height: 100%;
}

.video-modal__close {
	position: absolute;
	top: -40px;
	right: 0;
	border: 0;
	background: none;
	color: #fff;
	font-size: 32px;
	line-height: 1;
	cursor: pointer;
}


/**********************************
  動画サムネイルボタン
**********************************/

.movie__video-frame {
	appearance: none;
	-webkit-appearance: none;
	display: block;
	position: relative;
	width: 690px;
	max-width: 100%;
	margin: 0 auto;
	padding: 0;
	border: none;
	background: none;
	font: inherit;
	color: inherit;
	line-height: 0;
	cursor: pointer;
	transition: 0.4s;
}

.movie__video-frame::after {
	content: "";
	position: absolute;
	top: 50%;
	left: 50%;
	width: 70px;
	height: 70px;
	transform: translate(-50%, -50%);
	background: url("../images/icon-play.png") no-repeat center / contain;
}

.movie__video-frame img {
	display: block;
	transition: 0.4s;
}

.movie__video-frame:hover img {
	opacity: 0.6;
}