@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 {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

a {
  text-decoration: none;
}

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

body {
  line-height: 1.5;
}

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;
}

.close {
  display: none;
}

/* ==========================================================================
   HELPER
   ========================================================================== */

/**
 * width
 */
 
.w01per { width: 1%; }
.w02per { width: 2%; }
.w03per { width: 3%; }
.w04per { width: 4%; }
.w05per { width: 5%; }
.w06per { width: 6%; }
.w07per { width: 7%; }
.w08per { width: 8%; }
.w09per { width: 9%; }
.w10per { width: 10%; }
.w11per { width: 11%; }
.w12per { width: 12%; }
.w13per { width: 13%; }
.w14per { width: 14%; }
.w15per { width: 15%; }
.w16per { width: 16%; }
.w17per { width: 17%; }
.w18per { width: 18%; }
.w19per { width: 19%; }
.w20per { width: 20%; }
.w21per { width: 21%; }
.w22per { width: 22%; }
.w23per { width: 23%; }
.w24per { width: 24%; }
.w25per { width: 25%; }
.w26per { width: 26%; }
.w27per { width: 27%; }
.w28per { width: 28%; }
.w29per { width: 29%; }
.w30per { width: 30%; }
.w31per { width: 31%; }
.w32per { width: 32%; }
.w33per { width: 33%; }
.w34per { width: 34%; }
.w35per { width: 35%; }
.w36per { width: 36%; }
.w37per { width: 37%; }
.w38per { width: 38%; }
.w39per { width: 39%; }
.w40per { width: 40%; }
.w41per { width: 41%; }
.w42per { width: 42%; }
.w43per { width: 43%; }
.w44per { width: 44%; }
.w45per { width: 45%; }
.w46per { width: 46%; }
.w47per { width: 47%; }
.w48per { width: 48%; }
.w49per { width: 49%; }
.w50per { width: 50%; }
.w51per { width: 51%; }
.w52per { width: 52%; }
.w53per { width: 53%; }
.w54per { width: 54%; }
.w55per { width: 55%; }
.w56per { width: 56%; }
.w57per { width: 57%; }
.w58per { width: 58%; }
.w59per { width: 59%; }
.w60per { width: 60%; }
.w61per { width: 61%; }
.w62per { width: 62%; }
.w63per { width: 63%; }
.w64per { width: 64%; }
.w65per { width: 65%; }
.w66per { width: 66%; }
.w67per { width: 67%; }
.w68per { width: 68%; }
.w69per { width: 69%; }
.w70per { width: 70%; }
.w71per { width: 71%; }
.w72per { width: 72%; }
.w73per { width: 73%; }
.w74per { width: 74%; }
.w75per { width: 75%; }
.w76per { width: 76%; }
.w77per { width: 77%; }
.w78per { width: 78%; }
.w79per { width: 79%; }
.w80per { width: 80%; }
.w81per { width: 81%; }
.w82per { width: 82%; }
.w83per { width: 83%; }
.w84per { width: 84%; }
.w85per { width: 85%; }
.w86per { width: 86%; }
.w87per { width: 87%; }
.w88per { width: 88%; }
.w89per { width: 89%; }
.w90per { width: 90%; }
.w91per { width: 91%; }
.w92per { width: 92%; }
.w93per { width: 93%; }
.w94per { width: 94%; }
.w95per { width: 95%; }
.w96per { width: 96%; }
.w97per { width: 97%; }
.w98per { width: 98%; }
.w99per { width: 99%; }
.w100per { width: 100%; }


/**
 * margin
 */

.m00 { margin: 0 !important;}
.m03 { margin: 3px !important;}
.m05 { margin: 5px !important;}
.m10 { margin: 10px !important;}
.m15 { margin: 15px !important;}
.m20 { margin: 20px !important;}
.m25 { margin: 25px !important;}
.m30 { margin: 30px !important;}
.m35 { margin: 35px !important;}
.m40 { margin: 40px !important;}
.m45 { margin: 45px !important;}
.m50 { margin: 50px !important;}
.mt00 { margin-top: 0 !important;}
.mt01 { margin-top: 1px !important;}
.mt02 { margin-top: 2px !important;}
.mt03 { margin-top: 3px !important;}
.mt05 { margin-top: 5px !important;}
.mt10 { margin-top:10px !important;}
.mt12 { margin-top:12px !important;}
.mt15 { margin-top:15px !important;}
.mt20 { margin-top:20px !important;}
.mt25 { margin-top:25px !important;}
.mt30 { margin-top:30px !important;}
.mt35 { margin-top:35px !important;}
.mt40 { margin-top:40px !important;}
.mt45 { margin-top:45px !important;}
.mt50 { margin-top:50px !important;}
.mt60 { margin-top:60px !important;}
.mt70 { margin-top:70px !important;}
.mt75 { margin-top:75px !important;}
.mt80 { margin-top:80px !important;}
.mt90 { margin-top:90px !important;}
.mt100 { margin-top:100px !important;}
.mr00 { margin-right: 0 !important;}
.mr02 { margin-right: 2px !important;}
.mr05 { margin-right: 5px !important;}
.mr10 { margin-right:10px !important;}
.mr12 { margin-right:12px !important;}
.mr13 { margin-right:13px !important;}
.mr14 { margin-right:14px !important;}
.mr15 { margin-right:15px !important;}
.mr16 { margin-right:16px !important;}
.mr17 { margin-right:17px !important;}
.mr20 { margin-right:20px !important;}
.mr25 { margin-right:25px !important;}
.mr30 { margin-right:30px !important;}
.mr35 { margin-right:35px !important;}
.mr40 { margin-right:40px !important;}
.mr45 { margin-right:45px !important;}
.mr50 { margin-right:50px !important;}
.mb00 { margin-bottom: 0 !important;}
.mb02 { margin-bottom: 2px !important;}
.mb05 { margin-bottom: 5px !important;}
.mb10 { margin-bottom:10px !important;}
.mb12 { margin-bottom:12px !important;}
.mb13 { margin-bottom:13px !important;}
.mb14 { margin-bottom:14px !important;}
.mb15 { margin-bottom:15px !important;}
.mb20 { margin-bottom:20px !important;}
.mb25 { margin-bottom:25px !important;}
.mb30 { margin-bottom:30px !important;}
.mb35 { margin-bottom:35px !important;}
.mb40 { margin-bottom:40px !important;}
.mb45 { margin-bottom:45px !important;}
.mb50 { margin-bottom:50px !important;}
.ml00 { margin-left: 0 !important;}
.ml05 { margin-left: 5px !important;}
.ml10 { margin-left:10px !important;}
.ml12 { margin-left:12px !important;}
.ml15 { margin-left:15px !important;}
.ml20 { margin-left:20px !important;}
.ml25 { margin-left:25px !important;}
.ml30 { margin-left:30px !important;}
.ml35 { margin-left:35px !important;}
.ml40 { margin-left:40px !important;}
.ml45 { margin-left:45px !important;}
.ml50 { margin-left:50px !important;}
.mlr-auto0 { margin:0 auto}
.mlr-auto1em { margin:1em auto}
.mlr-auto2em { margin:2em auto}
.mlr-auto3em { margin:3em auto}
.mlr-auto4em { margin:4em auto}
.mlr-auto5em { margin:5em auto}
.ml-auto { margin-left:auto}
.mr-auto { margin-left:auto}

/**
 * padding
 */
 
.p00 { padding: 0  !important;}
.p01 { padding: 1px !important;}
.p02 { padding: 2px !important;}
.p03 { padding: 3px !important;}
.p05 { padding: 5px !important;}
.p10 { padding: 10px !important;}
.p15 { padding: 15px !important;}
.p20 { padding: 20px !important;}
.p25 { padding: 25px !important;}
.p30 { padding: 30px !important;}
.p35 { padding: 35px !important;}
.p40 { padding: 40px !important;}
.p45 { padding: 45px !important;}
.p50 { padding: 50px !important;}
.pt00 { padding-top: 0 !important;}
.pt05 { padding-top: 5px !important;}
.pt10 { padding-top:10px !important;}
.pt12 { padding-top:12px !important;}
.pt15 { padding-top:15px !important;}
.pt20 { padding-top:20px !important;}
.pt25 { padding-top:25px !important;}
.pt30 { padding-top:30px !important;}
.pt35 { padding-top:35px !important;}
.pt40 { padding-top:40px !important;}
.pt45 { padding-top:45px !important;}
.pt50 { padding-top:50px !important;}
.pr00 { padding-right: 0 !important;}
.pr05 { padding-right: 5px !important;}
.pr10 { padding-right:10px !important;}
.pr12 { padding-right:12px !important;}
.pr15 { padding-right:15px !important;}
.pr20 { padding-right:20px !important;}
.pr25 { padding-right:25px !important;}
.pr30 { padding-right:30px !important;}
.pr35 { padding-right:35px !important;}
.pr40 { padding-right:40px !important;}
.pr45 { padding-right:45px !important;}
.pr50 { padding-right:50px !important;}
.pb00 { padding-bottom: 0 !important;}
.pb05 { padding-bottom: 5px !important;}
.pb10 { padding-bottom:10px !important;}
.pb12 { padding-bottom:12px !important;}
.pb15 { padding-bottom:15px !important;}
.pb20 { padding-bottom:20px !important;}
.pb25 { padding-bottom:25px !important;}
.pb30 { padding-bottom:30px !important;}
.pb35 { padding-bottom:35px !important;}
.pb40 { padding-bottom:40px !important;}
.pb45 { padding-bottom:45px !important;}
.pb50 { padding-bottom:50px !important;}
.pl00 { padding-left: 0 !important;}
.pl05 { padding-left: 5px !important;}
.pl10 { padding-left:10px !important;}
.pl12 { padding-left:12px !important;}
.pl15 { padding-left:15px !important;}
.pl20 { padding-left:20px !important;}
.pl25 { padding-left:25px !important;}
.pl30 { padding-left:30px !important;}
.pl35 { padding-left:35px !important;}
.pl40 { padding-left:40px !important;}
.pl45 { padding-left:45px !important;}
.pl50 { padding-left:50px !important;}

