@charset "UTF-8";
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
svg,
main {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font-weight: inherit;
  font-style: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers  */
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
picture,
main {
  display: block;
}

body {
  line-height: 1;
}

ol,
ul {
  list-style: none;
}

blockquote,
q {
  quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
  content: '';
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

img {
  vertical-align: bottom;
}

a {
  outline: none;
  text-decoration: none;
}

*,
*:before,
*:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*::selection {
  background-color: rgba(83, 88, 90, 0.9);
  color: #FFF;
}

a img {
    -webkit-transition: opacity 0.15s ease-in-out;
    transition: opacity 0.15s ease-in-out;
}

@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Medium");
}

@font-face {
  font-family: "Yu Gothic M";
  src: local("Yu Gothic Bold");
  font-weight: bold;
}

html {
  font-size: 62.5%;
  font-family: "Meiryo UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
"Yu Gothic UI", "MS PGothic", sans-serif !Important;
}

body {
  font-size: 10px;
  color: #000;
  width: 100%;
  position: relative;
  -webkit-text-size-adjust: none;
  -webkit-font-smoothing: antialiased;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
}

a {
  color: #000;
}

a:hover {
  text-decoration: none;
}

main {
	font-family: a-otf-ryumin-pr6n, serif;
	/* font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif; */
}

/*メニューをページ下部に固定*/
#sp-fixed-menu{
   position: fixed;
   width: 100%;
   bottom: 0px;
   font-size: 0;
   opacity: 1;
   z-index: 99;
}

/*メニューを横並びにする*/
#sp-fixed-menu ul{
   display: flex;
   list-style: none;
   padding:0;
   margin:0;
   width:100%;
}

#sp-fixed-menu li{
   justify-content: center;
   align-items: center;
   width: 50%;
   padding:0;
   margin:0;
   font-size: 14px;
   border-top: 1px solid #fff;
	border-right: 1px solid #fff;
}

/*左側メニューを緑色に*/
#sp-fixed-menu li:first-child{
   background: #c7000b;
}
#sp-fixed-menu li:first-child:hover{
   background: #000;
}

/*左側メニューをオレンジ色に*/
#sp-fixed-menu li:last-child{
   background: #c7000b;
}

/*ボタンを調整*/
#sp-fixed-menu li a{
   color: #fff;
   text-align: center;
   display:block;
   width: 100%;
   padding:20px;
}
/*PCの場合にはメニューを表示させない*/
@media (min-width: 599px) {
   .for-sp{
      display:none;
    }
}

/* ----- footer ----- */

.footer {
	position: relative;
	padding: 50px 0 40px;
	background-color: #c7000b;
	color: #fff;
	font-size: 1.3rem;
	text-align: center;
}
.footer a {
	color: #fff;
}
.footer-inner {
	width: 100%;
	max-width: 1200px;
	margin-right: auto;
	margin-left: auto;
	padding-right: 0;
	padding-left: 0;
}
.footer-links {
	-ms-flex-wrap: wrap;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin: 0 -1.5em;
	line-height: 2;
}
.footer-links > li {
	position: relative;
	padding: 0 1.5em;
}
.footer-links > li::before {
	position: absolute;
	left: -.5em;
	content: "｜";
}
.footer-links > li:first-child::before {
	content: none;
}
.footer-links > li a {
	-webkit-transition: opacity 0.3s ease-in-out;
	transition: opacity 0.3s ease-in-out;
}
/* ----- 下線 ----- */
.footer-links li a:after { content: ''; width: calc(100% - 20px); bottom: 0px; left: 10px; height: 1px; background-color: #fff; position: absolute; pointer-events: none; transition: all 0.15s ease-out; transform: scaleX(0); }
.footer-links li a:hover { color: #fff; }
.footer-links li a:hover { cursor: default; color: #fff; }
.footer-links li a:hover:after { transform: scaleX(1); }
.footer-links li a.on { cursor: default; color: #fff; }
.footer-links li a.on:after { transform: scaleX(1); }

.footer-links-wrap {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
}
.footer-logo {
	margin-top: 30px;
	text-align: center;
}
.footer-logo:first-child {
	margin-top: 0;
}
.footer-logo a {
	display: block;
	width: 150px;
	margin: 0 auto;
	padding: 10px;
}
.footer-logo a:hover {
	opacity: 0.5;
}
.footer-sns {
	margin-top: 30px;
	text-align: center;
}
.footer-sns:first-child {
	margin-top: 0;
}
.footer-sns a {
	display: inline-block;
	width: 70px;
	margin: 0 auto;
	padding: 10px;
}
.footer-sns a:hover {
	opacity: 0.5;
}
.footer-sns a img {
	width: 100%;
}

.footer-copyright {
	margin-top: 30px;
	font-family: "Roboto", "Noto Sans JP", "Helvetica Neue", arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", meiryo, sans-serif;
	font-weight: 300;
	text-align: center;
}
.footer-toTop {
	position: fixed;
	display: block;
	right: 30px;
	bottom: 30px;
	width: 40px;
	height: 40px;
	background: rgba(0, 0, 0, 0.7);
	text-indent: -9999999px;
	border-radius: 50%;
	opacity: 0.8;
	-webkit-transition: opacity .8s, background-color 0.6s;
	transition: opacity .8s, background-color 0.6s;
	z-index: 6;
}
.footer-toTop.active, .footer-toTop:hover {
	opacity: 1;
}
.footer-toTop:hover {
	background: rgba(189, 0, 0, 0.9);
}
.footer-toTop:before {
	content: '';
	position: absolute;
	left: 50%;
	top: 50%;
	width: 8px;
	height: 8px;
	border-top: 1px solid #fff;
	border-left: 1px solid #fff;
	-webkit-transform: rotate(45deg) translate(-60%, 10%);
	transform: rotate(45deg) translate(-60%, 10%);
}

@media only screen and (max-width: 599px) {
	.footer {
		padding: 30px 0;
		font-size: 1.2rem;
		margin-bottom: 70px;
	}
	.footer-inner {
		max-width: 100%;
		padding-right: 0;
		padding-left: 0;
	}
	.footer-links {
		flex-wrap: wrap;
		margin: -8px 0 0 0;
	}
	.footer-links > li {
		width: 22%;
        padding: 5px 0 5px 0;
        margin: 0 0 10px 0;
    }
	li.sp-f::after {
		content: "A" ;
		white-space: pre;
	}
	.footer-logo {
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.footer-logo a {
		padding: 8px 8px 6px;
	}
	.footer-logo a img {
		width: 80%;
	}
	.footer-sns {
		margin-top: 20px;
		margin-bottom: 20px;
	}
	.footer-sns a {
		padding: 8px 8px 6px;
	}
	.footer-sns a img {
		width: 75%;
	}	
	.footer-copyright {
		margin-top: 16px;
	}
	.footer-toTop {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
        -ms-flex-flow: row nowrap;
            flex-flow: row nowrap;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    right: auto;
    bottom: auto;
    width: 100%;
    height: 14vw;
    background: #000;
    text-indent: 0;
    opacity: 1;
	border-radius: 0;
	color: #fff;
	}
	.footer-toTop:before {
    content: '';
    position: absolute;
    left: 50%;
    top: 30%;
    width: 8px;
    height: 8px;
    border-top: 1px solid #fff;
    border-left: 1px solid #fff;
    -webkit-transform: rotate(45deg) translate(-60%, 10%);
    transform: rotate(45deg) translate(-60%, 10%);
	}
	.footer-links > li::before {
    content: none;
}
}


/* 0705 new */

body.nc *:before, body.nc *:after {
	transition: none !important; transition-delay: 0s !important; animation-delay: 0s !important; animation-duration: 0s !important; }

.ymf { font-family: 'Noto Sans JP', sans-serif; }

/* Header */
header {
	padding: 20px; transition: all 1s ease-out;
	opacity: 0;
	position: relative;
	z-index: 1000;
	height: 100vh;
}
.animate header.etcc {
	height: auto;
    background: linear-gradient(180deg, rgba(0, 0, 0, 0.9), rgba(242, 241, 241, 1));
}
.animate header.mvto {
	height: auto;
    background: none;
	position: fixed;
}

.animate header { opacity: 1; background-position: 0px 0px; }
header .navc { height: 94px; }
header nav { width: 100%; left: 0px; top: -80px; transition: all 0.2s ease-out; position: static; z-index: 1000; }
header nav > div { width: 100%; margin: 0 auto; height: 94px; display: flex; align-items: center; }
header nav .logo { margin-right: auto; }

header nav .logo a {
    display: block;
    width: 130px;
    padding: 0;
}
header nav .logo a:hover {
	opacity: 0.5;
}
header nav .logo img {
    max-width: 100%;
}
header .hd { max-width: 1000px; margin: 0 auto; padding: 0; }
header .lf { text-align: left; max-width: 900px; /* max-width: calc(100% - 300px); */}
.float_nav header nav, header.def nav {
	position: fixed;
	top: 0px;
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.9)), to(rgba(0, 0, 0, 0)));
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0));
	padding: 0;
}
.float_nav header nav .logo img {
	width: 80%;
    padding: 0;
}
.float_nav header .spm {
    top: 10px;
    right: 20px;
}
.float_nav header nav > div {
    padding: 10px 20px 10px 20px;
}

.float_nav header nav ul li:last-child, header.def nav ul li:last-child { opacity: 1; pointer-events: all; }
header.def { background: none; padding: 0px 20px; }
header.def .navc { height: 0px; }

/* Animation */
.ani_a, .ani_a .a1, .ani_a .a2, .ani_a .a3, .ani_a .a4, .ani_a .a5, .ani_a .a6, .ani_a .a7,
.ani_a .a2-1, .ani_a .a2-2, .ani_a .a2-3, .ani_a .a2-4, .ani_a .a2-5, .ani_a .a2-6, .ani_a .a2-7 
{ transition: all 1s ease-out; opacity: 0; transform: translateY(20px); }

.ani_a.do, .ani_a.do .a1, .ani_a.do .a2, .ani_a.do .a3, .ani_a.do .a4, .ani_a.do .a5, .ani_a.do .a6, .ani_a.do .a7,
.ani_a.do .a2-1, .ani_a.do .a2-2, .ani_a.do .a2-3, .ani_a.do .a2-4, .ani_a.do .a2-5, .ani_a.do .a2-6, .ani_a.do .a2-7 
{ opacity: 1; transform: translateY(0px); }

