.glightbox-container {
	width:100%;
	height:100%;
	position:fixed;
	top:0;
	left:0;
	z-index:100!important;
	overflow:hidden;
	-ms-touch-action:none;
	touch-action:none;
	-webkit-text-size-adjust:100%;
	-moz-text-size-adjust:100%;
	-ms-text-size-adjust:100%;
	text-size-adjust:100%;
	-webkit-backface-visibility:hidden;
	backface-visibility:hidden;
	outline:0
	}
.glightbox-container.inactive {
	display:none
	}
.glightbox-container .gcontainer {
	position:relative;
	width:100%;
	height:100%;
	z-index:99;
	overflow:hidden
	}
.glightbox-container .gslider {
	-webkit-transition:-webkit-transform .4s ease;
	transition:-webkit-transform .4s ease;
	transition:transform .4s ease;
	transition:transform .4s ease,-webkit-transform .4s ease;
	height:100%;
	left:0;
	top:0;
	width:100%;
	position:relative;
	overflow:hidden;
	display:-webkit-box!important;
	display:-ms-flexbox!important;
	display:flex!important;
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-align:center;
	-ms-flex-align:center;
	-webkit-transform:translate3d(0,0,0);
	transform:translate3d(0,0,0)
	}
.glightbox-container .gslide {
	width:100%;
	position:absolute;
	-webkit-user-select:none;
	-moz-user-select:none;
	-ms-user-select:none;
	user-select:none;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align:center;
	-ms-flex-align:center;
	align-items:center;
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content:center;
	opacity:0
	}
.glightbox-container .gslide.current {
	opacity:1;
	z-index:98;
	position:relative;
	height: 100%;
	}
.glightbox-container .gslide.prev {
	opacity:1;
	z-index:97
	}
.glightbox-container .gslide-inner-content {
    width:100%
}
.gslide-inner-content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  height: 100vh;
}
.glightbox-container .ginner-container .gvideo-container {
	position:relative;
	width:100%;
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	-ms-flex-pack:center;
	justify-content:center;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	-ms-flex-direction:column;
	flex-direction:column;
	max-width:100%;
	margin:auto;
	height:auto;
	width:100%
	}
.gslide:not(.current) {
    pointer-events:none
}
.gslide-image {
    -webkit-box-align:center;
    -ms-flex-align:center;
    align-items:center;
}
.gslide-image img {
    display:block;
    padding:0;
    float:none;
    outline:0;
    border:none;
    -webkit-user-select:none;
    -moz-user-select:none;
    -ms-user-select:none;
    user-select:none;
    max-width:100vw;
    width:auto;
    height:auto;
    -o-object-fit:cover;
    object-fit:cover;
    -ms-touch-action:none;
    touch-action:none;
    margin:auto;
    min-width:200px
}
.gslide-video {
	position: relative;
	max-width: 100vw !important; /* ← 修正ポイント：高さ基準→幅基準に */
	width: 100% !important;
	margin: 0 auto; /* 中央寄せ（念のため） */
	overflow: hidden;
	box-sizing: border-box;
	}

.gslide-video .plyr__poster-enabled.plyr--loading .plyr__poster {
	display:none
	}
.gslide-video .gvideo-wrapper {
	width:100vw!important;
	margin:auto
	}
.gslide-video.playing::before {
	display:none
	}
.gslide-video.fullscreen {
	max-width:100%!important;
	min-width:100%;
	height:75vh
	}
.gslide-video.fullscreen video {
	max-width:100%!important;
	width:100%!important
	}
