/* ===== RESET ===== */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
@font-face {
	font-family: Futura;
	src: url(../font/futura.otf) format('opentype');
}


html {
  font-size: 1vw;
}

@media (max-width: 859px) {
  html {
    font-size: 3.8vw;
  }
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
	border-radius: 0;
	-webkit-box-sizing: content-box;
	-webkit-appearance: button;
	appearance: button;
	border: none;
	box-sizing: border-box;
	cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
	display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
	outline-offset: -2px;
}


/* ■PC
 * --------------------------------------- */
@media only screen and (min-width: 860px) {
body {
	line-height: 1.5em;
}
.pcbr::before {
	content: "\A" ;
	white-space: pre ;
}
.sp {
	display: none;
}
.box img {
	max-width: 780px;
}
#page-top {
	right: 10px;
	bottom: 60px;
}
}
/* //PC */
/* SP */
@media only screen and (max-width: 859px) {
body {
	font-size: 3.6vw;
	line-height: 1.5em;
}
.spbr::before {
	content: "\A" ;
	white-space: pre ;
}
.pc {
	display: none;
}
#page-top {
	right: 12px;
	bottom: 120px;
}
}
/* //SP */



/* ===== BASE ===== */
body {
  font-family: "Helvetica Neue", Arial, sans-serif;
  background: #000;
  color: #fff;
  line-height: 1.8;
}

a {
  color: #fff;
  text-decoration: none;
  transition: 0.3s;
}

a:hover {
  color: #f7f7f7;
}

/* ===== HEADER ===== */
.header {
  position: fixed;
  top: 0;
  width: 100%;
  height: 5vw;
  background: rgba(0,0,0,0.85);
  backdrop-filter: blur(10px);
  z-index: 1000;
}

.header-inner {
  max-width: 90vw;
  height: 100%;
  margin: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
}

.logo a {
  font-size: 1.5vw;
  letter-spacing: 0.3em;
}

.logo img ,
.logo object {
  width: 18vw;
  max-width: 360px;
  min-width: 160px;
  margin-top: 1vw;
}

.global-nav {
  display: flex;
  gap: 2vw;
}

.global-nav a {
  font-size: clamp(12px, 0.9vw, 32px);
  line-height: 1.2em;
  letter-spacing: 0.2em;
}

.lang {
    padding: 0;
  font-size: clamp(12px, 0.8vw, 32px);
    transform: translateY(-0.17em);
}
.lang i {
  margin-right: 0.1em;
  font-size: 1.8em;
    transform: translateY(0.17em);
}

/* SP */
@media only screen and (max-width: 859px) {
.logo img ,
.logo object {
  width: 50vw;
  margin-top: 2.0vw;
}
.lang {
    transform: translateY(0.05em);
}
.lang i {
  font-size: 1.2em;
    transform: translateY(0.06em);
}
}
/* //SP */

/* ===== MOBILE NAV ===== */
.nav-toggle {
  display: none;
  width: 6.0vw;
  cursor: pointer;
}

.nav-toggle span {
  display: block;
  height: 4px;
  background: #fff;
  margin: 1.0vw 0;
}

@media (max-width: 859px) {
  .header {
    height: 16vw;
  }

  .global-nav {
    position: fixed;
    inset: 0;
    z-index: 900;
    display: block;
    width: 60vw;
    height: 100vh;
    padding-top: 20vh;
    background: rgba(0,0,0,0.8);
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transform: translateX(200%);
    transition: 0.4s;
  }

  .global-nav.active {
    transform: translateX(67%);
  }

  .global-nav a {
    display: block;
    margin: 2vw 0;
    padding: 2vw 6vw;
    font-size: 4vw;
  }

  .nav-toggle {
    position: relative;
    z-index: 920;
    display: block;
  }
}

/* ===== MAIN ===== */
.main {
  padding-top: 5vw;
  text-align: center;
}

@media (max-width: 859px) {
  .main {
    padding-top: 16vw;
  }
}

/* ===== FOOTER ===== */
.footer {
  background: #0a0a0a;
  padding: 5vw 0;
}

.footer-inner {
  max-width: 90vw;
  margin: auto;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 3vw;
}
@media (max-width: 859px) {
.footer {
  padding: 15vw 0;
}
.footer-inner {
  max-width: 100vw;
}
}