.ani_a .a1 { transition-delay: 0.25s; margin-top: 30px;}
.ani_a .a2-1 { transition-delay: 0.7s;}
.ani_a .a2-2 { transition-delay: 0.95s; margin-top: -226px;}
.ani_a .a2-3 { transition-delay: 1.2s; margin-top: -226px;}
.ani_a .a2-4 { transition-delay: 1.45s; margin-top: -226px;}
.ani_a .a2-5 { transition-delay: 1.7s; margin-top: -226px;}
.ani_a .a2-6 { transition-delay: 1.95s; margin-top: -226px;}
.ani_a .a2-7 { transition-delay: 2.2s; margin-top: -226px;}
.ani_a .a3 { transition-delay: 4s; margin-top: -226px;}

.ani_a .a4 { transition-delay: 0.5s; }
.ani_a .a5 { transition-delay: 0.75s; }
.ani_a .a6 { transition-delay: 1s; }
.ani_a .a7 { transition-delay: 1.25s; }
.ani_np { transition: none; opacity: 1; transform: translateY(0px); }



/* Header */
header .navc { height: 94px; }
header nav { top: 0px; position: fixed; }
header nav > div { height: auto; display: block; padding: 20px; position: relative; }
header nav .logo { margin-right: 0; }
header nav ul { display: block; position: fixed; right: 0px; top: 0px; width: 100%; background-color: #c7000b; height: 100vh; padding: 40px 0 40px 0; transition: all 0.2s ease-out; transform: translateX(20px); opacity: 0; pointer-events: none; visibility: hidden; }
header nav ul li:last-child,
header nav ul li { margin: 0px; font-size: 2rem; padding: 5px 5px; /*border-bottom: 1px solid #fff;*/ text-align: center;}
header nav ul li:last-child a,
header nav ul li a { display: block; height: auto; padding: 10px 25px; margin: 0px; color: #fff; }
header nav ul li:last-child a { width: 100%; }
header nav ul li a:after { display: none; }
header nav ul li a:hover { color: #fff; text-decoration: underline; text-underline-offset: 7px;}
header nav ul li a.hon { color: #fff; text-decoration: underline; text-underline-offset: 7px;}

.menu_on header nav ul { transform: translateX(0px); opacity: 1; pointer-events: all; visibility: visible; box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.1); overflow: auto; }

header nav ul li.h-contact a {
    background: none;
}

header .spm { display: block; position: absolute; z-index: 2; width: 48px; height: 48px; top: 40px; right: 40px; }
header .spm:before, header .spm:after, header .spm i:before { content: ''; width: 48px; height: 2px; position: absolute; background-color: #fff; /*left: 6px;*/ top: 50%; margin-top: -1px; }
header .spm:before { animation: spm_b ease-out 0.2s 1 forwards; }
header .spm:after { animation: spm_a ease-out 0.2s 1 forwards; }
header .spm i:before { animation: spm_i ease-out 0.2s 1 forwards; }
.menu_on header .spm:before { animation: spm_b_on ease-out 0.2s 1 forwards; }
.menu_on header .spm:after { animation: spm_a_on ease-out 0.2s 1 forwards; }
.menu_on header .spm i:before { animation: spm_i_on ease-out 0.2s 1 forwards; }

@keyframes spm_b { 100% { transform: translateY(-10px); } 50% { transform: translateY(0px); } 0% { transform: translateY(0px) rotate(45deg); background-color: #fff; } }
@keyframes spm_a { 100% { transform: translateY(10px); } 50% { transform: translateY(0px); } 0% { transform: translateY(0px) rotate(-45deg); background-color: #fff; } }
@keyframes spm_i { 100% { opacity: 1; } 0% { opacity: 0; } }
@keyframes spm_b_on { 0% { transform: translateY(-10px); } 50% { transform: translateY(0px); } 100% { transform: translateY(0px) rotate(45deg); background-color: #fff; } }
@keyframes spm_a_on { 0% { transform: translateY(10px); } 50% { transform: translateY(0px); } 100% { transform: translateY(0px) rotate(-45deg); background-color: #fff; } }
@keyframes spm_i_on { 0% { opacity: 1; } 100% { opacity: 0; } }



/* TB Responsive */
@media screen and (max-width: 1024px) {
header nav .logo a {
    display: block;
    width: 50%;
    padding: 0;
}
header nav .logo img {
    width: 35%;
}

.float_nav_sp header nav {
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.9)), to(rgba(0, 0, 0, 0)));
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0));
	padding: 0px;
}
.float_nav header nav .logo img {
	width: 30%;
    padding: 0;
}

}

/* SP Responsive */
@media screen and (max-width: 599px) {

.ymf { font-family: 'Noto Sans JP', sans-serif; }
.animate header.etcc { padding: 0; }
header .navc { height: 84px; }
header nav { top: 0px; position: fixed; }
header nav > div { height: 84px; display: block; padding: 10px; position: relative; }
header nav .logo { margin-right: 0px; }
header nav ul { display: block; position: fixed; right: 0px; top: 0px; width: 100%; background-color: #c7000b; height: 100vh; padding-top: 60px; transition: all 0.2s ease-out; transform: translateX(20px); opacity: 0; pointer-events: none; visibility: hidden; z-index: 1; }
header nav ul li:last-child,
header nav ul li { margin: 0px; font-size: 2.1rem; text-align: center; padding: 8px 5px; /* border-bottom: 1px solid #fff; */}
header nav ul li:last-child a,
header nav ul li a { display: block; height: auto; padding: 10px 25px; margin: 0px; color: #fff; }
header nav ul li:last-child a { width: 100%; }
header nav ul li a:after { display: none; }
header nav ul li a:hover, header nav ul li a.on { color: #fff; }
.menu_on header nav ul { transform: translateX(0px); opacity: 1; pointer-events: all; visibility: visible; box-shadow: 0px 0px 3px rgba(0, 0, 0, 0.1); }

header nav ul li.h-contact a {
    background: none;
}
header nav .logo a {
    display: block;
    width: 50%;
    padding: 0;
}
header nav .logo img {
    width: 50%;
}
.float_nav header nav .logo img {
	width: 35%;
    padding: 0;
}

header .spm { display: block; position: absolute; z-index: 2; width: 40px; height: 40px; top: 10px; right: 10px; }
header .spm:before, header .spm:after, header .spm i:before { content: ''; width: 28px; height: 2px; position: absolute; background-color: #fff; left: 6px; top: 50%; margin-top: -1px; }
header .spm:before { animation: spm_b ease-out 0.2s 1 forwards; }
header .spm:after { animation: spm_a ease-out 0.2s 1 forwards; }
header .spm i:before { animation: spm_i ease-out 0.2s 1 forwards; }
.menu_on header .spm:before { animation: spm_b_on ease-out 0.2s 1 forwards; }
.menu_on header .spm:after { animation: spm_a_on ease-out 0.2s 1 forwards; }
.menu_on header .spm i:before { animation: spm_i_on ease-out 0.2s 1 forwards; }

@keyframes spm_b { 100% { transform: translateY(-10px); } 50% { transform: translateY(0px); } 0% { transform: translateY(0px) rotate(45deg); background-color: #fff; } }
@keyframes spm_a { 100% { transform: translateY(10px); } 50% { transform: translateY(0px); } 0% { transform: translateY(0px) rotate(-45deg); background-color: #fff; } }
@keyframes spm_i { 100% { opacity: 1; } 0% { opacity: 0; } }
@keyframes spm_b_on { 0% { transform: translateY(-10px); } 50% { transform: translateY(0px); } 100% { transform: translateY(0px) rotate(45deg); background-color: #fff; } }
@keyframes spm_a_on { 0% { transform: translateY(10px); } 50% { transform: translateY(0px); } 100% { transform: translateY(0px) rotate(-45deg); background-color: #fff; } }
@keyframes spm_i_on { 0% { opacity: 1; } 100% { opacity: 0; } }

header .hd { padding: 20px; }
header .lf { float: none; text-align: center; max-width: 100%; }
header .lf img { width: 320px; }

.float_nav_sp header nav {
	background: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.9)), to(rgba(0, 0, 0, 0)));
	background: linear-gradient(180deg, rgba(0, 0, 0, 0.9), rgba(0, 0, 0, 0));
	padding: 0px;
	}
header.def { background: none; padding: 0px; }
header.def .navc { height: 20px; }

/* Animation */
.ani_a .a1 { transition-delay: 0.25s; }
.ani_a .a2-1 { display: none; }
.ani_a .a2-2 { display: none; }
.ani_a .a2-3 { display: none; }
.ani_a .a2-4 { display: none; }
.ani_a .a2-5 { display: none; }
.ani_a .a2-6 { display: none; }
.ani_a .a2-7 { display: none; }
.ani_a .a3 { transition-delay: 0.5s; margin-top: 0px; }

}

/* コンテンツ
-------------------------------------------------- */

.animation_box {
  opacity: 0;
  transform: translateY(80px);
  transition: opacity 0.5s, transform 0.5s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/*ラッパー要素*/
.wrapper-ls {
	font-family: 'Noto Sans JP', sans-serif;
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 80px 0 0 0;
}
/*コンテンツのブロック*/
.contents-ls-l {
	width: 48%;
	display: block;
    position: relative;
    float: left;
}
.contents-ls-l div{ padding-top: 10vh; }
.contents-ls-l div:last-child{ padding-bottom: 10vh; }
.contents-ls-l h5 {
	font-weight: bold;
	color: #fff;
    position: relative;
    padding-bottom: 16px;
    width: 100%;
    font-size: 30px;
    line-height: 50px;
    letter-spacing: 0.15em;
	border-bottom: 1px solid #c7000b;
}
.contents-ls-l .text {
	color: #fff;
    margin-top: 20px;
    font-size: 18px;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-align: justify;
}
.contents-ls-l .notes {
    margin-top: 20px;
    font-size: 12px;
    line-height: 18px;
    letter-spacing: 0.05em;
    text-align: justify;
    color: #fff;
}
.contents-ls-l ul.notes li {
	margin-left: 0;
	text-indent: 0;
	text-align: justify;
}

/*画像のブロック*/
.images-ls-r {
	width: 50%;
    display: block;
    position: relative;
    float: left;
}
.images-ls-r img {
    width: 100%;
}
.text-b-frame {
  display: flex;
  justify-content: space-between;
}
.text-b-l, .text-b-r {
	display: inline-block;
	color: #fff;
    margin-top: 5px;
    font-size: 10px;
    line-height: 1em;
    letter-spacing: 0.05em;
}

@media (max-width: 599px) {
.wrapper-ls {
    display: block;
    justify-content: normal;
    position: relative;
    padding: 50px 0 10px 0;
}
.contents-ls-l h5 {
    padding-bottom: 10px;
    padding-bottom: 2.66666vw;
    font-size: 18px;
    font-size: 4.8vw;
    line-height: 27px;
    line-height: 7.19999vw;
}
.contents-ls-l {
	width: 100%;
	display: block;
    position: relative;
    float: none;
}
.images-ls-r {
	width: 100%;
    display: block;
    position: relative;
    float: none;
}
.contents-ls-l .text {
		margin: 10px 0 10px 0;
		margin: 3vw 0 5vw 0;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 19px;
		line-height: 5.06666vw;
}
.contents-ls-l .notes {
	margin: 3vw 0 5vw 0;
		font-size: 10px;
		font-size: 2.66666vw;
		line-height: 15px;
		line-height: 4vw;
}
}


/* about（トップ）
-------------------------------------------------- */

.about-h {
    background: linear-gradient(#f2f1f1, #cdcccc);
}
.about-r {
    background: #c7000b;
}
.about-gb {
    background: #48bcc4;
}
.about-pet {
    background: linear-gradient(#f3f4f7, #81d8d0);
}
.about-p {
    background: linear-gradient(#f8e5be, #ae9e7c);
}
h3.top-copy {
	font-family: a-otf-ryumin-pr6n, serif;
	color: #000;
	font-weight: 550;
	font-size: 4.7rem;
	line-height: 75px;
	letter-spacing: 0.15em;
	/*text-indent: 0.1em;*/
	text-align: center;
	/*white-space: nowrap;*/
	vertical-align: middle;
	margin: 0 auto;
	padding: 10px 0 20px 0;
	/*text-shadow: 0 0 3px #333;*/
}
h3.p-c-w {
    color: #fff;
	text-shadow: 0 0 5px #000;
}
h3.p-c-w-gb {
    color: #fff;
	text-shadow: 3px 3px 0 #3a8b98;
}
p.p-c-r {
    color: #c7000b;
	font-size: 16px;
}
p.p-c-ki {
    color: #cdba92;
}
p.p-c-gb-f {
    color: #48bcc4;
}
p.p-c-gb {
    color: #000;
}
p.p-c-t-w {
	color: #fff;
}
.top-heading-category {
    text-align: center;
    padding: 2em 0 0.5em 0;
    color: #888888;
    font-size: 4.8rem;
    letter-spacing: .05em;
    font-family: 'Playball', cursive;
}
.top-heading-category-r {
    text-align: center;
    padding: 2em 0 0.5em 0;
    color: #c7000b;
    font-size: 4.8rem;
    letter-spacing: .05em;
    font-family: 'Playball', cursive;
}
.text-c {
	color: #000;
    margin: 10px 0 10px 0;
    font-size: 18px;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-align: center;
}
.text-c {
	color: #000;
    margin-top: 10px;
    font-size: 18px;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-align: center;
}
.text-c-sb {
	font-family: 'Noto Sans JP', sans-serif;
	color: #000;
    margin-top: 10px;
    font-size: 14px;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-align: center;
}
.text-c-sb-w {
	font-family: 'Noto Sans JP', sans-serif;
	color: #fff;
    font-size: 14px;
	font-weight: bold;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-align: center;
	text-shadow: 0 0 5px #000;
}
h4.top-copy-s {
	font-family: a-otf-ryumin-pr6n, serif;
	color: #fff;
	font-weight: 500;
	font-size: 60px;
    line-height: 85px;
    letter-spacing: 0.2em;
	/*text-indent: 0.1em;*/
	text-align: center;
	/*white-space: nowrap;*/
	vertical-align: middle;
	margin: 0 auto;
	padding: 10px 0 20px 0;
	text-shadow: 0 0 3px #333;
	height: 100vh;
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
}
h4.top-copy-p {
	font-family: a-otf-ryumin-pr6n, serif;
	color: #fff;
	font-weight: 500;
	font-size: 60px;
    line-height: 85px;
    letter-spacing: 0.1em;
	/*text-indent: 0.1em;*/
	text-align: center;
	/*white-space: nowrap;*/
	vertical-align: middle;
	margin: 0 auto;
	padding: 10px 0 20px 0;
	text-shadow: 0 0 3px #333;
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
}

.top-heading-s .bg-s:nth-of-type(1) {
	background-image: url(../img/top-heading-s-bg1.webp);
	background-attachment: fixed;
}

.top-heading-s .bg-s {
	max-width: none;
	background-size: 100%;
	height: 100vh;
}
.ba-t {
    display: block;
	font-family: 'Noto Sans JP', sans-serif;
    color: #000;
    margin: 10px 0 10px 0;
    font-size: 12px;
    line-height: 1em;
    letter-spacing: 0.05em;
    text-align: left;
}
.ba-t-s {
	font-family: 'Noto Sans JP', sans-serif;
    color: #000;
    margin: 10px 0 10px 0;
    font-size: 14px;
    line-height: 1em;
    letter-spacing: 0.05em;
    text-align: left;
}


/*ラッパー要素（背景画像）*/
.wrapper-ls-top {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 50px 0 0 0;
}
/*コンテンツのブロック*/
.contents-ls-l-top {
	width: 48%;
	display: block;
    position: relative;
    float: left;
}
.contents-ls-l-top img {
    width: 100%;
}
.contents-ls-l-top div{ padding-top: 10vh; }
.contents-ls-l-top div:last-child{ padding-bottom: 10vh; }
.contents-ls-l-top h5 {
	font-weight: bold;
	color: #fff;
    position: relative;
    padding-bottom: 16px;
    width: 100%;
    font-size: 30px;
    line-height: 50px;
    letter-spacing: 0.15em;
}
.contents-ls-l-top .text {
	color: #fff;
    margin-top: 20px;
    font-size: 18px;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-align: justify;
}
.contents-ls-l-top .notes {
    margin-top: 20px;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 0.01em;
    text-align: justify;
    color: #fff;
}
.contents-ls-l-top ul.notes li {
	margin-left: 0;
	text-indent: 0;
	text-align: justify;
}

/*画像のブロック*/
.images-ls-r-top {
	width: 48%;
    display: block;
    position: relative;
    float: left;
}
.images-ls-r-top img {
    width: 100%;
}

@media (max-width: 599px) {
.wrapper-ls-top {
    display: block;
    justify-content: normal;
    position: relative;
    padding: 50px 0 0 0;
}
h3.top-copy {
	font-size: 6vw;
	line-height: 47px;
}
h4.top-copy-s {
	font-size: 4.5rem;
	line-height: 50px;
}
h4.top-copy-p {
	font-size: 4.5rem;
	line-height: 50px;
}
.text-c {
		margin: 10px 0 10px 0;
		margin: 3vw 0 5vw 0;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 19px;
		line-height: 5.06666vw;
}
.top-heading-s .bg-s {
    background-size: 286% auto;
}
.contents-ls-l-top h5 {
    padding-bottom: 10px;
    padding-bottom: 2.66666vw;
    font-size: 18px;
    font-size: 5vw;
    line-height: 27px;
    line-height: 8vw;
}
.contents-ls-l-top {
	width: 100%;
	display: block;
    position: relative;
    float: none;
}
.contents-ls-l-top img {
    margin: 0 0 20px 0;
}
.images-ls-r-top {
	width: 100%;
    display: block;
    position: relative;
    float: none;
}
.contents-ls-l-top .text {
		margin: 10px 0 10px 0;
		margin: 3vw 0 5vw 0;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 19px;
		line-height: 5.06666vw;
}
.contents-ls-l-top .notes {
	margin: 3vw 0 5vw 0;
		font-size: 10px;
		font-size: 2.66666vw;
		line-height: 15px;
		line-height: 4vw;
}
}

/* 背景スライド部分 */
section.top-sh {
    display: flex;
}
.one {
    display: flex;
    align-items: center;
    width: 100%;
    min-height: 100vh;
    /*padding: 20px;*/
}
.top-sh-bg {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0;
    transition: all 0.5s ease 0s;
    z-index: -1;
}
.showt .top-sh-bg {
    opacity: 1;
}
.top-sh-bg._01 {
    background-image: url("../img/01_bg.webp");
}
.top-sh-bg._02 {
    background-image: url("../img/02_bg.webp");
}
.top-sh-bg._03 {
    background-image: url("../../pet/img/01_bg.jpg");
}
.top-sh-bg._04 {
    background-image: url("../../pet/img/02_bg.jpg");
}
.top-sh-bg._05 {
    background-image: url("../../pet/img/03_bg.jpg");
}
.top-sh-bg._06 {
    background-image: url("../../pet/img/04_bg.jpg");
}
.top-sh-bg._07 {
    background-image: url("../../pet/img/05_bg.jpg");
}
.top-sh-bg._08 {
    background-image: url("../../pet/img/06_bg.jpg");
}
.top-sh-bg._09 {
    background-image: url("../img/leopard_bg-1.webp");
}
.top-sh-bg._10 {
    background-image: url("../img/leopard_bg-2.webp");
}
.top-sh-bg._11 {
    background-image: url("../img/collabo_bg-1.webp");
}
.top-sh-bg._12 {
    background-image: url("../img/collabo_bg-2.webp");
}

/*ラッパー要素*/
.wrapper-ls-top-ba {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 80px 0 0 0;
}
.contents-ls-l-top-ba a:hover img {
	opacity: 0.5;
}
.contents-ls-l-top-ba a img {
	width: 100%;
	display: block;
}
.wrapper-ls-top-ba .ba-t {
    display: block;
	font-family: 'Noto Sans JP', sans-serif;
    color: #000;
    margin: 10px 0 10px 0;
    font-size: 14px;
    line-height: 1.5em;
    letter-spacing: 0.05em;
    text-align: left;
}
/*コンテンツのブロック*/
.contents-ls-l-top-ba {
	width: 48%;
	display: block;
    position: relative;
    float: left;
}
.contents-ls-l-top-ba img {
    width: 100%;
}

.contents-ls-l-top-ba h5 {
	font-weight: bold;
	color: #000;
    position: relative;
    padding-bottom: 16px;
    width: 100%;
    font-size: 30px;
    line-height: 50px;
    letter-spacing: 0.15em;
	border-bottom: 1px solid #000;
	margin-bottom: 20px;
}
.contents-ls-l-top-ba h5.pet-lineup {
    line-height: 20px;
}
.contents-ls-l-top-ba .text {
	color: #000;
    font-size: 18px;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-align: justify;
}
.contents-ls-l-top-ba .text_price {
	color: #000;
    font-size: 18px;
    line-height: 20px;
    letter-spacing: 0.1em;
    text-align: justify;
	margin-bottom: 20px;
	display: block;
}
.contents-ls-l-top-ba .notes {
    margin-top: 20px;
    font-size: 18px;
    line-height: 30px;
    letter-spacing: 0.01em;
    text-align: justify;
    color: #000;
}
.contents-ls-l-top-ba ul.notes li {
	margin-left: 0;
	text-indent: 0;
	text-align: justify;
}
.contents-ls-l-top-ba-b {
	width: 47%;
	display: block;
    position: relative;
    float: left;
}
.contents-ls-l-top-ba-s {
	width: 6%;
	display: block;
    position: relative;
    float: left;
}
.contents-ls-l-top-ba-a {
	width: 47%;
	display: block;
    position: relative;
    float: left;
}
.contents-ls-l-top-ba-a-p {
	width: 100%;
	display: block;
    position: relative;
    float: left;
}
.contents-ls-l-top-ba-s-p {
	width: 4.34%;
	display: block;
    position: relative;
    float: left;
}
.bo-t-p-j {
    display: block;
	font-family: 'Noto Sans JP', sans-serif;
    color: #000;
    margin: 5px 0 15px 0;
    font-size: 14px;
    line-height: 1.5em;
    letter-spacing: 0.05em;
    text-align: left;
}


/*画像のブロック*/
.images-ls-r-top-ba {
	width: 48%;
    display: block;
    position: relative;
    float: left;
}
.images-ls-r-top-ba img {
    width: 100%;
}

@media (max-width: 599px) {
.wrapper-ls-top-ba {
    display: inline-block;
    justify-content: normal;
    position: relative;
    padding: 50px 0 0 0;
}
.contents-ls-l-top-ba h5 {
    padding-bottom: 10px;
    padding-bottom: 2.66666vw;
    font-size: 18px;
    font-size: 4.8vw;
    line-height: 27px;
    line-height: 7.19999vw;
}
.contents-ls-l-top-ba {
	width: 100%;
	display: inline-block;
    position: relative;
    float: none;
	margin-bottom: 30px;
}
.contents-ls-l-top-ba img {
    margin: 0;
}
.images-ls-r-top-ba {
	width: 100%;
    display: block;
    position: relative;
    float: none;
}
.contents-ls-l-top-ba .text {
		margin: 10px 0 10px 0;
		margin: 3vw 0 5vw 0;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 19px;
		line-height: 5.06666vw;
}
.contents-ls-l-top-ba .notes {
	margin: 3vw 0 5vw 0;
		font-size: 10px;
		font-size: 2.66666vw;
		line-height: 15px;
		line-height: 4vw;
}
.wrapper-ls-top-ba .ba-t {
    font-size: 12px;
}
.contents-ls-l-top-ba-a-p {
	padding-bottom: 30px;
}
}

/* オリジナルスライド
-------------------------------------------------- */
.swiper-container {
	width: 100%;
	max-width: 1000px;
    height: auto;
    margin: 20px auto;
}
.swiper-container img {
    width: 100%;
    height: auto;
}


/* spec
-------------------------------------------------- */

.spec-h {
    background: #000;
}


/* newsList
-------------------------------------------------- */

.newsList {
	font-family: "Meiryo UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
"Yu Gothic UI", "MS PGothic", sans-serif !Important;
    font-size: 0;
    border-bottom: 1px solid #B2B2B2;
    line-height: 1.4;
	overflow: scroll;
    overflow-x: hidden;
    height: 350px;
}
.newsList li a:hover {
	color: #c7000b;
	text-decoration: underline;
}
.newsList > li {
    border-top: 1px solid #B2B2B2;
    padding: 24px 0;
}
.newsList > li .date {
    color: #000;
    display: inline-block;
    vertical-align: top;
    font-size: 16px;
	font-weight: bold;
    width: 150px;
    letter-spacing: 0.1em;
}
.newsList > li .txt {
    color: #000;
    display: inline-block;
    vertical-align: top;
    font-size: 16px;
    width: 100%;
    padding-left: 150px;
    margin-left: -150px;
}

@media (max-width: 599px) {
	.newsList > li {
        padding: 12px 0;
    }
	.newsList > li .date {
        display: block;
        width: auto;
        font-size: 13px;
		padding: 0 0 5px 0;
    }
	.newsList > li .txt {
        display: block;
        padding-left: 0;
        margin-left: 0;
        font-size: 13px;
    }
}	


/* collaboration
-------------------------------------------------- */

.collaboration-h {
    background: #f2f1f1;
	font-family: "Noto Sans JP", "Helvetica Neue", arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", meiryo, sans-serif;
}

/*コラボレーション画像ブロック*/
.wrapper-cb {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 30px 0 0 0;
}
.images-cb {
	width: 48%;
    display: block;
    position: relative;
    float: left;
	box-shadow: 9px 8px 10px rgb(0 0 0 / 21%), 0 0 5px 0 #ffffff, -4px 0 5px 0 #ffffff, -4px -6px 15px #ffffff;
	border-radius: 10px;
	overflow: hidden;
	border: 2px solid #fff;
	background-color: #000;
}
.images-cb h3 {
	font-size: 3rem;
	text-align: center;
	font-weight: 800;
	color: #fff;
}
.image-cb-box {
  width: 100%;
  display: block;
}
.cb-hover {
  position: relative;
}
.cb-hover figure {
  overflow: hidden;
}
.cb-hover figure img {
  display: block;
  width: 100%;
  transition: 0.3s;
}
.cb-hover figure figcaption {
  opacity: 0;
  transition: 0.3s;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: calc(100% - 30px);
  height: calc(100% - 30px);
  color: #fff;
  border: solid 1px #fff;
	border-radius: 10px;
}
.cb-hover figure figcaption .cb-txt_box {
  position: relative;
  width: 100%;
  height: 100%;
}
.cb-hover figure figcaption .cb-txt_box > p {
  width: 100%;
  text-align: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}
.cb-hover:hover figure img {
  filter: brightness(50%);
  transform: scale(1.2);
}
.cb-hover:hover figure figcaption {
  opacity: 1;
}
.images-cb img {
    width: 100%;
}
p.spec-cb {
    color: #fff;
    margin: 0 0 20px 0;
    font-size: 12px;
    line-height: 1em;
    letter-spacing: 0.05em;
    text-align: center;
}

.images-cb span {
    display: block;
    color: #fff;
    margin: 5px 10px 10px 0;
    font-size: 10px;
    line-height: 1em;
    letter-spacing: 0.05em;
    text-align: right;
}

@media (max-width: 599px) {
	.wrapper-cb {
		display: block;
		justify-content: normal;
		position: relative;
		padding: 20px 0 0 0;
	}
	.images-cb {
		width: 100%;
		display: block;
		position: relative;
		float: none;
		margin-bottom: 40px;
	}
	.images-cb h3 {
		font-size: 2rem;
	}
	.images-cb span {
		font-size: 8px;
		text-align: center;
	}
	p.spec-cb {
		font-size: 8px;
	}
}


/* collaboration　ゴジラ
-------------------------------------------------- */
.collaboration-g-h {
    background: #000;
}


/* botan
-------------------------------------------------- */

p.firmware-u {
	margin-top: 20px;
	position: relative;
	width: 290px;
}
p.firmware-u a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #000;
	border-radius: 10px;
}
p.firmware-u a span {
	position: relative;
	padding: 8px 15px 8px 15px;
	display: block;
	color: #fff;
	font-size: 16px;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
}
p.firmware-u a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-u a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #c7000b;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-u a:hover::before {
		transform: translateX(0);
}
p.firmware-u a:hover span {
		color: #fff;
}
p.firmware-u a:hover span::before {
		border-color: #fff;
}

@media (max-width: 599px) {
	p.firmware-u {
		margin: 20px 0 20px 0;
		margin: 5.33333vw 0 5.33333vw 0;
		text-align: left;
		width: 100%;
	}
	p.firmware-u a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
	}
	p.firmware-u a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
	}
}
	
/* スライド文字
-------------------------------------------------- */
.slideConts.urushi h5 {
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 10rem;
	color: #666;
    line-height: 1.2;
    padding: 0;
    margin: 0;
    text-align: left;
	opacity: 0.2;
	/*color:rgba(199,0,11,.0);*/
	/*-webkit-text-stroke: 1px #c7000b;*/
}
@media (max-width: 599px) {
.slideConts.urushi h5 {
    font-size: 6.5rem;
	}
}
.slideConts.skr h5 {
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 8rem;
	color: #ff0012;
    line-height: 1.2;
    padding: 0;
    margin: 0;
    text-align: left;
	opacity: 1;
	/*color:rgba(199,0,11,.0);*/
	/*-webkit-text-stroke: 1px #c7000b;*/
}
.slideConts.g1 h5 {
	font-family: "游明朝体", "YuMincho", "游明朝", "Yu Mincho", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN W3", HiraMinProN-W3, "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    font-size: 8rem;
	color: #00fff0;
    line-height: 1.2;
    padding: 0;
    margin: 0;
    text-align: left;
	opacity: 1;
	/*color:rgba(199,0,11,.0);*/
	/*-webkit-text-stroke: 1px #c7000b;*/
}
@media (max-width: 599px) {
.slideConts.skr h5 {
    font-size: 3.5rem;
	}
.slideConts.g1 h5 {
    font-size: 3.5rem;
	}
}

/* contact company
-------------------------------------------------- */

.contact-h, .company-h {
    background: #f2f1f1;
	font-family: "Noto Sans JP", "Helvetica Neue", arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", "メイリオ", meiryo, sans-serif;
}
.article-inner {
    width: 100%;
    max-width: 954px;
    margin: 0 auto;
    padding: 45px 0 70px;
	font-size: 1.6rem;
	line-height: 1.75;
}	
.heading-text {
	font-family: 'Noto Sans JP', sans-serif;
    margin-bottom: 0;
    font-size: 4rem;
	font-weight: 700;
    letter-spacing: .05em;
    line-height: 1.4;
	text-align: center;
}
.heading-category {
	text-align: center;
    margin-bottom: 0.75em;
    color: #888888;
    font-size: 2.8rem;
    letter-spacing: .05em;
	font-family: 'Playball', cursive;
    font-weight: bold;
}
p.text-block {
    margin: 3em 0;
	text-align: center;
}

.c-table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    font-size: 1.6rem;
}
.c-table tbody th {
    font-weight: 400;
}
.c-table th, .c-table td {
    padding: 8px 6px 7px;
    border-top: 1px solid #adadad;
    line-height: 1.5;
}
.c-table a:hover {
	color: #c7000b;
	text-decoration: underline;
}
.c-table p {
	line-height: 2;
	letter-spacing: 1.3px;
}
.c-table p img {
	width: 100%;
	padding: 10px 0 10px 0;
}

.year-news {
	width: 100%;
    padding: 10px;
	background-color: #adadad;
	text-align: center;
	font-size: 2rem;
	color: #fff;
	font-weight: 600;
	line-height: 2;
	letter-spacing: 1.3px;
}

.widet .c-table td, .widet .c-table th {
	padding: 25px 15px;
}
.w-150 {
    width: 150px !important;
}

@media (max-width: 599px) {
	.w-100-sp {
		width: 100px !important;
	}
	.c-table {
    font-size: 1.3rem;
	}
}

/* catalog
-------------------------------------------------- */

.catalog-row {
    display: flex;
	/*flex-direction: row-reverse;*/
    flex-wrap: wrap;
	align-items: center;
}
.catalog-left {
    /*flex: 0 1 33.33333%;*/
	max-width: 100%;
	width: 40%;
	float: left;
	margin: 20px 0 40px 0;
}
.catalog-left_figure img {
	width: 100%;
}
.catalog-right {
    /*flex: 0 1 66.66667%;*/
    max-width: 100%;
    width: 50%;
	float: right;
	margin: 0 0 0 10%;
}
.catalog-right_title {
	font-family: a-otf-ryumin-pr6n, serif;
    color: #000;
    position: relative;
    padding-bottom: 16px;
    font-size: 30px;
    line-height: 50px;
    letter-spacing: 0.15em;
}
.catalog-right_dw {
    margin-top: 2.5rem;
}
.catalog-right_dw a {
	text-decoration: underline;
}
.catalog-right_dw a:hover {
	color: #c7000b;
}
.catalog-left_caption {
    color: #999;
    font-size: .875rem;
    margin-top: 0.45rem;
}

@media only screen and (max-width: 599px){
	.catalog-right_title {
		text-align: center;
	}
	.catalog-left {
		width: 100%;
		float: none;
		margin: 20px 0 10px 0;
	}
	.catalog-right {
		width: 100%;
		float: none;
		margin: 0 0 40px 0;
	}
	}

/* gallery　ペット
-------------------------------------------------- */
.gallery-h-pet {
	background: #fff;
	background-attachment: fixed;
	padding: 0;
	font-family: 'Noto Sans JP', sans-serif;
	/* z-index: 1200; */
}
.gallery-h-pet h5 {
    font-family: 'a-otf-ryumin-pr6n', serif;
    font-size: 10rem;
    line-height: 1.2;
    color: #000;
	padding: 0;
	margin: 0;
	text-align: center;
}
.gallery-h-pet .photo-wrap {
	overflow: hidden;
}
.gallery-h-pet .photo-wrap {
	position: relative;
	margin-top: 35px;
}
.gallery-h-pet .pet-gallery .photo {
	margin: 0 auto;
	max-width: 1120px;
	visibility: hidden;
	opacity: 0;
	transition: visibility 0.5s, opacity 0.5s;
	height: 550px;
}

.gallery-h-pet .pet-gallery .photo:nth-of-type(2) {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.gallery-h-pet .pet-gallery .photo:nth-of-type(3) {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.gallery-h-pet .pet-gallery .photo:nth-of-type(4) {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.gallery-h-pet .pet-gallery .photo.show {
	visibility: visible;
	opacity: 1;
}
.gallery-h-pet .pet-gallery .photo .wrap {
	position: relative;
	width: 70%;
	overflow: hidden;
	float: left;
}
.gallery-h-pet .pet-gallery .photo ul.list {
	position: relative;
	width: 500%;
	display: flex;
	transform: translateX(0);
	transition: transform 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.gallery-h-pet .pet-gallery .photo ul.list li {
	width: 100%;
	height: inherit;
}
.gallery-h-pet .pet-gallery .photo ul.list li img {
	width: 100%;
}
.gallery-h-pet .pet-gallery .photo .prev,
.gallery-h-pet .pet-gallery .photo .next {
	position: absolute;
	top: 50%;
	margin-top: -26px;
	width: 52px;
	height: 52px;
	background-color: rgba(125, 125, 125, 0.9);
	cursor: pointer;
	transition: opacity 0.3s;
}
.gallery-h-pet .pet-gallery .photo .prev:hover,
.gallery-h-pet .pet-gallery .photo .next:hover {
	opacity: 0.5;
}
.gallery-h-pet .pet-gallery .photo .prev::after,
.gallery-h-pet .pet-gallery .photo .next::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 20px;
	height: 20px;
	content: "";
}
.gallery-h-pet .pet-gallery .photo .prev::after {
	border-left: #fff 1px solid;
	border-bottom: #fff 1px solid;
	transform: translate(-25%, -50%) rotate(45deg);
}
.gallery-h-pet .pet-gallery .photo .next::after {
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: translate(-75%, -50%) rotate(45deg);
}
.gallery-h-pet .pet-gallery .photo .prev {
	left: 0;
}
.gallery-h-pet .pet-gallery .photo .next {
	right: 0;
}
.gallery-h-pet .pet-gallery .photo ul.thumb {
	display: flex;
	/*justify-content: center;*/
	float: left;
	width: 30%;
	flex-flow: row wrap;
}
.gallery-h-pet .pet-gallery .photo ul.thumb li {
	margin: 25px 0 10px 25px;
	width: 125px;
	height: auto;
	cursor: pointer;
	transition: opacity 0.3s;
}
.gallery-h-pet .pet-gallery .photo ul.thumb li:hover {
	opacity: 0.5;
}
.gallery-h-pet .pet-gallery .photo ul.thumb li.current {
	opacity: 0.5;
	cursor: default;
}
.gallery-h-pet .pet-gallery .photo ul.thumb li img {
	width: inherit;
	height: auto;
}
.gallery-h-pet .tab {
	margin-top: 50px;
	display: flex;
	justify-content: center;
}
.gallery-h-pet .tab > li {
	margin: 0 15px;
}
.gallery-h-pet .tab > li .button {
	position: relative;
	margin: 0;
	width: 220px;
}
.gallery-h-pet .tab > li .button.current a {
	cursor: default;
	background-color: #48bcc4;
	color: #fff;
}
.gallery-h-pet .tab > li .button.current a span {
	height: 60px;
}
.gallery-h-pet .button a {
	position: relative;
	margin: 0 auto;
	width: 100%;
	display: table;
	overflow: hidden;
	transition: opacity 0.3s;
	background-color: #858585;
	color: #fff;
}
.gallery-h-pet .button a {
		transition: color 0.2s;
		border-radius: 10px;
}
.gallery-h-pet .button:not(.current) a:hover {
		color: #fff;
}
.gallery-h-pet .button a::before {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #48bcc4;
		content: "";
		opacity: 0;
		transform: translateX(-100%);
		transition: all 0.2s ease-in-out;
	}
.gallery-h-pet .button:not(.current) a:hover::before {
		opacity: 1;
		transform: translateX(0);
		border: solid 2px #858585;
		border-radius: 10px;
	}
.gallery-h-pet .button span {
	position: relative;
	width: inherit;
	height: 60px;
	display: table-cell;
	font-size: 14px;
	line-height: 1.4em;
	letter-spacing: 0.1em;
	text-indent: 0.05em;
	text-align: center;
	vertical-align: middle;
	padding: 10px;
}


.gallery-h-pet .button a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
.gallery-h-pet .button a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #48bcc4;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
.gallery-h-pet .button a:hover::before {
		transform: translateX(0);
}
.gallery-h-pet .button a:hover span {
		color: #000;
}
.gallery-h-pet .button a:hover span::before {
		border-color: #000;
}




@media (max-width: 1024px) {
	.gallery-h-pet .pet-gallery .photo .wrap {
		position: relative;
		width: 100%;
		overflow: hidden;
		float: none;
	}
	.gallery-h-pet .pet-gallery .photo ul.thumb {
		display: flex;
		justify-content: center;
		float: none;
		width: 100%;
		flex-flow: row wrap;
	}
	.gallery-h-pet .tab {
		margin-top: 20px;
		margin-top: 5.33333vw;
		flex-wrap: wrap;
		width: 100%;
	}
	.gallery-h-pet .tab > li {
		margin: 0 10px;
		float: left;
		width: 45%;
	}
	.gallery-h-pet .tab > li .button {
		width: 90%;
		margin: 10px;
	}
}
@media (max-width: 599px) {
	.gallery-h-pet h5 {
		font-size: 3.5rem;
	}
	.gallery-h-pet .pet-gallery .photo .wrap {
		position: relative;
		width: 100%;
		overflow: hidden;
		float: none;
	}
	.gallery-h-pet .pet-gallery .photo {
		height: auto;
		padding-bottom: 20px;
}
	.gallery-h-pet .pet-gallery .photo-wrap {
		margin-top: 20px;
		margin-top: 5.33333vw;
		width: 100%;
	}
	.gallery-h-pet .pet-gallery .photo .prev,
	.gallery-h-pet .pet-gallery .photo .next {
		margin-top: -18px;
		margin-top: -4.8vw;
		width: 36px;
		width: 9.6vw;
		height: 36px;
		height: 9.6vw;
	}
	.gallery-h-pet .pet-gallery .photo .prev::after,
	.gallery-h-pet .pet-gallery .photo .next::after {
		width: 10px;
		width: 2.66666vw;
		height: 10px;
		height: 2.66666vw;
	}
	.gallery-h-pet .pet-gallery .photo ul.thumb {
		display: flex;
		justify-content: center;
		float: none;
		width: 100%;
		flex-flow: row wrap;
	}
	.gallery-h-pet .pet-gallery .photo ul.thumb li {
		margin: 11px 2px 0 2px;
		margin: 2.93333vw 0.53333vw 0 0.53333vw;
		width: 60px;
		width: 16vw;
	}
	.gallery-h-pet .tab > li {
		margin: 5px 10px 5px 5px;
		float: left;
		width: 44%;
	}

	.gallery-h-pet .tab > li .button {
		width: 100%;
		margin: 5px;
	}
	.gallery-h-pet .tab > li .button.current a span {
		height: 50px;
}
	.gallery-h-pet .button span {
		position: relative;
		width: inherit;
		height: 50px;
		display: table-cell;
		font-size: 2.66666vw;
		line-height: 1.4em;
		letter-spacing: 0.05em;
		text-indent: 0.05em;
		text-align: center;
		vertical-align: middle;
		padding: 5px;
}
}

/* gallery
-------------------------------------------------- */

.gallery-h {
    background: #c7000b;
	padding: 50px 0 0 0;
	font-family: 'Noto Sans JP', sans-serif;
	z-index: 1200;
}
.gallery-h h5 {
    font-family: 'Anton', 'Noto Sans JP', sans-serif;
    font-size: 10rem;
    line-height: 1.2;
    color: #000;
	padding: 0;
	margin: 0;
	text-align: center;
}
.gallery-h .photo-wrap {
	overflow: hidden;
}

.gallery-h .photo-wrap {
	position: relative;
	margin-top: 35px;
}

.gallery-h .godzilla-gallery .photo {
	margin: 0 auto;
	max-width: 1120px;
	visibility: hidden;
	opacity: 0;
	transition: visibility 0.5s, opacity 0.5s;
	height: 550px;
}

.gallery-h .godzilla-gallery .photo:nth-of-type(2) {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.gallery-h .godzilla-gallery .photo:nth-of-type(3) {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.gallery-h .godzilla-gallery .photo:nth-of-type(4) {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
}
.gallery-h .godzilla-gallery .photo.show {
	visibility: visible;
	opacity: 1;
}
.gallery-h .godzilla-gallery .photo .wrap {
	position: relative;
	width: 70%;
	overflow: hidden;
	float: left;
}
.gallery-h .godzilla-gallery .photo ul.list {
	position: relative;
	width: 500%;
	display: flex;
	transform: translateX(0);
	transition: transform 0.5s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.gallery-h .godzilla-gallery .photo ul.list li {
	width: 100%;
	height: inherit;
}
.gallery-h .godzilla-gallery .photo ul.list li img {
	width: 100%;
}
.gallery-h .godzilla-gallery .photo .prev,
.gallery-h .godzilla-gallery .photo .next {
	position: absolute;
	top: 50%;
	margin-top: -26px;
	width: 52px;
	height: 52px;
	background-color: rgba(125, 125, 125, 0.9);
	cursor: pointer;
	transition: opacity 0.3s;
}
.gallery-h .godzilla-gallery .photo .prev:hover,
.gallery-h .godzilla-gallery .photo .next:hover {
	opacity: 0.5;
}
.gallery-h .godzilla-gallery .photo .prev::after,
.gallery-h .godzilla-gallery .photo .next::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 20px;
	height: 20px;
	content: "";
}
.gallery-h .godzilla-gallery .photo .prev::after {
	border-left: #fff 1px solid;
	border-bottom: #fff 1px solid;
	transform: translate(-25%, -50%) rotate(45deg);
}
.gallery-h .godzilla-gallery .photo .next::after {
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: translate(-75%, -50%) rotate(45deg);
}
.gallery-h .godzilla-gallery .photo .prev {
	left: 0;
}
.gallery-h .godzilla-gallery .photo .next {
	right: 0;
}
.gallery-h .godzilla-gallery .photo ul.thumb {
	display: flex;
	/*justify-content: center;*/
	float: left;
	width: 30%;
	flex-flow: row wrap;
}
.gallery-h .godzilla-gallery .photo ul.thumb li {
	margin: 25px 0 10px 25px;
	width: 125px;
	height: auto;
	cursor: pointer;
	transition: opacity 0.3s;
}
.gallery-h .godzilla-gallery .photo ul.thumb li:hover {
	opacity: 0.5;
}
.gallery-h .godzilla-gallery .photo ul.thumb li.current {
	opacity: 0.5;
	cursor: default;
}
.gallery-h .godzilla-gallery .photo ul.thumb li img {
	width: inherit;
	height: auto;
}
.gallery-h .tab {
	margin-top: 50px;
	display: flex;
	justify-content: center;
}
.gallery-h .tab > li {
	margin: 0 15px;
}
.gallery-h .tab > li .button {
	position: relative;
	margin: 0;
	width: 220px;
}
.gallery-h .tab > li .button.current a {
	cursor: default;
	background-color: #000;
	color: #fff;
}
.gallery-h .tab > li .button.current a span {
	height: 60px;
}
.gallery-h .button a {
	position: relative;
	margin: 0 auto;
	width: 100%;
	display: table;
	overflow: hidden;
	transition: opacity 0.3s;
	background-color: #fff;
}
.gallery-h .button a {
		transition: color 0.2s;
		border-radius: 10px;
}
.gallery-h.button:not(.current) a:hover {
		color: #fff;
}

.gallery-h .button a::before {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #c7000b;
		content: "";
		opacity: 0;
		transform: translateX(-100%);
		transition: all 0.2s ease-in-out;
}
.gallery-h .button:not(.current) a:hover::before {
		opacity: 1;
		transform: translateX(0);
		border: solid 2px #fff;
		border-radius: 10px;
}
.gallery-h .button span {
	position: relative;
	width: inherit;
	height: 60px;
	display: table-cell;
	font-size: 14px;
	line-height: 1.4em;
	letter-spacing: 0.1em;
	text-indent: 0.05em;
	text-align: center;
	vertical-align: middle;
	padding: 10px;
}

@media (max-width: 1024px) {
	.gallery-h .godzilla-gallery .photo .wrap {
		position: relative;
		width: 100%;
		overflow: hidden;
		float: none;
	}
	.gallery-h .godzilla-gallery .photo ul.thumb {
		display: flex;
		justify-content: center;
		float: none;
		width: 100%;
		flex-flow: row wrap;
	}
	.gallery-h .tab {
		margin-top: 20px;
		margin-top: 5.33333vw;
		flex-wrap: wrap;
		width: 100%;
	}

	.gallery-h .tab > li {
		margin: 0 10px;
		float: left;
		width: 45%;
	}

	.gallery-h .tab > li .button {
		width: 90%;
		margin: 10px;
	}
}
@media (max-width: 599px) {
	.gallery-h h5 {
		font-size: 7rem;
	}
	.gallery-h .godzilla-gallery .photo .wrap {
		position: relative;
		width: 100%;
		overflow: hidden;
		float: none;
	}
	.gallery-h .godzilla-gallery .photo {
		height: auto;
		padding-bottom: 70px;
}
	.gallery-h .godzilla-gallery .photo-wrap {
		margin-top: 20px;
		margin-top: 5.33333vw;
		width: 100%;
	}
	.gallery-h .godzilla-gallery .photo .prev,
	.gallery-h .godzilla-gallery .photo .next {
		margin-top: -18px;
		margin-top: -4.8vw;
		width: 36px;
		width: 9.6vw;
		height: 36px;
		height: 9.6vw;
	}
	.gallery-h .godzilla-gallery .photo .prev::after,
	.gallery-h .godzilla-gallery .photo .next::after {
		width: 10px;
		width: 2.66666vw;
		height: 10px;
		height: 2.66666vw;
	}
	.gallery-h .godzilla-gallery .photo ul.thumb {
		display: flex;
		justify-content: center;
		float: none;
		width: 100%;
		flex-flow: row wrap;
	}
	.gallery-h .godzilla-gallery .photo ul.thumb li {
		margin: 11px 2px 0 2px;
		margin: 2.93333vw 0.53333vw 0 0.53333vw;
		width: 60px;
		width: 16vw;
	}
	.gallery-h .tab > li {
		margin: 5px 10px 5px 5px;
		float: left;
		width: 44%;
	}

	.gallery-h .tab > li .button {
		width: 100%;
		margin: 5px;
	}
	.gallery-h .tab > li .button.current a span {
		height: 50px;
}
	.gallery-h .button span {
		position: relative;
		width: inherit;
		height: 50px;
		display: table-cell;
		font-size: 2.66666vw;
		line-height: 1.4em;
		letter-spacing: 0.05em;
		text-indent: 0.05em;
		text-align: center;
		vertical-align: middle;
		padding: 5px;
}

}

/* movie-h
-------------------------------------------------- */

.moviwidet {
	width: 300px;
	margin: 0 auto;
	text-align: center;
	position: relative;
	overflow: hidden;
}



.movie-h {
    background: #000;
	padding: 0;
	font-family: 'Noto Sans JP', sans-serif;
}
.movie-h h5 {
    font-family: 'Anton', 'Noto Sans JP', sans-serif;
    font-size: 10rem;
    line-height: 1.2;
    color: #c7000b;
	padding: 0;
	margin: 0;
	text-align: center;
}
.j-text {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 3rem;
    line-height: 1.7;
    font-weight: bold;
    margin: 0;
    color: #fff;
	text-align: center;
}
.j-text-ji {
	font-family: "Noto Serif JP", serif;
	font-weight: 500;
	color: #fff;
    position: relative;
    padding-bottom: 16px;
    width: 100%;
    font-size: 3rem;
    line-height: 1.5em;
    letter-spacing: 0.05em;
	text-align: center;
}
.j-text-black {
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 3rem;
    line-height: 1.7;
    font-weight: bold;
    margin: 0;
    color: #000;
	text-align: center;
}
.movie-h .half {
	width: 100%;
	height: 100vh;
}
.half {
	position: relative;
	width: 100%;
	height: 100vh;
	overflow: hidden;
}
.half::after {
	content: '';
	display: block;
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,0.5);
	background-image: radial-gradient(#111 30%, transparent 31%), radial-gradient(#111 30%, transparent 31%);
	background-size: 4px 4px;
	background-position: 0 0, 2px 2px;
}

video.vid {
	background-color: #000;
	width: 100%;
  }
video.vid-2 {
	width: 100%;
  }
@media only screen and (max-width: 1024px) {
video.vid {
	width: auto;
	height: 100vh;
  }
video.vid-2 {
	width: 100%;
  }	
}
@media only screen and (max-width: 599px) {
video.vid {
	width: auto;
	height: 100vh;
  }
video.vid-2 {
	width: 100%;
  }
.movie-h h5 {
    font-size: 10rem;
}
.j-text {
    font-size: 2rem;
    margin: 1rem 0;
}
.j-text-ji {
    font-size: 2rem;
    margin: 1rem 0;
}	
.j-text-black {
    font-size: 1.5rem;
    margin: 1rem 0;
}
}
.movie-con {
	/* width: 100%; */
    /* height: 100vh; */
    position: absolute;
    left: 50%;
    top: 50%;
    /* display: table; */
    transform: translate(-50%, -50%);
}

.c-g-movie-wrap {
	font-family: "Noto Sans JP", sans-serif;
	margin: 50px auto 0 auto;
	width: 100%;
}
.c-g-movie-wrap h5 {
    font-weight: bold;
    color: #fff;
    position: relative;
    padding-bottom: 16px;
    width: 100%;
    font-size: 30px;
    line-height: 50px;
    letter-spacing: 0.15em;
    border-bottom: 1px solid #c7000b;
}
.c-g-movie-wrap .text-gst {
    color: rgb(255, 255, 255);
    margin: 20px 0 20px 0;
    font-size: 18px;
    line-height: 35px;
    letter-spacing: 0.1em;
    text-align: justify;
}
.movie-wrap-t {
     position: relative;
     padding-bottom: 56.25%; /*アスペクト比 16:9の場合の縦幅*/
     height: 0;
     overflow: hidden;
}
 
.movie-wrap-t iframe {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
}
@media (max-width: 599px) {
.c-g-movie-wrap h5 {
    padding-bottom: 2.66666vw;
    font-size: 4.8vw;
    line-height: 7.19999vw;
}
.c-g-movie-wrap .text-gst {
    margin: 10px 0 10px 0;
    margin: 3vw 0 5vw 0;
    font-size: 12px;
    font-size: 3.2vw;
    line-height: 19px;
    line-height: 5.06666vw;
}
}

/* botan
-------------------------------------------------- */

.button-area-b {
	margin: 20px auto 0 auto;
	font-family: "Meiryo UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
"Yu Gothic UI", "MS PGothic", sans-serif !Important;
}
.button-area-b-cola {
	margin: 20px auto 0 auto;
	font-family: "Meiryo UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
"Yu Gothic UI", "MS PGothic", sans-serif !Important;
	width: 100%;
	position: absolute;
	bottom: 0;
}
/* HOME red=b */
p.firmware-h {
	margin:  0 auto;
	position: relative;
	width: 250px;
}
p.firmware-h a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #c7000b;
	border-radius: 20px;
}
p.firmware-h a span {
	position: relative;
	padding: 8px 30px 8px 30px;
	display: block;
	color: #fff;
	font-size: 2rem;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
	text-align: center;
}
p.firmware-h a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-h a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-h a:hover::before {
		transform: translateX(0);
}
p.firmware-h a:hover span {
		color: #fff;
}
p.firmware-h a:hover span::before {
		border-color: #fff;
}
/* HOME red=w */
p.firmware-hw {
	margin:  0 auto;
	position: relative;
	width: 250px;
}
p.firmware-hw a {
	position: relative;
	display: block;
	overflow: hidden;
	color: #fff;
	background-color: #c7000b;
	border-radius: 20px;
}
p.firmware-hw a span {
	position: relative;
	padding: 8px 30px 8px 30px;
	display: block;
	color: #fff;
	font-size: 2rem;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
	text-align: center;
}
p.firmware-hw a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-hw a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #fff;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-hw a:hover::before {
		transform: translateX(0);
}
p.firmware-hw a:hover span {
		color: #000;
}
p.firmware-hw a:hover span::before {
		border-color: #000;
}

/* HOME w=b */
p.firmware-wb {
	margin:  0 auto;
	position: relative;
	width: 250px;
}
p.firmware-wb a {
	position: relative;
	display: block;
	overflow: hidden;
	color: #c7000b;
	background-color: #fff;
	border-radius: 30px;
	margin: 15px 0 15px 0;
}
p.firmware-wb a span {
	position: relative;
	padding: 0;
	display: block;
	color: #c7000b;
	font-size: 2rem;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
	text-align: center;
}
p.firmware-wb a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #c7000b 1px solid;
	border-right: #c7000b 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-wb a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-wb a:hover {
		text-decoration: none;
}
p.firmware-wb a:hover::before {
		transform: translateX(0);
}
p.firmware-wb a:hover span {
		color: #fff;
}
p.firmware-wb a:hover span::before {
		border-color: #fff;
}
@media (max-width: 599px) {
	p.firmware-wb {
		margin: 0 auto;
		text-align: center;
		width: 50%;
}
	p.firmware-wb a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
}
	p.firmware-wb a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
}
}

/* HOME fb */

p.firmware-fb-r a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-fb-r a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-fb-r a:hover {
		text-decoration: none;
}
p.firmware-fb-r a:hover::before {
		transform: translateX(0);
}
p.firmware-fb-r a:hover span {
		color: #fff;
}
p.firmware-fb-r a:hover span::before {
		border-color: #fff;
}
p.firmware-fb-l a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #c7000b 1px solid;
	border-right: #c7000b 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-fb-l a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-fb-l a:hover {
		text-decoration: none;
}
p.firmware-fb-l a:hover::before {
		transform: translateX(0);
}
p.firmware-fb-l a:hover span {
		color: #fff;
}
p.firmware-fb-l a:hover span::before {
		border-color: #fff;
}

@media (max-width: 599px) {
	p.firmware-fb-r {
		margin: 0 auto;
		text-align: center;
		width: 100%;
		position: relative;
}
	p.firmware-fb-l {
		margin: 0 auto;
		text-align: center;
		width: 100%;
		position: relative;
}
	p.firmware-fb-r a {
	position: relative;
	display: block;
	overflow: hidden;
	color: #fff;
	background-color: #c7000b;
	margin: 0;
}
	p.firmware-fb-r a span {
		position: relative;
		color: #fff;
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
		letter-spacing: 0.03em;
		transition: color 0.2s;
		text-align: center;
}
	p.firmware-fb-l a {
	position: relative;
	display: block;
	overflow: hidden;
	color: #c7000b;
	background-color: #fff;
	margin: 0;
}
	p.firmware-fb-l a span {
		position: relative;
		color: #c7000b;
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
		letter-spacing: 0.03em;
		transition: color 0.2s;
		text-align: center;
}	

	p.firmware-fb-r a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
}
	p.firmware-fb-l a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
}
}


/* コラボ ゴジラ */
p.firmware-cola {
	margin:  0 auto;
	position: relative;
	width: 90%;
}
p.firmware-cola a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #000;
	border-radius: 35px;
}
p.firmware-cola a span {
	position: relative;
	padding: 15px 30px 15px 30px;
	display: block;
	color: #fff;
	font-size: 2.5rem;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
	text-align: center;
}
p.firmware-cola a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-cola a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #fff;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-cola a:hover::before {
		transform: translateX(0);
}
p.firmware-cola a:hover span {
		color: #c7000b;
}
p.firmware-cola a:hover span::before {
		border-color: #c7000b;
}

/* コラボ シン・仮面ライダー */
p.firmware-cola-skr {
	margin:  0 auto;
	position: relative;
	width: 90%;
}
p.firmware-cola-skr a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #ff0012;
	border-radius: 35px;
}
p.firmware-cola-skr a span {
	position: relative;
	padding: 15px 30px 15px 30px;
	display: block;
	color: #fff;
	font-size: 2.5rem;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
	text-align: center;
}
p.firmware-cola-skr a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-cola-skr a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-cola-skr a:hover::before {
		transform: translateX(0);
}
p.firmware-cola-skr a:hover span {
		color: #fff;
}
p.firmware-cola-skr a:hover span::before {
		border-color: #fff;
}

@media (max-width: 599px) {
	p.firmware-cola-skr {
		margin: 0 auto;
		text-align: center;
		width: 100%;
}
	p.firmware-cola-skr a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
}
	p.firmware-cola-skr a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
}
}

/* コラボ ゴジラ-1.0 */
p.firmware-cola-g1 {
	margin:  0 auto;
	position: relative;
	width: 90%;
}
p.firmware-cola-g1 a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #00fff0;
	border-radius: 35px;
}
p.firmware-cola-g1 a span {
	position: relative;
	padding: 15px 30px 15px 30px;
	display: block;
	color: #000;
	font-size: 2.5rem;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
	text-align: center;
}
p.firmware-cola-g1 a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #000 1px solid;
	border-right: #000 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-cola-g1 a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-cola-g1 a:hover::before {
		transform: translateX(0);
}
p.firmware-cola-g1 a:hover span {
		color: #fff;
}
p.firmware-cola-g1 a:hover span::before {
		border-color: #fff;
}

@media (max-width: 599px) {
	p.firmware-cola-g1 {
		margin: 0 auto;
		text-align: center;
		width: 100%;
}
	p.firmware-cola-g1 a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
}
	p.firmware-cola-g1 a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
}
}

/* ペット */
p.firmware-pet {
	margin:  0 auto;
	position: relative;
	width: 50%;
}
p.firmware-pet a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #000;
	border-radius: 35px;
}
p.firmware-pet a span {
	position: relative;
	padding: 15px 30px 15px 30px;
	display: block;
	color: #fff;
	font-size: 2rem;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
	text-align: center;
}
p.firmware-pet a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-pet a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #48bcc4;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-pet a:hover::before {
		transform: translateX(0);
}
p.firmware-pet a:hover span {
		color: #000;
}
p.firmware-pet a:hover span::before {
		border-color: #000;
}

@media (max-width: 599px) {
	p.firmware-pet {
		margin: 0 auto;
		text-align: center;
		width: 100%;
}
	p.firmware-pet a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
}
	p.firmware-pet a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
}
}