/**
 * roboto
 */
.roboto-thin {
  font-family: "Roboto", sans-serif;
  font-weight: 100 !important;
  font-style: normal;
}

.roboto-light {
  font-family: "Roboto", sans-serif;
  font-weight: 300 !important;
  font-style: normal;
}

.roboto-regular {
  font-family: "Roboto", sans-serif;
  font-weight: 400 !important;
  font-style: normal;
}

.roboto-medium {
  font-family: "Roboto", sans-serif;
  font-weight: 500 !important;
  font-style: normal;
}

.roboto-bold {
  font-family: "Roboto", sans-serif;
  font-weight: 700 !important;
  font-style: normal;
}

.roboto-black {
  font-family: "Roboto", sans-serif;
  font-weight: 900 !important;
  font-style: normal;
}

.roboto-thin-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 100 !important;
  font-style: italic;
}

.roboto-light-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 300 !important;
  font-style: italic;
}

.roboto-regular-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 400 !important;
  font-style: italic;
}

.roboto-medium-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 500 !important;
  font-style: italic;
}

.roboto-bold-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 700 !important;
  font-style: italic;
}

.roboto-black-italic {
  font-family: "Roboto", sans-serif;
  font-weight: 900 !important;
  font-style: italic;
}

/**
 * text
 */

.font-xxl {
	font-size: 150%;
}
.font-xl {
	font-size: 125%;
}
.font-l {
	font-size: 112.5%;
}
.font-default {
	font-size: 16px;
	font-weight: normal;
}
.font-m {
	font-size: 87.5%;
}
.font-s {
	font-size: 75%;
}
.font-xs {
	font-size: 62.5%;
}
.text-gray {
	color: #bbb;
}
.text-red {
	color: #fe0000;
}
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.fs10{font-size: 71.4% !important;}
.fs12{font-size: 85.7% !important;}
.fs14{font-size: 100% !important;}
.fs16{font-size: 114% !important;}
.fs18{font-size: 128.5% !important;}
.fs20{font-size: 142.8% !important;}

.list-disk{
    list-style: disc;
    margin-left: 1em;
}
.list-none{
    list-style: none;
}
.list-num{
    list-style: decimal;
    margin-left: 1.5em;
}
.underline-black{
    padding-bottom: 0.2em;
    border-bottom: solid 2px #000;
}
.strong,
strong{
	font-weight: bold;
}

.wp-block-separator {
    border: none;
    background-color: #ccc;
    height: 2px;
}
								
.wp-block-embed-youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom:4em;
}
.wp-block-embed-youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.wp-block-embed-youtube .wp-block-embed__wrapper {
    position: static;
}

.frame-youtube1 {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
  margin-bottom: 1.5em;
}

.frame-youtube1 iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}

.frame-youtube2 {
  position: relative;
  width: 100%;
  height: 0;
  padding-bottom: 75%;
  overflow: hidden;
  margin-bottom: 1.5em;
}

.frame-youtube2 iframe {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
}
.google-map {
height: 0;
overflow: hidden;
padding-bottom: 56.25%;
position: relative;
}
.google-map iframe {
position: absolute;
left: 0;
top: 0;
height: 100%;
width: 100%;
}
.border1em {
    border-radius: 1em;
    padding:1em;
}
.botlink01{
    margin: 0 !important;
}
.botlink01 a{
    display: block;
    margin: 0 !important;
    width: 100%;
    border-radius: 0.3em;
    padding:0.5em;
    color: #000 !important;
    text-decoration: none !important;
    text-align: center;
    font-weight: bold;
    background-color: #fff;
    border: 2px solid #fff;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
}
.botlink01 a:hover {
    background-color: #2aa8ff;
    border: 2px solid #fff;
    color:#fff !important;
}

.botlink02{
    margin: 0 !important;
}
.botlink02 a{
    display: block;
    margin: 0 !important;
    width: 100%;
    border-radius: 0.3em;
    padding:0.5em;
    color: #fff !important;
    text-decoration: none !important;
    text-align: center;
    font-weight: bold;
    background-color: #ff6600;
    border: 2px solid #ff6600;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
}
.botlink02 a:hover {
    background-color: #fff;
    border: 2px solid #000;
    color:#000 !important;
}

.gap0{
  gap: 0;
}
.gap1{
  gap: 1em;
}

.main .entry-footer{
  text-align: center;
    padding-top: 2em;
}
.edit-link{
  margin: 0 auto;
}
.edit-link .post-edit-link {
  padding:0.5em 1em;
    background-color: #efefef;
}

.border-gray{
  border: solid 1px #ddd;
}
.border-black{
  border: solid 1px #000;
}
.single p.box{
  border: solid 1px #ddd;
  padding:1em;
}

.img-border_black img{
  border: solid 1px #000;
}
.img-border_white img{
  border: solid 1px #fff;
}

.border2px-white{
    padding-bottom:0.3em;
    margin-bottom: 1em;
    border-bottom: solid 2px #fff;
}


/*--------------------------------------------*/
html {
    width: 100%;
    height: 100%;
    font-size: 62.5%;
}
body {
    position: relative;
    width: 100%;
    height: 100%;
    color: #333;
    font-size: 1.6rem;
    text-align: left;
    font-weight: 300;
    overflow-wrap: break-word;
    font-family: 'Noto Sans JP', "ヒラギノ角ゴ" , "Hiragino Kaku Gothic Pro" , "メイリオ" , Meiryo , "ＭＳ Ｐゴシック" , sans-serif;
}
.container {
    position: relative;
    width: 100%;
    height: 100%;
}
/*---------------------header start-------------------------*/
.header {
    width: 100%;
    height: 50px;
    margin: 0 auto;
    padding:0 0 0 3%;
    background-color: #fff;
    position: fixed;
    z-index: 100;
    left: 0;
	right: 0;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .5);
    display: flex;
}
.header h1.logo {
    display: block;
    width: 125px;
    height: auto;
    margin: 11px 0 0;
    float: left;
}
.header h1.logo img {
    display: block;
    width: 100%;
    height: auto;
}

#mobile-head {
    display: flex;
    width: 100%;
}
.globalmenu .shadow .mega-sub-menu {
    box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.3)!important;
}
.globalmenu .shadow .mega-sub-menu .mega-sub-menu {
    box-shadow: 0 0 0 0 rgba(0, 0, 0, .5)!important;
}
.globalmenu {
    font-size: 100%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    line-height: 1.2;
    display: flex;
    justify-content: end;
}
.globalmenu .menu li a {
  display: block;
  padding:1em 1em;
  color:#333;
}

.globalmenu .menu li a:before{
    position: absolute;
    content:"";
    width: 0;
    left: 0;
    bottom:0.5em;
    border-bottom: solid 2px #999;
    transition: all 0.3s;
}

.globalmenu .menu li a:hover:before{
    width: 100%;
    border-bottom: solid 2px #ccc;
}
.globalmenu .menu li a.active:before {
    width: 100%;
    border-bottom: solid 2px #ccc;
}

.mega-menu .store {
    margin-left:1em;
}
.mega-menu .store a {
    display: block;
    padding:1em 2em;
    color:#fff;
    background-color: #0077c7;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
}
.mega-menu .store a:before {
    content:"\f07a";
    font-family:FontAwesome;
    font-size: 128.5%;
    line-height: 1;
    display: inline-block;
    margin-right: 0.2em;
}
.mega-menu .store a:hover {
    background-color: #2aa8ff;
    color:#fff;
}
.globalmenu .store {
    margin-left:1em;
}
.globalmenu .store a {
    display: block;
    height: 50px;
    padding:0 2em 0 1.5em !important;
    color:#fff !important;
    background-color: #0077c7 !important;
    -webkit-transition: 0.3s ease-in-out !important;
    -moz-transition   : 0.3s ease-in-out !important;
    transition        : 0.3s ease-in-out !important;
}
.globalmenu .store a:before {
    content:"\f07a" !important;
    font-family:FontAwesome !important;
    font-size: 128.5% !important;
    line-height: 1;
    display: inline-block;
    margin-right: 0.2em;
}
.mega-menu .store a:hover {
    background-color: #2aa8ff !important;
    color:#fff;
}

.mega-new .mega-menu-link:after {
    content: "NEW" !important;
    display: inline-block !important;
    font-size: 70% !important;
    line-height: 1.1 !important;
    color: #fff !important;
    padding: 0.1em 0.3em 0.1em !important;
    margin: 0 0 0 0.7em !important;
    border-radius: 3px !important;
    background-color: #dd0000 !important;
}


.main-navigation ul ul {
    box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
    float: left;
    position: absolute;
    top: 100%;
    left: -999em;
    z-index: 99999;
    background-color: #fff;
}
.main-navigation li {
    position: relative;
    display: block;
}
.main-navigation .sub-menu {
    display: block;
}