.gslide-inline .ginlined-content {
    padding:20px;
    width:100%
}
.gslide-inline .dragging {
    cursor:-webkit-grabbing!important;
    cursor:grabbing!important;
    -webkit-transition:none;
    transition:none
}
.ginlined-content {
    overflow:auto;
    display:block!important;
    opacity:1
}
.gslide-media {
    display:-webkit-box;
    display:-ms-flexbox;
display: flex;
  align-items: center;
  justify-content: center;
  flex: 1;
}
.gslide-media img {
  max-height: 100%;
  max-width: 100%;
  height: auto;
  width: auto;
  margin: auto;
  display: block;
  object-fit: contain;
}
.desc-bottom .gslide-media,.desc-top .gslide-media {
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column
}
.gslide-description {
    position:relative;
    -webkit-box-flex:1;
    -ms-flex:1 0 100%;
    flex:1 0 100%;
  padding: 1em;
  background: rgba(0, 0, 0, 0.6);
  color: #fff;
  line-height: 1.4;
	margin: auto;
}
.gslide-description p {
    margin-bottom:12px
}
.gslide-description p:last-child {
    margin-bottom:0
}
.zoomed .gslide-description {
    display:none
}
.glightbox-button-hidden {
    display:none
}
.glightbox-mobile .glightbox-container .gslide-description {
    height:auto!important;
    width:100%;
    position:static;
    max-width:100vw!important;
    -webkit-box-ordinal-group:3!important;
    -ms-flex-order:2!important;
    order:2!important;
    max-height:78vh;
    overflow:auto!important;
    background:-webkit-gradient(linear,left top,left bottom,from(rgba(0,0,0,0)),to(rgba(0,0,0,.75)));
    background:linear-gradient(to bottom,rgba(0,0,0,0) 0,rgba(0,0,0,.75) 100%);
    -webkit-transition:opacity .3s linear;
    transition:opacity .3s linear;
    padding-bottom:50px
	}
.glightbox-mobile .glightbox-container .gslide-title {
    color:#fff;
    font-size:1em
	}
.glightbox-mobile .glightbox-container .gslide-desc {
    color:#a1a1a1
	}
.glightbox-mobile .glightbox-container .gslide-desc a {
    color:#fff;
    font-weight:700
	}
.glightbox-mobile .glightbox-container .gslide-desc * {
    color:inherit
	}
.glightbox-mobile .glightbox-container .gslide-desc .desc-more {
    color:#fff;
    opacity:.4
	}
.gdesc-open .gslide-media {
    -webkit-transition:opacity .5s ease;
    transition:opacity .5s ease;
    opacity:.4
	}
.gdesc-open .gdesc-inner {
    padding-bottom:30px
	}
.gdesc-closed .gslide-media {
    -webkit-transition:opacity .5s ease;
    transition:opacity .5s ease;
    opacity:1
	}
.greset {
    -webkit-transition:all .3s ease;
    transition:all .3s ease
	}
.gabsolute {
    position:absolute
	}
.grelative {
    position:relative
	}
.glightbox-open {
    overflow:hidden
	}
.gloader {
    height:25px;
    width:25px;
    -webkit-animation:lightboxLoader .8s infinite linear;
    animation:lightboxLoader .8s infinite linear;
    border:2px solid #fff;
    border-right-color:transparent;
    border-radius:50%;
    position:absolute;
    display:block;
    z-index:96;
    left:0;
    right:0;
    margin:0 auto;
    top:47%
	}
.goverlay {
    width:100%;
    height:calc(100vh + 1px);
    position:fixed;
    top:-1px;
    left:0;
	background: rgba(0, 0, 0, .9);
	will-change:opacity
	}
.gclose,.gnext,.gprev {
    border:none;
    display:-webkit-box;
    display:-ms-flexbox;
    display:flex;
	z-index: 200;
	}
.gclose svg,.gnext svg,.gprev svg {
    display:block;
    width:25px;
    height:auto;
    margin:0;
    padding:0
	}
.gclose.disabled,.gnext.disabled,.gprev.disabled {
    opacity:.1
	}
.gclose .garrow,.gnext .garrow,.gprev .garrow {
    stroke:#fff
	}
.gbtn.focused {
    outline:2px solid #0f3d81
	}
iframe.wait-autoplay {
    opacity:0
	}
.glightbox-closing .gclose,.glightbox-closing .gnext,.glightbox-closing .gprev {
    opacity:0!important
	}