p.firmware-pet-w {
	margin:  0 auto;
	position: relative;
	width: 50%;
}
p.firmware-pet-w a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #000;
	border-radius: 35px;
}
p.firmware-pet-w a span {
	position: relative;
	padding: 15px 30px 15px 30px;
	display: block;
	color: #fff;
	font-size: 2rem;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
	text-align: center;
}
p.firmware-pet-w a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-pet-w a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #fff;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-pet-w a:hover::before {
		transform: translateX(0);
}
p.firmware-pet-w a:hover span {
		color: #000;
}
p.firmware-pet-w a:hover span::before {
		border-color: #000;
}

@media (max-width: 599px) {
	p.firmware-pet-w {
		margin: 0 auto;
		text-align: center;
		width: 100%;
}
	p.firmware-pet-w a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
}
	p.firmware-pet-w a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
}
}


/* standerd 背景白*/
p.firmware-skr {
	margin-top: 20px;
	position: relative;
	width: 290px;
}
p.firmware-skr a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #ff0012;
	border-radius: 10px;
}
p.firmware-skr a span {
	position: relative;
	padding: 8px 30px 8px 30px;
	display: block;
	color: #fff;
	font-size: 16px;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
}
p.firmware-skr a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-skr a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-skr a:hover::before {
		transform: translateX(0);
}
p.firmware-skr a:hover span {
		color: #fff;
}
p.firmware-skr a:hover span::before {
		border-color: #fff;
}