.header.fix {
    position: fixed;
    left: 0;
    right: 0;
    z-index: 100;
}
.header.fix h1.logo {
  display: block;
  width: 125px;
  height: auto;
  margin: 11px 0 0;
}


/* hamburger Button */
.hamburger {
  display: none;
  position: absolute;
  right: 15px;
  top: 14px;
  width: 30px;
  height: 30px;
  cursor: pointer;
  z-index: 101;
}
.hamburger div {
  position: relative;
}
.hamburger{
    display: none;
}

/*---------------------header end-------------------------*/

/*---------------------footer start-------------------------*/
footer {
    width:100%;
    margin: 0 auto;
    padding: 0;
    background-color: #111;
}
footer .inner{
    max-width:1400px;
    margin: 0 auto 0;
    padding:3em 0;
    display: flex;
    justify-content: space-between;
    color:#fff;
}

footer .inner a{
    color:#fff;
}
footer .inner a:hover{
    color:#777;
}
footer .inner01{
    min-width: 490px;
    margin: 0;
    padding: 0;
}
footer .inner01 .footer-menu{
    display: block;
    margin: 0 15px;
    color:#fff;
    font-size: 87.5%;
    line-height: 1.7;
}
footer .inner01 .footer-menu .logo{
    display: inline-block;
    vertical-align: top;
    margin-right: 2em;
    width: 135px;
}
footer .inner01 .footer-menu .logo img{
    display: block;
    width: 100%;
    height: auto;
}
footer .inner01 .footer-menu .company{
    display: inline-block;
    font-weight: bold;
}
footer .inner01 .footer-menu .address{
    display: block;
    font-weight: normal;
}
footer .inner02{
    display: flex;
    justify-content: space-between;
    width: 50%;
}
footer .inner02 .sns-menu{
    display: inline-block;
    margin: 0 30px;
}
footer .inner02 .sns-menu .title {
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0.03em;
    display: block;
    margin: 0 0 0.8em;
}
footer .inner02 .sns-menu .icon {
    display: block;
}
footer .inner02 .sns-menu .icon a {
    display: inline-block;
    margin-right: 2em;
}
footer .inner02 .sns-menu .icon a:last-child {
    margin-right: 0;
}
footer .inner02 .sns-menu .icon a img {
    width: 30px;
    opacity: 1.0;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
footer .inner02 .sns-menu .icon a:hover img {
    opacity: 0.5;
}

footer .inner02 .footer-menu{
    display: block;
    margin: 0 15px;
    color:#fff;
    font-size: 87.5%;
    line-height: 1.7;
}
footer .inner03{
    max-width:100%;
    margin: 0 auto;
    padding:1em 0;
    background-color: #222;
}
footer .inner03 h3{
    font-size: 85.7%;
    margin: 0 5%;
    color:#777;
    text-align: center;
}

/*------------------------go-top----------------------------*/

.go-top {
	position: fixed;
	bottom: 50px;
    right:5%;
	display:none;
    z-index: 100;
}
.go-top a {
    color:#fff;
    font-size:100%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0.05em;
    line-height: 1;
	text-align:center;
    width: 3.5em;
    height: 3.5em;
    padding: 0.2em;
	background-color: rgba(0,0,0,0.2);
	display:block;
}
.go-top a:before {
    content:"\f106";
    font-family:FontAwesome;
    font-size: 150%;
    line-height: 1;
    display: block;
    margin-bottom: 0.08em;
}
.go-top a:hover {
	background-color: rgba(0,0,0,0.8);
}

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

/*---------------------topslide start-------------------------*/

.home .visual {
    width:100%;
    margin: 0 auto;
    padding: 50px 0 0;
}
.home .visual a {
    display: block;
}
.home .visual a img {
    width:100%;
    height:auto;
    opacity: 1.0;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
.home .visual a img:hover {
    opacity: 0.6;
}
.home .visual .swiper-container {
    background-color: #000;
}
.home .visual .swiper-slide {
    background-color: #000;
}
.home .visual .swiper-slide a img {
    display: block;
    opacity: .5;
    -webkit-transition: .3s all;
    transition: .3s all;
}
.home .visual .swiper-slide-active a img {
    opacity: 1;
}
.home .visual a img:hover {
    opacity: 0.6;
}

/*---------------------topslide end-------------------------*/

.contact-us {
    width:100%;
    margin: 0 auto;
    padding: 2em 0;
    height: 300px;
    color:#fff;
}
.contact-us .inner {
    max-width: 1030px;
    margin: 0 auto;
    padding:2em 15px 0;
    text-align: center;
}
.contact-bg{
    background-color: #000;
    background-image: url(/wp-content/themes/mirai2022/assets/img/share/contact-bg.jpg);
    background-size: cover;
    background-position: top;
    background-attachment: fixed;
}
.contact-us .h2title {
    font-size: 150%;
    margin-bottom: 0.7em;
}
.bot01{
    display: block;
    margin: 0 auto;
}
.bot01 a{
    font-weight: bold;
    border:1px solid #fff;
    color:#fff;
    padding:0.7em 1em !important;
    display: inline-block;
    margin: 2em 0 0;
    text-decoration: none !important;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
}
.bot01 a:hover{
    border:1px solid #007dd4;
    background-color: #007dd4;
}
.bot02{
    display: block;
    margin: 0 0 2em !important;
}
.bot02 a{
    font-size: 100%;
    font-weight: bold;
    border:2px solid #000 !important;
    color:#000;
    padding:0.6em 1em !important;
    display: inline-block;
    margin: 2em 0 0;
    text-decoration: none !important;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
}
.bot02 a:hover{
    color:#fff !important;
    border:2px solid #007dd4 !important;
    background-color: #007dd4 !important;
}
.wp-block-column {
    margin:1em 0;
}
div.wide-wrap{
    position:relative;
    margin:0 calc(50% - 50vw);
    overflow:hidden;
    padding: 0;
}
.page .wide-wrap .inner{
    max-width: 1030px;
    padding:2em 15px 2em;
    margin: 0 auto;
}
div.wide-wrap .size-full{
    width: 100%;
}
div.wide-wrap .size-full{
    width: 100%;
}
div.wide-wrap .size-full img{
    width: 100%;
    display: block;
    margin: 0 auto;
}
.page .entry-footer{
    background-color:transparent;
    text-align: center;
}
.page .entry-footer .edit-link a{
    color:#000;
}

/*---------------------Home main start-------------------------*/

.home .main .big-bana a img,
.home .main .slide-bana a img {
    opacity: 1.0;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
}
.home .main .big-bana a img:hover,
.home .main .slide-bana a img:hover {
    opacity: 0.6;
}

.home .main {
    padding:0 0 0 !important;
    display: block;
}
.home .main .big-bana{
    width: 100%;
    max-width: 100%;
    margin: 0 auto 1em;
    padding: 1em 0;
    background-color: #EFEFF2;
}
.home .main .big-bana .inner {
    max-width: 1030px;
    margin: 0 auto 1em;
    padding: 3em 15px 0;
}
.home .main .big-bana .big-banatitle{
    font-size: 150%;
    font-weight: 400;
    margin: 0.5em 0;
}
.home .main .big-bana .big-banatext{
    font-size: 112.5%;
}
.home .main .big-bana a {
    opacity: 1.0;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
}
.home .main .big-bana a :hover {
    opacity: 0.6;
}

.home .main .h2title{
    font-size: 143%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display: block;
    text-align: center;
    letter-spacing: 0.03em;
    margin-bottom: 1.5em;
}

.slide-bana {
    max-width: 1030px;
    margin: 0 auto 1em;
    padding:1em 0 1em;
}
.slide-bana .h2title{
    font-size: 143%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display: block;
    text-align: center;
    letter-spacing: 0.03em;
    margin-bottom: 1.5em;
}
.slide-bana .swiper-pagination {
    position: inherit;
    bottom:0px;
}
.home .main .webstore {
    width:100%;
    max-width: 100%;
    margin: 0 auto;
    padding:1em 0;
    background-color: #222;
}
.home .main .webstore .h2title {
    color:#fff;
}
.home .main .webstore .inner {
    max-width: 1030px;
    margin: 0 auto 1em;
    padding:3em 15px 0;
}
.home .main .webstore ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.home .main .webstore .box {
    width: 48%;
    display: block;
    margin:0 0 50px;
    line-height: 1.7;
}
.home .main .webstore .box a {
    display: block;
    color:#fff;
    opacity: 1.0;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

.home .main .webstore .box a img {
    width: 100%;
    height:auto;
    display: block;
    margin-bottom: 0.8em;
}
.home .main .webstore .box a:hover {
    opacity: 0.6;
}
.home .main .webstore .box a h3 {
    display: block;
    font-size:112.5%;
    font-weight: 600;
    text-align: center;
    margin-bottom: 0.3em;
}
.home .main .webstore .box a span {
    display: block;
}

.home .main .infomation {
    width:100%;
    max-width: 100%;
    margin: 0 auto 1em;
    padding:3em 0 0;
}
.home .main .infomation .inner {
    max-width: 1030px;
    margin: 0 auto 1em;
    padding: 0 15px 3em;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.home .main .infomation .post{
    width: 32%;
    display: block;
    padding: 0;
    margin-bottom: 2em;
}
.home .main .infomation .inner:after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
}
.home .main .infomation .post a{
    display: block;
    opacity: 1.0;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}

.home .main .infomation .post ul{
}
.home .main .infomation .post ul li{
}
.home .main .infomation .post .thumbnail{
    width: 100%;
    display: block;
    margin: 0 0 0.5em;
}
.home .main .infomation .post .thumbnail img{
    width: 100%;
    height: auto;
}
.home .main .infomation .post a .date{
    font-size: 75%;
    color:#999;
    font-weight: 300;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0.03em;
    width: 100%;
    display: block;
    margin-bottom: 0.3em;
}
.home .main .infomation .post a .post-title{
    color:#000;
    width: 100%;
    display: block;
    margin-bottom: 0;
    font-size: 95%;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
.home .main .infomation .post a:hover{
    opacity: 0.6;
}
.home .main .products {
    width:100%;
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
    background-color: #efefef;
}
.home .main .products .inner {
    max-width: 1230px;
    margin: 0 auto 1em;
    padding:3em 15px 4em;
}
.home .main .h3title{
    font-size: 125%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display: block;
    letter-spacing: 0em;
    margin: 1.5em 0 1em;
}
.lineup {
    display: flex;
    flex-wrap: wrap;
    gap:0.8em 1.2%;
}
.lineup a{
    background-color: #fff;
    border-radius: 0.5em;
    border: 2px solid #fff;
    padding:0.7em;
    width: 19%;
    min-width: 160px;
    text-align: center;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
.lineup a figure{
    margin-bottom: 0.3em;
}
.lineup a .model dt{
    font-size: 112.5%;
    line-height: 1.1;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    color:#222;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
.lineup a .model dd{
    font-size: 75%;
    line-height: 1;
    color:#fff;
    padding:0.3em;
    background-color: #999;
    border-radius: 1em;
    display: block;
    margin: 0.7em 0 0.5em;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
.lineup a:hover{
    border: 2px solid #0077c7;
}
.lineup a:hover .model dt{
    color:#0077c7;
}
.lineup a:hover .model dd{
    background-color: #0077c7;
}
/*---------------------title end-------------------------*/

/*----------------page-contents start--------------------*/

#page .main {
    padding-top: 4em;
}
main, .main{
    width: 100%;
    display: block;
    box-sizing: border-box;
}
.main .title-box,
.main .entry-header,
.main .title-header{
    max-width: 1030px;
    margin:0 auto;
    display: block;
}
.main .title-box h1,
.main .entry-header h1,
.main .title-header h1{
    font-size: 143%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display: inline-block;
    letter-spacing: 0.05em;
}
.page .site-main .page{
    max-width: 1030px;
    margin:0 auto;
    padding:50px 15px 2em;
    display: block;
}
.page .entry-content {
    margin: 0 0 0 ;
}
.page .site-main .entry-header{
    display: none;
}
.page .site-main .entry-content h2{
    font-size: 150%;
    font-weight: 400;
    margin: 1em 0 1.5em;
}
.page .site-main .entry-content h2.ozwald{
	font-family: 'Oswald', sans-serif;
    font-size: 200%;
    font-weight: 500;
    margin: 1em 0 1.5em;
}
.page .site-main .entry-content h3.ozwald{
	font-family: 'Oswald', sans-serif;
    font-size: 250%;
    font-weight: 200;
    margin: 1em 0 1em;
}
.page .site-main .entry-content h4.ozwald{
	font-family: 'Oswald', sans-serif;
    font-size: 150%;
    font-weight: 500;
    margin: 0.2em 0 0.2em;
}


.page .site-main .entry-content h3{
    font-weight: bold;
    margin: 1em 0;
}
.page .site-main .entry-content .machine-history{
    line-height: 2em;
    margin-bottom: 1.5em;
    display: flex;
    flex-wrap: wrap;
}
.page .site-main .entry-content .machine-history li{
    display: inline-block;
    vertical-align: top;
}
.page .site-main .entry-content .machine-history .date{
    width: 20%;
    min-width: 5em;
}
.page .site-main .entry-content .machine-history .machine{
    width: 80%;
}

.page .site-main .entry-content .company-history{
    display: flex;
    flex-wrap: wrap;
    border-top: solid 1px #bbb;
    padding: 0.8em 2%;
    line-height: 1.8;
}
.page .site-main .entry-content .company-history:last-child{
    border-bottom: solid 1px #bbb;
    margin-bottom: 3em;
}
.page .site-main .entry-content .company-history .date{
    width: 15%;
    min-width: 5em;
}
.page .site-main .entry-content .company-history .topic{
    width: 85%;
}

.page .site-main .entry-content .company-detail{
    max-width: 700px;
    line-height: 1.6;
    margin: 0 auto;
    padding: 0.8em 0.5em;
    border-bottom:1px solid #ccc;
    display: flex;
    flex-wrap: wrap;
}

.page .site-main .entry-content .company-detail dt{
    width: 25%;
    min-width: 7em;
    padding-right:3em;
    text-align: right;
}
.page .site-main .entry-content .company-detail dd{
    width: 75%;
}
.page .site-main .entry-content .company-detail .list-disc{
}
.page .site-main .entry-content .company-detail .list-disc li{
    line-height: 1.8;
    list-style-type: disc !important;
    margin-left: 1.5em;
    border: none;
    display: list-item;
}

.page .site-main .entry-content p{
    font-size: 100%;
    line-height: 1.7;
    margin-bottom: 1.5em;
}
.page .site-main .entry-content .name{
    list-style: none;
    margin-bottom: 1em;
}
.page .site-main .entry-content .name li{
    display: inline-block;
    font-size: 87.5%;
}
.page .site-main .entry-content .name .text-large{
    font-size: 171.5%;
}

.page .site-main .entry-content .law{
    margin: 3em auto;
    border-top:1px solid #ccc;
    line-height: 1.5;
}
.page .site-main .entry-content .law .tr{
	border-bottom:1px solid #ccc;
	padding:0.8em 0;
	display:flex;
}
.page .site-main .entry-content .law .th{
    width: 25%;
    min-width: 8em;
    font-weight: bold;
}
.page .site-main .entry-content .law .td{
    width: 75%;
}

.site-main .title-header{
    padding: 0 0 0 !important;
    background-color: transparent !important;
}

.page .title-header,
.blog .title-header,
.archive .title-header,
.single .title-header{
    width: 100%;
    margin:0 auto;
    padding:50px 0 0;
    display: block;
}
.page .title-header .h1title,
.blog .title-header .h1title,
.archive .title-header .h1title,
.single .title-header .h1title{
    font-size: 175%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display: inline-block;
    letter-spacing: 0.02em;
    text-transform: uppercase;
}

.page .title-header{
    background-color: #e5e5e5;
}
.page .title-header .inner{
    max-width: 1200px;
    height: 350px;
    margin:0 auto;
    padding: 0 15px;
    background-image: url(/wp-content/themes/mirai2022/assets/img/company_info/main-company-info.jpg);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: left;
}
#company_info .title-header{
    background-color: #e5e5e5;
}
#company_info .title-header .inner{
    max-width: 1200px;
    height: 350px;
    margin:0 auto;
    padding: 0 15px;
    background-image: url(/wp-content/themes/mirai2022/assets/img/company_info/main-company-info.jpg);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: left;
}
#company_info hr.separator{
    display: none;
}
.blog .title-header,
.archive .title-header,
.single .title-header{
    background-color: #e5e5e5;
}
.blog .title-header .inner,
.archive .title-header .inner,
.single .title-header .inner{
    max-width: 1200px;
    height: 350px;
    margin:0 auto;
    padding: 0 15px;
    background-image: url(/wp-content/themes/mirai2022/assets/img/company_info/main-company-info.jpg);
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: center;
    display: flex;
    align-items: center;
    justify-content: left;
}

.main .title-header h2{
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display:block;
    letter-spacing: 0.05em;
    background-color: #f5f5f5;
    padding:0.5em 1em;
    margin:1em 0;
}
.main section:first-of-type {
    padding:1em 0 3em;
}
.main section{
    max-width: 1030px;
    margin:0 auto;
    display: block; 
}
.main .inner{
    margin:0 auto;
    display: block;
    padding:3em 15px 3em;
}


.main section h2{
    font-size: 143%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display: inline-block;
    letter-spacing: 0.03em;
    margin-bottom: 1.5em;
}
.main section h3{
    font-size: 112.5%;
    letter-spacing: 0.05em;
    margin-bottom: 1.3em;
    font-weight: 600;
}
.main section p{
    line-height: 1.8;
    letter-spacing: 0.05em;
    margin-bottom: 1.5em;
}

.main figure img {
    width: 100%;
    height: auto;
    display: block;
}

.single .post {
    max-width: 1030px;
    margin: 0 auto;
    padding: 50px 15px 0;
    display: block;
}
.single .post .entry-header {
    line-height: 1.3;
    margin: 0 0 1em;
}
.single .post .entry-header .entry-title{
    font-size: 150%;
}
.single .post .entry-header .entry-meta{
    font-size: 87.5%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0.03em;
    margin-top: 0.3em;
}
.single .post .entry-header .entry-meta li{
    display: inline-block;
}
.single .post .entry-header .entry-meta .date{
    margin-right: 0.5em;
}
.single .post .entry-header .entry-meta li a{
    color:#ccc;
}
.single .post .entry-header .entry-meta li a:hover{
    color:#666;
}
.single .post .entry-content {
    line-height: 1.8;
    margin-bottom: 1.5em;
}
.single .post .entry-content h2 {
    font-size: 150%;
    font-weight: 600;
    margin: 1em 0;
}
.single .post .entry-content h3 {
    font-size: 112.5%;
    font-weight: 600;
    margin: 1em 0 0.5em;
}
.single .post .entry-content h4 {
    font-size: 100%;
    font-weight: 600;
    margin: 0.5em 0 0.3em;
}
.single .post .entry-content p {
    margin-bottom: 1.5em;
}
.single .post .entry-footer{
    background-color: transparent;
    text-align: center;
    margin-bottom: 1.5em;
}
.single .post .entry-footer a{
    color:#000;
}
.single .post .entry-footer .cat-links{
    display: none;
}
.wp-block-image :where(figcaption) {
    margin-bottom: 1em;
    margin-top: 0.5em;
    font-size: 87.5%;
    color: #999;
}
.hr-norm {
    border:none;
    width: 5em;
    height: 3px;
    background-color: #ccc;
    margin:2em auto 4em;
}
hr.separator {
    border:none;
    width: 100%;
    height: 1px;
    background-color: #ccc;
    margin:1em auto;
}

.main .underline {
    border-bottom:1px solid #bbb;
}
.main .aboutflex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.main .aboutflex figure {
    width: 38%;
    padding-top:0.5em;
}
.main .aboutflex p {
    width: 59.5%;
}

ul.anchor-menu {
    width: 100% !important;
    display: flex;
    justify-content: center;
    background-color: #efefef;
    padding: 0.5em 0;
    margin:0 0 3em;
}
ul.anchor-menu li {
    margin-right:1px;
    margin-bottom:0 !important;
    line-height: 1.4;

}
ul.anchor-menu li a {
    display: block;
    color:#333;
    text-align: center;
    padding:0.5em 2em 0;
    margin:0 0;
    background-color: #fff;
    text-decoration: none;
}
ul.anchor-menu li a:after {
	font-family: "FontAwesome";
	content: "\f107";
    display: block;
}
ul.anchor-menu li a:hover {
    color:#ccc;
}

ul.tab-menu {
    width: 100% !important;
    display: flex;
    justify-content: space-between;
    padding: 0;
    margin:0 0 3em;
}
ul.tab-menu li {
    font-size: 125%;
    width: 24.9%;
    margin-bottom:0 !important;
    line-height: 1.4;

}
ul.tab-menu li a {
    display: block;
    width: 100%;
    color:#333;
    text-align: center;
    padding:1em;
    margin:0 0;
    background-color: #ccc;
    text-decoration: none;
    border-radius: 0.5em 0.5em 0 0;
    -webkit-transition: 0.3s ease-in-out;
    -moz-transition   : 0.3s ease-in-out;
    transition        : 0.3s ease-in-out;
}
ul.tab-menu li span {
    display: block;
    width: 100%;
    font-weight: bold;
    text-align: center;
    padding:1em;
    margin:0 0;
    background-color: #f5f5f5;
    text-decoration: none;
    border-radius: 0.5em 0.5em 0 0;
}
ul.tab-menu li a:hover {
    color:#fff;
    background-color: #2aa8ff
}

.entry-content #shop1,
.entry-content #shop2,
.entry-content #shop3,
.entry-content #shop4 {
    padding:100px 0 0;
    margin-top:-100px;
    letter-spacing: 0.05em;
}
.entry-content .shop-info {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 4em;
    padding-bottom: 2em;
}
.entry-content #shop1 h2,
.entry-content #shop2 h2,
.entry-content #shop3 h2,
.entry-content #shop4 h2 {
    width: 100%;
    font-family: 'Noto Sans JP', sans-serif;
    font-size: 112%;
    background-color: #eee;
    padding: 0.5em 1em;
    font-weight: 500;
    margin-bottom: 2em;
}
.entry-content .shop-info figure {
    width: 35%;
}
.entry-content .shop-info ul {
    width: 62%;
    line-height: 1.7;
}
.entry-content .shop-info ul li {
    margin-bottom: 0.8em;
}
.entry-content ul .shop {
    font-weight: 600;
}

.entry-content ol {
    line-height: 1.7;
    margin-bottom: 3em;
    margin-left:1em;
}
.entry-content ol li{
    list-style: decimal;
    margin:0 0 1em 1em;
}

.entry-content .circle li{
    list-style: none;
    margin:0 0 0.5em 0;
    padding-left: 1.1em;
    text-indent: -1.1em;
}

.entry-content .disc{
    margin:0 0 3em 1em;
}

.entry-content .disc li{
    list-style: disc;
    margin:0 0 0.5em 1em;
}
.entry-content .glid{
    margin-bottom:3em;
    border-top: 1px solid #ddd;
    letter-spacing: 0.05em;
}
.entry-content .glid th,
.entry-content .glid td{
    padding:1em 0.5em;
    border-bottom: 1px solid #ddd;
}

.search .main section .entry-title {
    font-size: 143%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display: inline-block;
    letter-spacing: 0.05em;
    margin-bottom: 0;
}
.search .main section .entry-title a {
    color:#333;
}
.search .main section .entry-title a:hover {
    color:#ccc;
}
.search .main section article {
    border-bottom:1px solid #ddd;
    margin-bottom: 1.5em;
}
.search .search-form .search-submit,
.error404 .search-form .search-submit{
    font-size:100%;
}
.search .search-form .search-field,
.error404 .search-form .search-field{
    font-size:100%;
    padding: 0.3em 1em 0.2em;
}


.wpcf7-form{
	border-top:1px solid #ccc;
	clear:both;
}
.main section .wpcf7 p {
    line-height: 1.4;
    letter-spacing: 0;
}
.wpcf7 select {
    font-size: 100%;
    margin: 0;
    border: 1px solid #ccc;
    background-color: #fff;
    padding:0.5em 1em;
    width: 100%;
}
.wpcf7 select:after {
    right: 1em;
}
.wpcf7 dl{
	padding:1em 0;
	border-bottom:1px solid #ccc;
	clear:both;
	overflow:hidden;
}

.wpcf7 dt{
    float:left;
    width: 27%;
	margin:0;
	padding:0.5em 0.2em;
}

.wpcf7 dd{
    float:right;
    width:70%;
	margin:0;
	padding:0.5em 0.2em;
}
.wpcf7 input[type="tel"],
.wpcf7 input[type="email"],
.wpcf7 input[type="text"],
.wpcf7 textarea{
	width:100%;
	margin:0;
	padding:0.4em;
	font-size:112.5%;
}
.wpcf7 input::placeholder {
	color: #ccc;
}

.required{
	display: inline-block;
	float: left;
	font-size: 75%;
	color: #fff;
	padding: 0.1em 0.4em 0.2em;
	margin:0.2em 0.5em 0 0;
	border-radius: 3px;
	background-color: #dd0000;
}

.wpcf7 .en{
	display: block;
    color:#aaa;
    font-size:85.7%;
    margin-left:3em;
}
.wpcf7 .any{
	display: inline-block;
	float: left;
	font-size:75%;
	color: #fff;
	padding: 3px 7px;
	margin-right:1em;
	border-radius: 3px;
	background-color: #ccc;
}
.wpcf7 .harf{
	width:50%;
	float:left;
}
.wpcf7 .sample{
	margin: 0.5em 0 0;
    display: block;
}
.wpcf7 .zip-search{
	color:#007dd4;
    display: block;
    margin: 0 0 0.3em;
}
.wpcf7 .sendbot{
	width:50%;
}
span.wpcf7-not-valid-tip {
	margin-top: 5px;
}
div.wpcf7-response-output {
	margin: 0 0 15px !important;
	padding: 10px 15px !important;
}
div.wpcf7 form.invalid .wpcf7-response-output,
div.wpcf7 form.unaccepted .wpcf7-response-output {
    border-color: #dd0000;
	color:#fff;
    font-weight:600;
	background-color:#dd0000;
}
div.wpcf7 form.sent .wpcf7-response-output {
    border-color: #00cc66;
	color:#fff;
    font-weight:600;
	background-color:#00cc66;
}

div.wpcf7 form.failed .wpcf7-response-output,
div.wpcf7 form.aborted .wpcf7-response-output {
    border-color: #dd0000;
	color:#fff;
    font-weight:600;
	background-color:#dd0000;
}

div.wpcf7 form.spam .wpcf7-response-output {
    border-color: #dd0000;
	color:#fff;
    font-weight:600;
	background-color:#dd0000;
}

div.wpcf7-validation-errors {
	color:#fff;
	border: none !important;
	background-color:#dd0000;
}
.wpcf7-list-item {
    margin: 0 0 0.5em 0.2em !important;
}
dd .clinical {
    margin-bottom: 0.3em;
    display: inline-block;
}
.wpcf7-checkbox .wpcf7-list-item {
    width: 30%;
    box-sizing: border-box;
}
.wpcf7-radio .wpcf7-list-item {
    width: 100%;
    box-sizing: border-box;
}
.wpcf7-list-item label {
    display: inline-block;
}
.wpcf7-list-item .wpcf7-list-item-label {
    vertical-align: 20%;
    margin-left: 0.5em;
    display: inline-block;
}
.wpcf7-form .etc-clinical input,
.wpcf7-form .location input{
    width: 50%;
    margin-left: 0.5em;
}

.wpcf7-form .message {
    color:#999;
    font-size:87.5%;
    margin-bottom: 0.7em;
    display: block;
}
.wpcf7-list-item [type="checkbox"],
.wpcf7-list-item [type="radio"] {
    width: 18px;
    height: 18px;
}
.send {
    text-align: center;
    margin-top:1em;
}
.wpcf7c-btn-confirm {
    margin: 0 auto;
}
.send .wpcf7-submit {
	width:38%;
    font-size: 143%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0.05em;
	margin: 20px auto;
	padding: 20px;
	background-color: #ccc;
	border: none;
	color: #fff;
    border: 1px solid #ccc;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	cursor: pointer;
    display: block;
}
.send .wpcf7-submit:hover {
	background-color: #fff;
    color: #333;
    border: 1px solid #999;
}
.send .wpcf7-confirm {
	width:60%;
	font-size: 150%;
	margin: 15px auto;
	padding: 20px;
	background-color: #09c;
	border: none;
	color: #fff;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	cursor: pointer;
}
.send .wpcf7-confirm:hover {
	background-color: #5c68f8;
}
.send .wpcf7-back {
	width:40%;
	font-size: 110%;
	margin: 5px;
	padding: 10px;
	background-color: #ccc;
	border: 1px solid #333;
	color: #000;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	cursor: pointer;
}
.send .wpcf7-back:hover {
	color: #fff;
	background-color: #5c68f8;
}
.wpcf7c-conf {
    background-color: #fafabd !important;
    border: 1px solid #e9e945 !important;
}
div.wpcf7 .ajax-loader {
    display: block;
    margin: 0 auto;
}

.spec{
    margin-bottom: 3em;
}
.spec dl{
    border-bottom: solid 1px #fff;
    color:#fff;
    width: 100%;
    display: flex;
    padding: 0.7em 0;
}
.spec dl dt{
    font-weight: 600;
    width: 45%;
    display: inline-block;
    margin-right: 0.5em;
}
.spec dl dd{
    display: inline-block;
}

.price {
    margin-bottom: 3em;
}
.price dl{
    border-bottom: solid 1px #ccc;
    width: 100%;
    display: flex;
    justify-content: space-between;
    padding: 0.5em 0;
    align-items: baseline;
}
.price dl dt{
    font-weight: 300;
    display: inline-block;
    margin-right: 0.5em;
}
.price dl dd{
    font-size: 112.5%;
}
.price dl dd .value{
    font-size: 150%;
    font-weight: 600;
}

.option_list {
	margin: 2em 0;
}

.option_list li {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px;
}

.option_list li + li {
	border-top: 1px solid #ccc;
}

.option_list li p {
	margin: 0;
}

.option_list li .img {
	width: 20%;
    margin-right: 1em;
}

.option_list li .img a {
	display: block;
}

.option_list li .img img {
	width: 100%;
	height: auto;
	object-fit: contain;
	transition: .3s all;
}

.option_list li .img a:hover img {
	opacity: .8;
}

.option_list li .txt {
	display: flex;
  flex-direction: column;
	width: 90%;
	text-align: left;
}
.option_list li .txt .menu {
	margin-bottom: 0;
}
.option_list li .txt .menu a:not([href]):hover {
	cursor: text;
}

.option_list li .txt .menu a[href] {
	color: #3ebdd4;
}

.option_list li .txt .menu a[href]:hover {
	text-decoration: underline;
}

.option_list li .txt .model {
	margin: 0;
	font-size: 87.5%;
	color: #888;
}

.option_list li .txt .model::before {
	content: '型番 : ';
}

.option_list li .txt .yen {
	margin: 0;
	font-size: 1.4em;
	text-align: right;
}

.option_list li .txt .yen::before {
	content: '¥';
	font-size: .8em;
}

.option_list li .txt .yen::after {
	content: '(税込)';
	padding-left: .2em;
	font-size: .6em;
}
.text-bottom-center{
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}
.text-top{
    position: absolute;
    top: 3em;
}
.cover600{
min-height: 600px;
}
.cover800{
min-height: 800px;
}

.nqi-icon{
    max-width: 1500px;
    padding:0 15px;
    margin: 0 auto 2em;
    display: flex;
    justify-content:center;
    flex-wrap: wrap;
}
.nqi-icon ul {
    width: 8%;
    margin: 0 3% 2em;
    text-align: center;
    display: block;
    font-size: 87.5%;
}

.nqi-mode{
    padding:2em 2em 1em;
    margin: 4em auto 1.5em;
    display: flex;
    justify-content:space-between;
    align-items: center;
    background-color: #EFF2F9;
}
.nqi-mode .ride-mode{
    width: 30%;
    display: block;
    text-align: center;
    font-weight: 600;
}
.nqi-mode img{
    width: 100px;
    height: auto;
    margin-bottom: 0.5em;
}
.nqi-mode .mode{
    width: 70%;
}
.nqi-mode .mode ul{
    display: flex;
    justify-content:space-between;
    margin-bottom: 1em;
}
.nqi-mode .mode .title{
    width: 50%;
    display: block;
    text-align: right;
    font-weight: 600;
    margin-right: 2em;
}
.nqi-mode .mode .text{
    width: 50%;
    display: block;
}

.nqi-mode2{
    margin: 1.5em auto 4em;
    display: flex;
    justify-content:space-between;
}
.nqi-mode2 ul{
    width: 48.7%;
    padding:2em 2em 2em;
    display: flex;
    justify-content:space-between;
    align-items: center;
    background-color: #EFF2F9;
}
.nqi-mode2 .icon{
    width: 30%;
    text-align: center;
}
.nqi-mode2 .icon img{
    width: 100px;
    height: auto;
}
.nqi-mode2 .text{
    width: 60%;
}
.nqi-mode2 .text strong{
    display: block;
    margin-bottom: 0.5em;
}

.cumini-list{
    display: block;
    margin-bottom: 0.5em;
    width: 10em;
}
.cumini-list li{
    margin-bottom: 0.3em;
    display: inline-block;
    padding:0.5em 1em;
    background-color: rgba(255,255,255,0.2);
}

.tcwd-list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.tcwd-list li{
    width: 24.7%;
    padding:0.5em;
    background-color: #296995;
    font-weight: 600;
    text-align: center;
    margin: 0.13em 0;
}
.tcmax-list{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.tcmax-list li{
    width: 24.7%;
    padding:0.5em;
    background-color: #222;
    font-weight: 600;
    text-align: center;
    margin: 0.13em 0;
}

.tcmax-list2{
    font-size: 112.5%;
}
.tcmax-list2 li{
    line-height: 2em;
    vertical-align: middle;
    display: flex;
    margin: 0 0 0.5em;
}
.tcmax-list2 li img{
    width: 2em !important;
    height: auto;
    margin-right: 0.5em;
    border-radius: 50%;
}

.tcmax-list3{
    font-size: 112.5%;
    list-style: disc;
    margin: 1em 0 1em 1em;
}
.tcmax-list3 li{
    margin-bottom: 0.5em;
}

.text-top-p3 {
    align-items: start;
    padding: 3em;
}


.wq-Form .wq-Attributes {
    margin-top: 3em;
    padding-top: 2em;
    border-top:10px solid #eee;
}
.wq-Form .wq-Attributes:before {
    content: "お客様情報";
    display: block;
    font-size: 150%;
    font-weight: 600;
    margin-bottom: 1em;
}

#wq-selector-detail-12 .wq--body,
#wq-selector-detail-14 .wq--body{
    display: block;
}
#wq-selector-detail-12 .wq--body .wq--label .wq--main,
#wq-selector-detail-14 .wq--body .wq--label .wq--main{
    flex: auto;
    flex-direction: row;
}
#wq-selector-detail-12 .wq--body .wq--label .wq--media,
#wq-selector-detail-14 .wq--body .wq--label .wq--media{
    display: none;
}
#wq-selector-detail-12 .wq--body .wq-Option,
#wq-selector-detail-14 .wq--body .wq-Option{
    width: 100%;
}
.wq-Monitor .wq--footer .wq-for-name:after {
    content: "（税込）";
    font-weight: 400;
}
.wq-Monitor .wq--footer {
    max-width: 40em !important;
}
.wq-Form .wq-Option {
    overflow:visible !important;
}