.footer-logo {
  font-size: 1.2vw;
  letter-spacing: 0.3em;
}
.footer-logo img ,
.footer-logo object {
  width: 18vw;
  max-width: 360px;
  min-width: 200px;
}

.footer-nav a ,
.footer-sns a {
  display: block;
  font-size: clamp(12px, 0.8vw, 32px);
  margin-bottom: 0.8vw;
  letter-spacing: 0.1em;
}

@media (max-width: 859px) {
  .footer-inner {
    display: block;
    text-align: center;
  }

  .footer-logo {
    margin-bottom: 6vw;
    font-size: 5vw;
  }

.footer-nav ,
.footer-sns {
    margin-bottom: 8vw;
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-top: solid 1px #555;
  }

  .footer-nav a,
  .footer-sns a {
    margin-bottom: 0;
    padding: 3vw 0;
    font-size: clamp(13px, 3.6vw, 32px);
    border-bottom: solid 1px #555;
  }

  .footer-nav a:nth-child(2n+1),
  .footer-sns a:nth-child(2n+1) {
    border-right: solid 1px #555;
  }
}

.footer-info {
  max-width: 90vw;
  margin: auto;
  padding-top: 3vw;
  text-align: center;
  letter-spacing: 0.05em;
}

.footer-name {
  margin-bottom: 0.5em;
  font-size: 1.5em;
  letter-spacing: 0.3em;
}

.footer-info p {
  margin-bottom: 0.5em;
  line-height: 1.3em;
  letter-spacing: 0.1em;
  color: #aaa;
}

p.footer-phone a ,
.footer-info p.footer-phone a {
  font-size: 1.1em;
  letter-spacing: 0.1em;
}

.footer-info p span {
  display: inline-block;
  margin-top: 0.5em;
  color: #fff;
}


.copyright {
  max-width: 90vw;
  margin: 2.5em auto 0;
  text-align: center;
  font-size: 0.9em;
  color: #888;
}

/* ===== HERO ===== */
.hero {
  position: relative;
  height: 56.3vw;
  overflow: hidden;
}
@media (max-width: 859px) {
.hero {
  height: 178.3vw;
  }
}

.hero video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.hero::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(0,0,0,0.55);
}

.hero-content {
  position: absolute;
  inset: 0;
  z-index: 2;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  padding-bottom: 4vw;
}

.hero-content h1 {
  font-size: 3.6vw;
  line-height: 1.2em;
  letter-spacing: 0.24em;
}

.hero-content p {
  width: 88vw;
  margin-top: 1.6vw;
  font-size: 1.1vw;
  line-height: 1.3em;
  color: #ccc;
}
.hero-content p.hero_sub {
  font-size: 1.12em;
  letter-spacing: 0.1em;
  color: #eee;
}

@media (max-width: 859px) {
  .hero-content {
    padding-bottom: 12vw;
  }
  .hero-content h1 {
    font-size: 8vw;
  }
.lang-jp .hero-content h1 {
  padding: 0 12vw;
  letter-spacing: 0.2em;
  }

  .hero-content p {
    margin-top: 4vw;
    font-size: 4vw;
  }

}

/* ===== BUTTON ===== */
button ,
a.button ,
input[type="submit"] ,
.btn {
  display: inline-block;
  width: 32vw;
  max-width: 480px;
  margin-top: 1em;
  margin-bottom: 1em;
  padding: 1.0em 0;
  font-size: 1.1vw;
  line-height: 1.0em;
  letter-spacing: 0.3em;
  color: #fff;
  background: #222;
  border: 1px solid #aaa;
}
.hero-btn .btn {
  background: rgba(0,0,0,0.2);
}
@media screen and (max-width: 860px) {
button ,
a.button ,
input[type="submit"] ,
.btn {
  width: 80vw;
  font-size: 4.0vw;
  letter-spacing: 0.15em;
  }
.hero-btn .btn {
  width: 44vw;
  }
}

button:hover ,
a.button:hover ,
input[type="submit"]:hover ,
.btn:hover {
  color: #000;
  background: #f7f7f7;
  border: 1px solid #f7f7f7;
}

.hero-btn {
  margin-top: 3vw;
  display: flex;
  gap: 2vw;
}

