

/*-----------------------------------------------------------
Slider
-----------------------------------------------------------*/
:root{
  --peek: 5%;   /* 左右に見せたい割合 */
}
.carousel {
  width: 100%;
  overflow: hidden;
  position: relative;
  padding-left: var(--peek);
  padding-right: var(--peek);
  box-sizing: border-box;
}

/* trackは横並び */
.carousel-track{
  display:flex;
  will-change: transform;
  gap: 0px;
}

/* 1600px以上：5枚 */
@media (min-width:1600px){
  .slide{ flex: 0 0 calc((100% - 16px * 4) / 5); margin-right:16px; }
}

/* 1025〜1599：3枚 */
@media (min-width:1025px) and (max-width:1599px){
  .slide{ flex: 0 0 calc((100% - 16px * 2) / 3); margin-right:16px; }
}

/* 769〜1024：1枚 */
@media (min-width:769px) and (max-width:1024px){
  .slide{ flex: 0 0 calc((100% - 16px * 2) / 2); margin-right:16px; }
}

/* 768以下：1枚 */
@media (max-width:768px){
  .slide{ flex: 0 0 calc(100% - 16px); margin-right:16px; }
}


/* ================================
   ドット部分
================================ */
.carousel-dots {
  padding: 0;
  margin-top: 12px;
  text-align: center;
}

.carousel-dots li {
  display: inline-block;
  width: 10px;
  height: 10px;
  background: #ccc;
  border-radius: 50%;
  margin: 0 5px;
  cursor: pointer;
  transition: background 0.3s;
}

.carousel-dots li.active {
  background: #000;
}


@media screen and (min-width: 1600px) {

.slide {
padding:1% 1%!important;
}

}