.wq-Attributes .wq-Control .wq--header {
    width: 15em !important;
    align-items: center!important;
}
.wq-Attributes .wq-Control .wq--header .wq--required {
    font-size: 75% !important;
    color:#fff !important;
    background-color: #f00;
    padding:0.2em 0.2em;
    border-radius: 0.2em;
    line-height: 1.1 !important;
}
.wq-for-action .wq-content-empty {
    width:0 !important;
}
.wq-for-action .wq-InputGroup {
    justify-content: center !important;
}
.wq-for-action .wq-InputGroup .wq-for-confirm,
.wq-for-action .wq-InputGroup .wq-for-submit{
    background-color: #eb4266;
    color: #fff;
    border-radius: 0.3em;
    font-size: 125%;
    padding: 0.8em 2em;
    line-height: 1.2;
    border: none;
}
.wq-Form .wq-Attributes>:not(:last-child) {
    margin-bottom: 1.7em !important;
    padding-bottom: 1em;
    border-bottom: 1px solid #ccc;
}
.wq-Form .wq-Attributes {
    padding-bottom: 20px;
    border-bottom: 1px solid #ccc;

}
.wq-Form .wq-Control:first-child {
    border-top: 1px solid #ccc;
    padding-top: 1.7em;
}
wq-Form .wq-Checkbox>label, .wq-Form .wq-Radio>label {
    padding: 0 1.5em 0 1em !important;
}
.wq-Form .wq-InputGroup>:not(:last-child) {
    margin-right: 2% !important;
}
.wq-Form .wq-Control>.wq--body>:not(:first-child) {
    margin-top: 0.8em !important;
}
.wq-Form .wq-TextInput.wq-size-small {
    width: 49% !important;
}