/* ===== SECTION COMMON ===== */
.section {
	position: relative;
  padding: 4vw 0;
}
.section:nth-of-type(1) {
  padding: 0 0 8vw;
}

.section-text {
  max-width: 60vw;
  margin: auto;
  text-align: center;
  font-size: 1vw;
  color: #bbb;
}


/* ===== MOBILE ===== */
@media (max-width: 859px) {
  .btn {
    font-size: 4vw;
    padding: 4vw;
  }

  .section-text {
    font-size: 4vw;
    max-width: 90vw;
    text-align: left;
  }

}


/* ===== ACCESS ===== */
.access-inner {
  max-width: 80vw;
  margin: 0 auto 2vw;
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 3vw;
}

.access-map iframe {
  width: 100%;
  height: 20vw;
  border: none;
  filter: grayscale(100%) invert(92%);
}

.access-text p {
  letter-spacing: 0.1em;
  color: #aaa;
}

@media (max-width: 859px) {

  .access-text {
    width: 80vw;
    margin: 0 auto;
  }

  .access-inner {
    max-width: 100vw;
    margin: 0 auto 8vw;
    grid-template-columns: 1fr;
  }

  .access-map iframe {
    height: 60vw;
  }

}


/* ===== page-title ===== */
.page-title {
  margin: 0 auto 1em;
  padding: 2.4em 0 2.0em;
  text-align: center;
  background: #1b1b1b;
}
@media (max-width: 859px) {
.page-title {
  padding: 1.0em 0.6em;
}
}

/* ===== h1 ===== */
h1 {
  font-size: 2.4vw;
  line-height: 1.3em;
  letter-spacing: 0.22em;
  font-family: "Helvetica Neue", Arial, sans-serif;
}

@media (max-width: 859px) {
h1 {
  font-size: 7.0vw;
  letter-spacing: 0.17em;
}
}

p.page_sub {
  max-width: 840px;
  margin: 0 auto;
  padding: 0 0.6em;
  text-align: center;
  font-size: 0.9em;
  line-height: 1.3em;
  color: #aaa;
}
@media (max-width: 859px) {
p.page_sub {
  font-size: 0.8em;
}
}


.heroimg {
  max-width: 100%;
}



/* ===== section-title ===== */
.section-title {
  margin: 0 auto 1em;
  padding: 1.6em 0;
  text-align: center;
  background: #2d2d2d;
}
@media (max-width: 859px) {
.section-title {
  padding: 1.0em 0.6em;
}
}

/* ===== h2 ===== */
h2 {
  font-size: 2.0vw;
  line-height: 1.3em;
  letter-spacing: 0.22em;
  font-family: "Helvetica Neue", Arial, sans-serif;
}
@media (max-width: 859px) {
h2 {
  font-size: 6.4vw;
  letter-spacing: 0.17em;
}
}

/* ===== h3 ===== */
h3 {
  margin: 0 auto 0.6em;
  padding: 0;
  text-align: center;
  font-size: 1.5vw;
  line-height: 1.4em;
  letter-spacing: 0.15em;
  font-family: "Helvetica Neue", Arial, sans-serif;
}
.newsdetail h3 {
  text-align: left;
}
.access-text h3 {
  margin: 0 auto 0.6em;
  font-size: 1.2vw;
}
h3.qaques {
  text-align: left;
}
@media (max-width: 859px) {
h3 {
  font-size: 5.2vw;
}
.access-text h3 {
  font-size: 4.4vw;
}
}

/* ===== h4 ===== */
h4 {
  margin: 0 auto 1em;
  padding: 0 0;
  text-align: center;
  font-size: 1.2vw;
  line-height: 1.3em;
  letter-spacing: 0.1em;
  font-family: "Helvetica Neue", Arial, sans-serif;
}
@media (max-width: 859px) {
h4 {
  font-size: 4.5vw;
  letter-spacing: 0.07em;
}
}

/*box
 * --------------------------------------- */
.box {
	position: relative;
	overflow: hidden;
	width: 100%;
	max-width: 860px;
	margin: 0 auto 4.0em;
	padding: 0 1.2em 0;
	overflow: hidden;
}
.box#carbox {
	margin: 2.0em auto 1.0em;
}
@media (max-width: 859px) {
.box p {
	text-align: left;
}
}