.glightbox-clean .gslide-description {
    background:#fff
	}
	.glightbox-clean .gdesc-inner {
	padding: 0 1%;
	}
.glightbox-clean .gslide-title {
    font-size:1em;
    font-weight:400;
    font-family:arial;
    color:#fff;
    line-height:1.4em
	}
.glightbox-clean .gslide-desc {
    font-size:.86em;
    margin-bottom:0;
    font-family:arial;
    line-height:1.4em
	}
.glightbox-clean .gslide-video {
    background:#000
	}
.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev {
    background-color:rgba(0,0,0,.75);
    border-radius:4px
		}
.glightbox-clean .gclose path,.glightbox-clean .gnext path,.glightbox-clean .gprev path {
    fill:#fff
	}
.glightbox-clean .gprev {
    position:absolute;
    top:-100%;
    left:30px;
    width:40px;
    height:50px
	}
.glightbox-clean .gnext {
    position:absolute;
    top:-100%;
    right:30px;
    width:40px;
    height:50px
	}
.glightbox-clean .gclose {
    width:35px;
    height:35px;
    top:15px;
    right:10px;
    position:absolute
	}
.glightbox-clean .gclose svg {
	width:18px;
	height:auto
	}
.glightbox-clean .gclose:hover {
	opacity:1
	}
.gfadeIn {
	-webkit-animation:gfadeIn .5s ease;
	animation:gfadeIn .5s ease
	}
.gfadeOut {
	-webkit-animation:gfadeOut .5s ease;
	animation:gfadeOut .5s ease
	}
.gslideOutLeft {
	-webkit-animation:gslideOutLeft .3s ease;
	animation:gslideOutLeft .3s ease
	}
.gslideInLeft {
	-webkit-animation:gslideInLeft .3s ease;
	animation:gslideInLeft .3s ease
	}
.gslideOutRight {
	-webkit-animation:gslideOutRight .3s ease;
	animation:gslideOutRight .3s ease
	}
.gslideInRight {
	-webkit-animation:gslideInRight .3s ease;
	animation:gslideInRight .3s ease
	}
.gzoomIn {
	-webkit-animation:gzoomIn .5s ease;
	animation:gzoomIn .5s ease
	}
.gzoomOut {
	-webkit-animation:gzoomOut .5s ease;
	animation:gzoomOut .5s ease
	}