@media (max-width: 599px) {	
	p.firmware-skr {
		margin: 20px 0 20px 0;
		margin: 5.33333vw 0 5.33333vw 0;
		text-align: left;
		width: 100%;
	}
	p.firmware-skr a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
	}
	p.firmware-skr a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
}
	}
	
/* standerd 背景黒*/
p.firmware {
	margin-top: 20px;
	position: relative;
	width: 320px;
}
p.firmware a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #c7000b;
	border-radius: 10px;
}
p.firmware a span {
	position: relative;
	padding: 8px 30px 8px 30px;
	display: block;
	color: #fff;
	font-size: 16px;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
}
p.firmware a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #fff;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware a:hover::before {
		transform: translateX(0);
}
p.firmware a:hover span {
		color: #000;
}
p.firmware a:hover span::before {
		border-color: #000;
}

/* HOME スライド　ゴジラ */
p.firmware-t {
	margin-top: 20px;
	position: relative;
	width: 290px;
}
p.firmware-t a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #c7000b;
	border-radius: 10px;
}
p.firmware-t a span {
	position: relative;
	padding: 8px 30px 8px 30px;
	display: block;
	color: #fff;
	font-size: 16px;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
}
p.firmware-t a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-t a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #fff;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-t a:hover::before {
		transform: translateX(0);
}
p.firmware-t a:hover span {
		color: #000;
}
p.firmware-t a:hover span::before {
		border-color: #000;
}
/* Catalog */
p.firmware-catalog {
	margin: 0;
	position: relative;
	width: 290px;
}
p.firmware-catalog a {
	position: relative;
	display: block;
	overflow: hidden;
	background-color: #c7000b;
	border-radius: 20px;
}
p.firmware-catalog a span {
	position: relative;
	padding: 8px 30px 8px 30px;
	display: block;
	color: #fff;
	font-size: 16px;
	line-height: 1.5em;
	letter-spacing: 0.03em;
	transition: color 0.2s;
	text-align: left;
}
p.firmware-catalog a span::before {
	content: "";
	position: absolute;
	top: 50%;
	right: 15px;
	margin-top: -4.5px;
	width: 9px;
	height: 9px;
	border-top: #fff 1px solid;
	border-right: #fff 1px solid;
	transform: rotate(45deg);
	transition: border 0.2s;
}
p.firmware-catalog a::before {
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background-color: #000;
		transform: translateX(-100%);
		transition: transform 0.2s ease-in-out;
}
p.firmware-catalog a:hover::before {
		transform: translateX(0);
}
p.firmware-catalog a:hover span {
		color: #fff;
}
p.firmware-catalog a:hover span::before {
		border-color: #fff;
}