.txt {
	text-align: left;
}
ol ,
ul {
	width: 100%;
	margin: 0 auto;
	text-align: left;
}
ol {
	padding: 0.4em 1.0em 0.4em 1.6em;
}
ul {
	padding: 0.4em 1.0em 0.4em 2.8em;
}
ol ul {
	padding: 0.4em 0.0em 0.4em 0.2em;
}
ol li ,
ul li {
	margin: 0px 0px;
	padding: 0.2em 0 1.0em 0.0em;
	line-height: 1.6em;
}
ul li:last-child ,
ol li:last-child {
	padding: 0.4em 0 0em 0.0em;
}

dl {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}
dt {
	margin: 0 auto;
	padding: 0.2em 0 0.2em;
	font-size: 1.06em;
	line-height: 1.3em;
	color: #fff;
}
dd {
	margin: 0 auto;
	padding: 0.2em 0.5em 1.2em;
	line-height: 1.6em;
	color: #ccc;
}
.qaques {
	position: relative;
	margin: 0 auto 0;
	padding: 0 0 0.4em 1.8em;
	text-align: left;
}
.qaques span.qaq {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	margin: 0;
	padding: 0.0em 0.5em 0 0.0em;
	font-size: 1.3em;
	line-height: 1.0em;
}
.qaans {
	position: relative;
	margin: 0 auto 3.6em;
	padding: 0 0 0 2.8em;
	text-align: left;
}
.qaans span.qaa {
	position: absolute;
	top: 0;
	left: 0;
	display: inline-block;
	margin: 0;
	padding: 0.1em 0.8em 0 0.2em;
	font-size: 1.3em;
	line-height: 1.0em;
}
.qaans ul {
	padding: 0.0em 0.0em 0.0em 0.2em;
}
.qaans li {
	padding: 0.0em 0 1.0em 0.0em;
}
.qaans li:last-child {
	padding: 0.0em 0 0em 0.0em;
}
.qaans th ,
.qaans td ,
.qaans table {
	border: 1px #666 solid;
}
.qaans table {
	width: 100%;
	margin: 0.3em auto 0.5em;
	border-collapse: collapse;
}
.qaans th ,
.qaans td {
	padding: 0.5em 0.5em 0.5em;
	text-align: center;
}

.attention {
	padding: 1.0em 1.0em;
}
.attention li {
	padding: 1.0em 0.5em;
	text-align: left;
	font-size: 0.94em;
	line-height: 1.4em;
	color: #ccc;
}






.scview.fade-up {
	opacity: 0;
	transform: translate(0,50px); 
	transition: 1.0s;
}
.car .thumb.scview.fade-up:nth-of-type(1) {
	animation: fade-up 1s forwards 0s;
}
.car .thumb.scview.fade-up:nth-of-type(2) {
	animation: fade-up 1s forwards 0.5s;
}
.car .thumb.scview.fade-up:nth-of-type(3) {
	animation: fade-up 1s forwards 1.0s;
}

@media screen and (min-width: 861px) {
.car .thumb.scview.fade-up:nth-of-type(4) {
	animation: fade-up 1s forwards 1.5s;
}
.car .thumb.scview.fade-up:nth-of-type(5) {
	animation: fade-up 1s forwards 2.0s;
}
.car .thumb.scview.fade-up:nth-of-type(6) {
	animation: fade-up 1s forwards 2.5s;
}
}

@keyframes fade-up {
	0% {opacity: 0;transform: translate(0,50px); }
	100% {opacity: 1;transform: translate(0,0); }
}
.scview.fade-up.effect {
	opacity: 1;
	transform: translate(0,0); 
}



/* Cell
 * --------------------------------------- */
.cell {
	width: 100%;
	margin: 0 auto 4px;
	padding: 0;
	overflow: hidden;
}
.cell .cset {
	position: relative;
	margin: 0 auto;
	overflow: hidden;
	line-height: 1.4em;
	border-bottom: solid 1px #444;
}
.cell .cset div {
	float: left;
	padding: 1em 2% 1em;
}
.cell .cset .cleft {
	width: 30%;
	padding: 1em 1.5% 1em 1%;
	text-align: left;
}
.cell .cset .cright {
	width: 70%;
	padding: 1em 1% 1em 1.5%;
	text-align: left;
}
.need {
	margin: 0 auto 0 0.4em;
	padding: 0.1em 0.5em;
	font-size: 0.9em;
	line-height: 0.8em;
	text-align: center;
	color: #fff;
	background: #555;
	border-radius: 0.2em;
}