@-webkit-keyframes lightboxLoader {
    0% {
        -webkit-transform:rotate(0);
        transform:rotate(0)
    }
    100% {
        -webkit-transform:rotate(360deg);
        transform:rotate(360deg)
    }
}
@keyframes lightboxLoader {
    0% {
        -webkit-transform:rotate(0);
        transform:rotate(0)
    }
    100% {
        -webkit-transform:rotate(360deg);
        transform:rotate(360deg)
    }
}
@-webkit-keyframes gfadeIn {
    from {
        opacity:0
    }
    to {
        opacity:1
    }
}
@keyframes gfadeIn {
    from {
        opacity:0
    }
    to {
        opacity:1
    }
}
@-webkit-keyframes gfadeOut {
    from {
        opacity:1
    }
    to {
        opacity:0
    }
}
@keyframes gfadeOut {
    from {
        opacity:1
    }
    to {
        opacity:0
    }
}
@-webkit-keyframes gslideInLeft {
    from {
        opacity:0;
        -webkit-transform:translate3d(-60%,0,0);
        transform:translate3d(-60%,0,0)
    }
    to {
        visibility:visible;
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0);
        opacity:1
    }
}
@keyframes gslideInLeft {
    from {
        opacity:0;
        -webkit-transform:translate3d(-60%,0,0);
        transform:translate3d(-60%,0,0)
    }
    to {
        visibility:visible;
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0);
        opacity:1
    }
}
@-webkit-keyframes gslideOutLeft {
    from {
        opacity:1;
        visibility:visible;
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    to {
        -webkit-transform:translate3d(-60%,0,0);
        transform:translate3d(-60%,0,0);
        opacity:0;
        visibility:hidden
    }
}
@keyframes gslideOutLeft {
    from {
        opacity:1;
        visibility:visible;
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    to {
        -webkit-transform:translate3d(-60%,0,0);
        transform:translate3d(-60%,0,0);
        opacity:0;
        visibility:hidden
    }
}
@-webkit-keyframes gslideInRight {
    from {
        opacity:0;
        visibility:visible;
        -webkit-transform:translate3d(60%,0,0);
        transform:translate3d(60%,0,0)
    }
    to {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0);
        opacity:1
    }
}
@keyframes gslideInRight {
    from {
        opacity:0;
        visibility:visible;
        -webkit-transform:translate3d(60%,0,0);
        transform:translate3d(60%,0,0)
    }
    to {
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0);
        opacity:1
    }
}
@-webkit-keyframes gslideOutRight {
    from {
        opacity:1;
        visibility:visible;
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    to {
        -webkit-transform:translate3d(60%,0,0);
        transform:translate3d(60%,0,0);
        opacity:0
    }
}
@keyframes gslideOutRight {
    from {
        opacity:1;
        visibility:visible;
        -webkit-transform:translate3d(0,0,0);
        transform:translate3d(0,0,0)
    }
    to {
        -webkit-transform:translate3d(60%,0,0);
        transform:translate3d(60%,0,0);
        opacity:0
    }
}
@-webkit-keyframes gzoomIn {
    from {
        opacity:0;
        -webkit-transform:scale3d(.3,.3,.3);
        transform:scale3d(.3,.3,.3)
    }
    to {
        opacity:1
    }
}
@keyframes gzoomIn {
    from {
        opacity:0;
        -webkit-transform:scale3d(.3,.3,.3);
        transform:scale3d(.3,.3,.3)
    }
    to {
        opacity:1
    }
}
@-webkit-keyframes gzoomOut {
    from {
        opacity:1
    }
    50% {
        opacity:0;
        -webkit-transform:scale3d(.3,.3,.3);
        transform:scale3d(.3,.3,.3)
    }
    to {
        opacity:0
    }
}
@keyframes gzoomOut {
    from {
        opacity:1
    }
    50% {
        opacity:0;
        -webkit-transform:scale3d(.3,.3,.3);
        transform:scale3d(.3,.3,.3)
    }
    to {
        opacity:0
    }
}
.plyr--full-ui .plyr__control {
	background: #000;
	color: #fff !important;
	border: none;
	}
.plyr--full-ui .plyr__volume--display {
	background: #FF0000 !important;
	}
.plyr--full-ui .plyr__volume input[type='range']::-webkit-slider-runnable-track {
	background-color: #CCCCCC !important;
	}
.plyr--full-ui .plyr__volume input[type='range']::-moz-range-track {
	background-color: #CCCCCC !important;
	}
.plyr--full-ui .plyr__volume input[type='range']::-webkit-slider-thumb,
.plyr--full-ui .plyr__volume input[type='range']::-moz-range-thumb {
	background: #FFFFFF !important;
	border: none !important;
	}
.plyr--full-ui .plyr__progress--played {
	background: #FF0000 !important;
	}
.plyr--full-ui .plyr__progress--buffer {
	background: #CCCCCC !important;
	}
.plyr--full-ui .plyr__progress progress {
	background-color: #CCCCCC !important;
	color: #FF0000 !important; /* 再生済み色（赤） */
	border: none;
	height: 4px;
	}
/* WebKit系（Chrome, Safari） */
.plyr__progress progress::-webkit-progress-bar {
	background-color: #CCCCCC !important;
	}
.plyr__progress progress::-webkit-progress-value {
	background-color: #FF0000 !important;
	}
/* Firefox */
.plyr__progress progress::-moz-progress-bar {
	background-color: #FF0000 !important;
	}
.plyr--full-ui .plyr__progress input[type='range']::-webkit-slider-runnable-track {
	background-color: #CCCCCC !important;
	}
.plyr--full-ui .plyr__progress input[type='range']::-moz-range-track {
	background-color: #CCCCCC !important;
	}
.plyr--full-ui .plyr__progress input[type='range']::-webkit-slider-thumb,
.plyr--full-ui .plyr__progress input[type='range']::-moz-range-thumb {
	background: #FFFFFF !important;
	border: none !important;
	}
.plyr--full-ui .plyr__control--overlaid {
	background: rgba(255, 0, 0, 0.8) !important;
	color: #fff !important;
	}
.plyr--full-ui .plyr__control--overlaid:hover {
	background: rgba(255, 0, 0, 1) !important;
	}
.plyr__progress input[type='range']::-webkit-slider-thumb,
.plyr__volume input[type='range']::-webkit-slider-thumb,
.plyr__progress input[type='range']::-moz-range-thumb,
.plyr__volume input[type='range']::-moz-range-thumb {
	width: 14px;
	height: 14px;
	}
.plyr__menu__container .plyr__control--forward {
	padding-right: 28px;
	background: #000;
	padding-right: calc(var(--plyr-control-spacing, 10px) * .7 * 4);
	}
:root {
	--plyr-color-main: #FF0000 !important;
	}
@media (min-width:769px) {
	.glightbox-container .ginner-container {
	width:auto;
	height:auto;
	-webkit-box-orient:horizontal;
	-webkit-box-direction:normal;
	-ms-flex-direction:row;
	flex-direction:row
	}
	.glightbox-container .ginner-container.desc-top .gslide-description {
	-webkit-box-ordinal-group:1;
	-ms-flex-order:0;
	order:0
	}
	.glightbox-container .ginner-container.desc-top .gslide-image,.glightbox-container .ginner-container.desc-top .gslide-image img {
	-webkit-box-ordinal-group:2;
	-ms-flex-order:1;
	order:1
	}
	.glightbox-container .ginner-container.desc-left .gslide-description {
	-webkit-box-ordinal-group:1;
	-ms-flex-order:0;
	order:0
	}
	.glightbox-container .ginner-container.desc-left .gslide-image {
	-webkit-box-ordinal-group:2;
	-ms-flex-order:1;
	order:1
	}
	.gslide-image img {
	max-height:97vh;
	max-width:100%
	}
	.gslide-inline {
	max-height:95vh
	}
	.glightbox-open {
	height:auto
	}
	.glightbox-clean .gclose,.glightbox-clean .gnext,.glightbox-clean .gprev {
	background-color:rgba(0,0,0,.32)
	}
	.glightbox-clean .gclose:hover,.glightbox-clean .gnext:hover,.glightbox-clean .gprev:hover {
	background-color:rgba(0,0,0,.7)
	}
	.glightbox-clean .gprev {
	top:45%
	}
	.glightbox-clean .gnext {
	top:45%
	}
}
@media (min-width:992px) {
	.glightbox-clean .gclose {
	opacity:.7;
	right:20px
	}
}
.youtube-thumb  {
	position: relative;
	display: inline-block;
	}
.youtube-play  {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 68px;
	height: 48px;
	opacity: 0.8;
	}
.youtube-thumb img  {
	display: block;
	width: 100vw !important;
	height: auto;
	}
.glightbox-clean .gslide-description  {
	background: transparent!important;
	}
.glightbox-counter {
	position: absolute;
	top:0;
	left: 0;
	padding: 0.4em 0.8em;
	font-size: 3.5rem;
	background: rgba(0, 0, 0, 0.5);
	color: white;
	border-radius: 4px;
	z-index: 1000;
	}
.gslide iframe, .gslide video {
	outline: 0 !important;
	border: none;
	min-height: 165px;
	-webkit-overflow-scrolling: touch;
	-ms-touch-action: auto;
	touch-action: auto;
	}
@media screen and (max-width: 768px) {
	.glightbox-mobile .glightbox-container .gslide-description {
	padding: 0!important;
	}
	/*
	.glightbox-container .gslider {
	margin-top: 140px;
	}
	*/
	.glightbox-clean .gprev {
	position: absolute;
	top: 60px;
	left: 0;
	width: 50%;
	height: 60px;
	}
	.glightbox-clean .gnext {
	position: absolute;
	top: 60px;
	right: 0;
	width: 50%;
	height: 60px;
	}
	.glightbox-counter {
	top: 60px;
	left: 35%;
	text-align: center;
	width: 30%;
	padding:0;
	border-radius: 0;
	font-size: 2.5rem;
	background: transparent;
	height: 60px;
	width: 30%;
	}
	glightbox-clean .gdesc-inner {
	padding: 1%!important;
	}
	.glightbox-mobile .glightbox-container .gslide-description{
	padding: 0!important;
	}
	.glightbox-clean .gclose {
	width: 60px!important;
	height: 60px!important;
	top: 0;
	right: 0;
	position: absolute;
	}
	.glightbox-clean .gclose svg {
	width: 50px!important;
	height: auto;
	padding: 5px!important;
	}
	.glightbox-clean .gclose, .glightbox-clean .gnext, .glightbox-clean .gprev {
	background-color: transparent!important;
	border-radius: 0!important;
	}
	.glightbox-clean .gdesc-inner {
	padding: 0 1%;
	}
	.gnext svg {
	position: absolute;
	right: 5vw;
	}
	.gprev svg {
	position: absolute;
	left: 5vw;
	}
	.glightbox-container .gslider {
	height:auto;
	}
}
@media screen and (orientation: landscape) and (max-height: 480px) {
  /* 横向きスマホ用のスタイル */
	.glightbox-container {
	margin-top: 0;
	height: 100dvh;
	width: 100dvw;
	}
	.glightbox-container .gslider {
	width: 80%;
	height: 100%;
	margin: auto;
	}
	.glightbox-container .gslide.current {
	width: 100%;
	}
	.glightbox-container .ginner-container {
    position:relative;
    width:100%;
    display:block;
    -webkit-box-pack:center;
    -ms-flex-pack:center;
    justify-content:center;
    -webkit-box-orient:vertical;
    -webkit-box-direction:normal;
    -ms-flex-direction:column;
    flex-direction:column;
    max-width:100%;
    margin:auto;
    height:100dvh;
	}
	.glightbox-container .gslide {
    width: 100%;
    position: absolute;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: block;
    -webkit-box-align: unset;
    -ms-flex-align: center;
    align-items: unset;
    -webkit-box-pack: unset;
    -ms-flex-pack: unset;
    justify-content: unset;
    opacity: 0;
	}
	.glightbox-clean .gslide-media {
	height: 100dvh;
	}
	.glightbox-container .gslide img,
	.glightbox-container .gslide iframe {
	object-fit: contain;
	max-height: 100dvh!important;
	}
	.glightbox-mobile .glightbox-container .gslide-description {
	position: absolute;
	bottom: 0;
	max-width: 80dvw!important;
	}
	.plyr__video-wrapper .plyr__poster {
    background-size: cover!important;
	}
	.plyr--video {
    background: #000;
    background: var(--plyr-video-background, var(--plyr-video-background, #000));
    overflow: hidden;
    max-height: 100dvh!important;
	}
	.glightbox-counter {
	top:0;
	font-size: 2rem;
	}
	.gslide-description{
	position: absolute;
	bottom: 0;
	max-width: 80dvw!important;
	}
	.gslide-title {
	margin:0;
	padding: 1%;
	background: rgba(0, 0, 0, 0.5);
	}
	.glightbox-clean .gnext,
	.glightbox-clean .gprev	{
	width: 5vw;
	height: 50vh;
	background: rgba(0, 0, 0, 0.5);
	top: 50%;
	margin-top: -10%;
	}
	.gnext svg {
	right: 0;
	top:45%;
	}
	.gprev svg {
	left: 0;
	top:45%;
	}
}
@media screen and (orientation: portrait) {
	.glightbox-close-area {
	position: fixed;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 25vh;
	z-index: 100; /* ← GLightbox より上に */
	}
}