@media (max-width: 599px) {
	.button-area-b {
		width: 100%;
	}
	/* Home red=b */
	p.firmware-h {
		margin: 0 auto;
		text-align: center;
		width: 50%;
	}
	p.firmware-h a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
	}
	p.firmware-h a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
	}
	/* Home red=w */
	p.firmware-hw {
		margin: 0 auto;
		text-align: center;
		width: 50%;
	}
	p.firmware-hw a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
	}
	p.firmware-hw a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
	}
	/* コラボ ゴジラ */
	p.firmware-cola {
		margin: 0 auto;
		text-align: center;
		width: 100%;
	}
	p.firmware-cola a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
	}
	p.firmware-cola a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
	}
	/* standerd */
	p.firmware {
		margin: 20px 0 20px 0;
		margin: 5.33333vw 0 5.33333vw 0;
		text-align: left;
		width: 100%;
	}
	p.firmware a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
	}
	p.firmware a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
	}
	/* HOME スライド　ゴジラ */
	p.firmware-t {
		margin: 20px 0 20px 0;
		margin: 5.33333vw 0 5.33333vw 0;
		text-align: center;
		width: 80%;
	}
	p.firmware-t a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
	}
	p.firmware-t a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
	}
	/* Catalog */
	p.firmware-catalog {
		margin: 0 auto;
		text-align: center;
		width: 70%;
	}
	p.firmware-catalog a span {
		margin: 0 auto;
		padding: 6px 15px 6px 10px;
		padding: 1.6vw 4vw 1.6vw 2.66666vw;
		display: block;
		font-size: 12px;
		font-size: 3.2vw;
		line-height: 1.35em;
		text-align: center;
	}
	p.firmware-catalog a span::before {
		margin-top: -4px;
		margin-top: -1.06666vw;
		right: 10px;
		right: 2.66666vw;
		width: 8px;
		width: 2.13333vw;
		height: 8px;
		height: 2.13333vw;
	}
}

	
/* スライド文字
-------------------------------------------------- */

