

@import url('https://fonts.googleapis.com/css2?family=Lusitana:wght@400;700&family=Noto+Sans+JP:wght@400;500;600&family=Noto+Serif+JP:wght@400;500;600&display=swap');
.ps-is-video-page {

  --ink:#292b28;

  --muted:#777970;

  --olive:#6e755b;

  --line:#e4e5dc;

  --paper:#f6f6f1;

  --serif:'Noto Serif JP','Yu Mincho',serif;

  --sans:'Noto Sans JP','Yu Gothic',sans-serif

}
.ps-is-video-page * {

  box-sizing:border-box

}
.ps-is-video-page {

  scroll-behavior:smooth;

  scroll-padding-top:30px

}
.ps-is-video-page {

  margin:0;

  background:#fff;

  color:var(--ink);

  font-family:var(--sans);

  font-size:14px;

  font-weight:400;

  line-height:1.9

}
.ps-is-video-page a {

  color:inherit;

  text-decoration:none

}
.ps-is-video-page button {

  font:inherit;

  cursor:pointer;

  color:inherit

}
.ps-is-video-page button,
.ps-is-video-page a {

  -webkit-tap-highlight-color:transparent

}
.ps-is-video-page button:focus-visible,
.ps-is-video-page a:focus-visible {

  outline:2px solid var(--olive);

  outline-offset:5px

}
.ps-is-video-page button {

  border:0;

  background:none

}
.ps-is-video-page p,
.ps-is-video-page h1,
.ps-is-video-page h2,
.ps-is-video-page h3 {

  margin:0

}
.ps-is-video-page img {

  display:block;

  width:100%

}
.ps-is-video-page ::selection {

  background:#dfe3cf

}
.ps-is-video-page .skip {

  position:absolute;

  top:-60px;

  background:white;

  padding:10px;

  z-index:100

}
.ps-is-video-page .skip:focus {

  top:0

}
.ps-is-video-page .comp-bar {

  min-height:43px;

  padding:6px 28px;

  background:#f1f2eb;

  border-bottom:1px solid #e2e4d9;

  display:flex;

  justify-content:space-between;

  align-items:center;

  font-size:11px;

  color:#6f7462;

  gap:15px

}
.ps-is-video-page .comp-bar i {

  display:inline-block;

  width:5px;

  height:5px;

  background:#7d8861;

  border-radius:50%;

  vertical-align:middle;

  margin-right:6px

}
.ps-is-video-page .comp-sub {

  color:#93968a

}
.ps-is-video-page .comp-actions {

  display:flex;

  align-items:center;

  gap:24px

}
.ps-is-video-page .view-switch {

  display:flex;

  gap:2px

}
.ps-is-video-page .view-switch button {

  font-size:11px;

  padding:4px 11px;

  line-height:1.8;

  border:1px solid transparent

}
.ps-is-video-page .view-switch button[aria-pressed=true] {

  background:white;

  border-color:#d6d9c9;

  color:#454c37

}
.ps-is-video-page .notes-link {

  padding:0;

  font-size:11px

}
.ps-is-video-page .notes-link span {

  margin-left:8px

}
.ps-is-video-page .site-header {

  border-bottom:1px solid var(--line)

}
.ps-is-video-page .header-inner {

  max-width:1240px;

  height:101px;

  margin:auto;

  padding:0 36px;

  display:flex;

  align-items:center;

  justify-content:space-between

}
.ps-is-video-page .brand {

  font-family:'Lusitana',Georgia,serif;

  font-size:28px;

  letter-spacing:.8px;

  line-height:1.2;

  white-space:nowrap

}
.ps-is-video-page .brand strong {

  font-weight:700

}
.ps-is-video-page .site-header nav {

  display:flex;

  gap:32px;

  align-items:center;

  font-size:12px;

  letter-spacing:.08em

}
.ps-is-video-page .site-header nav a.current {

  position:relative;

  color:var(--olive)

}
.ps-is-video-page .current:after {

  content:'';

  position:absolute;

  bottom:-18px;

  left:0;

  right:0;

  height:2px;

  background:#929b7a

}
.ps-is-video-page .nav-contact {

  padding:9px 16px;

  border:1px solid #cbcec0

}
.ps-is-video-page .nav-contact span {

  margin-left:18px

}
.ps-is-video-page #menu-toggle {

  display:none

}
.ps-is-video-page.wrap {

  max-width:1224px;

  margin:auto;

  padding:0 36px

}
.ps-is-video-page .breadcrumb {

  display:flex;

  gap:11px;

  color:#8a8b82;

  font-size:10px;

  margin:25px 0 41px;

  letter-spacing:.05em

}
.ps-is-video-page .page-intro {

  display:flex;

  align-items:flex-end;

  justify-content:space-between;

  margin-bottom:41px;

  gap:32px

}
.ps-is-video-page .eyebrow {

  font-family:var(--sans);

  font-size:10px;

  letter-spacing:.19em;

  font-weight:500;

  color:var(--olive);

  line-height:1.5

}
.ps-is-video-page .page-intro .eyebrow {

  margin-bottom:17px

}
.ps-is-video-page h1 {

  font-family:var(--serif);

  font-size:31px;

  font-weight:500;

  letter-spacing:.055em;

  line-height:1.6

}
.ps-is-video-page .course {

  font-size:24px

}
.ps-is-video-page .h1-sub {

  font-size:31px

}
.ps-is-video-page .intro-copy {

  font-size:13px;

  color:#686b63;

  padding-bottom:6px;

  line-height:2

}
.ps-is-video-page .text-link {

  display:inline-flex;

  gap:28px;

  align-items:center;

  font-size:12px;

  color:var(--olive);

  padding-bottom:3px;

  border-bottom:1px solid #b5bca5

}
.ps-is-video-page .intro-copy .text-link {

  margin-top:17px

}
.ps-is-video-page .featured {

  display:grid;

  grid-template-columns:minmax(0,1.85fr) minmax(0,1fr);

  gap:39px;

  padding:0 0 42px;

  border-bottom:1px solid var(--line);

  align-items:center;

  scroll-margin-top:20px

}
.ps-is-video-page .video-frame {

  position:relative;

  width:100%;

  aspect-ratio:16/9;

  background-color:#f2f4f2;

  background-size:cover;

  background-position:center

}
.ps-is-video-page .video-frame iframe {

  width:100%;

  height:100%;

  position:absolute;

  inset:0;

  border:0

}
.ps-is-video-page .film-caption {

  display:flex;

  align-items:center;

  justify-content:space-between;

  font-size:9px;

  letter-spacing:.12em;

  color:#888c80;

  margin-top:12px

}
.ps-is-video-page .film-caption a {

  letter-spacing:0;

  font-size:10px

}
.ps-is-video-page .caption-line {

  padding:0 9px;

  color:#bfc2b4

}
.ps-is-video-page .featured-copy .eyebrow {

  margin-bottom:14px

}
.ps-is-video-page .featured-copy .eyebrow span {

  font-size:10px;

  letter-spacing:.07em;

  margin-left:15px;

  color:#8c8e82

}
.ps-is-video-page .featured-copy h2 {

  font-family:var(--serif);

  font-size:23px;

  font-weight:500;

  line-height:1.65;

  letter-spacing:.015em

}
.ps-is-video-page .feature-description {

  font-size:12px;

  color:#70726a;

  line-height:2.05;

  margin-top:15px

}
.ps-is-video-page .feature-spec {

  margin:20px 0 0;

  font-size:11px

}
.ps-is-video-page .feature-spec>div {

  display:grid;

  grid-template-columns:58px 1fr;

  padding:8px 0;

  border-top:1px solid var(--line)

}
.ps-is-video-page .feature-spec dt {

  color:#8a8d7e;

  font-size:10px

}
.ps-is-video-page .feature-spec dd {

  margin:0;

  line-height:1.95

}
.ps-is-video-page .feature-spec .highlight {

  padding-top:11px

}
.ps-is-video-page .highlight dd {

  color:var(--olive)

}
.ps-is-video-page .feature-bottom {

  display:flex;

  gap:7px;

  align-items:center;

  margin-top:13px

}
.ps-is-video-page .tag {

  display:inline-block;

  font-size:9px;

  line-height:1.6;

  color:#797e6b;

  background:#f1f3eb;

  padding:3px 9px;

  letter-spacing:.06em

}
.ps-is-video-page .duration {

  margin-left:auto;

  font-size:10px;

  color:#959789

}
.ps-is-video-page .samples {

  padding:58px 0 54px

}
.ps-is-video-page .section-heading {

  display:flex;

  justify-content:space-between;

  align-items:flex-end;

  gap:20px

}
.ps-is-video-page .section-heading h2,
.ps-is-video-page .related h2 {

  font-family:var(--serif);

  font-weight:500;

  font-size:26px;

  letter-spacing:.04em;

  margin-top:12px

}
.ps-is-video-page .section-heading>p {

  font-size:11px;

  line-height:1.9;

  color:#85877d;

  text-align:right

}
.ps-is-video-page .collection-toolbar {

  display:flex;

  justify-content:space-between;

  align-items:center;

  margin:29px 0 27px;

  border-bottom:1px solid var(--line)

}
.ps-is-video-page .filters {

  display:flex;

  gap:26px

}
.ps-is-video-page .filters button {

  padding:0 0 12px;

  font-size:11px;

  color:#8b8c83;

  border-bottom:2px solid transparent;

  position:relative;

  top:1px

}
.ps-is-video-page .filters button[aria-pressed=true] {

  color:var(--olive);

  border-color:var(--olive)

}
.ps-is-video-page .count {

  font-size:9px;

  letter-spacing:.15em;

  color:#9a9d90;

  padding-bottom:10px

}
.ps-is-video-page .count span {

  font-size:12px;

  color:#69715a;

  margin-right:5px

}
.ps-is-video-page .sample-grid {

  display:grid;

  grid-template-columns:repeat(3,minmax(0,1fr));

  gap:35px 28px

}
.ps-is-video-page .sample[hidden] {

  display:none

}
.ps-is-video-page .sample-image {

  display:block;

  width:100%;

  position:relative;

  padding:0;

  overflow:hidden;

  aspect-ratio:16/9;

  background:#f3f4f0;

  text-align:left

}
.ps-is-video-page .sample-image img {

  height:100%;

  object-fit:cover;

  transition:transform .5s

}
.ps-is-video-page .sample-image:hover img {

  transform:scale(1.035)

}
.ps-is-video-page .play-circle {

  position:absolute;

  inset:0;

  display:flex;

  justify-content:center;

  align-items:center

}
.ps-is-video-page .play-circle i {

  display:flex;

  justify-content:center;

  align-items:center;

  border:1px solid #fff9;

  background:#ffffffdd;

  color:#555b4b;

  width:42px;

  height:42px;

  border-radius:50%;

  font-style:normal;

  font-size:12px;

  padding-left:2px;

  box-shadow:0 1px 10px #0001;

  transition:background .2s,transform .2s

}
.ps-is-video-page .sample-image:hover .play-circle i {

  background:white;

  transform:scale(1.08)

}
.ps-is-video-page .image-number {

  position:absolute;

  top:10px;

  left:12px;

  font-size:10px;

  color:#fff;

  mix-blend-mode:difference;

  letter-spacing:.1em

}
.ps-is-video-page .legacy-label {

  font-size:9px;

  letter-spacing:.04em;

  color:#8a7f66

}
.ps-is-video-page .sample .legacy-label {

  margin-top:12px;

  line-height:1.5

}
.ps-is-video-page .sample:not(.legacy) .sample-title {

  margin-top:16px

}
.ps-is-video-page .sample-title {

  font-family:var(--serif);

  font-size:17px;

  font-weight:500;

  margin-top:6px;

  line-height:1.6

}
.ps-is-video-page .sample-composition {

  font-size:10px;

  color:#96998c;

  margin-top:7px

}
.ps-is-video-page .sample-description {

  font-size:12px;

  line-height:1.9;

  margin-top:9px;

  color:#73766d

}
.ps-is-video-page .sample-footer {

  display:flex;

  gap:6px;

  align-items:center;

  margin-top:14px

}
.ps-is-video-page .view-label {

  font-size:10px;

  color:var(--olive);

  margin-left:auto

}
.ps-is-video-page .collection-note {

  font-size:10px;

  line-height:1.9;

  color:#949588;

  border-top:1px solid var(--line);

  padding-top:18px;

  margin-top:33px

}
.ps-is-video-page .related {

  border-top:1px solid var(--line);

  padding:48px 0 44px;

  display:grid;

  grid-template-columns:1fr 1.65fr;

  gap:60px

}
.ps-is-video-page .related h2 {

  font-size:23px

}
.ps-is-video-page .related-intro>p:last-child {

  margin-top:16px;

  font-size:12px;

  color:#7f8277

}
.ps-is-video-page .related-links>a {

  display:flex;

  justify-content:space-between;

  align-items:center;

  border-bottom:1px solid var(--line);

  padding:5px 0 21px

}
.ps-is-video-page .related-links>a+ a {

  padding-top:23px

}
.ps-is-video-page .related-number {

  font-family:Georgia,serif;

  font-size:11px;

  color:#9caa82;

  float:left;

  margin:4px 18px 25px 0

}
.ps-is-video-page .related-links h3 {

  font-weight:500;

  font-size:15px

}
.ps-is-video-page .related-links p {

  font-size:11px;

  color:#909487;

  margin-top:4px

}
.ps-is-video-page .arrow {

  color:var(--olive);

  font-size:20px

}
.ps-is-video-page .contact-band {

  background:var(--paper);

  padding:32px 37px;

  display:flex;

  justify-content:space-between;

  align-items:center;

  gap:25px;

  margin:8px 0 66px

}
.ps-is-video-page .contact-band h2 {

  font-family:var(--serif);

  font-weight:500;

  font-size:21px;

  margin-top:11px

}
.ps-is-video-page .contact-band p:last-child {

  font-size:11px;

  color:#8a8d80;

  margin-top:10px

}
.ps-is-video-page .contact-band>a {

  padding:15px 21px;

  background:var(--olive);

  color:white;

  font-size:12px;

  white-space:nowrap;

  display:flex;

  gap:29px

}
.ps-is-video-page .contact-band>a:hover {

  background:#5b634a

}
.ps-is-video-page footer {

  border-top:1px solid var(--line);

  padding:31px 36px 23px

}
.ps-is-video-page .footer-inner,
.ps-is-video-page .footer-bottom {

  max-width:1152px;

  margin:auto;

  display:flex;

  align-items:center

}
.ps-is-video-page .footer-inner .brand {

  font-size:23px

}
.ps-is-video-page .footer-inner p {

  font-size:10px;

  color:#94978a;

  margin-left:25px

}
.ps-is-video-page .back-top {

  font-size:10px;

  margin-left:auto;

  color:#7c826f

}
.ps-is-video-page .footer-bottom {

  justify-content:space-between;

  margin-top:25px;

  color:#a5a79c

}
.ps-is-video-page .footer-bottom small {

  font-size:9px

}
.ps-is-video-page dialog {

  padding:0;

  border:0;

  box-shadow:0 14px 80px #0002;

  color:var(--ink);

  max-height:90dvh

}
.ps-is-video-page dialog::backdrop {

  background:#20251fbe;

  backdrop-filter:blur(5px)

}
.ps-is-video-page .video-dialog {

  width:min(960px,calc(100% - 40px));

  overflow-y:auto

}
.ps-is-video-page .dialog-top {

  display:flex;

  justify-content:space-between;

  align-items:center;

  padding:12px 23px;

  border-bottom:1px solid var(--line)

}
.ps-is-video-page .close-dialog,
.ps-is-video-page .close-notes {

  font-size:27px;

  line-height:1;

  padding:0 4px;

  color:#7c8272

}
.ps-is-video-page .modal-copy {

  padding:21px 30px 27px

}
.ps-is-video-page .modal-copy h2 {

  font-family:var(--serif);

  font-size:23px;

  font-weight:500

}
.ps-is-video-page .modal-copy p {

  font-size:13px;

  color:#787d70;

  margin-top:10px

}
.ps-is-video-page .modal-copy #modal-detail {

  font-size:11px

}
.ps-is-video-page .modal-copy a {

  margin-top:15px

}
.ps-is-video-page .notes-dialog {

  width:min(660px,calc(100% - 32px));

  padding:0 28px 30px

}
.ps-is-video-page .notes-dialog .dialog-top {

  padding-left:0;

  padding-right:0;

  margin-bottom:23px

}
.ps-is-video-page .notes-dialog h2 {

  font-family:var(--serif);

  font-size:23px;

  font-weight:500

}
.ps-is-video-page .notes-dialog h3 {

  margin-top:25px;

  font-size:14px;

  font-weight:500;

  color:var(--olive)

}
.ps-is-video-page .notes-dialog p,
.ps-is-video-page .notes-dialog li {

  font-size:12px;

  color:#757b6b;

  line-height:2

}
.ps-is-video-page .notes-dialog p {

  margin-top:9px

}
.ps-is-video-page .notes-dialog ul {

  padding-left:19px

}
.ps-is-video-page .notes-dialog>a {

  margin-top:25px

}
.ps-is-video-page .cinema .featured {

  grid-template-columns:1fr;

  gap:25px

}
.ps-is-video-page .cinema .featured-copy {

  display:grid;

  grid-template-columns:1fr 1.4fr;

  column-gap:60px

}
.ps-is-video-page .cinema .featured-copy .eyebrow {

  grid-column:1

}
.ps-is-video-page .cinema .featured-copy h2 {

  grid-column:1

}
.ps-is-video-page .cinema .feature-description {

  grid-column:1

}
.ps-is-video-page .cinema .feature-spec {

  grid-column:2;

  grid-row:1/4;

  margin-top:0

}
.ps-is-video-page .cinema .feature-bottom {

  grid-column:2

}
.ps-is-video-page .cinema .hero-player {

  max-height:none

}
.ps-is-video-page .cinema .featured-copy h2 br {

  display:none

}
@media(min-width:1400px) {
.ps-is-video-page .header-inner {

    height:111px
  
}
.ps-is-video-page .breadcrumb {

    margin-bottom:47px
  
}
.ps-is-video-page .page-intro {

    margin-bottom:47px
  
}
.ps-is-video-page .featured {

    gap:45px
  
}
.ps-is-video-page .featured-copy h2 {

    font-size:25px
  
}


}
@media(max-width:1000px) {
.ps-is-video-page .site-header nav {

    gap:20px
  
}
.ps-is-video-page .header-inner {

    padding:0 28px
  
}
.ps-is-video-page .brand {

    font-size:25px
  
}
.ps-is-video-page.wrap {

    padding:0 28px
  
}
.ps-is-video-page .course {

    font-size:20px
  
}
.ps-is-video-page h1,
.ps-is-video-page .h1-sub {

    font-size:27px
  
}
.ps-is-video-page .intro-copy {

    font-size:11px
  
}
.ps-is-video-page .featured {

    gap:25px;

    grid-template-columns:1.6fr 1fr
  
}
.ps-is-video-page .featured-copy h2 {

    font-size:20px
  
}
.ps-is-video-page .feature-description {

    font-size:11px
  
}
.ps-is-video-page .feature-spec {

    margin-top:14px
  
}
.ps-is-video-page .sample-grid {

    gap:31px 21px
  
}
.ps-is-video-page .sample-title {

    font-size:15px
  
}
.ps-is-video-page .sample-description {

    font-size:11px
  
}
.ps-is-video-page .contact-band h2 {

    font-size:18px
  
}
.ps-is-video-page .related {

    gap:30px
  
}


}
@media(max-width:760px) {
.ps-is-video-page .comp-bar {

    padding:8px 18px;

    flex-wrap:wrap;

    gap:5px;

    font-size:10px
  
}
.ps-is-video-page .comp-sub {

    display:none
  
}
.ps-is-video-page .comp-actions {

    gap:12px
  
}
.ps-is-video-page .view-switch button {

    font-size:10px;

    padding:3px 7px
  
}
.ps-is-video-page .notes-link {

    font-size:10px
  
}
.ps-is-video-page .header-inner {

    height:77px;

    padding:0 22px
  
}
.ps-is-video-page .brand {

    font-size:25px
  
}
.ps-is-video-page .site-header .header-inner nav {

    display:none
  
}
.ps-is-video-page #menu-toggle {

    display:flex;

    width:32px;

    height:32px;

    flex-direction:column;

    justify-content:center;

    gap:6px;

    padding:5px
  
}
.ps-is-video-page #menu-toggle span {

    width:22px;

    height:1px;

    background:var(--ink)
  
}
.ps-is-video-page .site-header #mobile-menu {

    padding:14px 22px 20px;

    display:flex;

    gap:13px;

    flex-direction:column;

    align-items:flex-start;

    font-size:12px;

    background:var(--paper)
  
}
.ps-is-video-page #mobile-menu[hidden] {

    display:none
  
}
.ps-is-video-page.wrap {

    padding:0 22px
  
}
.ps-is-video-page .breadcrumb {

    font-size:9px;

    gap:7px;

    margin:18px 0 32px
  
}
.ps-is-video-page .page-intro {

    display:block;

    margin-bottom:29px
  
}
.ps-is-video-page .page-intro .eyebrow {

    font-size:9px;

    margin-bottom:13px
  
}
.ps-is-video-page h1,
.ps-is-video-page .h1-sub {

    font-size:25px;

    line-height:1.65
  
}
.ps-is-video-page .course {

    font-size:18px
  
}
.ps-is-video-page .intro-copy {

    padding:0;

    font-size:12px;

    margin-top:19px
  
}
.ps-is-video-page .intro-copy .text-link {

    margin-top:14px;

    font-size:11px
  
}
.ps-is-video-page .desktop {

    display:none
  
}
.ps-is-video-page .featured {

    display:block;

    padding-bottom:30px
  
}
.ps-is-video-page .film-caption {

    font-size:8px
  
}
.ps-is-video-page .film-caption a {

    font-size:9px
  
}
.ps-is-video-page .featured-copy {

    margin-top:25px
  
}
.ps-is-video-page .featured-copy .eyebrow {

    font-size:9px;

    margin-bottom:12px
  
}
.ps-is-video-page .featured-copy h2 {

    font-size:22px;

    line-height:1.7
  
}
.ps-is-video-page .feature-description {

    font-size:12px;

    margin-top:12px;

    line-height:2
  
}
.ps-is-video-page .feature-spec {

    margin-top:20px;

    font-size:12px
  
}
.ps-is-video-page .feature-spec dt {

    font-size:11px
  
}
.ps-is-video-page .feature-spec>div {

    grid-template-columns:65px 1fr;

    padding:9px 0
  
}
.ps-is-video-page .feature-bottom {

    margin-top:14px
  
}
.ps-is-video-page .tag {

    font-size:10px
  
}
.ps-is-video-page .duration {

    font-size:10px
  
}
.ps-is-video-page .samples {

    padding:37px 0 34px
  
}
.ps-is-video-page .section-heading {

    display:block
  
}
.ps-is-video-page .section-heading h2 {

    font-size:23px;

    margin-top:11px
  
}
.ps-is-video-page .section-heading>p {

    font-size:11px;

    text-align:left;

    margin-top:16px
  
}
.ps-is-video-page .section-heading>p br {

    display:none
  
}
.ps-is-video-page .collection-toolbar {

    margin:23px 0 24px
  
}
.ps-is-video-page .filters {

    gap:20px
  
}
.ps-is-video-page .filters button {

    font-size:10px;

    padding-bottom:11px
  
}
.ps-is-video-page .count {

    font-size:8px;

    letter-spacing:.06em;

    white-space:nowrap;

    margin-left:12px
  
}
.ps-is-video-page .count span {

    font-size:10px;

    margin-right:3px
  
}
.ps-is-video-page .sample-grid {

    grid-template-columns:1fr;

    gap:30px
  
}
.ps-is-video-page .sample-image {

    aspect-ratio:16/9
  
}
.ps-is-video-page .sample-title {

    font-size:18px
  
}
.ps-is-video-page .sample-composition {

    font-size:11px;

    margin-top:6px
  
}
.ps-is-video-page .sample-description {

    font-size:12px
  
}
.ps-is-video-page .sample-footer {

    margin-top:12px
  
}
.ps-is-video-page .view-label {

    font-size:11px
  
}
.ps-is-video-page .sample .legacy-label {

    font-size:10px
  
}
.ps-is-video-page .collection-note {

    margin-top:25px;

    font-size:10px;

    line-height:2
  
}
.ps-is-video-page .related {

    display:block;

    padding:34px 0
  
}
.ps-is-video-page .related h2 {

    font-size:23px
  
}
.ps-is-video-page .related-intro>p:last-child {

    margin-top:11px
  
}
.ps-is-video-page .related-intro>p:last-child br {

    display:none
  
}
.ps-is-video-page .related-links {

    margin-top:24px
  
}
.ps-is-video-page .related-links h3 {

    font-size:14px
  
}
.ps-is-video-page .related-links p {

    font-size:10px
  
}
.ps-is-video-page .contact-band {

    display:block;

    margin:0 0 37px;

    padding:25px 23px
  
}
.ps-is-video-page .contact-band h2 {

    font-size:19px;

    line-height:1.8
  
}
.ps-is-video-page .contact-band p:last-child {

    font-size:11px;

    line-height:2
  
}
.ps-is-video-page .contact-band>a {

    margin-top:22px;

    justify-content:space-between;

    padding:13px 19px
  
}
.ps-is-video-page footer {

    padding:28px 22px 20px
  
}
.ps-is-video-page .footer-inner {

    flex-wrap:wrap;

    gap:17px
  
}
.ps-is-video-page .footer-inner .brand {

    font-size:22px
  
}
.ps-is-video-page .footer-inner p {

    display:none
  
}
.ps-is-video-page .footer-bottom {

    display:block;

    margin-top:20px
  
}
.ps-is-video-page .footer-bottom small {

    display:block;

    font-size:8px;

    margin-top:7px
  
}
.ps-is-video-page .video-dialog {

    width:calc(100% - 20px);

    max-height:92dvh
  
}
.ps-is-video-page .modal-copy {

    padding:18px 21px 24px
  
}
.ps-is-video-page .modal-copy h2 {

    font-size:20px
  
}
.ps-is-video-page .modal-copy p {

    font-size:12px
  
}
.ps-is-video-page .notes-dialog {

    padding:0 22px 25px
  
}
.ps-is-video-page .notes-dialog h2 {

    font-size:20px
  
}
.ps-is-video-page .cinema .featured-copy {

    display:block;

    margin-top:25px
  
}
.ps-is-video-page .cinema .feature-spec {

    margin-top:20px
  
}
.ps-is-video-page .cinema .featured-copy h2 br {

    display:block
  
}


}
@media(prefers-reduced-motion:reduce) {
.ps-is-video-page {

    scroll-behavior:auto
  
}
.ps-is-video-page * {

    transition:none!important
  
}


}
.ps-is-video-page [hidden] {

  display:none!important

}
.ps-is-video-page .video-frame {

  --video-ratio: 16 / 9;

  --video-proportion: 1.77777778;

  aspect-ratio: var(--video-ratio);

  background-size: contain;

  background-repeat: no-repeat;


}
.ps-is-video-page .video-frame[data-aspect-ratio="1:1"] {

  --video-ratio: 1 / 1;

  --video-proportion: 1;


}
.ps-is-video-page .video-frame[data-aspect-ratio="9:16"] {

  --video-ratio: 9 / 16;

  --video-proportion: 0.5625;


}
.ps-is-video-page .featured-media {
 min-width: 0;
 
}
.ps-is-video-page .hero-player {

  max-width: calc(68vh * var(--video-proportion));

  max-width: calc(68svh * var(--video-proportion));

  margin-inline: auto;


}
.ps-is-video-page .sample-image {

  aspect-ratio: 16 / 9;

  background: #f3f4f0;


}
.ps-is-video-page .sample-image img {

  width: 100%;

  height: 100%;

  object-fit: contain;


}
.ps-is-video-page .sample-image:hover img {
 transform: none;
 
}
.ps-is-video-page .ratio-badge {

  position: absolute;

  right: 10px;

  bottom: 10px;

  display: inline-flex;

  align-items: center;

  gap: 6px;

  padding: 3px 7px;

  background: #fffffff0;

  border: 1px solid #e1e4d8;

  color: #626a54;

  font-size: 9px;

  line-height: 1.5;

  pointer-events: none;


}
.ps-is-video-page .ratio-badge::before {

  content: "";

  display: inline-block;

  width: 12px;

  height: 7px;

  border: 1px solid currentColor;


}
.ps-is-video-page .ratio-badge[data-shape="square"]::before {
 width: 8px;
 height: 8px;
 
}
.ps-is-video-page .ratio-badge[data-shape="portrait"]::before {
 width: 6px;
 height: 10px;
 
}
.ps-is-video-page .feature-ratio {

  position: static;

  margin-left: 9px;

  vertical-align: middle;

  letter-spacing: 0;


}
.ps-is-video-page .video-dialog {

  max-height: 90vh;

  max-height: 90dvh;

  overflow: auto;


}
.ps-is-video-page .video-dialog .dialog-top {

  position: sticky;

  top: 0;

  background: white;

  z-index: 2;


}
.ps-is-video-page .modal-layout {
 display: grid;
 grid-template-columns: minmax(0, 1fr);
 
}
.ps-is-video-page .modal-stage {

  min-width: 0;

  padding: 18px 20px 0;

  background: #f5f6f2;


}
.ps-is-video-page #modal-player {

  max-width: calc(58vh * var(--video-proportion));

  max-width: calc(58svh * var(--video-proportion));

  margin-inline: auto;


}
.ps-is-video-page .modal-stage .ratio-badge {

  position: static;

  display: flex;

  width: fit-content;

  margin: 11px auto 15px;


}
.ps-is-video-page .video-dialog[data-video-shape="portrait"] .modal-layout,
.ps-is-video-page .video-dialog[data-video-shape="square"] .modal-layout {

  grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr);

  align-items: center;


}
.ps-is-video-page .video-dialog[data-video-shape="portrait"] #modal-player,
.ps-is-video-page .video-dialog[data-video-shape="square"] #modal-player {

  max-width: calc(74vh * var(--video-proportion));

  max-width: calc(74svh * var(--video-proportion));


}
.ps-is-video-page .modal-copy {
 min-width: 0;
 overflow-wrap: anywhere;
 
}
.ps-is-video-page .video-dialog[data-video-shape="portrait"] .modal-copy,
.ps-is-video-page .video-dialog[data-video-shape="square"] .modal-copy {

  max-height: 74vh;

  max-height: 74svh;

  overflow-y: auto;


}
@media (max-width: 760px) {
.ps-is-video-page .ratio-badge {
 font-size: 10px;
 
}
.ps-is-video-page .video-dialog[data-video-shape] .modal-layout {

    grid-template-columns: minmax(0, 1fr);

  
}
.ps-is-video-page .video-dialog {
 width: calc(100% - 20px);
 max-height: 92dvh;
 
}
.ps-is-video-page .modal-stage {
 padding: 14px 14px 0;
 
}
.ps-is-video-page .video-dialog[data-video-shape] .modal-copy {

    max-height: none;

    overflow: visible;

  
}
.ps-is-video-page .video-dialog[data-video-shape] #modal-player {

    max-width: calc(55vh * var(--video-proportion));

    max-width: calc(55svh * var(--video-proportion));

  
}


}
@media (max-width: 380px) {
.ps-is-video-page .filters {
 gap: 12px;
 flex-wrap: wrap;
 
}
.ps-is-video-page .collection-toolbar {
 align-items: flex-end;
 gap: 8px;
 
}
.ps-is-video-page .count {
 margin-left: 0;
 
}


}