/* Style for PCs */
@media screen and (min-width: 1025px) {
 
/*-----------------------------------------------------------
Templates
-----------------------------------------------------------*/

/* Header */
header {
  width:100%;
  height: 130px;
  display: block;
  position: fixed;
  top:50px;
  left:0;
  z-index:18500;
  transition: .4s all;
}
header figure {
  width:12%;
  max-width:150px;
  height: 130px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top:50px;
  left:1%;
  z-index:18600;
  transition: .4s all;
}
header figure img {
  width:100%;
  height: auto;
  display: block;
}

header figure img.logo_txt {
  display: block;
}
header figure img.logo_cir {
  display: none;
}

/* Header (Active) */
header.site_active {
  width:100%;
  height: 60px;
  display: block;
  position: fixed;
  top:0px;
  left:0;
  z-index:18500;
  background: rgba(255, 255, 255, 0.80);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow:0px 1px 10px rgba(0,0,0,0.3);
}
header.site_active figure {
  width:60px;
  height: 60px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top:0px;
  left:1%;
  z-index:18600;
}
header.site_active figure img {
  width:100%;
  height: auto;
  display: block;
}
header.site_active figure img.logo_txt {
  display: none!important;
}
header.site_active figure img.logo_cir {
  display: block!important;
}


/* Contact Bar */
.contactbar {
  width:fit-content;
  height: 40px;
  display: flex;
  justify-content: flex-end;
  position: fixed;
  top:70px;
  right:1%;
  z-index:19800;
}
.contactbar li.cb_tel {
  width:fit-content;
  height: 40px;
  display: block;
  margin-right:20px;
}
.contactbar li.cb_tel a {
  width:100%;
  height: 40px;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  font-size:18px;
  letter-spacing: 0px;
  font-weight: 400;
  line-height: 38px;
  text-align: right;
  background-image: url(../img/header/ic-tel_w.webp);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 25px;
  padding:0 0 0 30px;
  transition: .4s all;
}
.contactbar li.cb_tel a:hover {
  opacity: 0.5;
}
.contactbar li.cb_mail {
  width:fit-content;
  height: 40px;
  display: block;
  margin-right:20px;
}
.contactbar li.cb_mail a {
  width:100%;
  height: 40px;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  font-size:14px;
  letter-spacing: -1px;
  font-weight: 400;
  line-height: 38px;
  text-align: right;
  background-image: url(../img/header/ic-mail_w.webp);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 25px;
  padding:0 0 0 30px;
  transition: .4s all;
}
.contactbar li.cb_mail a:hover {
  opacity: 0.5;
}


.contactbar li.cb_ins {
  width:40px;
  height: 40px;
  display: block;
}
.contactbar li.cb_ins a {
  width:40px;
  height: 40px;
  display: block;
  text-indent: -9999px;
  background-image: url(../img/header/ic-ins_w.webp);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 25px;
}
.contactbar li.cb_line {
  width:40px;
  height: 40px;
  display: block;
}
.contactbar li.cb_line a {
  width:40px;
  height: 40px;
  display: block;
  text-indent: -9999px;
  background-image: url(../img/header/ic-line_w.webp);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 25px;
}

/* Contact Bar(Active) */
.contactbar.site_active {
  width:fit-content;
  height: 60px;
  display: flex;
  justify-content: flex-end;
  position: fixed;
  top:auto;
  bottom: 0;
  right:0;
  z-index:19800;
  background-color: var(--color-2nd);
  box-shadow: 0px 0px 10px rgba(0,0,0,0.3);
}
.contactbar.site_active li.cb_tel {
  width:fit-content;
  height: 60px;
  display: block;
  margin-right:0px;
}
.contactbar.site_active li.cb_tel a {
  width:100%;
  height: 60px;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  font-size:18px;
  letter-spacing: 0px;
  font-weight: 400;
  line-height: 58px;
  text-align: right;
  background-image: url(../img/header/ic-tel_w.webp);
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: auto 35px;
  padding:0 15px 0 50px;
  transition: .4s all;
}
.contactbar.site_active li.cb_tel a:hover {
  background-color: var(--color-1st);
  opacity: 1;
}
.contactbar.site_active li.cb_mail {
  width:fit-content;
  height: 60px;
  display: block;
  margin-right:0px;
}
.contactbar.site_active li.cb_mail a {
  width:100%;
  height: 60px;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  font-size:14px;
  letter-spacing: -1px;
  font-weight: 400;
  line-height: 58px;
  text-align: right;
  background-image: url(../img/header/ic-mail_w.webp);
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: auto 35px;
  padding:0 15px 0 50px;
  transition: .4s all;
}
.contactbar.site_active li.cb_mail a:hover {
  background-color: var(--color-1st);
  opacity: 1;
}


.contactbar.site_active li.cb_ins {
  width:80px;
  height: 60px;
  display: block;
}
.contactbar.site_active li.cb_ins a {
  width:80px;
  height: 60px;
  display: block;
  text-indent: -9999px;
  background-image: url(../img/header/ic-ins_w.webp);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 35px;
  transition: .4s all;
}
.contactbar.site_active li.cb_line {
  width:80px;
  height: 60px;
  display: block;
}
.contactbar.site_active li.cb_line a {
  width:80px;
  height: 60px;
  display: block;
  text-indent: -9999px;
  background-image: url(../img/header/ic-line_w.webp);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 35px;
  transition: .4s all;
}
.contactbar.site_active li.cb_ins a:hover, .contactbar.site_active li.cb_line a:hover {
  background-color: var(--color-1st);
}


/* Footer */
footer {
  width:100%;
  height:auto;
  display: block;
}
.ftbody {
  width:100%;
  max-width:1600px;
  height: auto;
  display: block;
  margin:0 auto;
  padding:30px 5% 90px;
}
.ftbody ul {
  width:100%;
  height:auto;
  display:flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.ftbody ul li {
  font-size:12px;
  line-height: 1.5em;
  margin:0 1em;
}
.ftbody ul li a {
  color:var(--color-white);
  text-decoration: none;
}
.ftbody ul li a:hover {
  color:var(--color-white);
  text-decoration: underline;
}
.ftbody p.ftcopy {
  text-align: center;
  font-size:12px;
  line-height: 1em;
  margin:0;
  color:var(--color-white);
}

/*-----------------------------------------------------------
Navigation
-----------------------------------------------------------*/

/* Menu botton*/
.menubn {
  display: none;
}

.menubn span {
  display: none;
}

.menubn span:nth-child(1) {
  display: none;
}

.menubn span:nth-child(2) {
  display: none;
}

.menubn span:nth-child(3) {
  display: none;
}

/* ナビ開いてる時のボタン */
.menubn.active span:nth-child(1) {
  display: none;
}

.menubn.active span:nth-child(2),
.menubn.active span:nth-child(3) {
  display: none;
}

nav.globalmenu {
  width: calc(100% - 26%);
  height: 60px;
  display: block;
  position: fixed;
  z-index: 19500;
  top: 110px;
  left: 26%;
  text-align: center;
  padding:0;
  overflow: hidden;
  transition: .4s all;
}
nav.globalmenu.site_active {
  top:0px;
  height: 60px;
}

nav.globalmenu ul {
  width: 100%;
  height: 60px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  padding: 0;
}

nav.globalmenu ul li {
  list-style-type: none;
  padding: 0;
  flex: 1;
  margin:0 0;
  font-size: clamp(12px, 1vw, 18px);
  font-weight: 400;
  letter-spacing: -0.5px;
  overflow: hidden;
  border-radius: 0px;
}

nav.globalmenu ul li a {
  width: 100%;
  height: 60px;
  display: block;
  line-height: 60px;
  color:var(--color-white);
  text-decoration: none;
  transition: .4s all;
}
nav.globalmenu ul li a:hover {
  color:var(--color-white);
  background-color: var(--color-1st);
}

nav.globalmenu.site_active ul li a {
  width: 100%;
  height: 60px;
  display: block;
  line-height: 60px;
  color:var(--color-block);
  text-decoration: none;
  transition: .4s all;
}
nav.globalmenu.site_active ul li a:hover {
  color:var(--color-white);
  background-color: var(--color-1st);
}


/*-----------------------------------------------------------
TopSection
-----------------------------------------------------------*/
.topsection {
 width: 100%;
 height: auto;
 aspect-ratio: 16 / 10;
 display: block;
 overflow: hidden;
}
.topsection #slidemm, .topsection #slidemm div, .topsection #slidemm div picture {
  width: 100%;
  height: auto;
  display: block;
}


/*-----------------------------------------------------------
Common
-----------------------------------------------------------*/
.slide {
box-shadow:0px 5px 10px rgba(0,0,0,0.15);
}
.slide a {
 width:100%;
 height: auto;
 display: flex;
 flex-direction: column;
 text-decoration: none;
 overflow: hidden;
 border-radius: 5px;
}
.slide a .slimg {
 width:100%;
 height: auto;
 display: block;
 transition: .4s all;
 overflow: hidden;
 border-radius: 5px;
}
.slide a:hover .slimg {
opacity: 0.6;
}
.slide a .slcc {
width: 100%;
height: auto;
display: block;
padding:2em;
}


/*-----------------------------------------------------------
SectionTitle
-----------------------------------------------------------*/
.sectitle {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 margin-bottom: 30px;
}
.sectitle h2 {
 order:2;
 font-size: clamp(14px, 1.25vw, 100px);
 font-weight: 400;
 line-height: 1em;
 letter-spacing: -0.5px;
 color: var(--color-1st);
 text-align: center;
 margin-bottom: 0;
}
.sectitle p {
 order:1;
 font-size: clamp(24px, 2vw, 100px);
 font-family: var(--font-en);
 font-weight: 700;
 line-height: 1em;
 letter-spacing: -1px;
 color: var(--color-black);
 text-align: center;
 margin-bottom: 0.25em;
}


/*-----------------------------------------------------------
News
-----------------------------------------------------------*/
.newsmm {
 width:100%;
 height: auto;
 display: block;
 padding:100px 0;
}
.newsmm .slide a .slcc p.sldate {
 font-size: clamp(12px, 1vw, 14px);
 color: var(--color-1st);
 line-height: 1.25em;
 margin-bottom: 0.5em;
}
.newsmm .slide a:hover .slcc p.sldate {
 color:var(--color-black);
}
.newsmm .slide a .slcc h3 {
 font-size: clamp(18px, 1.25vw, 22px);
 line-height: 1.5em;
 font-weight: 600;
 margin-bottom: 0.5em;
}
.newsmm .slide a:hover .slcc h3 {
 color:var(--color-1st);
}
.newsmm .slide a .slcc p.slcom {
 font-size: clamp(14px, 1vw, 16px);
 line-height: 2em;
  display: -webkit-box;
  box-orient: vertical;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  overflow: hidden;
 margin-bottom: 0em;
}
.newsmm .slide a:hover .slcc p.slcom {
 color:var(--color-black);
}



/*-----------------------------------------------------------
Intro
-----------------------------------------------------------*/
.intromm {
width:100%;
height: auto;
display: block;
background-image: url(../img/index/introbg.webp);
background-repeat: no-repeat;
background-position: right center;
background-size: cover;
-webkit-background-size: cover;
clip-path: polygon(50% 0, 100% 10%, 100% 90%, 50% 100%, 0 90%, 0 10%);
}
.intbody {
width: 100%;
max-width:1600px;
height: auto;
display: flex;
flex-direction: column;
padding:20% 8%;
margin:0 auto;
}
.intbody h2 {
order:2;
font-size: clamp(24px, 2vw, 100px);
font-weight: 700;
line-height: 1.5em;
letter-spacing: -0.03em;
color: var(--color-white);
margin-bottom: 0.25em;
}
.intbody p.int_en {
order:1;
font-size: clamp(60px, 8vw, 300px);
font-family: var(--font-en);
font-weight: 700;
line-height: 1em;
letter-spacing: -0.05em;
color: var(--color-white);
margin-bottom: 0.15em;
}
.intbody p.int_com {
order:3;
font-size: clamp(14px, 1vw, 16px);
line-height: 2em;
color: var(--color-white);
margin-bottom: 0em;
}


/*-----------------------------------------------------------
Stock
-----------------------------------------------------------*/
.stockmm {
 width:100%;
 height: auto;
 display: block;
 padding:100px 0 20px;
}
.stockmm a {
width:100%;
height: auto;
display: block;
text-decoration: none;
padding-bottom: 25px;
transition: .4s all;
}
.stockmm a:hover {
background-color:rgba(255,255,255,1);
}
.stockmm a .stimg {
width:100%;
height: auto;
display: block;
transition: .4s all;
overflow: hidden;
background-color: var(--color-1st);
}
.stockmm a:hover .stimg {
opacity: 0.5;
}
.stockmm a .stimg img {
transition: .4s all;
}
.stockmm a:hover .stimg img {
opacity: 0.7;
}
.stockmm .stcc {
width:100%;
height: auto;
display: block;
padding:25px 25px 0px;
}
.stockmm .stcc h3 {
font-size: clamp(12px, 1vw, 14px);
font-weight: 400;
line-height: 1.25em;
margin-bottom: 0.5em;
}
.stockmm .stcc h4 {
font-size: clamp(16px, 1.2vw, 20px);
font-weight: 700;
line-height: 1.4em;
margin-bottom: 15px;
}
.stockmm .stcc .specbox {
width:100%;
height: auto;
display: flex;
flex-wrap: wrap;
justify-content:space-around;
margin-bottom: 15px;
}
.stockmm .stcc .specbox dl {
width:48%;
height: auto;
display: flex;
flex-direction: column;
margin:0 auto;
}
.stockmm a .stcc .specbox dl dt {
width:100%;
height: auto;
display: block;
text-align: left;
font-size: clamp(10px, 1vw, 14px);
line-height: 1em;
color:var(--color-1st);
font-weight: 400;
padding:0;
margin:0 0 3px 0;
}
.stockmm .stcc .specbox dl dd {
width:100%;
height: auto;
display: block;
text-align: left;
font-size: clamp(10px, 1vw, 14px);
line-height: 1.4em;
font-weight: 400;
padding:0 0 5px 0;
border-bottom: 1px dotted var(--color-ccc);
margin:0 0 5px 0;
}
.stockmm p.stprice {
font-size: clamp(16x, 1.5vw, 26px);
font-weight: 400;
text-align: center;
margin-bottom: 10px;
}
.stockmm p.stprice strong {
font-size:24px;
}



/*-----------------------------------------------------------
BoatGyro
-----------------------------------------------------------*/
.boatgyromm {
 width: 100%;
 height: auto;
 display: block;
 background-image: url(../img/index/boatgyro_bg01.webp);
 background-repeat: no-repeat;
 background-position: center top;
 background-size: 100% auto;
 clip-path: polygon(0 15%, 100% 0, 100% 100%, 0% 100%);
}
.bgo_body {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 padding: 25% 5% 50px;
}
.bgo_body h2 {
 order:2;
 font-size: clamp(16px, 1.5vw, 20px);
 font-weight: 700;
 color: var(--color-black);
 text-align: center;
 line-height: 1.4em;
 margin-bottom: 1em;
}
.bgo_body h3 {
 order:1;
 font-size: clamp(40px, 7vw, 100px);
 font-family: var(--font-en);
 font-weight: 700;
 line-height: 1em;
 letter-spacing: -0.07em;
 color: var(--color-black);
 text-align: center;
 margin-bottom: 0.25em;
}
.bgo_body ul {
 width: 100%;
 height: auto;
 display: flex;
 justify-content: space-between;
 order:6;
}
.bgo_body ul li {
 flex:1;
 margin:0 1%;
}
.bgo_body p.bgo_commment {
 order:4;
 font-size: clamp(14px, 1.25vw, 100px);
 font-weight: 400;
 line-height: 2em;
 text-align: center;
 margin-bottom: 1.5em;
}
.bgo_body p.textbn_ar {
 order:5;
 margin-bottom: 1em;
}


/*-----------------------------------------------------------
Access
-----------------------------------------------------------*/
.accessmm {
 width: 100%;
 height: auto;
 display: flex;
 justify-content: space-between;
 align-items: center;
 padding:10% 8% 100px;
 background-color: var(--color-f5);
 clip-path: polygon(50% 10%, 100% 0, 100% 100%, 0 100%, 0 0);
}
.acc_cc {
 width: 30%;
 height: auto;
 display: block;
}
.acc_cc h2 {
 width: 100%;
 height: auto;
 display: block;
 font-size: clamp(16px, 1vw, 50px);
 font-weight: 700;
 line-height: 1em;
 letter-spacing: -1px;
 color: var(--color-black);
 text-align: center;
 margin-bottom: 0.5em;
 padding-top:130px;
 background-image: url(../img/header/logo_b02.webp);
 background-repeat: no-repeat;
 background-position: center top;
 background-size: auto 120px;
}
.acc_cc p.acc_ad01 {
 font-size: clamp(14px, 1.25vw, 100px);
 font-weight: 400;
 line-height: 1.5em;
 text-align: center;
 margin-bottom: 0.5em;
}
.acc_cc p.acc_tel {
 width:100%;
 height: auto;
 display: flex;
 justify-content:center;
 font-size: clamp(20px, 2vw, 100px);
 font-weight: 700;
 font-family: var(--font-en);
 margin-bottom: 0.5em;
}
.acc_cc p.acc_tel a {
 width: fit-content;
 height: auto;
 display: block;
 text-decoration: none;
 padding:0.5em 0 0.5em 15%;
 line-height: 1em;
 background-image: url(../img/header/ic-tel_b.webp);
 background-repeat: no-repeat;
 background-position: left center;
 background-size: auto 80%;
}
.acc_map {
 width: 65%;
 height: auto;
 display: block;
}
.acc_map iframe {
 width: 100%;
 height: 500px;
 display: block;
}



}