@media screen and (max-width: 860px) {
.ccell .cset {
	border-bottom: solid 0px #444;
}
.ccell .cset .cleft {
	width: 100%;
	padding: 1.2em 0% 0.2em 0%;
	font-size: 1.2em;
	color: #fff;
}
.ccell .cset .cright {
	width: 100%;
	padding: 0.2em 2% 1.0em 0%;
	color: #ccc;
}
.fcell .cset .cleft {
	width: 100%;
	padding: 1.2em 0% 0.0em 0%;
}
.fcell .cset .cright {
	width: 100%;
	padding: 0.0em 2% 1.0em 0%;
}
}

/*form
 * --------------------------------------- */
form {
	margin: 0;
	padding: 0;
	text-align: center;
}
form input[type="text"],
form input[type="date"],
form input[type="time"],
form select ,
form textarea {
	width: 100%;
	margin: 0.4em 0;
	padding: 0.6em 1.0em;
	font-size: 100%;
	line-height: 1.2em;
	color: #fff;
	background: #444;
	border-style: none;
}


/* why
 * --------------------------------------- */
.whybox p {
	margin: 0 auto;
	padding: 0.0em 0 2.4em;
}

@media screen and (max-width: 860px) {
.whybox p {
	text-align: left;
}
}



/* youtube
 * --------------------------------------- */
.youmovie {
  margin: 0 auto 1em;
}
@media screen and (min-width: 861px) {
.youmovie {
	width: 860px;
	height: 484px;
}
}
@media screen and (max-width: 860px) {
.youmovie {
	width: 100vw;
	height: 56.3vw;
}
}



/* thumb
 * --------------------------------------- */