/* WordPressの標準ブロックとページ内の操作を合わせるための調整 */
.ps-is-video-page, .ps-is-video-page * { box-sizing: border-box; }
.ps-is-video-page .wp-block-group { margin-block: 0; }
.ps-is-video-page .sample-image { margin: 0; width: 100%; position: relative; }
.ps-is-video-page .sample-image a { display: block; width: 100%; height: 100%; }
.ps-is-video-page .sample-image img { width: 100%; height: 100%; object-fit: contain; }
.ps-is-video-page .sample-image .play-circle { pointer-events: none; }
.ps-is-video-page .intro-action { margin-top: 17px; }
.ps-is-video-page .related-item { border-bottom: 1px solid var(--line); padding: 5px 0 21px; }
.ps-is-video-page .related-item + .related-item { padding-top: 23px; }
.ps-is-video-page .related-item .arrow { margin-left: 12px; }
.ps-is-video-page .contact-band > .wp-block-buttons { flex-shrink: 0; }
.ps-is-video-page .contact-band .wp-block-button__link {
  border: 0; border-radius: 0; background: var(--olive); color: white;
  font-size: 12px; padding: 15px 21px; display: flex; gap: 29px; line-height: 1.9;
}
.ps-is-video-page .contact-band .wp-block-button__link:hover { background: #5b634a; }
@media(max-width:760px) {
 .ps-is-video-page .contact-band > .wp-block-buttons { margin-top: 22px; display: block; }
 .ps-is-video-page .contact-band .wp-block-button { display: block; width: 100%; }
 .ps-is-video-page .contact-band .wp-block-button__link { justify-content: space-between; }
}
/* 編集画面ではJavaScriptなしでも動画リンクと説明を編集できます。 */


.ps-is-video-page .video-frame video { display:block; width:100%; height:100%; position:absolute; inset:0; object-fit:contain; }
.ps-is-video-page .psis-thumbnail-placeholder { display:flex; align-items:center; justify-content:center; width:100%; height:100%; padding:20px; color:var(--muted); font-size:12px; text-align:center; }
.ps-is-video-page .psis-modal-player { max-width:calc(58svh * var(--video-proportion,1.7777778)); margin-inline:auto; }
.ps-is-video-page .video-dialog[data-video-shape="portrait"] .psis-modal-player,
.ps-is-video-page .video-dialog[data-video-shape="square"] .psis-modal-player { max-width:calc(74svh * var(--video-proportion,1.7777778)); }
@media(max-width:760px){.ps-is-video-page .video-dialog[data-video-shape] .psis-modal-player{max-width:calc(55svh * var(--video-proportion,1.7777778));}}

/* ジュエリー撮影ページと同じテーマの文字サイズを使う（1.0.2）。 */
.ps-is-video-page {
  --psis-font-body: var(--wp--preset--font-size--fluid-16-px, clamp(0.9375rem, 0.8367rem + 0.21vw, 1rem));
  --psis-font-h1: var(--wp--preset--font-size--fluid-24-px, clamp(1.375rem, 1.1734rem + 0.42vw, 1.5rem));
  --psis-font-h2: var(--wp--preset--font-size--fluid-22-px, clamp(1.25rem, 1.0484rem + 0.42vw, 1.375rem));
  font-size: var(--psis-font-body);
}
.ps-is-video-page h1,
.ps-is-video-page .h1-sub {
  font-size: var(--psis-font-h1);
}
.ps-is-video-page .course { font-size: inherit; }
.ps-is-video-page .featured-copy h2,
.ps-is-video-page .section-heading h2,
.ps-is-video-page .related h2,
.ps-is-video-page .contact-band h2,
.ps-is-video-page .modal-copy h2,
.ps-is-video-page .notes-dialog h2 {
  font-size: var(--psis-font-h2);
}
.ps-is-video-page .sample-title,
.ps-is-video-page .related-links h3,
.ps-is-video-page .notes-dialog h3 {
  font-size: 1.25rem;
}
.ps-is-video-page .intro-copy,
.ps-is-video-page .intro-copy .text-link,
.ps-is-video-page .feature-description,
.ps-is-video-page .feature-spec,
.ps-is-video-page .feature-spec dt,
.ps-is-video-page .section-heading > p,
.ps-is-video-page .sample-description,
.ps-is-video-page .collection-note,
.ps-is-video-page .related-intro > p:last-child,
.ps-is-video-page .related-links p,
.ps-is-video-page .contact-band p:last-child,
.ps-is-video-page .contact-band .wp-block-button__link,
.ps-is-video-page .modal-copy p,
.ps-is-video-page .notes-dialog p,
.ps-is-video-page .notes-dialog li {
  font-size: var(--psis-font-body);
}
.ps-is-video-page .eyebrow,
.ps-is-video-page .page-intro .eyebrow,
.ps-is-video-page .featured-copy .eyebrow {
  font-size: 0.8em;
}
.ps-is-video-page .breadcrumb,
.ps-is-video-page .film-caption,
.ps-is-video-page .film-caption a,
.ps-is-video-page .feature-bottom .tag,
.ps-is-video-page .tag,
.ps-is-video-page .duration,
.ps-is-video-page .sample-composition,
.ps-is-video-page .view-label,
.ps-is-video-page .sample .legacy-label,
.ps-is-video-page .related-links .related-number,
.ps-is-video-page .count,
.ps-is-video-page .psis-thumbnail-placeholder {
  font-size: 0.8125rem;
}
.ps-is-video-page .filters button,
.ps-is-video-page .ratio-badge {
  font-size: 0.75rem;
}
.ps-is-video-page .count span { font-size: 0.875rem; }
.ps-is-video-page .arrow { font-size: 1.25rem; }
/* 大きくした説明文が、狭い画面や縦長動画の隣でも折り返されるようにする。 */
.ps-is-video-page .featured-copy,
.ps-is-video-page .feature-spec dd,
.ps-is-video-page .sample,
.ps-is-video-page .related-links,
.ps-is-video-page .contact-band > .wp-block-group {
  min-width: 0;
  overflow-wrap: anywhere;
}
.ps-is-video-page .film-caption { flex-wrap: wrap; gap: 0.5rem; }
@media (max-width: 760px) {
  .ps-is-video-page .breadcrumb { flex-wrap: wrap; }
  .ps-is-video-page .related-number { margin-right: 0.875rem; }
}

/* 03 / CAPTURE & FINISH の本文と、文字サイズ・行間・字間をそろえる（1.0.3）。 */
.ps-is-video-page {
  font-size: inherit;
  line-height: 1.95;
  letter-spacing: normal;
}
.ps-is-video-page .intro-copy,
.ps-is-video-page .feature-description,
.ps-is-video-page .feature-spec,
.ps-is-video-page .feature-spec dt,
.ps-is-video-page .section-heading > p,
.ps-is-video-page .sample-description,
.ps-is-video-page .collection-note,
.ps-is-video-page .related-intro > p:last-child,
.ps-is-video-page .related-links p,
.ps-is-video-page .contact-band p:last-child,
.ps-is-video-page .modal-copy p,
.ps-is-video-page .notes-dialog p,
.ps-is-video-page .notes-dialog li {
  font-size: inherit;
  line-height: 1.95;
  letter-spacing: normal;
}


/* サンプル一覧へのリンクを、背景色のあるボタンとして表示する（1.0.4）。 */
.ps-is-video-page .intro-action .text-link {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 1.25rem;
  min-height: 44px;
  max-width: 100%;
  margin-top: 0;
  padding: 0.75rem 1.25rem;
  border: 1px solid var(--olive);
  border-radius: 2px;
  background: var(--olive);
  color: #fff;
  font-size: inherit;
  line-height: 1.6;
  text-decoration: none;
}
.ps-is-video-page .intro-action .text-link:hover {
  border-color: #5b634a;
  background: #5b634a;
}
.ps-is-video-page .intro-action .text-link:focus-visible {
  outline: 2px solid var(--olive);
  outline-offset: 4px;
}

/* 冒頭をタイトル・説明文・ボタンの順に左揃えで配置する（1.0.6）。 */
.ps-is-video-page.wrap {
  padding-top: clamp(2rem, 4vw, 3.5rem);
}
.ps-is-video-page .page-intro {
  --psis-intro-label-gap: 1.0625rem;
  display: block;
  margin-bottom: clamp(2rem, 3vw, 3rem);
}
.ps-is-video-page .page-intro > .wp-block-group {
  min-width: 0;
}
.ps-is-video-page .page-intro .eyebrow {
  font-size: 0.8em;
  line-height: 1.5;
  margin-bottom: var(--psis-intro-label-gap);
}
.ps-is-video-page .intro-copy {
  max-width: 50.625rem;
  padding: 0;
  margin-top: 1.25rem;
  text-align: left;
}
@media (max-width: 760px) {
  .ps-is-video-page .page-intro {
    --psis-intro-label-gap: 0.8125rem;
  }
  .ps-is-video-page .intro-copy {
    margin-top: 1rem;
  }
}

/* 操作案内を見出しの下に置き、PCでは一行で読める配置にする。 */
.ps-is-video-page .section-heading {
  display: block;
}
.ps-is-video-page .section-heading > p {
  margin-top: 0.75rem;
  text-align: left;
  white-space: normal;
}
.ps-is-video-page .section-heading > p br {
  display: none;
}