.slideConts {
  height: auto;
  margin: 0 auto;
  -webkit-transition: .5s;
  -o-transition: .5s;
  transition: .5s;
	position: absolute;
}
.slideConts h5 {
    font-family: 'Anton', 'Noto Sans JP', sans-serif;
    font-size: 10rem;
	color: #c7000b;
    line-height: 1.2;
    padding: 0;
    margin: 0;
    text-align: left;
	opacity: 0.3;
	/*color:rgba(199,0,11,.0);*/
	/*-webkit-text-stroke: 1px #c7000b;*/
}
.slideContsL {
  transform: translate(-800px, 0);
}
.slideContsR {
  transform: translate(800px, 0);
}
.slideContsL.show {
  transform: translate(-50px, 0) !important;
}
.slideContsR.show {
  transform: translate(50px, 0) !important;
}

@media (max-width: 599px) {
.slideConts h5 {
    font-size: 7rem;
}
.slideContsL.show {
  transform: translate(-20px, 0) !important;
}
}

/* パンくず
-------------------------------------------------- */
.cf:before, .cf:after {
    content: "";
    display: table;
}
.cf:after {
    clear: both;
}
#bread {
	font-family: "Meiryo UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
"Yu Gothic UI", "MS PGothic", sans-serif !Important;
	font-size: 13px;
    padding: 30px 0 40px;
}
#bread li {
    float: left;
    margin-right: 7px;
}
#bread a {
    margin-right: 7px;
    color: #c7000b;
}
#bread a:hover {
    margin-right: 7px;
    color: #c7000b;
    text-decoration: underline;
}
@media (max-width: 599px) {
#bread {
    font-size: 10px;
    margin: 7px 0 20px;
    font-weight: bold;
}
}
/* パンくず　フッター */
#bread_f {
	font-family: "Meiryo UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