.carindex ,
.columnindex {
  width: 100%;
  margin: 0;
  border: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.carindex .thumb ,
.thumbindex .thumb {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 0;
}

.thumbindex .thumb:nth-child(1) ,
.thumbindex .thumb:nth-child(2) ,
.thumbindex .thumb:nth-child(3) ,
.thumbindex .thumb:nth-child(4) ,
.thumbindex .thumb:nth-child(5) ,
.thumbindex .thumb:nth-child(6) ,
.thumbindex .thumb:nth-child(7) ,
.thumbindex .thumb:nth-child(8) ,
.thumbindex .thumb:nth-child(9) ,
.thumbindex .thumb:nth-child(10),
.thumbindex .thumb:nth-child(11),
.thumbindex .thumb:nth-child(12),
.thumbindex .thumb:nth-child(13),
.thumbindex .thumb:nth-child(14),
.thumbindex .thumb:nth-child(15),
.thumbindex .thumb:nth-child(16) {
	opacity:0;
	transform: translate(0,60px);
	animation-duration: 1.2s;
	animation-timing-function: ease;
	animation-iteration-count: 1;
	animation-direction: normal;
	animation-fill-mode: forwards;
	animation-name: thumbopen;
}
@keyframes thumbopen { 
	0%  {opacity:0;transform: translate(0,60px)}
	100%{opacity:1;transform: translate(0,0px)}
}

.thumbindex .thumb:nth-child(1) {animation-delay: 0.0s;}
.thumbindex .thumb:nth-child(2) {animation-delay: 0.2s;}
.thumbindex .thumb:nth-child(3) {animation-delay: 0.4s;}
.thumbindex .thumb:nth-child(4) {animation-delay: 0.6s;}
.thumbindex .thumb:nth-child(5) {animation-delay: 0.8s;}
.thumbindex .thumb:nth-child(6) {animation-delay: 1.0s;}
.thumbindex .thumb:nth-child(7) {animation-delay: 1.2s;}
.thumbindex .thumb:nth-child(8) {animation-delay: 1.4s;}
.thumbindex .thumb:nth-child(9) {animation-delay: 1.6s;}
.thumbindex .thumb:nth-child(10) {animation-delay: 1.8s;}
.thumbindex .thumb:nth-child(11) {animation-delay: 2.0s;}
.thumbindex .thumb:nth-child(12) {animation-delay: 2.2s;}
.thumbindex .thumb:nth-child(13) {animation-delay: 2.4s;}
.thumbindex .thumb:nth-child(14) {animation-delay: 2.6s;}
.thumbindex .thumb:nth-child(15) {animation-delay: 2.8s;}
.thumbindex .thumb:nth-child(16) {animation-delay: 3.0s;}


/* ===== COLUMN ===== */
.columnindex .thumb figure {
	display: block;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	overflow: hidden;
}
.columnindex .thumb figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.columnindex .thumb figcaption {
	overflow: hidden;
	display: block;
	width: 100%;
	height: 2.6em;
	margin: 0 auto;
	padding: 0.3em 0.5em 0;
	font-size: 0.9em;
	line-height: 1.3em;
	text-align: left;
	color: #ccc;
}
.columnindex .thumb-date {
	margin-right: 0.5em;
	color: #fff;
}
.columnindex .thumb a.iframe {
	z-index: 2;
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	background-color: #000;
}

@media screen and (min-width: 861px) {
.columnindex .thumb {
  width: 24.0%;
  height: calc(13.5vw + 5.6em);
  margin: 0 0.5%;
}
.columnindex .thumb figure {
  height: 13.5vw;
}
.columnindex .thumb figcaption {
	height: 4.4em;
}
}
@media screen and (max-width: 860px) {
.columnindex .thumb {
  width: 100%;
  height: auto;
}
.columnindex .thumb figure {
  height: 56.25vw;
}
.columnindex .thumb figcaption {
	height: 4.8em;
}
}


.kiji-date {
  margin-right: 1em;
	color: #fff;
}


.column-date {
  padding: 0 0 1.5em;
	font-size: 1.1em;
	line-height: 1.2em;
  text-align: left;
	color: #ddd;
}
.column-pic {
  padding: 0 0 1.5em;
}
.column-pic img {
  max-width: 100%;
}



/* cars
 * --------------------------------------- */
.carindex .thumb figure {
	display: block;
	width: 100%;
	margin: 0 auto;
	text-align: center;
	overflow: hidden;
}
.carindex .thumb figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.carindex .thumb figcaption {
	overflow: hidden;
	display: block;
	width: 100%;
	height: 2.6em;
	margin: 0 auto;
	padding: 0.5em 0.5em 0;
	font-size: 1.12em;
	line-height: 1.2em;
	text-align: center;
	color: #aaa;
}
.carindex .thumbname {
	margin-right: 0.5em;
	color: #fff;
}
.carindex .thumb a.iframe {
	z-index: 2;
	position: relative;
	display: block;
	width: 100%;
	height: 100%;
	color: #fff;
	background-color: #000;
}

@media screen and (min-width: 861px) {
.carindex .thumb {
  width: 32.4%;
  height: calc(18.75vw + 3.2em);
  margin: 0 0.45%;
}
.carindex .thumb figure {
  height: 18.75vw;
}
.carindex .thumb figcaption {
	height: 1.6em;
}
}
@media screen and (max-width: 860px) {
.carindex .thumb {
  width: 100%;
  height: calc(56.25vw + 4.0em);
}
.carindex .thumb figure {
  height: 56.25vw;
}
.carindex .thumb figcaption {
	height: 1.6em;
}
}


/* Detail
 * --------------------------------------- */
#photos {
	overflow: hidden;
	position: relative;
	margin: 0 auto;
	padding: 0;
	text-align: center;
}
#photos img {
	width: 100%;
	height: auto;
	margin: 0 auto 1.0em;
	vertical-align: top;
}
/* PC */
@media only screen and (min-width: 859px) {
#photos {
	width: 780px;
}
}
/* //PC */
/* SP */
@media only screen and (max-width: 860px) {
#photos {
	width: 100%;
}
}
/* //SP */