.anchor-nav{
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 950px;
    padding: 0.5em 15px 0.5em;
    margin: 0 auto !important;
}
.anchor-nav .brand{
    width: 40%;
    text-align: center;
}

.anchor-nav .brand a{
    margin: 0;
}
.anchor-nav .brand img{
    height: 40px;
    display: block;
    margin: 0 auto;
}
.anchor-nav .anchor{
    display: flex;
    justify-content: center;
}
.anchor-nav .anchor li+li {
  border-left: 1px solid #fff;
}
.anchor-nav .anchor a{
    font-family: 'Oswald', sans-serif;
    font-size: 112.5%;
    line-height: 1;
    font-weight: 400;
    text-decoration: none;
    color:#fff;
    padding: 0 1em;
}

/*-----------------page-contents end---------------------*/

/*----------------archive start--------------------*/

.blog .main section,
.archive .main section{
    max-width: 1030px;
    margin:0 auto;
    display: block;
    padding:2em 15px 0;
}
.blog .main section .post,
.archive .main section .post{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.blog .main section .post:after,
.archive .main section .post:after {
    content: "";
    display: block;
    width: 32%;
    height: 0;
}
.blog .main section .post li,
.archive .main section .post li{
    width: 32%;
    display: block;
    margin-bottom: 2.5em;
}
.blog .main section .post img,
.archive .main section .post img{
    width: 100%;
    height: auto;
    display: block;
}
.blog .main section .post li a,
.archive .main section .post li a{
    display: block;
    letter-spacing: 0.05em;
    opacity: 1.0;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
.blog .main section .post li a .post-title,
.archive .main section .post li a .post-title{
    display: block;
    color:#666;
    margin:1em 0 0.3em;
}
.blog .main section .post li a .post-date,
.archive .main section .post li a .post-date{
    display: block;
    font-size: 87.5%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    color:#ccc;
    margin:0 0;
}
.blog .main section .post li a:hover,
.archive .main section .post li a:hover {
    opacity: 0.6;
}

/*-----------------archive end---------------------*/

/*----------------single start--------------------*/

.single .main .entry-header {
    border-bottom: 1px solid #ddd;
    padding-bottom: 1em;
    margin-bottom: 2em;
}

.entry-content a{
    color:#333;
    text-decoration: underline;
    margin: 0 0.3em;
}
.entry-content a:hover{
    color:#ccc;
    text-decoration: none;
}
.entry-content a:hover img{
    opacity: 0.6;
}

.main .entry-header .entry-meta {
    font-size:87.5%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display: inline-block;
    letter-spacing: 0.05em;
    color:#999;
    margin: 0.5em 0;
    display: block;
}
.main .entry-header .entry-meta li {
    display: inline-block;
}
.main .entry-header .entry-meta .date {
    margin-right:1em;
}

.main .entry-footer{
    clear: both;
}
.main .entry-header .entry-meta a {
    color:#999;
}
.main .entry-header .entry-meta a:hover{
    color:#333;
}
.single .main .post figure {
    width: auto;
    display: block;
    margin-bottom: 2.5em;
}

/*----------------single end--------------------*/

/*----------------pagenation start--------------------*/

.pagenation {
	margin: 0 0 2em;
}
.pagenation:after, .pagenation ul:after {
	clear: both;
	content: ".";
	display: block;
	height: 0;
	visibility: hidden;
}
.pagenation ul {
	margin: 0 auto;
	display: table;
	font-size: 85.7%;
}
.pagenation li {
	float: left;
	list-style: none outside none;
	margin-left: 0.2em;
    letter-spacing: 0.05em;
}
.pagenation li:first-child {
	margin-left: 0;
}
.pagenation li.active {
	background-color: #ccc;
	border-radius: 3px;
	color: #333;
	cursor: not-allowed;
	padding: 0.6em 1em;
}
.pagenation li a {
	background: none repeat scroll 0 0 #e8e8e8;
	border-radius: 3px;
	color: #333;
	display: block;
	padding: 0.6em 1em;
	text-decoration: none;
}
.pagenation li a:hover {
	background-color: #ccc;
	color: #333;
	opacity: 0.8;
	transition-duration: 500ms;
	transition-property: all;
	transition-timing-function: ease;
}
.nav-links {
    clear: both;
    max-width: 1030px;
	margin: 0 auto 2em;
    padding:0 15px;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    letter-spacing: 0.05em;
}
.nav-links .nav-previous {
	float: left;
	border-right: 1px solid transparent;
}
.nav-links .nav-next {
	float: right;
}
.nav-links a {
	display:block;
	padding:0.5em 1em;
    color:#333;
    background-color: #efefef;
    opacity: 1.0;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
.nav-links a:hover {
    opacity: 0.6;
}
.nav-links .nav-next a:after {
	font-family: "FontAwesome";
	content: "\f105";
    font-size:120%;
    line-height: 1;
    margin-left:0.5em;
}
.nav-links .nav-previous a:before {
	font-family: "FontAwesome";
	content: "\f104";
    font-size:120%;
    line-height: 1;
    margin-right:0.5em;
}

/*----------------pagenation end--------------------*/

/*----------------widget start--------------------*/

.widget-area{
    font-size: 87.5%;
    max-width: 1030px;
    margin:0 auto;
    padding:2em 15px 2em;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.widget-area .widget{
    width: 48.5%;
    display: block;
    background-color: #efefef;
    padding:1em 3% 2em !important;
    margin: 0 0 1em !important;
}
.widget-area .widget .widget_nav_menu{
    width: 100%;
    padding: 0 !important;
}
.widget-area .widget h2{
    font-size: 143%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    display: inline-block;
    letter-spacing: 0.03em;
    margin-bottom: 1em;
}
.widget-area .widget h3{
    display: block;
    font-size: 143%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    margin:1em 0;
    letter-spacing: 0.05em;
}
.widget-area .widget ul{
    border-top:1px solid #bcbcbc;
    display: block;
    overflow: scroll;
    height: 26em;
}
.widget-area .widget ul li{
    border-bottom:1px solid #bcbcbc;
}
.widget-area .widget ul li a{
    color:#333;
    padding:0.8em 0.3em;
    letter-spacing: 0.05em;
    display: block;
    opacity: 1.0;
    -webkit-transition: 0.2s ease-in-out;
    -moz-transition: 0.2s ease-in-out;
    -o-transition: 0.2s ease-in-out;
    transition: 0.2s ease-in-out;
}
.widget-area .widget ul li a:hover{
    background-color: #fff;
    opacity: 0.6;
}
.widget-area .widget_archive ul {
    overflow:scroll;
    height:20em;
}

/*-----------------widget end---------------------*/

.option-glid .is-layout-grid{
    gap:1em 3em;
}

@media only screen and (max-width: 1100px) {
.option-glid .is-layout-grid{
    gap:0.5em 1.5em;
}
}

.option-glid .cartjs_box {
    margin-bottom: 2em;
}
.cartjs_box .cartjs_product_name {
}
.cartjs_box .cartjs_product_img {
    padding: 0.1em 1em 0.3em;
    text-align: center;
}
.cartjs_box .cartjs_product_img img {
    height: auto;
    max-width: 100%;
}
.cartjs_box .cartjs_product_form .cartjs_product_input_txt {
    font-size: 100%;
}
.cartjs_box .cartjs_product_table th {
    font-size: 87.5%;
    white-space: nowrap;
    padding:0.5em;
}
.cartjs_box .cartjs_product_table td {
    padding:0.5em;
}

.cartjs_box .cartjs_cart_in input {
    width: 100%;
    font-size: 100%;
    font-weight: 400;
    margin: 1em auto;
    padding: 0.7em;
    background-color: #999;
    color: #fff;
    border: 2px solid #999;
    border-radius: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    cursor: pointer;
    display: block;
}
.cartjs_box .cartjs_cart_in input:hover {
	background-color: #fff;
    color: #333;
    border: 2px solid #999;
}









/*---------------------responsive start-------------------------*/

@media only screen and (max-width: 980px) {
footer .inner02 .sns-menu{
    margin: 0 30px 0 10px;
}
footer .inner02 .sns-menu .icon a {
    margin-right: 1.5em;
}
}

@media only screen and (max-width: 950px) {
footer{
    font-size: 87.5%;
}
footer .inner01 {
    min-width: 440px;
}
footer .inner01 .footer-menu .logo {
    width: 120px;
}
}

@media only screen and (max-width: 860px) {

.hamburger {
    display: block;
}
/* hamburger 切り替えアニメーション */
.hamburger span {
    display: block;
    position: absolute;
    height: 2px;
    width: 100%;
    background: #999;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
}
.hamburger span:nth-child(1) {
    top: 0;
}
.hamburger span:nth-child(2) {
    top: 10px;
}
.hamburger span:nth-child(3) {
    top: 20px;
}
.open .hamburger span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.open .hamburger span:nth-child(2) {
    width: 0;
    left: 50%;
}
.open .hamburger span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
}
#mobile-head {
    width: 100%;
    height: 50px;
    z-index: 101;
}
.mega-menu {
    height: calc(100vh - 50px) !important;
    overflow: scroll !important;
}
.mega-menu .border {
    border-bottom: 1px solid #333 !important;
}
    
.header {
    position: fixed;
    left: 0;
    right: 0;
    z-index: 100;
    padding: 0;
}
.header.fix {
    position: fixed;
    left: 0;
    right: 0;
    z-index: 100;
    padding: 0;
}
.header h1.logo {
    margin: 11px 0 0 15px;
    width: 140px;
}
.header.fix h1.logo {
    margin: 11px 0 0 15px;
    width: 140px;
}
header .global{
    display: none;
}
header.open .global{
    display: block;
    border-top:1px solid #ccc;
}
header.open .overlay {
    width: 100%;
    height: 100%;
    position: fixed;
    left: 0;
    top: 0;
    background: rgba(0,0,0,0.7);
    z-index: 98;
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
}

.globalmenu {
    font-size: 100%;
    font-weight: 400;
    font-family: 'Oswald', sans-serif;
    line-height: 1.2;
    display: flex;
    justify-content: end;
}

.global li a {
    position: relative;
    padding:1em 5%;
}

.global li a:after {
    content: '';
    width: 10px;
    height: 10px;
    border: 0px;
    border-top: solid 2px #ccc;
    border-right: solid 2px #ccc;
    -ms-transform: rotate(45deg);
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    top: 50%;
    right: 1.5em;
    margin-top: -4px;
}
.global li a:hover {
    background-color: #2899e7;
}
.global .store a:after {
    border-top: solid 2px #ccc;
    border-right: solid 2px #ccc;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
}
.global .store a:hover:after {
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
}
/* .globalmenu スライドアニメーション */
.open .globalmenu {
/* .globalmenu top + #mobile-head height */
    -moz-transform: translateY(550px);
    -webkit-transform: translateY(550px);
    transform: translateY(550px);
}
    
footer .inner {
    padding: 3em 15px;
    display: block;
}
footer .inner01 {
    width: 440px;
    margin: 0 auto 2em;
    display: block;
}
footer .inner02 {
    width: 440px;
    margin: 0 auto;
}
}

@media only screen and (max-width: 768px) {
.home .main .webstore .box {
    font-size: 95%;
}
.go-top {
	bottom: 15.8em;
    right:0;
}
.cover800 {
    min-height: 400px;
}
}

@media only screen and (max-width: 767px) {
.global li a {
}
.global .store {
}
.home .main .webstore {
    font-size: 87.5%;
}
.home .main .webstore span {
    text-align: left;
}
.home .main .webstore .box a br {
    display: none;
}
.home .main .infomation {
    flex-wrap: wrap;
}
.home .main .infomation .news,
.home .main .infomation .calender {
    width: 100%;
}
.widget-area .widget {
    width: 100%;
}
footer .inner02 {
    flex-wrap: wrap;
}
footer .inner02 h3{
    order: 1;
    margin: 1em 10% 0;
}
.go-top {
	bottom: 0;
    right:0;
}
.slide-bana .inner {
	padding: 3em 0 3em !important;
}
.products .scroll {
    margin: 0 calc(50% - 50vw);
    padding:0 15px 10px;
}
.products .scroll{overflow-x:auto;}
.products .scroll::-webkit-scrollbar{height:5px;}/*バーの太さ*/
.products .scroll::-webkit-scrollbar-track{background:rgba(0, 0, 0, 0.1);}/*バーの背景色*/
.products .scroll::-webkit-scrollbar-thumb{background:rgba(0, 0, 0, 0.2);border-radius: 5px;}/*バーの色*/

.products .scroll .lineup {
    flex-wrap: unset;
}
.products .scroll .lineup:after {
    content: '';
    padding-right: 10px;
}
.page .site-main .entry-content .company-history .date{
    font-size: 87.5%;
    font-weight: 600;
    margin-bottom: 0.5em;
}
.page .site-main .entry-content .company-history .topic{
    width: 100%;
}
.anchor-nav {
    display: block;
}
.anchor-nav .brand {
    width: 100%;
    margin-bottom: 0.5em;
}
.anchor-nav .anchor a {
    font-size: 100%;
}
.price dl {
    display: block;
}
.price dl dd {
    text-align: right;
}
.nqi-mode {
    padding: 2em 1em 1em;
    display: block;
}
.nqi-mode .ride-mode {
    width: 100%;
    margin-bottom: 2em;
}
.nqi-mode .mode {
    width: 100%;
}
.nqi-mode .mode .title {
    width: 50%;
    text-align: left;
    margin-right: 1em;
}
.nqi-mode2 {
    margin: 1.5em auto 4em;
    display: block;
}
.nqi-mode2 ul {
    width: 100%;
    padding: 2em 1em 2em;
}
.nqi-mode2 .suspention {
    margin-bottom: 1.5em;
}
.nqi-icon ul {
    width: 21%;
    margin: 0 2% 2em;
}
.widget-area {
    display: block;
}
}

@media only screen and (max-width: 530px) {

footer .inner01 {
    width: 100%;
    min-width: 100%;
    margin: 0 auto 1em;
    display: block;
}
footer .inner02 {
    width: 100%;
    margin: 0 auto;
}
footer .inner01 .footer-menu {
    text-align: center;
    margin: 0;
}
footer .inner01 .footer-menu .logo {
    display: block;
    margin: 0 auto 1em !important;
}
footer .inner01 .footer-menu .company {
    font-size: 150%;
    display: block;
    margin: 0 auto 1em !important;
}
footer .inner01 .footer-menu .company .address {
    font-size: 70%;
}
footer .inner02 .sns-menu {
    margin: 0 auto 0;
    text-align: center;
}
footer .inner01 {
    flex-wrap: wrap;
}
footer .bana-area li {
    padding: 1% 1%;
}
footer .inner01 .footer-menu .logo {
    margin-right: 1.5em;
}
footer .inner02 .footer-menu{
    width: 80%;
    margin: 2em auto;
    border-top: 1px solid #ddd;
}
footer .inner02 .footer-menu li{
    display: block;
    border-bottom: 1px solid #ddd;
    border-right: none;
}
footer .inner02 .footer-menu li a{
    padding:1em;
    display: block;
    position: relative;
}
footer .inner02 .footer-menu li a:after {
  content: '';
  width: 6px;
  height: 6px;
  border: 0px;
  border-top: solid 1px #fff;
  border-right: solid 1px #fff;
  -ms-transform: rotate(45deg);
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  position: absolute;
  top: 50%;
  right: 1em;
  margin-top: -4px;
}
.home .visual {
}
.home .main .big-bana {
    font-size: 87.5%;
}
.home .main .infomation .inner {
    display: block;
}
.home .main .infomation .post {
    width: 100%;
}
.home .main .webstore .inner {
    padding:1em 15px 0;
}
.main .inner {
    padding: 1em 15px 1em;
}
.contact-us .inner {
    padding: 2em 15px 0;
}
    
#page .main {
    padding-top: 0;
}
.main .entry-header,
.main .title-header {
    padding-top:5em;
}
.single .main .entry-header,
.search .main .entry-header{
    padding-top:0em;
}
.blog .main section .post li,
.archive .main section .post li {
    width: 48.5%;
}
.main figure.top {
    margin-left:-15px;
    margin-right:-15px;
}
.main figure.top img {
    width: 100vw;
    max-width: 100vw;
}
ul.anchor-menu {
    width: 100vw !important;
    max-width: 100vw;
    padding: 0.5em 0 0.5em  1px;
    margin: 0 -15px 3em;
}
ul.anchor-menu li a {
    padding: 0.5em 1.5em 0;
}
.entry-content #shop1,
.entry-content #shop2,
.entry-content #shop3,
.entry-content #shop4 {
    padding:2em 0 0;
    margin-top:0;
}
.entry-content .shop-info figure {
    width: 100%;
    margin-bottom: 1em;
}
.entry-content .shop-info ul {
    width: 100%;
}
.main .aboutflex figure {
    width: 100%;
}
.main .aboutflex p {
    width: 100%;
}
.wpcf7 dt{
    float:none;
    width: 100%;
}
.wpcf7 .en {
    display: inline-block;
    margin-left: 1em;
}
.wpcf7 dd{
    float:none;
    width:100%;
}
.send .wpcf7-submit {
    width: 80%;
}
.pagenation li a {
    padding: 0.6em 0.7em;
}
.pagenation li.active {
    padding: 0.6em 0.7em;
}
}