"Yu Gothic UI", "MS PGothic", sans-serif !Important;
	font-size: 13px;
    padding: 100px 0 0;
	margin-bottom: -50px;
}
#bread_f li {
    float: left;
    margin-right: 7px;
}
#bread_f a {
    margin-right: 7px;
    color: #c7000b;
}
#bread_f a:hover {
    margin-right: 7px;
    color: #c7000b;
    text-decoration: underline;
}
#bread_colf {
	font-family: "Meiryo UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
"Yu Gothic UI", "MS PGothic", sans-serif !Important;
	font-size: 13px;
    padding: 50px 0;
}
#bread_colf li {
    float: left;
    margin-right: 7px;
}
#bread_colf a {
    margin-right: 7px;
    color: #c7000b;
}
#bread_colf a:hover {
    margin-right: 7px;
    color: #c7000b;
    text-decoration: underline;
}
@media (max-width: 599px) {
#bread_f {
    font-size: 10px;
    margin: 7px 0 20px;
    font-weight: bold;
	}
#bread_colf {
    font-size: 10px;
    margin: 7px 0 20px;
    font-weight: bold;
	}
}

/* パンくず　白文字 */
#bread-w {
	font-family: "Meiryo UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
"Yu Gothic UI", "MS PGothic", sans-serif !Important;
	font-size: 13px;
	color: #fff;
    padding: 30px 0 40px;
}
#bread-w li {
    float: left;
    margin-right: 7px;
}
#bread-w a {
    margin-right: 7px;
    color: #c7000b;
}
#bread-w a:hover {
    margin-right: 7px;
    color: #c7000b;
    text-decoration: underline;
}
@media (max-width: 599px) {
#bread-w {
    font-size: 10px;
    margin: 7px 0 20px;
    font-weight: bold;
}
}
/* パンくず　白文字　フッター */
#bread-w_f {
	font-family: "Meiryo UI", "Hiragino Sans", "Hiragino Kaku Gothic ProN",
"Yu Gothic UI", "MS PGothic", sans-serif !Important;
	font-size: 13px;
	color: #fff;
    padding: 100px 0 0;
	margin-bottom: -50px;
}
#bread-w_f li {
    float: left;
    margin-right: 7px;
}
#bread-w_f a {
    margin-right: 7px;
    color: #c7000b;
}
#bread-w_f a:hover {
    margin-right: 7px;
    color: #c7000b;
    text-decoration: underline;
}
@media (max-width: 599px) {
	#bread-w_f {
		font-size: 10px;
		margin: 7px 0 20px;
		font-weight: bold;
		padding: 30px 0 0;
}
}