#detailphoto {
	overflow: hidden;
	text-align: center;
}
#detailphoto .photos {
	width: 100%;
	max-width: 86px;
	margin: 0 auto;
	padding: 0;
	text-align: center;
	overflow: hidden;
}
.box #detailphoto ul li {
	margin: 0;
	padding: 0;
}
#detailphoto .photos .flexslider .slides {
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
	padding: 0;
}
#detailphoto .photos .flexslider .slides img {
	width: 100%;
	height: auto;
}
ol.flex-direction-nav ,
ol.flex-control-thumbs {
	position: relative;
	bottom: auto;
	width: 648px;
	height: 87px;
	margin: 0 auto 0;
	padding: 0;
	text-align: center;
	overflow: hidden;
	letter-spacing: -.40em; /*隙間対策 */
	background-color: #ccc;
}
ol.flex-direction-nav li ,
ol.flex-control-thumbs li {
	float: none;
	display: inline-block;
	width: 130px;
	height: 87px;
	margin: 0 auto;
	padding: 0;
	border-style: none;
	overflow: hidden;
	letter-spacing: normal; /*隙間対策 */
}
.flex-direction-nav img ,
.flex-control-thumbs img {
	width: 130px;
	height: 87px;
	border-style: none;
}
.flex-control-thumbs img {
	opacity: 0.5;
}
.flex-control-thumbs img:hover {
	opacity: 1;
}
.flex-control-thumbs .flex-active {
	opacity: 1;
}
. ul.flex-direction-nav {
	height: 2em;
}
#detail .box p.com ,
#detail .box p {
	width: 100%;
	font-size: 1.04em;
	line-height: 1.6em;
	margin: 0 auto;
	padding: 0;
	text-align: left;
}


.detail #carmovie {
	height: auto;
	margin: 0 auto 0;
	padding: 0;
	text-align: center;
	overflow: hidden;
}
.detail #moviecom {
	padding: 0 1em;
	margin: 0 auto 1em;
	font-size: 0.8em;
	line-height: 1.2em;
	color: #999;
}

/* PC TAB */
@media only screen and (min-width: 859px) {
#detailphoto {
	margin: 0 auto;
}
#detailphoto .photos .flexslider {
	margin: 0 auto 20px;
}
#profiletitle {
}
#profilename {
	font-weight: bold;
}
#profilecopy {
	max-height: 48px;
	overflow-y: auto;
}
.detail #carmovie {
	width: 780px;
}
}
/* //PC TAB */

/* SP */
@media only screen and (max-width: 860px) {
#detailphoto {
	margin: 0 auto;
}
#detailphoto .photos .flexslider {
	margin: 0 auto 0;
}
#profile {
	width: 100%;
	margin: 0 auto 0;
	padding: 8px 20px 20px;
}
#detail .box p.com ,
#detail .box p {
	padding: 0 10px;
}
.detail #carmovie {
	width: 100%;
}
}
/* //SP */


/* ===== TOPBANNER ===== */
#topbanner {
	overflow: hidden;
	position: relative;
	width: 100%;
	margin: 3em auto 1em;
	padding: 0;
}
#topbanner img {
	vertical-align: top;
}
.owl-carousel {
	position: absolute;
	left: 50%;
	list-style-type: none;
	margin: 0 auto;
	padding: 0;
	-webkit-transform: translate(-50%, 0);
	transform: translate(-50%, 0);
}
/* ドットナビゲーション */
.owl-controls {
	display: block;
}
.owl-item img {
}
.owl-carousel button {
	width: auto;
	border: 0;
	padding: 0;
}

/* PC TAB */
@media screen and (min-width: 861px) {
#topbanner {
	height: calc(28.33vw + 3em);
}
.owl-carousel {
	top: 0px;
	width: calc(150vw + 20px);
	height: 28.33vw;
}
.owl-carousel .owl-item {
	width: 50vw;
	height: 28.33vw;
}
.owl-carousel .owl-item img {
	width: 100%;
	height: 100%;
}
.owl-theme .owl-dots .owl-dot span {
	width: 0.8vw;
	height: 0.8vw;
}
}
/* //PC TAB */
/* SP */
@media screen and (max-width: 860px) {
#topbanner {
	width: 100%;
	height: calc(56.66vw + 2em);
}
.owl-carousel {
	top: 0px;
	width: 100%;
	height: 56.66vw;
}
.owl-carousel .owl-item {
	width: 100%;
	height: 56.66vw;
}
.owl-carousel .owl-item img {
	width: 100%;
	height: 100%;
}
.owl-theme .owl-dots .owl-dot span {
	width: 3.2vw;
	height: 3.2vw;
}
}
/* //SP */