@media only screen and (max-width: 500px) {
.page .site-main .entry-content .company-detail{
    display: block;
}

.page .site-main .entry-content .company-detail dt{
    width: 100%;
    text-align: left;
    font-size: 87.5%;
    font-weight: 600;
    margin-bottom: 0.5em;
}
.page .site-main .entry-content .company-detail dd{
    width: 100%;
}
}

@media only screen and (max-width: 450px) {
.page .site-main .entry-content .machine-history{
    display: block;
    line-height: 1.6;
}
.page .site-main .entry-content .machine-history li{
    display: block;
}
.page .site-main .entry-content .machine-history .date{
    width: 100%;
    font-size: 87.5%;
    font-weight: 600;
    margin-bottom: 0.5em;
}
.page .site-main .entry-content .machine-history .machine{
    width: 100%;
    margin-bottom: 0.8em;
}
}


@media only screen and (max-width: 350px) {
.home .main .webstore .box {
    text-align: left;
}
.home .main .webstore .box a span {
    display: initial;
    margin-right: 1em;
}
ul.anchor-menu li a {
    padding: 0.5em 1em 0;
}
.pagenation li a {
    padding: 0.6em 0.6em;
}
.pagenation li.active {
    padding: 0.6em 0.6em;
}
}
    
/*---------------------responsive end-------------------------*/

.grecaptcha-badge { visibility: hidden; }