/* Style for Smartphone */
@media screen and (max-width: 1024px) {

/*-----------------------------------------------------------
Navigation
-----------------------------------------------------------*/

/* Menu botton*/
.menubn {
  display: block;
  position: fixed;
  z-index: 21550;
  right: 10px;
  top: 35px;
  width: 50px;
  height: 45px;
  cursor: pointer;
  text-align: center;
  background-image: url(../img/header/ic-menu_open-index.webp);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: auto 8px;
  transition: .4s all;
}

.menubn span {
  display: block;
  position: absolute;
  width: 40px;
  height: 1px;
  left: 6px;
  background: var(--color-white);
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.menubn span:nth-child(1) {
  top: 10px;
}

.menubn span:nth-child(2) {
  top: 20px;
}

.menubn span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */
.menubn.active {
  background-image: url(../img/header/ic-menu_close.webp);
}
.menubn.active span:nth-child(1) {
  top: 16px;
  left: 6px;
  background: var(--color-1st);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.menubn.active span:nth-child(2),
.menubn.active span:nth-child(3) {
  top: 16px;
  background: var(--color-1st);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}

.menubn.site_active {
  display: block;
  position: fixed;
  z-index: 21550;
  right: 2%;
  top: 5px;
  width: 50px;
  height: 45px;
  cursor: pointer;
  text-align: center;
  background-image: url(../img/header/ic-menu_open.webp);
  background-repeat: no-repeat;
  background-position: center bottom;
  background-size: auto 8px;
  transition: .4s all;
}

.menubn.site_active span {
  display: block;
  position: absolute;
  width: 40px;
  height: 1px;
  left: 6px;
  background: var(--color-1st);
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
}

.menubn.site_active span:nth-child(1) {
  top: 10px;
}

.menubn.site_active span:nth-child(2) {
  top: 20px;
}

.menubn.site_active span:nth-child(3) {
  top: 30px;
}

/* ナビ開いてる時のボタン */
.menubn.site_active.active {
  background-image: url(../img/header/ic-menu_close.webp);
}
.menubn.site_active.active span:nth-child(1) {
  top: 16px;
  left: 6px;
  background: var(--color-1st);
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

.menubn.site_active.active span:nth-child(2),
.menubn.site_active.active span:nth-child(3) {
  top: 16px;
  background: var(--color-1st);
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  transform: rotate(45deg);
}



nav.globalmenu {
position: fixed;
z-index: 16500;
top:  -100%;
left:0;
color: var(--color-1st);
background: rgba(255, 255, 255, 0.9);
backdrop-filter: blur(7px);
-webkit-backdrop-filter: blur(7px);
width: 100%;
height: 100%;
min-height: 100%;
display: flex;
justify-content: center;
align-items: center;
opacity: 0;
transition: .4s all;
}

nav.globalmenu ul {
  width: 90%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  flex-direction: column;
  margin:0 auto;
}

nav.globalmenu ul li {
  width:100%;
  height: auto;
  display: block;
  list-style-type: none;
  margin:0 0 5px;
  font-size: 14px;
  line-height: 1em;
  transition: .4s all;
  border-radius: 3px;
  overflow: hidden;
  box-shadow:0px 5px 10px rgba(0,0,0,0.1);
}

nav.globalmenu ul li:last-child {
  border-bottom: none;
}

nav.globalmenu ul li a {
  width: 100%;
  height: auto;
  display: block;
  text-decoration: none;
  color: var(--color-white);
  padding:1.5em 20px 1.5em 10px;
  background-color:var(--color-1st);
  background-image: url(../img/header/ic-ar_h_w.webp);
  background-repeat: no-repeat;
  background-position: 96% center;
  background-size: auto 16px;
  transition: .4s all;
}

nav.globalmenu ul li a:hover {
  color:var(--color-white);
  background-color:var(--color-2nd);
}

/* このクラスを、jQueryで付与・削除する */
nav.globalmenu.active {
opacity: 100;
top:0;
}


}


/* Style for iPad Pro */
@media screen and (min-width: 769px) and (max-width: 1024px) {

/*-----------------------------------------------------------
Templates
-----------------------------------------------------------*/

/* Header */
header {
  width:100%;
  height: 120px;
  display: block;
  position: fixed;
  top:0px;
  left:0;
  z-index:18500;
  transition: .4s all;
}
header figure {
  width:150px;
  height: 120px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top:0px;
  left:1%;
  z-index:21500;
  transition: .4s all;
}
header figure img {
  width:100%;
  height: auto;
  display: block;
}
header figure img.logo_txt {
  display: block;
}
header figure img.logo_cir {
  display: none;
}

/* Header (Active) */
header.site_active {
  width:100%;
  height: 60px;
  display: block;
  position: fixed;
  top:0px;
  left:0;
  z-index:18500;
  background: rgba(255,255,255,0.9);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow:0px 1px 10px rgba(0,0,0,0.3);
}
header.site_active figure {
  width:50px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top:5px;
  left:1%;
  z-index:21500;
}
header.site_active figure img {
  width:100%;
  height: auto;
  display: block;
}
header.site_active figure img.logo_txt {
  display: none;
}
header.site_active figure img.logo_cir {
  display: block;
}


/* Contact Bar */
.contactbar {
  width:fit-content;
  height: 40px;
  display: flex;
  justify-content: flex-end;
  position: fixed;
  top:40px;
  right:90px;
  z-index:19800;
}
.contactbar li.cb_tel {
  width:fit-content;
  height: 40px;
  display: block;
  margin-right:10px;
}
.contactbar li.cb_tel a {
  width:100%;
  height: 40px;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  font-size:16px;
  letter-spacing: 0px;
  font-weight: 400;
  line-height: 38px;
  text-align: right;
  background-image: url(../img/header/ic-tel_w.webp);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 25px;
  padding:0 0 0 30px;
  transition: .4s all;
}
.contactbar li.cb_tel a:hover {
  opacity: 0.5;
}
.contactbar li.cb_mail {
  width:fit-content;
  height: 40px;
  display: block;
  margin-right:10px;
}
.contactbar li.cb_mail a {
  width:100%;
  height: 40px;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  font-size:10px;
  letter-spacing: -1px;
  font-weight: 400;
  line-height: 38px;
  text-align: right;
  background-image: url(../img/header/ic-mail_w.webp);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 25px;
  padding:0 0 0 30px;
  transition: .4s all;
}
.contactbar li.cb_mail a:hover {
  opacity: 0.5;
}


.contactbar li.cb_ins {
  width:30px;
  height: 40px;
  display: block;
}
.contactbar li.cb_ins a {
  width:30px;
  height: 40px;
  display: block;
  text-indent: -9999px;
  background-image: url(../img/header/ic-ins_w.webp);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 25px;
}
.contactbar li.cb_line {
  width:30px;
  height: 40px;
  display: block;
}
.contactbar li.cb_line a {
  width:30px;
  height: 40px;
  display: block;
  text-indent: -9999px;
  background-image: url(../img/header/ic-line_w.webp);
  background-repeat: no-repeat;
  background-position: left center;
  background-size: auto 25px;
}

/* Contact Bar(Active) */
.contactbar.site_active {
  width:fit-content;
  height: 60px;
  display: flex;
  justify-content: flex-end;
  position: fixed;
  top:auto;
  bottom: 0;
  right:0;
  z-index:19800;
  background-color: var(--color-2nd);
  box-shadow: 0px 0px 10px rgba(0,0,0,0.3);
}
.contactbar.site_active li.cb_tel {
  width:fit-content;
  height: 60px;
  display: block;
  margin-right:0px;
}
.contactbar.site_active li.cb_tel a {
  width:100%;
  height: 60px;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  font-size:18px;
  letter-spacing: 0px;
  font-weight: 400;
  line-height: 58px;
  text-align: right;
  background-image: url(../img/header/ic-tel_w.webp);
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: auto 35px;
  padding:0 15px 0 50px;
  transition: .4s all;
}
.contactbar.site_active li.cb_tel a:hover {
  background-color: var(--color-1st);
  opacity: 1;
}
.contactbar.site_active li.cb_mail {
  width:fit-content;
  height: 60px;
  display: block;
  margin-right:0px;
}
.contactbar.site_active li.cb_mail a {
  width:100%;
  height: 60px;
  display: block;
  text-decoration: none;
  color:var(--color-white);
  font-size:14px;
  letter-spacing: -1px;
  font-weight: 400;
  line-height: 58px;
  text-align: right;
  background-image: url(../img/header/ic-mail_w.webp);
  background-repeat: no-repeat;
  background-position: 10px center;
  background-size: auto 35px;
  padding:0 15px 0 50px;
  transition: .4s all;
}
.contactbar.site_active li.cb_mail a:hover {
  background-color: var(--color-1st);
  opacity: 1;
}


.contactbar.site_active li.cb_ins {
  width:80px;
  height: 60px;
  display: block;
}
.contactbar.site_active li.cb_ins a {
  width:80px;
  height: 60px;
  display: block;
  text-indent: -9999px;
  background-image: url(../img/header/ic-ins_w.webp);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 35px;
  transition: .4s all;
}
.contactbar.site_active li.cb_line {
  width:80px;
  height: 60px;
  display: block;
}
.contactbar.site_active li.cb_line a {
  width:80px;
  height: 60px;
  display: block;
  text-indent: -9999px;
  background-image: url(../img/header/ic-line_w.webp);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: auto 35px;
  transition: .4s all;
}
.contactbar.site_active li.cb_ins a:hover, .contactbar.site_active li.cb_line a:hover {
  background-color: var(--color-1st);
}


/* Footer */
footer {
  width:100%;
  height:auto;
  display: block;
}
.ftbody {
  width:100%;
  max-width:1600px;
  height: auto;
  display: block;
  margin:0 auto;
  padding:30px 5% 90px;
}
.ftbody ul {
  width:100%;
  height:auto;
  display:flex;
  justify-content: center;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.ftbody ul li {
  font-size:12px;
  line-height: 1.5em;
  margin:0 1em;
}
.ftbody ul li a {
  color:var(--color-white);
  text-decoration: none;
}
.ftbody ul li a:hover {
  color:var(--color-white);
  text-decoration: underline;
}
.ftbody p.ftcopy {
  text-align: center;
  font-size:12px;
  line-height: 1em;
  margin:0;
  color:var(--color-white);
}





/*-----------------------------------------------------------
TopSection
-----------------------------------------------------------*/
.topsection {
 width: 100%;
 height: auto;
 aspect-ratio: 16 / 10;
 display: block;
 overflow: hidden;
}
.topsection #slidemm, .topsection #slidemm div, .topsection #slidemm div picture {
  width: 100%;
  height: auto;
  display: block;
}

/*-----------------------------------------------------------
SectionTitle
-----------------------------------------------------------*/
.sectitle {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 margin-bottom: 30px;
}
.sectitle h2 {
 order:2;
 font-size: clamp(14px, 1.25vw, 100px);
 font-weight: 400;
 line-height: 1em;
 letter-spacing: -0.5px;
 color: var(--color-1st);
 text-align: center;
 margin-bottom: 0;
}
.sectitle p {
 order:1;
 font-size: clamp(24px, 3vw, 100px);
 font-family: var(--font-en);
 font-weight: 700;
 line-height: 1em;
 letter-spacing: -1px;
 color: var(--color-black);
 text-align: center;
 margin-bottom: 0.25em;
}


/*-----------------------------------------------------------
Common
-----------------------------------------------------------*/
.slide {
box-shadow:0px 5px 10px rgba(0,0,0,0.15);
}
.slide a {
 width:100%;
 height: auto;
 display: flex;
 flex-direction: column;
 text-decoration: none;
 overflow: hidden;
 border-radius: 5px;
}
.slide a .slimg {
 width:100%;
 height: auto;
 display: block;
 transition: .4s all;
 overflow: hidden;
 border-radius: 5px;
}
.slide a:hover .slimg {
opacity: 0.6;
}
.slide a .slcc {
width: 100%;
height: auto;
display: block;
padding:2em;
}


/*-----------------------------------------------------------
News
-----------------------------------------------------------*/
.newsmm {
 width:100%;
 height: auto;
 display: block;
 padding:100px 0;
}
.newsmm .slide a .slcc p.sldate {
 font-size: clamp(12px, 1vw, 14px);
 color: var(--color-1st);
 line-height: 1.25em;
 margin-bottom: 0.5em;
}
.newsmm .slide a:hover .slcc p.sldate {
 color:var(--color-black);
}
.newsmm .slide a .slcc h3 {
 font-size: clamp(18px, 1.25vw, 22px);
 line-height: 1.5em;
 font-weight: 600;
 margin-bottom: 0.5em;
}
.newsmm .slide a:hover .slcc h3 {
 color:var(--color-1st);
}
.newsmm .slide a .slcc p.slcom {
 font-size: clamp(14px, 1vw, 16px);
 line-height: 2em;
  display: -webkit-box;
  box-orient: vertical;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  overflow: hidden;
 margin-bottom: 0em;
}
.newsmm .slide a:hover .slcc p.slcom {
 color:var(--color-black);
}


/*-----------------------------------------------------------
Intro
-----------------------------------------------------------*/
.intromm {
width:100%;
height: auto;
display: block;
background-image: url(../img/index/introbg_m.webp);
background-repeat: no-repeat;
background-position: center bottom;
background-size: cover;
-webkit-background-size: cover;
clip-path: polygon(50% 0, 100% 10%, 100% 90%, 50% 100%, 0 90%, 0 10%);
}
.intbody {
width: 100%;
height: auto;
display: flex;
flex-direction: column;
padding:15% 8% 45%;
margin:0 auto;
}
.intbody h2 {
order:2;
font-size: clamp(24px, 2vw, 100px);
font-weight: 700;
line-height: 1.5em;
letter-spacing: -0.01em;
color: var(--color-white);
text-align: center;
margin-bottom: 0.25em;
}
.intbody p.int_en {
order:1;
font-size: clamp(60px, 10vw, 300px);
font-family: var(--font-en);
font-weight: 700;
line-height: 1em;
letter-spacing: -0.05em;
color: var(--color-white);
text-align: center;
margin-bottom: 0.15em;
}
.intbody p.int_com {
order:3;
font-size: clamp(14px, 1vw, 16px);
line-height: 2em;
color: var(--color-white);
text-align: center;
margin-bottom: 0em;
}



/*-----------------------------------------------------------
Stock
-----------------------------------------------------------*/
.stockmm {
 width:100%;
 height: auto;
 display: block;
 padding:100px 0;
}
.stockmm a {
width:100%;
height: auto;
display: block;
text-decoration: none;
padding-bottom: 25px;
transition: .4s all;
}
.stockmm a:hover {
background-color:rgba(255,255,255,0.5);
}
.stockmm a .stimg {
width:100%;
height: auto;
display: block;
transition: .4s all;
overflow: hidden;
background-color: var(--color-1st);
}
.stockmm a:hover .stimg {
opacity: 0.5;
}
.stockmm a .stimg img {
transition: .4s all;
}
.stockmm a:hover .stimg img {
opacity: 0.7;
}
.stockmm .stcc {
width:100%;
height: auto;
display: block;
padding:25px 25px 0px;
}
.stockmm .stcc h3 {
font-size: clamp(12px, 1vw, 20px);
font-weight: 400;
line-height: 1.25em;
margin-bottom: 0.5em;
}
.stockmm .stcc h4 {
font-size: clamp(16px, 1.5vw, 22px);
font-weight: 700;
line-height: 1.4em;
margin-bottom: 15px;
}
.stockmm .stcc .specbox {
width:100%;
height: auto;
display: flex;
flex-wrap: wrap;
justify-content:space-around;
margin-bottom: 15px;
}
.stockmm .stcc .specbox dl {
width:48%;
height: auto;
display: flex;
flex-direction: column;
margin:0 auto;
}
.stockmm a .stcc .specbox dl dt {
width:100%;
height: auto;
display: block;
text-align: left;
font-size: clamp(10px, 1vw, 14px);
line-height: 1em;
color:var(--color-1st);
font-weight: 400;
padding:0;
margin:0 0 3px 0;
}
.stockmm .stcc .specbox dl dd {
width:100%;
height: auto;
display: block;
text-align: left;
font-size: clamp(10px, 1vw, 14px);
line-height: 1.4em;
font-weight: 400;
padding:0 0 5px 0;
border-bottom: 1px dotted var(--color-ccc);
margin:0 0 5px 0;
}
.stockmm p.stprice {
font-size: clamp(12px, 1vw, 26px);
font-weight: 400;
text-align: center;
margin-bottom: 10px;
}
.stockmm p.stprice strong {
font-size:18px;
}


/*-----------------------------------------------------------
BoatGyro
-----------------------------------------------------------*/
.boatgyromm {
 width: 100%;
 height: auto;
 display: block;
 background-image: url(../img/index/boatgyro_bg01.webp);
 background-repeat: no-repeat;
 background-position: center top;
 background-size: 100% auto;
 clip-path: polygon(0 8%, 100% 0, 100% 100%, 0% 100%);
}
.bgo_body {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 padding: 35% 5% 50px;
}
.bgo_body h2 {
 order:2;
 font-size: clamp(16px, 1.5vw, 20px);
 font-weight: 700;
 color: var(--color-black);
 text-align: center;
 line-height: 1.4em;
 margin-bottom: 1em;
}
.bgo_body h3 {
 order:1;
 font-size: clamp(40px, 7vw, 100px);
 font-family: var(--font-en);
 font-weight: 700;
 line-height: 1em;
 letter-spacing: -0.07em;
 color: var(--color-black);
 text-align: center;
 margin-bottom: 0.25em;
}
.bgo_body ul {
 width: 100%;
 height: auto;
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
 order:6;
}
.bgo_body ul li {
 width:48%;
 margin:0 1% 2%;
}
.bgo_body p.bgo_commment {
 order:4;
 font-size: clamp(14px, 1.25vw, 100px);
 font-weight: 400;
 line-height: 2em;
 text-align: center;
 margin-bottom: 1.5em;
}
.bgo_body p.textbn_ar {
 order:5;
 margin-bottom: 1em;
}


/*-----------------------------------------------------------
Access
-----------------------------------------------------------*/
.accessmm {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 padding:20% 8% 100px;
 background-color: var(--color-f5);
 clip-path: polygon(50% 10%, 100% 0, 100% 100%, 0 100%, 0 0);
}
.acc_cc {
 width: 100%;
 height: auto;
 display: block;
}
.acc_cc h2 {
 width: 100%;
 height: auto;
 display: block;
 font-size: clamp(16px, 1vw, 50px);
 font-weight: 700;
 line-height: 1em;
 letter-spacing: -1px;
 color: var(--color-black);
 text-align: center;
 margin-bottom: 0.5em;
 padding-top:130px;
 background-image: url(../img/header/logo_b02.webp);
 background-repeat: no-repeat;
 background-position: center top;
 background-size: auto 120px;
}
.acc_cc p.acc_ad01 {
 font-size: clamp(14px, 1.25vw, 100px);
 font-weight: 400;
 line-height: 1.5em;
 text-align: center;
 margin-bottom: 0.5em;
}
.acc_cc p.acc_tel {
 width:220px;
 height: auto;
 display: flex;
 justify-content:center;
 font-size: clamp(20px, 2vw, 100px);
 font-weight: 700;
 font-family: var(--font-en);
 margin:0 auto 1em;
}
.acc_cc p.acc_tel a {
 width: 100%;
 height: auto;
 display: block;
 text-decoration: none;
 padding:0.5em 0 0.5em 15%;
 line-height: 1em;
 background-image: url(../img/header/ic-tel_b.webp);
 background-repeat: no-repeat;
 background-position: left center;
 background-size: auto 80%;
}
.acc_map {
 width: 100%;
 height: auto;
 display: block;
}
.acc_map iframe {
 width: 100%;
 height: 500px;
 display: block;
}


}

/* Style for Smartphone */
@media screen and (max-width: 768px) {

/*-----------------------------------------------------------
Templates
-----------------------------------------------------------*/

/* Header */
header {
width:100%;
height: 120px;
display: block;
position: fixed;
top:0px;
left:0;
z-index:18500;
transition: .4s all;
}
header figure {
width:120px;
height: 100px;
display: flex;
justify-content: center;
align-items: center;
position: fixed;
top:10px;
left:3%;
z-index:21500;
transition: .4s all;
}
header figure img {
width:100%;
height: auto;
display: block;
}
header figure img.logo_txt {
display: block;
}
header figure img.logo_cir {
display: none;
}

/* Header (Active) */
header.site_active {
width:100%;
height: 60px;
display: block;
position: fixed;
top:0px;
left:0;
z-index:18500;
background: rgba(255, 255, 255, 0.80);
backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
box-shadow:0px 1px 10px rgba(0,0,0,0.3);
}
header.site_active figure {
width:100px;
height: 60px;
display: flex;
justify-content: center;
align-items: center;
position: fixed;
top:0px;
left:1%;
z-index:21500;
}
header.site_active figure img {
width:auto;
height: 50px;
display: block;
}
header.site_active figure img.logo_txt {
display: none;
}
header.site_active figure img.logo_cir {
display: block;
}


/* Contact Bar */
.contactbar {
width:100%;
height: 80px;
display: flex;
justify-content: flex-end;
position: fixed;
top:auto;
bottom: -90px;
right:0;
z-index:19800;
background-color: var(--color-2nd);
box-shadow: 0px 0px 10px rgba(0,0,0,0.3);
transition: .4s all;
}
.contactbar li.cb_tel {
width:35%;
height: 80px;
display: block;
margin-right:0px;
}
.contactbar li.cb_tel a {
width:100%;
height: 80px;
display: block;
text-decoration: none;
color:var(--color-white);
font-size:14px;
letter-spacing: 0px;
font-weight: 400;
line-height: 15px;
text-align: center;
background-image: url(../img/header/ic-tel_w.webp);
background-repeat: no-repeat;
background-position: center 10px;
background-size: auto 30px;
padding:45px 0 10px 0;
transition: .4s all;
}
.contactbar li.cb_tel a:hover {
background-color: var(--color-1st);
opacity: 1;
}
.contactbar li.cb_mail {
width:35%;
height: 80px;
display: block;
margin-right:0px;
}
.contactbar li.cb_mail a {
width:100%;
height: 80px;
display: block;
text-decoration: none;
color:var(--color-white);
font-size:12px;
letter-spacing: 0px;
font-weight: 400;
line-height: 15px;
text-align: center;
background-image: url(../img/header/ic-mail_w.webp);
background-repeat: no-repeat;
background-position: center 10px;
background-size: auto 30px;
padding:45px 0 10px 0;
transition: .4s all;
}
.contactbar li.cb_mail a:hover {
background-color: var(--color-1st);
opacity: 1;
}

.contactbar li.cb_ins {
width:15%;
height: 80px;
display: block;
}
.contactbar li.cb_ins a {
width:100%;
height: 80px;
display: block;
text-indent: -9999px;
background-image: url(../img/header/ic-ins_w.webp);
background-repeat: no-repeat;
background-position:center 20px;
background-size: auto 30px;
transition: .4s all;
}
.contactbar li.cb_line {
width:15%;
height: 80px;
display: block;
}
.contactbar li.cb_line a {
width:100%;
height: 80px;
display: block;
text-indent: -9999px;
background-image: url(../img/header/ic-line_w.webp);
background-repeat: no-repeat;
background-position: center 20px;
background-size: auto 30px;
transition: .4s all;
}
.contactbar li.cb_ins a:hover, .contactbar li.cb_line a:hover {
background-color: var(--color-1st);
}

/* Contact Bar(Active) */
.contactbar.site_active {
bottom: 0px;
}


/* Footer */
footer {
width:100%;
height:auto;
display: block;
}
.ftbody {
width:100%;
max-width:1600px;
height: auto;
display: block;
margin:0 auto;
padding:20px 5% 100px;
}
.ftbody ul {
display: none;
}
.ftbody p.ftcopy {
text-align: center;
font-size:12px;
line-height: 1em;
margin:0;
color:var(--color-white);
}



/*-----------------------------------------------------------
TopSection
-----------------------------------------------------------*/
.topsection {
 width: 100%;
 height: auto;
 aspect-ratio: 3 / 4;
 display: block;
 overflow: hidden;
}
.topsection #slidemm, .topsection #slidemm div, .topsection #slidemm div picture {
  width: 100%;
  height: auto;
  display: block;
}


/*-----------------------------------------------------------
Common
-----------------------------------------------------------*/
.slide {
box-shadow:0px 5px 10px rgba(0,0,0,0.15);
}
.slide a {
 width:100%;
 height: auto;
 display: flex;
 flex-direction: column;
 text-decoration: none;
 overflow: hidden;
 border-radius: 5px;
}
.slide a .slimg {
 width:100%;
 height: auto;
 display: block;
 transition: .4s all;
 overflow: hidden;
 border-radius: 5px;
}
.slide a:hover .slimg {
opacity: 0.6;
}
.slide a .slcc {
width: 100%;
height: auto;
display: block;
padding:2em;
}


/*-----------------------------------------------------------
SectionTitle
-----------------------------------------------------------*/
.sectitle {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 margin-bottom: 30px;
}
.sectitle h2 {
 order:2;
 font-size: clamp(14px, 1.25vw, 100px);
 font-weight: 400;
 line-height: 1em;
 letter-spacing: -0.5px;
 color: var(--color-1st);
 text-align: center;
 margin-bottom: 0;
}
.sectitle p {
 order:1;
 font-size: clamp(24px, 4vw, 100px);
 font-family: var(--font-en);
 font-weight: 700;
 line-height: 1em;
 letter-spacing: -1px;
 color: var(--color-black);
 text-align: center;
 margin-bottom: 0.25em;
}


/*-----------------------------------------------------------
News
-----------------------------------------------------------*/
.newsmm {
 width:100%;
 height: auto;
 display: block;
 padding:100px 0;
}
.newsmm .slide a .slcc p.sldate {
 font-size: clamp(12px, 1vw, 14px);
 color: var(--color-1st);
 line-height: 1.25em;
 margin-bottom: 0.5em;
}
.newsmm .slide a:hover .slcc p.sldate {
 color:var(--color-black);
}
.newsmm .slide a .slcc h3 {
 font-size: clamp(18px, 1.25vw, 22px);
 line-height: 1.5em;
 font-weight: 600;
 margin-bottom: 0.5em;
}
.newsmm .slide a:hover .slcc h3 {
 color:var(--color-1st);
}
.newsmm .slide a .slcc p.slcom {
 font-size: clamp(14px, 1vw, 16px);
 line-height: 2em;
  display: -webkit-box;
  box-orient: vertical;
  -webkit-box-orient: vertical;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  overflow: hidden;
 margin-bottom: 0em;
}
.newsmm .slide a:hover .slcc p.slcom {
 color:var(--color-black);
}


/*-----------------------------------------------------------
Intro
-----------------------------------------------------------*/
.intromm {
width:100%;
height: auto;
display: block;
background-image: url(../img/index/introbg_m.webp);
background-repeat: no-repeat;
background-position: center bottom;
background-size: cover;
-webkit-background-size: cover;
clip-path: polygon(50% 0, 100% 5%, 100% 95%, 50% 100%, 0 95%, 0 5%);
}
.intbody {
width: 100%;
height: auto;
display: flex;
flex-direction: column;
padding:25% 8% 65%;
margin:0 auto;
}
.intbody h2 {
order:2;
font-size: 18px;
font-weight: 700;
line-height: 1.5em;
letter-spacing: -0.01em;
color: var(--color-white);
text-align: center;
margin-bottom: 0.25em;
}
.intbody p.int_en {
order:1;
font-size: 60px;
font-family: var(--font-en);
font-weight: 700;
line-height: 1em;
letter-spacing: -0.05em;
color: var(--color-white);
text-align: center;
margin-bottom: 0.15em;
}
.intbody p.int_com {
order:3;
font-size: 14px;
line-height: 2em;
color: var(--color-white);
text-align: center;
margin-bottom: 0em;
}
.intbody p.int_com br {
  display: none;
}


/*-----------------------------------------------------------
Stock
-----------------------------------------------------------*/
.stockmm {
 width: 100%;
 height: auto;
 display: block;
 padding:100px 0 50px;
}
.stockmm a {
width:100%;
height: auto;
display: block;
text-decoration: none;
padding-bottom: 25px;
transition: .4s all;
}
.stockmm a:hover {
background-color:rgba(255,255,255,0.5);
}
.stockmm a .stimg {
width:100%;
height: auto;
display: block;
transition: .4s all;
overflow: hidden;
background-color: var(--color-1st);
}
.stockmm a:hover .stimg {
opacity: 0.5;
}
.stockmm a .stimg img {
transition: .4s all;
}
.stockmm a:hover .stimg img {
opacity: 0.7;
}
.stockmm .stcc {
width:100%;
height: auto;
display: block;
padding:25px 25px 0px;
}
.stockmm .stcc h3 {
font-size: clamp(12px, 1vw, 20px);
font-weight: 400;
line-height: 1.25em;
margin-bottom: 0.5em;
}
.stockmm .stcc h4 {
font-size: clamp(16px, 1.5vw, 22px);
font-weight: 700;
line-height: 1.4em;
margin-bottom: 15px;
}
.stockmm .stcc .specbox {
width:100%;
height: auto;
display: flex;
flex-wrap: wrap;
justify-content:space-around;
margin-bottom: 15px;
}
.stockmm .stcc .specbox dl {
width:48%;
height: auto;
display: flex;
flex-direction: column;
margin:0 auto;
}
.stockmm a .stcc .specbox dl dt {
width:100%;
height: auto;
display: block;
text-align: left;
font-size: clamp(10px, 1vw, 14px);
line-height: 1em;
color:var(--color-1st);
font-weight: 400;
padding:0;
margin:0 0 3px 0;
}
.stockmm .stcc .specbox dl dd {
width:100%;
height: auto;
display: block;
text-align: left;
font-size: clamp(10px, 1vw, 14px);
line-height: 1.4em;
font-weight: 400;
padding:0 0 5px 0;
border-bottom: 1px dotted var(--color-ccc);
margin:0 0 5px 0;
}
.stockmm p.stprice {
font-size: clamp(16x, 1.5vw, 26px);
font-weight: 400;
text-align: center;
margin-bottom: 10px;
}
.stockmm p.stprice strong {
font-size:24px;
}


/*-----------------------------------------------------------
BoatGyro
-----------------------------------------------------------*/
.boatgyromm {
 width: 100%;
 height: auto;
 display: block;
 background-image: url(../img/index/boatgyro_bg01.webp);
 background-repeat: no-repeat;
 background-position: center top;
 background-size: 100% auto;
 clip-path: polygon(0 5%, 100% 0, 100% 100%, 0% 100%);
}
.bgo_body {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 padding: 35% 5% 50px;
}
.bgo_body h2 {
 order:2;
 font-size: clamp(16px, 1.5vw, 20px);
 font-weight: 700;
 color: var(--color-black);
 text-align: center;
 line-height: 1.4em;
 margin-bottom: 1em;
}
.bgo_body h3 {
 order:1;
 font-size: clamp(40px, 7vw, 100px);
 font-family: var(--font-en);
 font-weight: 700;
 line-height: 1em;
 letter-spacing: -0.07em;
 color: var(--color-black);
 text-align: center;
 margin-bottom: 0.25em;
}
.bgo_body ul {
 width: 100%;
 height: auto;
 display: flex;
 justify-content: space-between;
 flex-wrap: wrap;
 order:6;
}
.bgo_body ul li {
 width:48%;
 margin:0 1% 2%;
}
.bgo_body p.bgo_commment {
 order:4;
 font-size: clamp(14px, 1.25vw, 100px);
 font-weight: 400;
 line-height: 2em;
 text-align: left;
 margin-bottom: 1.5em;
}
.bgo_body p.bgo_commment br {
  display: none;
}
.bgo_body p.textbn_ar {
 order:5;
 margin-bottom: 1em;
}


/*-----------------------------------------------------------
Access
-----------------------------------------------------------*/
.accessmm {
 width: 100%;
 height: auto;
 display: flex;
 flex-direction: column;
 padding:25% 8% 100px;
 background-color: var(--color-f5);
 clip-path: polygon(50% 5%, 100% 0, 100% 100%, 0 100%, 0 0);
}
.acc_cc {
 width: 100%;
 height: auto;
 display: block;
}
.acc_cc h2 {
 width: 100%;
 height: auto;
 display: block;
 font-size: clamp(16px, 1vw, 50px);
 font-weight: 700;
 line-height: 1em;
 letter-spacing: -1px;
 color: var(--color-black);
 text-align: center;
 margin-bottom: 0.5em;
 padding-top:130px;
 background-image: url(../img/header/logo_b02.webp);
 background-repeat: no-repeat;
 background-position: center top;
 background-size: auto 120px;
}
.acc_cc p.acc_ad01 {
 font-size: clamp(14px, 1.25vw, 100px);
 font-weight: 400;
 line-height: 1.5em;
 text-align: center;
 margin-bottom: 0.5em;
}
.acc_cc p.acc_tel {
 width:240px;
 height: auto;
 display: flex;
 justify-content:center;
 font-size: clamp(20px, 2vw, 100px);
 font-weight: 700;
 font-family: var(--font-en);
 margin:0 auto 1em;
}
.acc_cc p.acc_tel a {
 width: 100%;
 height: auto;
 display: block;
 text-decoration: none;
 padding:0.5em 0 0.5em 15%;
 line-height: 1em;
 background-image: url(../img/header/ic-tel_b.webp);
 background-repeat: no-repeat;
 background-position: left center;
 background-size: auto 80%;
}
.acc_map {
 width: 100%;
 height: auto;
 display: block;
}
.acc_map iframe {
 width: 100%;
 height: 500px;
 display: block;
}


}