.owl-thumbs {
	text-align: center;
}
.owl-thumb-item {
	cursor: pointer;
	margin: 10px 5px 0;
	background: none;
	filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
	opacity: 1;
}
.owl-thumb-item.active {
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=30);
	opacity: 0.3;
}
.owl-dots {
	vertical-align: top;
}
.owl-theme .owl-controls {
	margin-top: 1vw;
}


p.top-seo {
	margin: 0 auto;
	padding: 0 1.0em;
}
@media screen and (max-width: 860px) {
p.top-seo {
	text-align: left;
}
}

/* ===== NEWS ===== */
.newsindex {
  width: 100%;
  margin: 0;
  border: 0;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}

.newsindex .thumb {
  position: relative;
  overflow: hidden;
  margin: 0;
  padding: 0;
}
.newsindex .thumb::before {
	float: left;
	content: "ODA SPORTS【公式】";
	display: block;
	margin: 0 auto 0 0;
	padding: 0.5em 0 0.6em 2.6em;
	font-size: 1.1em;
	line-height: 1.0em;
	font-weight: bold;
	background: url(../img/sns.png) left center no-repeat;
	background-size: auto 2.0em;
}
.newsindex .thumb .newsdate {
	display: inline-block;
	width: 8em;
	height: 2.0em;
	margin: 0 0 0 auto;
	padding: 0.4em 0 0;
	text-align: right;
	font-size: 1.1em;
	line-height: 1.0em;
	color: #aaa;
}
.newsindex .thumb figure {
  width: 100%;
  margin-bottom: ;
	overflow: hidden;
}
.newsindex .thumb figure img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.newsindex .thumb figcaption {
  padding: 0.5em 0.5em 2.0em;
	text-align: left;
	line-height: 1.5em;
}

@media screen and (min-width: 861px) {
.newsindex .thumb {
  width: 24.0%;
  height: calc(13.5vw + 11.2em);
  margin: 0 0.5%;
}
.newsindex .thumb figure {
  height: 13.5vw;
}
}
@media screen and (max-width: 860px) {
.newsindex .thumb {
  width: 100%;
  height: auto;
}
.newsindex .thumb figure {
  height: 56.25vw;
}
}


/* flow
 * --------------------------------------- */
.box-step {
	position: relative;
	max-width: 1000px;
	margin: 0 auto;
}
.box-step p {
	max-width: 860px;
	margin: 0 auto;
	padding: 0.6em 1.5em 0.6em;
	text-align: left;
}
/* PC TAB */
@media only screen and (min-width: 681px) {
.box-step {
	width: 100%;
	padding: 1.6em 0 70px;
}
}
/* //PC */
/* SP */
@media only screen and (max-width: 680px) {
.box-step {
	width: 100%;
	padding: 1.6em 0 60px;
}
}
/* //SP */

.box-step h3 {
	padding: 0 0.5em;
	font-size: 2.0em;
}
.box-step h4 {
	font-size: 1.6em;
}
.box-step .step {
	display: block;
	width: 5.0em;
	height: 5.0em;
	margin: 0 auto 0.2em;
	padding: 0.5em 0 0;
	text-align: center;
	font-size: 1.16em;
	line-height: 1.4em;
	letter-spacing: 0.06em;
	color: #fff;
	background: #333;
	border-radius: 3.0em;
}

.box-step .step span {
	display: block;
	font-size: 3.0em;
	line-height: 0.9em;
}
.box-step ul {
	max-width: 860px;
	margin: 0 auto;
	padding: 0 1.2em;
	text-align: left;
}
.box-step ul li {
  list-style-type: none;
  margin: 0 auto 0.8em;
  padding: 0.6em 1.6em 0.6em;
  line-height: 1.6em;
  background: #333;
  border-radius: 6.0em;
}
.box-step img {
	max-width: 100%;
	margin: 2em auto 0;
}
.box-step::after {
	content: "";
	position: absolute;
	bottom: -25px;
	left: calc(50% - 40px);
	border: 40px solid transparent;
	border-top-color: transparent;
	border-top-style: solid;
	border-top: 40px solid #888;
}
.step-wrap .box-step:last-of-type:after {
	display: none;
}




