@charset "utf-8";
@import url("zoomslider.css");
@import url("all.min.css");
@import url("contact/css/jquery.datetimepicker.css");
@font-face {
    font-family: themify;
    src: url(../font/themify/themify.eot7-fvbane);
    src: url(../font/themify/themify.eot7#iefix-fvbane) format('embedded-opentype'), url(../font/themify/themify.woff7-fvbane) format('woff'), url(../font/themify/themify.ttf7-fvbane) format('truetype'), url(../font/themify/themify.svg7-fvbane#themify) format('svg');
    font-weight: 400;
    font-style: normal
}

[class*=" ti-"],
[class^=ti-] {
    font-family: themify;
    speak: none;
    font-style: normal;
    font-weight: 400;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.ti-wand:before {
    content: "\e600"
}

.ti-volume:before {
    content: "\e601"
}

.ti-user:before {
    content: "\e602"
}

.ti-unlock:before {
    content: "\e603"
}

.ti-unlink:before {
    content: "\e604"
}

.ti-trash:before {
    content: "\e605"
}

.ti-thought:before {
    content: "\e606"
}

.ti-target:before {
    content: "\e607"
}

.ti-tag:before {
    content: "\e608"
}

.ti-tablet:before {
    content: "\e609"
}

.ti-star:before {
    content: "\e60a"
}

.ti-spray:before {
    content: "\e60b"
}

.ti-signal:before {
    content: "\e60c"
}

.ti-shopping-cart:before {
    content: "\e60d"
}

.ti-shopping-cart-full:before {
    content: "\e60e"
}

.ti-settings:before {
    content: "\e60f"
}

.ti-search:before {
    content: "\e610"
}

.ti-zoom-in:before {
    content: "\e611"
}

.ti-zoom-out:before {
    content: "\e612"
}

.ti-cut:before {
    content: "\e613"
}

.ti-ruler:before {
    content: "\e614"
}

.ti-ruler-pencil:before {
    content: "\e615"
}

.ti-ruler-alt:before {
    content: "\e616"
}

.ti-bookmark:before {
    content: "\e617"
}

.ti-bookmark-alt:before {
    content: "\e618"
}

.ti-reload:before {
    content: "\e619"
}

.ti-plus:before {
    content: "\e61a"
}

.ti-pin:before {
    content: "\e61b"
}

.ti-pencil:before {
    content: "\e61c"
}

.ti-pencil-alt:before {
    content: "\e61d"
}

.ti-paint-roller:before {
    content: "\e61e"
}

.ti-paint-bucket:before {
    content: "\e61f"
}

.ti-na:before {
    content: "\e620"
}

.ti-mobile:before {
    content: "\e621"
}

.ti-minus:before {
    content: "\e622"
}

.ti-medall:before {
    content: "\e623"
}

.ti-medall-alt:before {
    content: "\e624"
}

.ti-marker:before {
    content: "\e625"
}

.ti-marker-alt:before {
    content: "\e626"
}

.ti-arrow-up:before {
    content: "\e627"
}

.ti-arrow-right:before {
    content: "\e628"
}

.ti-arrow-left:before {
    content: "\e629"
}

.ti-arrow-down:before {
    content: "\e62a"
}

.ti-lock:before {
    content: "\e62b"
}

.ti-location-arrow:before {
    content: "\e62c"
}

.ti-link:before {
    content: "\e62d"
}

.ti-layout:before {
    content: "\e62e"
}

.ti-layers:before {
    content: "\e62f"
}

.ti-layers-alt:before {
    content: "\e630"
}

.ti-key:before {
    content: "\e631"
}

.ti-import:before {
    content: "\e632"
}

.ti-image:before {
    content: "\e633"
}

.ti-heart:before {
    content: "\e634"
}

.ti-heart-broken:before {
    content: "\e635"
}

.ti-hand-stop:before {
    content: "\e636"
}

.ti-hand-open:before {
    content: "\e637"
}

.ti-hand-drag:before {
    content: "\e638"
}

.ti-folder:before {
    content: "\e639"
}

.ti-flag:before {
    content: "\e63a"
}

.ti-flag-alt:before {
    content: "\e63b"
}

.ti-flag-alt-2:before {
    content: "\e63c"
}

.ti-eye:before {
    content: "\e63d"
}

.ti-export:before {
    content: "\e63e"
}

.ti-exchange-vertical:before {
    content: "\e63f"
}

.ti-desktop:before {
    content: "\e640"
}

.ti-cup:before {
    content: "\e641"
}

.ti-crown:before {
    content: "\e642"
}

.ti-comments:before {
    content: "\e643"
}

.ti-comment:before {
    content: "\e644"
}

.ti-comment-alt:before {
    content: "\e645"
}

.ti-close:before {
    content: "\e646"
}

.ti-clip:before {
    content: "\e647"
}

.ti-angle-up:before {
    content: "\e648"
}

.ti-angle-right:before {
    content: "\e649"
}

.ti-angle-left:before {
    content: "\e64a"
}

.ti-angle-down:before {
    content: "\e64b"
}

.ti-check:before {
    content: "\e64c"
}

.ti-check-box:before {
    content: "\e64d"
}

.ti-camera:before {
    content: "\e64e"
}

.ti-announcement:before {
    content: "\e64f"
}

.ti-brush:before {
    content: "\e650"
}

.ti-briefcase:before {
    content: "\e651"
}

.ti-bolt:before {
    content: "\e652"
}

.ti-bolt-alt:before {
    content: "\e653"
}

.ti-blackboard:before {
    content: "\e654"
}

.ti-bag:before {
    content: "\e655"
}

.ti-move:before {
    content: "\e656"
}

.ti-arrows-vertical:before {
    content: "\e657"
}

.ti-arrows-horizontal:before {
    content: "\e658"
}

.ti-fullscreen:before {
    content: "\e659"
}

.ti-arrow-top-right:before {
    content: "\e65a"
}

.ti-arrow-top-left:before {
    content: "\e65b"
}

.ti-arrow-circle-up:before {
    content: "\e65c"
}

.ti-arrow-circle-right:before {
    content: "\e65d"
}

.ti-arrow-circle-left:before {
    content: "\e65e"
}

.ti-arrow-circle-down:before {
    content: "\e65f"
}

.ti-angle-double-up:before {
    content: "\e660"
}

.ti-angle-double-right:before {
    content: "\e661"
}

.ti-angle-double-left:before {
    content: "\e662"
}

.ti-angle-double-down:before {
    content: "\e663"
}

.ti-zip:before {
    content: "\e664"
}

.ti-world:before {
    content: "\e665"
}

.ti-wheelchair:before {
    content: "\e666"
}

.ti-view-list:before {
    content: "\e667"
}

.ti-view-list-alt:before {
    content: "\e668"
}

.ti-view-grid:before {
    content: "\e669"
}

.ti-uppercase:before {
    content: "\e66a"
}

.ti-upload:before {
    content: "\e66b"
}

.ti-underline:before {
    content: "\e66c"
}

.ti-truck:before {
    content: "\e66d"
}

.ti-timer:before {
    content: "\e66e"
}

.ti-ticket:before {
    content: "\e66f"
}

.ti-thumb-up:before {
    content: "\e670"
}

.ti-thumb-down:before {
    content: "\e671"
}

.ti-text:before {
    content: "\e672"
}

.ti-stats-up:before {
    content: "\e673"
}

.ti-stats-down:before {
    content: "\e674"
}

.ti-split-v:before {
    content: "\e675"
}

.ti-split-h:before {
    content: "\e676"
}

.ti-smallcap:before {
    content: "\e677"
}

.ti-shine:before {
    content: "\e678"
}

.ti-shift-right:before {
    content: "\e679"
}

.ti-shift-left:before {
    content: "\e67a"
}

.ti-shield:before {
    content: "\e67b"
}

.ti-notepad:before {
    content: "\e67c"
}

.ti-server:before {
    content: "\e67d"
}

.ti-quote-right:before {
    content: "\e67e"
}

.ti-quote-left:before {
    content: "\e67f"
}

.ti-pulse:before {
    content: "\e680"
}

.ti-printer:before {
    content: "\e681"
}

.ti-power-off:before {
    content: "\e682"
}

.ti-plug:before {
    content: "\e683"
}

.ti-pie-chart:before {
    content: "\e684"
}

.ti-paragraph:before {
    content: "\e685"
}

.ti-panel:before {
    content: "\e686"
}

.ti-package:before {
    content: "\e687"
}

.ti-music:before {
    content: "\e688"
}

.ti-music-alt:before {
    content: "\e689"
}

.ti-mouse:before {
    content: "\e68a"
}

.ti-mouse-alt:before {
    content: "\e68b"
}

.ti-money:before {
    content: "\e68c"
}

.ti-microphone:before {
    content: "\e68d"
}

.ti-menu:before {
    content: "\e68e"
}

.ti-menu-alt:before {
    content: "\e68f"
}

.ti-map:before {
    content: "\e690"
}

.ti-map-alt:before {
    content: "\e691"
}

.ti-loop:before {
    content: "\e692"
}

.ti-location-pin:before {
    content: "\e693"
}

.ti-list:before {
    content: "\e694"
}

.ti-light-bulb:before {
    content: "\e695"
}

.ti-Italic:before {
    content: "\e696"
}

.ti-info:before {
    content: "\e697"
}

.ti-infinite:before {
    content: "\e698"
}

.ti-id-badge:before {
    content: "\e699"
}

.ti-hummer:before {
    content: "\e69a"
}

.ti-home:before {
    content: "\e69b"
}

.ti-help:before {
    content: "\e69c"
}

.ti-headphone:before {
    content: "\e69d"
}

.ti-harddrives:before {
    content: "\e69e"
}

.ti-harddrive:before {
    content: "\e69f"
}

.ti-gift:before {
    content: "\e6a0"
}

.ti-game:before {
    content: "\e6a1"
}

.ti-filter:before {
    content: "\e6a2"
}

.ti-files:before {
    content: "\e6a3"
}

.ti-file:before {
    content: "\e6a4"
}

.ti-eraser:before {
    content: "\e6a5"
}

.ti-envelope:before {
    content: "\e6a6"
}

.ti-download:before {
    content: "\e6a7"
}

.ti-direction:before {
    content: "\e6a8"
}

.ti-direction-alt:before {
    content: "\e6a9"
}

.ti-dashboard:before {
    content: "\e6aa"
}

.ti-control-stop:before {
    content: "\e6ab"
}

.ti-control-shuffle:before {
    content: "\e6ac"
}

.ti-control-play:before {
    content: "\e6ad"
}

.ti-control-pause:before {
    content: "\e6ae"
}

.ti-control-forward:before {
    content: "\e6af"
}

.ti-control-backward:before {
    content: "\e6b0"
}

.ti-cloud:before {
    content: "\e6b1"
}

.ti-cloud-up:before {
    content: "\e6b2"
}

.ti-cloud-down:before {
    content: "\e6b3"
}

.ti-clipboard:before {
    content: "\e6b4"
}

.ti-car:before {
    content: "\e6b5"
}

.ti-calendar:before {
    content: "\e6b6"
}

.ti-book:before {
    content: "\e6b7"
}

.ti-bell:before {
    content: "\e6b8"
}

.ti-basketball:before {
    content: "\e6b9"
}

.ti-bar-chart:before {
    content: "\e6ba"
}

.ti-bar-chart-alt:before {
    content: "\e6bb"
}

.ti-back-right:before {
    content: "\e6bc"
}

.ti-back-left:before {
    content: "\e6bd"
}

.ti-arrows-corner:before {
    content: "\e6be"
}

.ti-archive:before {
    content: "\e6bf"
}

.ti-anchor:before {
    content: "\e6c0"
}

.ti-align-right:before {
    content: "\e6c1"
}

.ti-align-left:before {
    content: "\e6c2"
}

.ti-align-justify:before {
    content: "\e6c3"
}

.ti-align-center:before {
    content: "\e6c4"
}

.ti-alert:before {
    content: "\e6c5"
}

.ti-alarm-clock:before {
    content: "\e6c6"
}

.ti-agenda:before {
    content: "\e6c7"
}

.ti-write:before {
    content: "\e6c8"
}

.ti-window:before {
    content: "\e6c9"
}

.ti-widgetized:before {
    content: "\e6ca"
}

.ti-widget:before {
    content: "\e6cb"
}

.ti-widget-alt:before {
    content: "\e6cc"
}

.ti-wallet:before {
    content: "\e6cd"
}

.ti-video-clapper:before {
    content: "\e6ce"
}

.ti-video-camera:before {
    content: "\e6cf"
}

.ti-vector:before {
    content: "\e6d0"
}

.ti-themify-logo:before {
    content: "\e6d1"
}

.ti-themify-favicon:before {
    content: "\e6d2"
}

.ti-themify-favicon-alt:before {
    content: "\e6d3"
}

.ti-support:before {
    content: "\e6d4"
}

.ti-stamp:before {
    content: "\e6d5"
}

.ti-split-v-alt:before {
    content: "\e6d6"
}

.ti-slice:before {
    content: "\e6d7"
}

.ti-shortcode:before {
    content: "\e6d8"
}

.ti-shift-right-alt:before {
    content: "\e6d9"
}

.ti-shift-left-alt:before {
    content: "\e6da"
}

.ti-ruler-alt-2:before {
    content: "\e6db"
}

.ti-receipt:before {
    content: "\e6dc"
}

.ti-pin2:before {
    content: "\e6dd"
}

.ti-pin-alt:before {
    content: "\e6de"
}

.ti-pencil-alt2:before {
    content: "\e6df"
}

.ti-palette:before {
    content: "\e6e0"
}

.ti-more:before {
    content: "\e6e1"
}

.ti-more-alt:before {
    content: "\e6e2"
}

.ti-microphone-alt:before {
    content: "\e6e3"
}

.ti-magnet:before {
    content: "\e6e4"
}

.ti-line-double:before {
    content: "\e6e5"
}

.ti-line-dotted:before {
    content: "\e6e6"
}

.ti-line-dashed:before {
    content: "\e6e7"
}

.ti-layout-width-full:before {
    content: "\e6e8"
}

.ti-layout-width-default:before {
    content: "\e6e9"
}

.ti-layout-width-default-alt:before {
    content: "\e6ea"
}

.ti-layout-tab:before {
    content: "\e6eb"
}

.ti-layout-tab-window:before {
    content: "\e6ec"
}

.ti-layout-tab-v:before {
    content: "\e6ed"
}

.ti-layout-tab-min:before {
    content: "\e6ee"
}

.ti-layout-slider:before {
    content: "\e6ef"
}

.ti-layout-slider-alt:before {
    content: "\e6f0"
}

.ti-layout-sidebar-right:before {
    content: "\e6f1"
}

.ti-layout-sidebar-none:before {
    content: "\e6f2"
}

.ti-layout-sidebar-left:before {
    content: "\e6f3"
}

.ti-layout-placeholder:before {
    content: "\e6f4"
}

.ti-layout-menu:before {
    content: "\e6f5"
}

.ti-layout-menu-v:before {
    content: "\e6f6"
}

.ti-layout-menu-separated:before {
    content: "\e6f7"
}

.ti-layout-menu-full:before {
    content: "\e6f8"
}

.ti-layout-media-right-alt:before {
    content: "\e6f9"
}

.ti-layout-media-right:before {
    content: "\e6fa"
}

.ti-layout-media-overlay:before {
    content: "\e6fb"
}

.ti-layout-media-overlay-alt:before {
    content: "\e6fc"
}

.ti-layout-media-overlay-alt-2:before {
    content: "\e6fd"
}

.ti-layout-media-left-alt:before {
    content: "\e6fe"
}

.ti-layout-media-left:before {
    content: "\e6ff"
}

.ti-layout-media-center-alt:before {
    content: "\e700"
}

.ti-layout-media-center:before {
    content: "\e701"
}

.ti-layout-list-thumb:before {
    content: "\e702"
}

.ti-layout-list-thumb-alt:before {
    content: "\e703"
}

.ti-layout-list-post:before {
    content: "\e704"
}

.ti-layout-list-large-image:before {
    content: "\e705"
}

.ti-layout-line-solid:before {
    content: "\e706"
}

.ti-layout-grid4:before {
    content: "\e707"
}

.ti-layout-grid3:before {
    content: "\e708"
}

.ti-layout-grid2:before {
    content: "\e709"
}

.ti-layout-grid2-thumb:before {
    content: "\e70a"
}

.ti-layout-cta-right:before {
    content: "\e70b"
}

.ti-layout-cta-left:before {
    content: "\e70c"
}

.ti-layout-cta-center:before {
    content: "\e70d"
}

.ti-layout-cta-btn-right:before {
    content: "\e70e"
}

.ti-layout-cta-btn-left:before {
    content: "\e70f"
}

.ti-layout-column4:before {
    content: "\e710"
}

.ti-layout-column3:before {
    content: "\e711"
}

.ti-layout-column2:before {
    content: "\e712"
}

.ti-layout-accordion-separated:before {
    content: "\e713"
}

.ti-layout-accordion-merged:before {
    content: "\e714"
}

.ti-layout-accordion-list:before {
    content: "\e715"
}

.ti-ink-pen:before {
    content: "\e716"
}

.ti-info-alt:before {
    content: "\e717"
}

.ti-help-alt:before {
    content: "\e718"
}

.ti-headphone-alt:before {
    content: "\e719"
}

.ti-hand-point-up:before {
    content: "\e71a"
}

.ti-hand-point-right:before {
    content: "\e71b"
}

.ti-hand-point-left:before {
    content: "\e71c"
}

.ti-hand-point-down:before {
    content: "\e71d"
}

.ti-gallery:before {
    content: "\e71e"
}

.ti-face-smile:before {
    content: "\e71f"
}

.ti-face-sad:before {
    content: "\e720"
}

.ti-credit-card:before {
    content: "\e721"
}

.ti-control-skip-forward:before {
    content: "\e722"
}

.ti-control-skip-backward:before {
    content: "\e723"
}

.ti-control-record:before {
    content: "\e724"
}

.ti-control-eject:before {
    content: "\e725"
}

.ti-comments-smiley:before {
    content: "\e726"
}

.ti-brush-alt:before {
    content: "\e727"
}

.ti-youtube:before {
    content: "\e728"
}

.ti-vimeo:before {
    content: "\e729"
}

.ti-twitter:before {
    content: "\e72a"
}

.ti-time:before {
    content: "\e72b"
}

.ti-tumblr:before {
    content: "\e72c"
}

.ti-skype:before {
    content: "\e72d"
}

.ti-share:before {
    content: "\e72e"
}

.ti-share-alt:before {
    content: "\e72f"
}

.ti-rocket:before {
    content: "\e730"
}

.ti-pinterest:before {
    content: "\e731"
}

.ti-new-window:before {
    content: "\e732"
}

.ti-microsoft:before {
    content: "\e733"
}

.ti-list-ol:before {
    content: "\e734"
}

.ti-linkedin:before {
    content: "\e735"
}

.ti-layout-sidebar-2:before {
    content: "\e736"
}

.ti-layout-grid4-alt:before {
    content: "\e737"
}

.ti-layout-grid3-alt:before {
    content: "\e738"
}

.ti-layout-grid2-alt:before {
    content: "\e739"
}

.ti-layout-column4-alt:before {
    content: "\e73a"
}

.ti-layout-column3-alt:before {
    content: "\e73b"
}

.ti-layout-column2-alt:before {
    content: "\e73c"
}

.ti-instagram:before {
    content: "\e73d"
}

.ti-google:before {
    content: "\e73e"
}

.ti-github:before {
    content: "\e73f"
}

.ti-flickr:before {
    content: "\e740"
}

.ti-facebook:before {
    content: "\e741"
}

.ti-dropbox:before {
    content: "\e742"
}

.ti-dribbble:before {
    content: "\e743"
}

.ti-apple:before {
    content: "\e744"
}

.ti-android:before {
    content: "\e745"
}

.ti-save:before {
    content: "\e746"
}

.ti-save-alt:before {
    content: "\e747"
}

.ti-yahoo:before {
    content: "\e748"
}

.ti-wordpress:before {
    content: "\e749"
}

.ti-vimeo-alt:before {
    content: "\e74a"
}

.ti-twitter-alt:before {
    content: "\e74b"
}

.ti-tumblr-alt:before {
    content: "\e74c"
}

.ti-trello:before {
    content: "\e74d"
}

.ti-stack-overflow:before {
    content: "\e74e"
}

.ti-soundcloud:before {
    content: "\e74f"
}

.ti-sharethis:before {
    content: "\e750"
}

.ti-sharethis-alt:before {
    content: "\e751"
}

.ti-reddit:before {
    content: "\e752"
}

.ti-pinterest-alt:before {
    content: "\e753"
}

.ti-microsoft-alt:before {
    content: "\e754"
}

.ti-linux:before {
    content: "\e755"
}

.ti-jsfiddle:before {
    content: "\e756"
}

.ti-joomla:before {
    content: "\e757"
}

.ti-html5:before {
    content: "\e758"
}

.ti-flickr-alt:before {
    content: "\e759"
}

.ti-email:before {
    content: "\e75a"
}

.ti-drupal:before {
    content: "\e75b"
}

.ti-dropbox-alt:before {
    content: "\e75c"
}

.ti-css3:before {
    content: "\e75d"
}

.ti-rss:before {
    content: "\e75e"
}

.ti-rss-alt:before {
    content: "\e75f"
}


/* For modern browsers */

.cf:before,
.cf:after {
    content: "";
    display: block;
    overflow: hidden;
}

.cf:after {
    clear: both;
}

.cf {
    zoom: 1;
}

blockquote,
body,
dd,
div,
dl,
dt,
fieldset,
form,
h1,
h2,
h3,
h4,
h5,
h6,
input,
li,
ol,
p,
pre,
td,
textarea,
th,
ul {
    margin: 0;
    padding: 0
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
nav,
section,
summary {
    display: block
}

audio,
canvas,
video {
    display: inline-block
}

audio:not([controls]) {
    display: none;
    height: 0
}

[hidden] {
    display: none
}

html {
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    margin: 0;
    /* font-family: 'Noto Sans JP',"æ¸¸ã‚´ã‚·ãƒƒã‚¯", "Yu Gothic","æ¸¸æ˜Žæœ",'Amerigo BT', YuMincho, "ãƒ’ãƒ©ã‚®ãƒŽæ˜Žæœ ProN W3", "Hiragino Mincho ProN","HGæ˜ŽæœE","ï¼­ï¼³ ï¼°æ˜Žæœ","ï¼­ï¼³ æ˜Žæœ",serif; */
}

a:active,
a:hover {
    outline: 0
}

b,
strong {
    font-weight: 700
}

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var {
    font-style: normal
}

code,
kbd,
pre,
samp {
    font-family: monospace, serif;
    font-size: 1em
}

pre {
    white-space: pre-wrap
}

q {
    quotes: "\201C""\201D""\2018""\2019"
}

small {
    font-size: 80%
}

sub,
sup {
    position: relative;
    vertical-align: baseline;
    font-size: 75%;
    line-height: 0
}

sup {
    top: -.5em
}

sub {
    bottom: -.25em
}

img {
    border: 0
}

embed,
img,
object {
    vertical-align: top
}

figure {
    margin: 0
}

button,
input,
select,
textarea {
    margin: 0;
    font-size: 100%;
    font-family: inherit
}

button,
input {
    line-height: normal
}

button,
select {
    text-transform: none
}

button,
html input[type=button],
input[type=reset],
input[type=submit] {
    cursor: pointer;
    -webkit-appearance: button
}

button[disabled],
html input[disabled] {
    cursor: default
}

input[type=checkbox],
input[type=radio] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}

textarea {
    overflow: auto;
    vertical-align: top
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-size: 100%
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

caption,
th {
    text-align: left
}

li {
    list-style-type: none
}

em {
    font-weight: 700
}

i {
    font-style: normal
}

#demo-1 {
    position: relative;
    /* can either be relative, absolute or fixed. If position is not set (i.e. static), it would be set to "relative" by script */
    overflow: hidden;
    /* to bound the empty top space created by inner element's top margin */
    width: 100%;
    min-height: 100vh;
    /*     background-color: #999; */
}

div#demo-1 {}

.slide_pc {
    display: block
}

.slide_sp {
    display: none
}

@media screen and (max-width: 768px) {
    .slide_pc {
        display: none
    }
    .slide_sp {
        display: block
    }
}

.demo-inner-content {
    position: relative;
    /* if position is not set, the script will set it to 'relative'. */
    z-index: 2;
    /* if z-index is not set, the script will set it to '2'. */
    margin: 180px auto;
    padding: 40px;
    max-width: 600px;
    color: #fff;
    text-align: center;
    font-size: 1.5em;
}

.demo-inner-content h1 {
    font-size: 2.5em;
    margin: 0;
}

#k-visual {
    position: relative;
    /* can either be relative, absolute or fixed. If position is not set (i.e. static), it would be set to "relative" by script */
    overflow: hidden;
    /* to bound the empty top space created by inner element's top margin */
    width: 100%;
    min-height: 100vh;
    /*     background-color: #999; */
}

.k-visual-inner-content {
    position: relative;
    /* if position is not set, the script will set it to 'relative'. */
    z-index: 2;
    /* if z-index is not set, the script will set it to '2'. */
    margin: 180px auto;
    padding: 40px;
    max-width: 600px;
    color: #fff;
    text-align: center;
    font-size: 1.5em;
}

.k-visual-inner-content h1 {
    font-size: 2.5em;
    margin: 0;
}

.c-fonts-bold {
    font-family: Calibre-Bold
}

.loading-cover {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 5000;
    background-color: #fff;
    overflow: hidden
}

.loading-cover>.inner {
    position: absolute;
    width: 42px;
    /* height: 252px; */
    top: 50%;
    left: 45%;
    right: 45%;
    margin: 0 auto
}

.loading-cover .cover {
    width: 120px;
    /* height: 100%; */
    opacity: 0;
    -webkit-transform: translateY(-50%) scale(1.3);
    transform: translateY(-50%) scale(1.3)
}

.loading-cover .site-title-svg-g {
    width: 100px;
    margin: 0 auto;
    /* height: 177px */
}

.loading-cover.is-start .cover {
    opacity: 1;
    -webkit-transform: translateY(-50%) scale(1);
    transform: translateY(-50%) scale(1);
    -webkit-transition: opacity 1.2s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, transform 1.8s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, transform 1.8s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1)
}

@media screen and (max-width:768px) {
    .loading-cover>.inner {
        /* height: 50px */
    }
}

@media screen and (max-width:500px) {
    .loading-cover>.inner {
        position: absolute;
        width: 42px;
        /* height: 252px; */
        top: 50%;
        left: 35%;
        right: 45%;
        margin: 0 auto
    }
    .loading-cover .site-title-svg-g {
        width: 50px;
        /* height: 177px */
    }
    .loading-cover>.inner {
        width: 50%;
        /* height: 50px */
    }
}

.is-page-opened .loading-cover {
    -webkit-transition: opacity 1s linear, visibility 1s linear;
    transition: opacity 1s linear, visibility 1s linear;
    opacity: 0;
    visibility: hidden;
    pointer-events: none
}

.container {
    /* width: 62.5% */
}

.container,
.wide-container {
    max-width: 1280px;
    margin: 0 auto
}

.wide-container {
    width: 80%
}

.js-sec-parent {
    /* background-color: #ffffff; */
    background: #030016;
}

@charset "UTF-8";

/* #mainImg 下層ページ
================================================ */


/*  02_base
================================================ */


/* 02_base
================================================ */


/* html { overflow: auto; } */


/* body { min-width: 320px; overflow: hidden; color: #262626; font-size: 1.5rem; line-height: 1.6; letter-spacing: .06em; font-family: "Noto Sans JP", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, "メイリオ", Meiryo, sans-serif; -webkit-text-size-adjust: 100%; } */


/* @media screen and (min-width: 600px) { 
body { min-width: 1200px; font-size: 1.6rem; }
 } */


/* img { max-width: 100%; height: auto; }
 */


/* a { -webkit-transition: all 0.3s ease; 
transition: all 0.3s ease; 
color: inherit; text-decoration: none; } */


/* @media screen and (min-width: 600px) { a:hover { text-decoration: none; }
  a.opacity:hover { opacity: .8; }
  a[href^=tel] { pointer-events: none; } }

.alpha { display: block; text-decoration: none; }

@media screen and (min-width: 600px) { .alpha { -webkit-transition: all 0.3s ease; transition: all 0.3s ease; }
  .alpha:hover { opacity: .7; } } */


/* em, strong, span { font-weight: inherit; } */


/* pc <--> sp切り替え
-------------------------------------- */

#mediaQuery {
    display: none;
    font-family: 'sp';
}

@media screen and (min-width: 600px) {
    #mediaQuery {
        font-family: 'pc';
    }
}

@media screen and (max-width: 599px) {
    .viewPc {
        display: none;
    }
}

@media screen and (min-width: 600px) {
    .viewSp {
        display: none;
    }
}


/* font
-------------------------------------- */


/* .is_txt_center { text-align: center !important; }

.is_txt_right { text-align: right !important; }

.is_font_oswald { font-family: 'Oswald', sans-serif; letter-spacing: .05em; } */


/* clearfix
-------------------------------------- */

.cf:after {
    content: '';
    display: block;
    clear: both;
}

@media screen and (min-width: 600px) and (max-width: 1400px) {
    #gFooter .areaBnr {
        margin-right: 65px;
    }
}


/* #gHeader
================================================ */

#gHeader {
    position: relative;
}

#gHeader .hdInfo {
    position: absolute;
    width: 100%;
    padding: 12px 0 0 20px;
    box-sizing: border-box;
}

#gHeader .hdInfo .logo {
    width: 124px;
    z-index: 100;
    position: relative;
}

#gHeader .btnGnav {
    position: fixed;
    right: 0;
    top: 0;
    height: 60px;
    width: 60px;
    background: #262626;
    cursor: pointer;
    z-index: 30;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#gHeader .btnGnav span {
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    background: #fff;
    width: 19px;
    height: 2px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#gHeader .btnGnav span:nth-child(1) {
    top: 23px;
}

#gHeader .btnGnav span:nth-child(2) {
    top: 29px;
}

#gHeader .btnGnav span:nth-child(3) {
    top: 35px;
}

#gHeader .btnGnav:hover {
    background: #343434;
}

#gHeader .btnGnav.is_active span:nth-child(1) {
    -webkit-transform: rotate(45deg) translate(0px, 10px);
    -ms-transform: rotate(45deg) translate(0px, 10px);
    transform: rotate(45deg) translate(0px, 10px);
}

#gHeader .btnGnav.is_active span:nth-child(2) {
    -webkit-transform: translateX(200%);
    -ms-transform: translateX(200%);
    transform: translateX(200%);
}

#gHeader .btnGnav.is_active span:nth-child(3) {
    -webkit-transform: rotate(-45deg) translate(-1px, -9px);
    -ms-transform: rotate(-45deg) translate(-1px, -9px);
    transform: rotate(-45deg) translate(-1px, -9px);
}

@media screen and (min-width: 600px) {
    #gHeader {
        /* background: #262626; */
        z-index: 10;
    }
    #gHeader .hdInfo {
        position: absolute;
        top: 10px;
        width: 200px;
        height: 100%;
        padding-top: 0;
    }
    #gHeader .hdInfo .logo {
        padding: 0px 0 0 8px;
        width: 175px;
    }
    #gHeader .btnGnav {
        display: none;
    }
}


/*  #gNav
================================================ */


/* #gNav {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 10;
    -webkit-transform: translateX(100%);
    -ms-transform: translateX(100%);
    transform: translateX(100%);
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    visibility: hidden;
    min-height: 600px;
}

#gNav.is_active {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0);
    visibility: visible;
}

#gNav .gNavContent {
    background: #262626;
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
}

@media screen and (max-width: 599px) {
    #gNav .gNavContent {
        overflow-y: scroll;
    }
}

#gNav .navInner {
    padding: 0 0 30px;
    box-sizing: border-box;
}

#gNav .listLink {
    margin-top: 60px;
    background: #f0f0f0;
    color: #727272;
}

#gNav .listLink .item {
    position: relative;
    border-top: 1px solid #c5c5c5;
}

#gNav .listLink .item a {
    position: relative;
    box-sizing: border-box;
    width: 100%;
    padding: 15px 35px 15px 20px;
    display: block;
}

#gNav .listLink .item a:before {
    content: '';
    position: absolute;
    top: 50%;
    right: 18px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 29px;
    height: 10px;
    background: url(../img/common/ico_arrow01_gray02.png) no-repeat center/contain;
}

#gNav .gnavSub {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #e4e4e4;
    border-top: 1px solid #c5c5c5;
}

#gNav .gnavSub:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width: 1px;
    background: #c5c5c5;
}

#gNav .gnavSub.viewPc {
    display: none;
}

#gNav .gnavSub.viewPc .gnavSubItem a {
    display: none;
}

#gNav .gnavSub .gnavSubItem {
    box-sizing: border-box;
    width: 50%;
    border-bottom: 1px solid #c5c5c5;
}

#gNav .gnavSub .gnavSubItem:last-child,
#gNav .gnavSub .gnavSubItem:nth-last-child(2):nth-child(odd) {
    border-bottom: 0;
}

#gNav .gnavSub .gnavSubItem a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#gNav .language {
    margin: 25px auto 0;
    overflow: hidden;
    width: 80px;
}

#gNav .language .switch {
    float: left;
    border: 1px solid #fff;
    color: #fff;
}

#gNav .language .switch a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    box-sizing: border-box;
    width: 38px;
    height: 38px;
    text-align: center;
    font-size: 1.3rem;
}

#gNav .language .switch.is_lang_active {
    position: relative;
    background-color: #fff;
    color: #607D8B;
}

#gNav .close {
    position: relative;
    width: 255px;
    margin: 30px auto 0;
    padding: 15px 30px;
    color: #fff;
    border: 1px solid #fff;
    cursor: pointer;
}

#gNav .close:before,
#gNav .close:after {
    content: '';
    position: absolute;
    top: 50%;
    right: 20px;
    width: 20px;
    height: 2px;
    background: #fff;
}

#gNav .close:before {
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg);
}

#gNav .close:after {
    -webkit-transform: translateY(-50%) rotate(-45deg);
    -ms-transform: translateY(-50%) rotate(-45deg);
    transform: translateY(-50%) rotate(-45deg);
}

@media screen and (min-width: 600px) {
    #gNav {
        width: 100%;
        position: static;
        left: auto;
        top: auto;
        height: 100%;
        z-index: 10;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
        visibility: visible;
        min-height: auto;
    }
    #gNav .gNavContent {
        background: none;
        position: static;
        top: auto;
        right: auto;
        width: 100%;
        height: auto;
    }
    #gNav .navInner {
        position: static;
        z-index: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 0;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
    #gNav .listLink {
        margin-top: 0;
        background: none;
        color: #fff;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    #gNav .listLink .item {
        position: static;
        border-top: 0;
    }
    #gNav .listLink .item a {
        padding: 0;
    }
    #gNav .listLink .item a span {
        display: inline-block;
        padding: 30px 20px 25px;
    }
    #gNav .listLink .item a:before {
        content: none;
    }
    #gNav .listLink .navTxt:hover {
        color: #607D8B;
    }
    #gNav .listLink .navTxt.is_current {
        color: #607D8B;
    }
    #gNav .listLink .navTxt.is_current span {
        position: relative;
        display: inline-block;
    }
    #gNav .listLink .navTxt.is_current span:before {
        content: '';
        position: absolute;
        bottom: 20px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 80%;
        height: 2px;
        background: #607D8B;
    }
    #gNav .listLink .navTxt.is_active span {
        position: relative;
    }
    #gNav .listLink .navTxt.is_active span:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 10px 12px 10px;
        border-color: transparent transparent #efefef transparent;
    }
    #gNav .listLink .navTxt.is_active+.subContent {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    #gNav .subContent {
        display: none;
        position: absolute;
        top: 100%;
        width: 200vw;
        min-width: 1100px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
        box-sizing: border-box;
        padding: 40px 0;
        background: #607D8B url(../img/common/header/bg_gnav02.png) no-repeat center/1920px;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-transition: all 0.3s ease;
        transition: all 0.3s ease;
        box-shadow: 0 20px 10px rgba(0, 0, 0, 0.2);
    }
    #gNav .subContent:hover {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    #gNav .subTit {
        float: left;
        position: relative;
        box-sizing: border-box;
        width: 250px;
        padding-right: 50px;
        border-right: 1px solid #fff;
        color: #fff;
        z-index: 1;
    }
    #gNav .subTit .en {
        font-size: 3.6rem;
        font-weight: 700;
    }
    #gNav .subTit .ja {
        font-size: 1.6rem;
    }
    #gNav .gnavSub {
        float: right;
        display: block;
        box-sizing: border-box;
        width: calc(1100px - 250px);
        padding-left: 50px;
        border-top: 0;
        background: none;
        overflow: hidden;
    }
    #gNav .gnavSub:after {
        content: none;
    }
    #gNav .gnavSub .gnavSubItem {
        float: left;
        position: relative;
        box-sizing: border-box;
        width: 200px;
        height: auto;
        border-bottom: 0;
        z-index: 1;
    }
    #gNav .gnavSub .gnavSubItem:last-child,
    #gNav .gnavSub .gnavSubItem:nth-last-child(2):nth-child(odd) {
        border-bottom: 0;
    }
    #gNav .gnavSub .gnavSubItem:nth-child(3n+1) {
        clear: left;
    }
    #gNav .gnavSub .gnavSubItem:nth-child(n+4) {
        margin-top: 20px;
    }
    #gNav .gnavSub .gnavSubItem a {
        display: block;
        position: relative;
        padding-left: 20px;
    }
    #gNav .gnavSub .gnavSubItem a:before {
        content: '';
        position: absolute;
        top: 14px;
        left: 0;
        width: 8px;
        height: 1px;
        background: #fff;
    }
    #gNav .gnavSub.is_img .gnavSubItem {
        width: calc(33.333% - 20px);
        height: 140px;
        float: left;
    }
    #gNav .gnavSub.is_img .gnavSubItem:before {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background: #fff;
    }
    #gNav .gnavSub.is_img .gnavSubItem:nth-child(3n+2),
    #gNav .gnavSub.is_img .gnavSubItem:nth-child(3n+3) {
        margin-left: 20px;
    }
    #gNav .gnavSub.is_img .gnavSubItem a {
        width: 100%;
        height: 100% !important;
        padding-left: 0;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        z-index: 1;
        text-align: center;
    }
    #gNav .gnavSub.is_img .gnavSubItem a:before {
        content: '';
        position: absolute;
        left: auto;
        top: auto;
        right: 10px;
        bottom: 10px;
        width: 31px;
        height: 11px;
        background: url(../img/common/ico_arrow01_white.png) no-repeat center/contain;
    }
    #gNav .gnavSub.is_img .gnavSubItem.is_window a:before {
        content: '';
        position: absolute;
        left: auto;
        top: auto;
        right: 10px;
        bottom: 10px;
        width: 11px;
        height: 11px;
        background: url(../img/common/ico_window02.png) no-repeat center/contain;
    }
    #gNav .gnavSub.is_img .gnavSubItem.service01 a {
        background: url(../img/common/header/gnav_service01.png) no-repeat center/cover;
    }
    #gNav .gnavSub.is_img .gnavSubItem.service02 a {
        background: url(../img/common/header/gnav_service02.png) no-repeat center/cover;
    }
    #gNav .gnavSub.is_img .gnavSubItem.service03 a {
        background: url(../img/common/header/gnav_service03.png) no-repeat center/cover;
    }
    #gNav .gnavSub.is_img .gnavSubItem.service04 a {
        background: url(../img/common/header/gnav_service04.png) no-repeat center/cover;
    }
    #gNav .gnavSub.is_img .gnavSubItem.group01 a {
        background: url(../img/common/header/gnav_group01.png) no-repeat center/cover;
    }
    #gNav .gnavSub.is_img .gnavSubItem.group02 a {
        background: url(../img/common/header/gnav_group02.png) no-repeat center/cover;
    }
    #gNav .gnavSub.is_img .gnavSubItem.group03 a {
        background: url(../img/common/header/gnav_group03.png) no-repeat center/cover;
    }
    #gNav .gnavSub.is_img .gnavSubItem.group04 a {
        background: url(../img/common/header/gnav_group04.jpg) no-repeat center/cover;
    }
    #gNav .gnavSub.is_img .gnavSubItem.recruit01 a {
        background: url(../img/common/header/gnav_recruit01.png) no-repeat center/cover;
    }
    #gNav .gnavSub.is_img .gnavSubItem.recruit02 a {
        background: url(../img/common/header/gnav_recruit02.png) no-repeat center/cover;
    }
    #gNav .language {
        margin: 0;
        overflow: hidden;
        width: 80px;
        padding: 22px 40px 0 0;
    }
    #gNav .language .switch {
        float: left;
        border: 1px solid #fff;
        color: #fff;
    }
    #gNav .language .switch a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        box-sizing: border-box;
        width: 38px;
        height: 38px;
        text-align: center;
        font-size: 1.3rem;
    }
    #gNav .language .switch.is_lang_active {
        position: relative;
        background-color: #fff;
        color: #607D8B;
    }
} */


/* #g-footer .wide-container, */

#g-header .wide-container {
    width: calc(80% + 20px);
    max-width: 1300px
}

.wide-container h2 {
    font-size: 20px;
    text-align: center;
    margin-top: 60px;
}

@media screen and (max-width:1600px) {
    .container {
        width: auto;
        max-width: 1200px;
    }
    .wide-container {
        width: auto;
        max-width: 1280px
    }
    .wide-container h2 {
        font-size: 20px;
        text-align: center;
        margin-top: 60px;
    }
    /* #g-footer .wide-container, */
    #g-header .wide-container {
        width: auto;
        max-width: 1320px
    }
}

@media screen and (max-width:1280px) {
    .wide-container {
        padding: 0 15px
    }
    /* #g-footer .wide-container, */
    #g-header .wide-container {
        padding: 0 5px
    }
}

@media screen and (max-width:1000px) {
    .container {
        padding: 0 15px
    }
}

@media screen and (max-width:768px) {
    .container {
        padding: 0 60px
    }
}

@media screen and (max-width:480px) {
    .container {
        padding: 0 15px
    }
}

.btn {
    display: block;
    font-size: 1.8rem;
    letter-spacing: .1em;
    border: 0
}

.btn>.inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.btn.square-01 {
    position: relative;
    width: 100%;
    max-width: 400px;
    margin: 0 auto;
    background-color: transparent;
}

.btn.square-01>.inner {
    width: 100%;
    height: 80px;
    /*     border: 1px solid #1a1a1a; */
}

.btn.square-01 .arrow {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 6px;
    top: 50%;
    margin-top: -3px
}

.btn.square-01 .arrow:before {
    display: block;
    width: 60px;
    height: 1px;
    content: "";
    position: relative;
    background-color: #1a1a1a
}

.btn.square-01 .arrow:after {
    display: block;
    width: 6px;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    right: -1px;
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 6px solid #1a1a1a
}

.btn.square-01 .arrow.after,
.btn.square-01 .arrow.before {
    right: -40px
}

@media screen and (max-width:768px) {
    .btn {
        font-size: 1.4rem
    }
    .btn.square-01 {
        max-width: 390px;
        padding: 0
    }
    .btn.square-01>.inner {
        height: 67.5px
    }
    .btn.square-01 .arrow {
        height: 4px;
        margin-top: -2px
    }
    .btn.square-01 .arrow:before {
        width: 30px
    }
    .btn.square-01 .arrow:after {
        width: 4px;
        border-top: 2px solid transparent;
        border-bottom: 2px solid transparent;
        border-left: 3px solid #1a1a1a
    }
    .btn.square-01 .arrow.after,
    .btn.square-01 .arrow.before {
        right: -10px
    }
}

@media screen and (max-width:480px) {
    .btn.square-01 {
        width: 290px
    }
}

.works-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.works-list>li {
    width: 25%;
    padding: 1%;
    /* margin-top: 180px; */
}

.works-list>li>.inner {
    position: relative
}

.works-list>li:nth-of-type(-n+3) {
    /* margin-top: 0 */
}

.works-list>li:nth-of-type(3n+1) a {
    margin-right: auto
}

.works-list>li:nth-of-type(3n+2) {
    /* margin-right: 1%; */
    /* margin-left: 1%; */
}

.works-list>li:nth-of-type(3n+2)>.inner {
    top: 50px;
}

.works-list>li:nth-of-type(3n+2) a {
    margin: 0 auto
}

.works-list>li:nth-of-type(3n+3)>.inner {
    top: -30px;
}

.works-list>li:nth-of-type(3n+3) a {
    margin-left: auto
}

.works-list a {
    display: block;
    position: relative
}

.works-list .thumb {
    padding-bottom: 100%;
}

.works-list .label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    min-width: 70px;
    left: 40px;
    top: -30px;
    -webkit-box-shadow: 0 0 80px 0 rgba(0, 0, 0, .2);
    box-shadow: 0 0 80px 0 rgba(0, 0, 0, .2);
    z-index: 10;
}

.works-list .label p {
    min-width: 100px;
    padding: 30px 20px;
    font-size: 1.2rem;
    background-color: #fff;
    background: #1d1936;
    white-space: nowrap;
}

.works-list .description {
    padding-top: 35px;
    line-height: 2;
    letter-spacing: .1em;
    text-align: justify
}


/* works-list-2 */

.works-list-2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

.works-list-2>li {
    width: 30%;
    margin-top: 180px
}

.works-list-2>li>.inner {
    position: relative
}

.works-list-2>li:nth-of-type(-n+3) {
    margin-top: 0
}

.works-list-2>li:nth-of-type(3n+1) a {
    margin-right: auto
}

.works-list-2>li:nth-of-type(3n+2) {
    margin-right: 5%;
    margin-left: 5%
}

.works-list-2>li:nth-of-type(3n+2)>.inner {
    top: 80px
}

.works-list-2>li:nth-of-type(3n+2) a {
    margin: 0 auto
}

.works-list-2>li:nth-of-type(3n+3)>.inner {
    top: -60px
}

.works-list-2>li:nth-of-type(3n+3) a {
    margin-left: auto
}

.works-list-2 a {
    display: block;
    position: relative
}

.works-list-2 .thumb {
    padding-bottom: 100%;
}

.works-list-2 .label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    min-width: 70px;
    left: 40px;
    top: -30px;
    -webkit-box-shadow: 0 0 80px 0 rgba(0, 0, 0, .2);
    box-shadow: 0 0 80px 0 rgba(0, 0, 0, .2);
    z-index: 10;
}

.works-list-2 .label p {
    min-width: 100px;
    padding: 30px 20px;
    font-size: 2rem;
    background-color: #fff;
    white-space: nowrap;
    text-align: center;
}

.works-list-2 .description {
    padding-top: 35px;
    line-height: 2;
    letter-spacing: .1em;
    text-align: justify
}


/* works-list-3 */

.works-list-3 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    justify-content: space-evenly;
    justify-content: space-between;
    margin-top: 150px
}

.works-list-3>li {
    width: 25%;
    /*     margin-top: 180px; */
    padding: 1%;
}

.works-list-3>li>.inner {
    position: relative
}

.works-list-3>li:nth-of-type(-n+4) {
    /*     margin-top: 0 */
}

.works-list-3>li:nth-of-type(4n+1) a {
    /*     margin-right: auto */
}

.works-list-3>li:nth-of-type(4n+2) {
    /*     margin-right: 5%;
    margin-left: 5% */
}

.works-list-3>li:nth-of-type(4n+1)>.inner {
    top: -60px
}

.works-list-3>li:nth-of-type(4n+2)>.inner {
    top: -40px
}

.works-list-3>li:nth-of-type(4n+2) a {
    margin: 0 auto;
}

.works-list-3>li:nth-of-type(4n+3)>.inner {
    top: -10px
}

.works-list-3>li:nth-of-type(4n+4)>.inner {
    top: -40px
}

.works-list-3>li:nth-of-type(4n+4) a {
    margin-left: auto
}

.works-list-3 a {
    display: block;
    position: relative
}

.works-list-3 .thumb {
    padding-bottom: 100%;
}

.works-list-3 .label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: absolute;
    min-width: 70px;
    left: 40px;
    top: -30px;
    -webkit-box-shadow: 0 0 80px 0 rgba(0, 0, 0, .2);
    box-shadow: 0 0 80px 0 rgba(0, 0, 0, .2);
    z-index: 10;
}

.works-list-3 .label p {
    min-width: 100px;
    padding: 30px 20px;
    font-size: 2rem;
    background-color: #fff;
    white-space: nowrap;
    text-align: center;
}

.works-list-3 .description {
    padding-top: 15px;
    line-height: 1.5;
    letter-spacing: .1em;
    text-align: justify;
}

.works-list-3 .description .picup_nm {
    font-size: 0.8em;
    font-weight: 600;
    color: #3F51B5;
}

.works-list-3 .description .picup_cap {
    font-size: 0.9em;
}

@media screen and (max-width:768px) {
    .works-list {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 0 25px
    }
    .works-list>li {
        width: 45%;
        margin-top: 0;
        margin-bottom: 66.66667px
    }
    .works-list>li:nth-of-type(3n+2) {
        margin-left: 0;
        margin-right: 0
    }
    .works-list>li:nth-of-type(3n+2)>.inner,
    .works-list>li:nth-of-type(3n+3)>.inner {
        top: 0
    }
    .works-list .label {
        min-width: 60px;
        top: -25px;
        /* right: -15px; */
        left: 15px;
    }
    .works-list .label p {
        min-width: 60px;
        padding: 30px 15px
    }
    .works-list a {
        margin: 0 auto
    }
    .works-list .description {
        /* display: none */
    }
    /* .works-list-2 */
    .works-list-2 {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 0 25px
    }
    .works-list-2>li {
        width: 45%;
        margin-top: 0;
        margin-bottom: 66.66667px
    }
    .works-list-2>li:nth-of-type(3n+2) {
        margin-left: 0;
        margin-right: 0
    }
    .works-list-2>li:nth-of-type(3n+2)>.inner,
    .works-list-2>li:nth-of-type(3n+3)>.inner {
        top: 0
    }
    .works-list-2 .label {
        min-width: 60px;
        top: -25px;
        /* right: -15px; */
        left: 15px;
    }
    .works-list-2 .label p {
        min-width: 60px;
        padding: 30px 15px
    }
    .works-list-2 a {
        margin: 0 auto
    }
    .works-list-2 .description {
        /* display: none */
    }
    .works-list-3 {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        padding: 0 25px
    }
    .works-list-3>li {
        width: 45%;
        margin-top: 0;
        margin-bottom: 66.66667px;
    }
    .works-list-3>li:nth-of-type(3n+2) {
        margin-left: 0;
        margin-right: 0
    }
    .works-list-3>li:nth-of-type(3n+2)>.inner,
    .works-list-3>li:nth-of-type(3n+3)>.inner {
        top: 0
    }
    .works-list-3 .label {
        min-width: 60px;
        top: -25px;
        /* right: -15px; */
        left: 15px;
    }
    .works-list-3 .label p {
        min-width: 60px;
        padding: 30px 15px
    }
    .works-list-3 a {
        margin: 0 auto
    }
    .works-list-3 .description {
        /* display: none */
    }
}

@media screen and (max-width:640px) {
    .works-list {
        padding: 0
    }
    .works-list>li {
        width: 47%;
        margin-bottom: 50px
    }
    .works-list .label p {
        min-width: 50px;
        padding: 15px
    }
    /* works-list-2 */
    .works-list-2 {
        padding: 0
    }
    .works-list-2>li {
        width: 47%;
        margin-bottom: 50px
    }
    .works-list-2 .label p {
        min-width: 50px;
        padding: 15px
    }
}

@media screen and (max-width:480px) {
    .works-list>li {
        width: 100%;
        margin-bottom: 50px
    }
    .works-list-2>li {
        width: 100%;
        margin-bottom: 50px
    }
    .works-list-3>li {
        width: 100%;
        margin-bottom: 50px
    }
    .works-list .label p {
        font-size: 1.8rem
    }
    .works-list-2 .label p {
        font-size: 1.8rem
    }
}

@media screen and (max-width:413px) {
    .works-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0 25px
    }
    .works-list>li {
        width: 100%;
        margin-top: 0;
        margin-bottom: 50px
    }
    .works-list>li:nth-of-type(3n+2) {
        margin-left: 0;
        margin-right: 0
    }
    .works-list .label {
        min-width: 60px;
        top: -25px;
        /* right: -15px; */
        left: 10px;
    }
    .works-list .label p {
        min-width: 60px;
        padding: 30px 15px
    }
    .works-list a {
        margin: 0 auto
    }
    .works-list .description {
        /* display: none */
    }
    .works-list-2 {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0 25px
    }
    .works-list-2>li {
        width: 100%;
        margin-top: 0;
        margin-bottom: 50px
    }
    .works-list-2>li:nth-of-type(3n+2) {
        margin-left: 0;
        margin-right: 0
    }
    .works-list-2 .label {
        min-width: 60px;
        top: -25px;
        /* right: -15px */
        left: 15px;
    }
    .works-list-2 .label p {
        min-width: 60px;
        padding: 30px 15px
    }
    .works-list-2 a {
        margin: 0 auto
    }
    .works-list-2 .description {
        /* display: none */
    }
    .works-list-3 {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0 25px
    }
    .works-list-3>li {
        width: 100%;
        margin-top: 0;
        margin-bottom: 50px
    }
    .works-list-3>li:nth-of-type(4n+2) {
        margin-left: 0;
        margin-right: 0
    }
    .works-list-3 .label {
        min-width: 60px;
        top: -25px;
        /* right: -15px; */
        left: 10px;
    }
    .works-list-3 .label p {
        min-width: 60px;
        padding: 30px 15px
    }
    .works-list-3 a {
        margin: 0 auto
    }
    .works-list-3 .description {
        /* display: none */
    }
}


/* blog-list */

.blog-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

.blog-list>li {
    width: 31%
}

.blog-list>li:nth-of-type(3n+1) a {
    margin-right: auto
}

.blog-list>li:nth-of-type(3n+2) {
    margin-left: 3.5%;
    margin-right: 3.5%
}

.blog-list>li:nth-of-type(3n+2) a {
    margin-right: auto;
    margin-left: auto
}

.blog-list>li:nth-of-type(3n+3) a {
    margin-left: auto
}

.blog-list a {
    display: block;
    position: relative;
    height: 100%;
    padding-bottom: 50px
}

.blog-list .thumb {
    padding-bottom: 70.1%
}

.blog-list .description {
    padding-top: 25px
}

.blog-list .title {
    margin-bottom: 20px;
    font-size: 2rem
}

.blog-list .text {
    line-height: 1.875;
    letter-spacing: .1em;
    text-align: justify
}

.blog-list .date {
    position: absolute;
    bottom: 0;
    left: 0;
    font-size: 1.2rem;
    letter-spacing: .3em
}

@media screen and (max-width:768px) {
    .blog-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .blog-list>li {
        width: 100%
    }
    .blog-list>li:first-child a {
        padding-top: 0
    }
    .blog-list>li:first-child .date {
        top: 0
    }
    .blog-list>li:nth-of-type(3n+2) {
        margin-left: 0;
        margin-right: 0
    }
    .blog-list>li:last-child a:before {
        display: none
    }
    .blog-list a {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        max-width: 100%;
        height: auto;
        padding-top: 20px;
        padding-bottom: 20px
    }
    .blog-list a:before {
        display: block;
        width: 100%;
        height: 1px;
        content: "";
        position: absolute;
        bottom: 0;
        left: 0;
        background-color: #1a1a1a
    }
    .blog-list .date {
        top: 20px;
        bottom: auto;
        left: 110px
    }
    .blog-list .thumb-outer {
        height: 90px
    }
    .blog-list .thumb {
        position: relative;
        width: 90px;
        height: 90px;
        padding-bottom: 0
    }
    .blog-list .description {
        width: calc(100% - 90px);
        padding-left: 20px
    }
    .blog-list .title {
        margin-bottom: 15px
    }
    .blog-list .text {
        font-size: 1.4rem
    }
}

.modal-frame {
    text-align: center;
    z-index: 999;
    visibility: hidden;
    -webkit-transition: opacity .4s linear, visibility .4s linear;
    transition: opacity .4s linear, visibility .4s linear
}

.modal-frame,
.modal-frame:after {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    opacity: 0
}

.modal-frame:after {
    display: block;
    content: "";
    z-index: 20;
    pointer-events: none
}

.modal-frame .modal-bg {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: rgba(26, 26, 26, .8);
    z-index: 1
}

.modal-frame .modal {
    position: relative;
    display: inline-block;
    z-index: 2
}

.modal-frame .modal img {
    width: 100%;
    height: auto;
    width: auto;
    max-width: 700px
}

.modal-frame .modal-close {
    display: block;
    position: fixed;
    width: 80px;
    height: 80px;
    top: 40px;
    right: 40px;
    z-index: 500;
    pointer-events: auto
}

.modal-frame .modal-close .bar {
    position: absolute;
    width: 25px;
    height: 3px;
    top: 50%;
    right: 0;
    left: 0;
    margin-top: -1px;
    margin-right: auto;
    margin-left: auto
}

.modal-frame .modal-close .bar:before {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #fff
}

.modal-frame .modal-close .bar:first-of-type {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.modal-frame .modal-close .bar:nth-of-type(2) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

.modal-img #gallery-slider {
    -webkit-perspective: 500px;
    perspective: 500px;
    overflow: hidden;
    -webkit-transform: scale(.8);
    transform: scale(.8);
    -webkit-transition: -webkit-transform 0s cubic-bezier(0, .6, .2, 1) .4s;
    transition: -webkit-transform 0s cubic-bezier(0, .6, .2, 1) .4s;
    transition: transform 0s cubic-bezier(0, .6, .2, 1) .4s;
    transition: transform 0s cubic-bezier(0, .6, .2, 1) .4s, -webkit-transform 0s cubic-bezier(0, .6, .2, 1) .4s
}

.modal-img #gallery-slider .img-inner {
    background-color: #1a1a1a
}

.modal-img #gallery-slider .img {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 70vw;
    height: 85vh;
    left: 0;
    right: 0;
    margin: 0 auto;
    -webkit-transition: opacity .6s linear, -webkit-transform .6s cubic-bezier(.6, 0, .3, 1);
    transition: opacity .6s linear, -webkit-transform .6s cubic-bezier(.6, 0, .3, 1);
    transition: opacity .6s linear, transform .6s cubic-bezier(.6, 0, .3, 1);
    transition: opacity .6s linear, transform .6s cubic-bezier(.6, 0, .3, 1), -webkit-transform .6s cubic-bezier(.6, 0, .3, 1)
}

.modal-img .js-slide-target-next,
.modal-img .js-slide-target-prev {
    position: absolute;
    top: 0;
    opacity: 0
}

.modal-img .js-slide-target {
    position: relative;
    z-index: 15
}

.modal-img .js-slide-target img {
    pointer-events: auto
}

.modal-img .js-slide-target-prev {
    -webkit-transform: translate3d(-30%, 0, -200px);
    transform: translate3d(-30%, 0, -200px)
}

.modal-img .js-slide-target-next {
    -webkit-transform: translate3d(30%, 0, -200px);
    transform: translate3d(30%, 0, -200px)
}

.modal-img .js-trigger-slide {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: fixed;
    width: 170px;
    height: 170px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    cursor: pointer;
    pointer-events: auto;
    z-index: 20
}

.modal-img .js-trigger-slide.js-trigger-slide-prev {
    left: 0
}

.modal-img .js-trigger-slide.js-trigger-slide-next {
    right: 0
}

.modal-img .arrow {
    position: relative;
    width: 60px;
    height: 6px
}

.modal-img .arrow:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    background-color: #fff
}

.modal-img .arrow:after {
    display: block;
    width: 6px;
    height: 100%;
    content: "";
    position: absolute;
    top: 0
}

.modal-img .arrow.prev:after {
    left: -1px;
    border-right: 6px solid #fff
}

.modal-img .arrow.next:after,
.modal-img .arrow.prev:after {
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent
}

.modal-img .arrow.next:after {
    right: -1px;
    border-left: 6px solid #fff
}

body.modal-is-active .modal-frame {
    opacity: 1;
    visibility: visible
}

body.modal-is-active .modal-frame #gallery-slider {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: transform .6s cubic-bezier(0, .6, .2, 1);
    transition: transform .6s cubic-bezier(0, .6, .2, 1), -webkit-transform .6s cubic-bezier(0, .6, .2, 1)
}

@media screen and (max-width:768px) {
    .modal-frame .modal {
        display: block
    }
    .modal-frame .modal-close {
        position: fixed;
        top: 0;
        right: 0
    }
    .modal-img .js-trigger-slide {
        width: 40px
    }
    .modal-img .arrow {
        width: 15px;
        height: 4px
    }
    .modal-img .arrow:after {
        height: 4px
    }
    .modal-img .arrow.before:after {
        border-right: 4px solid #fff
    }
    .modal-img .arrow.after:after,
    .modal-img .arrow.before:after {
        border-top: 3px solid transparent;
        border-bottom: 3px solid transparent
    }
    .modal-img .arrow.after:after {
        border-left: 4px solid #fff
    }
}

body.page-fixed #wrap {
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    overflow: hidden
}

#page-transition-cover {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    z-index: 70
}

#page-transition-cover:after,
#page-transition-cover:before {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0
}

#page-transition-cover:before {
    background-color: #eee;
    opacity: 0;
    -webkit-transition: opacity .45s linear .45s;
    transition: opacity .45s linear .45s
}

#page-transition-cover:after {
    background-color: #fff;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transition: transform .9s cubic-bezier(.75, 0, .25, 1);
    transition: transform .9s cubic-bezier(.75, 0, .25, 1);
    z-index: 50
}

.js-title {
    display: inline-block;
    -webkit-perspective-origin: top;
    perspective-origin: top;
    -webkit-perspective: 800px;
    perspective: 800px
}

.js-title .string-trimmer-parts {
    display: inline-block;
    opacity: 0;
    -webkit-transform: translate3d(-5px, 50px, 150px);
    transform: translate3d(-5px, 50px, 150px)
}

.title-sec-02 .copy-title .sub-copy .cover {
    opacity: 0;
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
    overflow: hidden
}

.title-sec-02 .copy-title .sub-copy .cover .svg-img {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0)
}

body.is-page-opened .js-title .string-trimmer-parts {
    -webkit-transform: translateZ(0) rotate(0deg);
    transform: translateZ(0) rotate(0deg);
    opacity: 1;
    -webkit-transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear;
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear
}

body.is-page-opened .title-sec-02 .copy-title .sub-copy .cover {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear;
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    -webkit-transition-delay: .2s;
    transition-delay: .2s
}

body.is-page-opened .title-sec-02 .copy-title .sub-copy .cover .svg-img {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    -webkit-transition-delay: .2s;
    transition-delay: .2s
}

.transition-animation-sec-01 {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: transform .9s cubic-bezier(.75, 0, .25, 1) .15s;
    transition: transform .9s cubic-bezier(.75, 0, .25, 1) .15s
}

body.is-page-transition-first #g-nav {
    height: 160px !important;
    -webkit-transition: height .9s cubic-bezier(.75, 0, .25, 1), -webkit-transform .9s cubic-bezier(.75, 0, .25, 1) !important;
    transition: height .9s cubic-bezier(.75, 0, .25, 1), -webkit-transform .9s cubic-bezier(.75, 0, .25, 1) !important;
    transition: transform .9s cubic-bezier(.75, 0, .25, 1), height .9s cubic-bezier(.75, 0, .25, 1) !important;
    transition: transform .9s cubic-bezier(.75, 0, .25, 1), height .9s cubic-bezier(.75, 0, .25, 1), -webkit-transform .9s cubic-bezier(.75, 0, .25, 1) !important
}

body.is-page-transition-first #g-header:before {
    -webkit-transform: translate3d(0, -100%, 0) !important;
    transform: translate3d(0, -100%, 0) !important
}

body.is-page-transition-first #page-transition-cover:before {
    -webkit-transition: opacity .45s linear, -webkit-transform .9s cubic-bezier(.75, 0, .25, 1);
    transition: opacity .45s linear, -webkit-transform .9s cubic-bezier(.75, 0, .25, 1);
    transition: opacity .45s linear, transform .9s cubic-bezier(.75, 0, .25, 1);
    transition: opacity .45s linear, transform .9s cubic-bezier(.75, 0, .25, 1), -webkit-transform .9s cubic-bezier(.75, 0, .25, 1);
    opacity: 1
}

body.is-page-transition-first #page-transition-cover:after {
    background-color: #fff;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: bottom;
    transform-origin: bottom
}


/* body.is-page-transition-first #g-footer, */

body.is-page-transition-first .page-content {
    -webkit-transform: translate3d(0, -500px, 0);
    transform: translate3d(0, -500px, 0);
    -webkit-transition: transform .9s cubic-bezier(.75, 0, .25, 1) .1s;
    transition: transform .9s cubic-bezier(.75, 0, .25, 1) .1s
}


/* body.is-page-transition-middle #g-footer, */

body.is-page-transition-middle .transition-animation-sec-01 {
    -webkit-transform: translate3d(0, 60px, 0);
    transform: translate3d(0, 60px, 0);
    -webkit-transition: none;
    transition: none
}

body.is-page-transition-middle #top .transition-animation-sec-01 {
    -webkit-transform: translate3d(0, 60px, 0);
    transform: translate3d(0, 60px, 0)
}

body.is-page-transition-middle .js-title .string-trimmer-parts {
    opacity: 0;
    -webkit-transform: translate3d(-5px, 40px, 100px);
    transform: translate3d(-5px, 40px, 100px);
    -webkit-transition: none;
    transition: none;
    -webkit-transition-delay: 0s;
    transition-delay: 0s
}

body.is-page-transition-middle .title-sec-02 .sub-copy .cover {
    opacity: 0 !important;
    -webkit-transform: translate3d(-100%, 100%, 0) !important;
    transform: translate3d(-100%, 100%, 0) !important;
    overflow: hidden;
    -webkit-transition: none;
    transition: none
}

body.is-page-transition-middle .title-sec-02 .sub-copy .cover .svg-img {
    -webkit-transform: translate3d(100%, 0, 0) !important;
    transform: translate3d(100%, 0, 0) !important;
    -webkit-transition: none;
    transition: none
}

body.is-page-transition-middle .page-content {
    -webkit-transform: translate3d(0, 60px, 0);
    transform: translate3d(0, 60px, 0)
}

body.is-page-transition-last .transition-animation-sec-01 {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: transform 1.2s cubic-bezier(.75, 0, .25, 1) .15s;
    transition: transform 1.2s cubic-bezier(.75, 0, .25, 1) .15s
}

body.is-page-transition-last #page-transition-cover:before {
    opacity: 0;
    -webkit-transition: opacity .45s linear .45s;
    transition: opacity .45s linear .45s
}

body.is-page-transition-last #page-transition-cover:after {
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top;
    transform-origin: top
}


/* body.is-page-transition-last #g-footer, */

body.is-page-transition-last .page-content {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: transform .9s cubic-bezier(.75, 0, .25, 1) .1s;
    transition: transform .9s cubic-bezier(.75, 0, .25, 1) .1s
}

body.is-page-transition-last-02 .js-title .string-trimmer-parts {
    -webkit-transform: translateZ(0) rotate(0deg);
    transform: translateZ(0) rotate(0deg);
    opacity: 1;
    -webkit-transition: transform 1.4s cubic-bezier(0, .6, .2, 1), opacity 1.4s linear;
    transition: transform 1.4s cubic-bezier(0, .6, .2, 1), opacity 1.4s linear
}


/* 
body.is-page-transition-last-02 #g-footer {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
} */

body.is-page-transition-last-02 .title-sec-02 .copy-title .sub-copy .cover {
    opacity: 1 !important;
    -webkit-transform: translateZ(0) !important;
    transform: translateZ(0) !important;
    -webkit-transition: opacity 1.4s linear, -webkit-transform 1.4s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.4s linear, -webkit-transform 1.4s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.4s cubic-bezier(0, .6, .2, 1), opacity 1.4s linear;
    transition: transform 1.4s cubic-bezier(0, .6, .2, 1), opacity 1.4s linear, -webkit-transform 1.4s cubic-bezier(0, .6, .2, 1);
    -webkit-transition-delay: .2s;
    transition-delay: .2s
}

body.is-page-transition-last-02 .title-sec-02 .copy-title .sub-copy .cover .svg-img {
    -webkit-transform: translateZ(0) !important;
    transform: translateZ(0) !important;
    -webkit-transition: -webkit-transform 1.4s cubic-bezier(0, .6, .2, 1);
    transition: -webkit-transform 1.4s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.4s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.4s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.4s cubic-bezier(0, .6, .2, 1);
    -webkit-transition-delay: .2s;
    transition-delay: .2s
}

@media screen and (max-width:768px) {
    #page-transition-cover {
        z-index: 1000
    }
    body.is-page-transition-middle .transition-animation-sec-01 {
        -webkit-transform: translateZ(0);
        transform: translateZ(0)
    }
}

#g-header {
    position: fixed;
    width: 100%;
    top: 1%;
    left: 0;
    z-index: 500;
    /* background: #ddd; */
}

#g-header>.inner {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

#g-header .svg-nav-elem {
    max-width: 100%;
    height: 16px;
    fill: currentColor;
    color: #1a1a1a
}

#g-header .svg-top {
    width: 66px
}

#g-header .svg-works {
    width: 112px
}

#g-header .svg-about {
    width: 77px
}

#g-header .svg-faq {
    width: 109px
}

#g-header .svg-contact {
    width: 95px
}

#g-header .svg-blog {
    width: 93px
}

#g-nav {
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000)
}

#g-nav .unit-left,
#g-nav .unit-right {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 40%
}

#g-nav .unit-left,
#g-nav .unit-right,
.g-nav-menu a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.g-nav-menu a {
    height: 90px;
    padding: 0 20px
}

.g-nav-menu a span {
    line-height: 1
}

.nav-unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-pack: distribute;
    justify-content: space-around;
    height: 160px;
    margin: 0 auto
}

.nav-unit .unit-center {
    width: 20%;
    min-width: 50px
}

#g-header>.inner:before {
    display: block;
    width: 100%;
    width: calc(100% - 20px);
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 10px;
    background-color: transparent;
    -webkit-transition: background-color .6s linear;
    transition: background-color .6s linear;
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000);
    /* background: #fff; */
}

#motif-gardener svg {
    -webkit-perspective: 500px;
    perspective: 500px
}

#motif-gardener .motif-head {
    position: relative;
    z-index: 20
}

#motif-gardener .motif-body,
#motif-gardener .motif-head {
    -webkit-transform-origin: center;
    transform-origin: center
}

#motif-gardener.is-active .motif-body,
#motif-gardener.is-active .motif-head {
    -webkit-transition: -webkit-transform 1.2s cubic-bezier(.6, 0, .3, 1);
    transition: -webkit-transform 1.2s cubic-bezier(.6, 0, .3, 1);
    transition: transform 1.2s cubic-bezier(.6, 0, .3, 1);
    transition: transform 1.2s cubic-bezier(.6, 0, .3, 1), -webkit-transform 1.2s cubic-bezier(.6, 0, .3, 1);
    -webkit-transform: rotateY(180deg);
    transform: rotateY(180deg)
}

#motif-gardener.is-active .motif-head {
    -webkit-transition-delay: .3s;
    transition-delay: .3s
}

#sp-g-nav,
#sp-header {
    display: none
}

body.index .motif-gardener {
    fill: #fff
}

body.index #g-nav a:before,
body.index.is-header-min #g-header>.inner:before {
    background-color: #fff
}

body.index.is-header-min #g-nav a:before {
    background-color: #1a1a1a
}

body:not(.index).is-header-min #g-header>.inner:before {
    background-color: #fff;
}

@media screen and (min-width:769px) {
    #g-header {
        -webkit-mask-image: -webkit-radial-gradient(#fff, #000)
    }
    #g-header,
    #g-header #g-nav {
        -webkit-transform: translateZ(1px);
        transform: translateZ(1px);
    }
    body.index #g-header>.inner {
        pointer-events: auto;
        opacity: 1;
        -webkit-transition: 0s .6s;
        transition: 0s .6s
    }
    body.index #g-header .svg-nav-elem {
        color: #fff
    }
    body.index.is-header-min #g-header>.inner {
        opacity: 1;
        pointer-events: auto;
        -webkit-transition: background-color .6s linear, opacity 0s linear;
        transition: background-color .6s linear, opacity 0s linear
    }
    body.index.is-header-min #g-header .svg-nav-elem {
        color: #1a1a1a
    }
}

#motif-gardener {
    position: absolute;
    top: 55%;
    left: 0;
    right: 0;
    margin: -23px auto 0;
    text-align: center;
    z-index: 100;
}

#motif-gardener,
#motif-gardener svg {
    width: 150px;
    height: 46px;
}

@media screen and (max-width:1080px) {
    #g-header .unit-left,
    #g-header .unit-right {
        width: 42.5%;
        font-size: 1.5rem
    }
    #g-header .unit-center {
        width: 15%
    }
}

@media screen and (max-width:768px) {
    #g-header {
        height: auto
    }
    #g-header>.inner:before {
        background-color: transparent
    }
    #g-nav,
    .top-logo {
        display: none
    }
    .sp-logo {
        height: 70px
    }
    #motif-gardener,
    .sp-logo {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    #motif-gardener {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        width: 45px;
        height: 45px;
        z-index: 300
    }
    #motif-gardener svg {
        width: 30px;
        height: 28px
    }
    #sp-header {
        display: block
    }
    #sp-header .block-head {
        position: relative;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: 70px;
        z-index: 200
    }
    #sp-header #sp-g-nav-trigger {
        position: absolute;
        top: 0;
        right: 0;
        width: 77.5px;
        height: 70px
    }
    #sp-header #sp-g-nav-trigger .line {
        display: inline-block;
        position: absolute;
        width: 17.5px;
        height: 2px;
        top: 50%;
        right: 0;
        left: 0;
        margin: -1px auto 0
    }
    #sp-header #sp-g-nav-trigger .line:before {
        display: block;
        width: 100%;
        height: 100%;
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        background-color: #1a1a1a
    }
    #sp-header #sp-g-nav-trigger .line:first-of-type {
        -webkit-transform: translateY(-6px);
        transform: translateY(-6px);
        -webkit-transition: -webkit-transform .3s cubic-bezier(.6, 0, .3, 1);
        transition: -webkit-transform .3s cubic-bezier(.6, 0, .3, 1);
        transition: transform .3s cubic-bezier(.6, 0, .3, 1);
        transition: transform .3s cubic-bezier(.6, 0, .3, 1), -webkit-transform .3s cubic-bezier(.6, 0, .3, 1)
    }
    #sp-header #sp-g-nav-trigger .line:nth-of-type(2) {
        -webkit-transition: opacity .3s linear, -webkit-transform .3s cubic-bezier(.6, 0, .3, 1);
        transition: opacity .3s linear, -webkit-transform .3s cubic-bezier(.6, 0, .3, 1);
        transition: transform .3s cubic-bezier(.6, 0, .3, 1), opacity .3s linear;
        transition: transform .3s cubic-bezier(.6, 0, .3, 1), opacity .3s linear, -webkit-transform .3s cubic-bezier(.6, 0, .3, 1);
        -webkit-transition-delay: .1s;
        transition-delay: .1s
    }
    #sp-header #sp-g-nav-trigger .line:nth-of-type(3) {
        -webkit-transform: translateY(6px);
        transform: translateY(6px);
        -webkit-transition: -webkit-transform .3s cubic-bezier(.6, 0, .3, 1);
        transition: -webkit-transform .3s cubic-bezier(.6, 0, .3, 1);
        transition: transform .3s cubic-bezier(.6, 0, .3, 1);
        transition: transform .3s cubic-bezier(.6, 0, .3, 1), -webkit-transform .3s cubic-bezier(.6, 0, .3, 1)
    }
    #sp-g-nav {
        display: block;
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        padding-top: 70px;
        background-color: transparent;
        pointer-events: none;
        opacity: 0;
        visibility: hidden;
        -webkit-transition: opacity .6s linear, visibility .6s linear, background-color .6s linear;
        transition: opacity .6s linear, visibility .6s linear, background-color .6s linear;
        z-index: 80
    }
    #sp-g-nav .navigation {
        border-top: 1px solid rgba(0, 0, 0, .1)
    }
    #sp-g-nav .navigation li {
        overflow: hidden
    }
    #sp-g-nav .navigation a {
        display: block;
        height: 80px;
        padding: 0 30px
    }
    #sp-g-nav .navigation a>.inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        height: 100%;
        opacity: 0;
        -webkit-transform: translateX(-30px);
        transform: translateX(-30px);
        -webkit-transition: opacity .6s linear, -webkit-transform 0s cubic-bezier(.05, .6, .25, 1.05) .6s;
        transition: opacity .6s linear, -webkit-transform 0s cubic-bezier(.05, .6, .25, 1.05) .6s;
        transition: transform 0s cubic-bezier(.05, .6, .25, 1.05) .6s, opacity .6s linear;
        transition: transform 0s cubic-bezier(.05, .6, .25, 1.05) .6s, opacity .6s linear, -webkit-transform 0s cubic-bezier(.05, .6, .25, 1.05) .6s
    }
    #sp-g-nav .navigation .sp-arrow {
        right: 0
    }
    #sp-g-nav .telephone-block {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        height: 30vh;
        min-height: calc(100vh - 370px);
        padding-top: 65px;
        padding-bottom: 60px;
        opacity: 0;
        -webkit-transition: opacity 1s linear;
        transition: opacity 1s linear
    }
    #sp-g-nav .telephone-block .tel {
        margin-bottom: 15px
    }
    body.is-sp-nav-before-active #sp-g-nav {
        -webkit-transition: none;
        transition: none
    }
    body.is-sp-nav-active #sp-g-nav {
        background-color: #fff;
        opacity: 1;
        visibility: visible;
        pointer-events: auto;
        -webkit-transition: opacity .6s linear, visibility .6s linear, background-color .6s linear;
        transition: opacity .6s linear, visibility .6s linear, background-color .6s linear;
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    body.is-sp-nav-active #sp-g-nav .navigation li a>.inner {
        -webkit-transform: translateZ(1px);
        transform: translateZ(1px);
        opacity: 1;
        -webkit-transition: opacity .8s linear, -webkit-transform 1s cubic-bezier(.05, .6, .25, 1.05);
        transition: opacity .8s linear, -webkit-transform 1s cubic-bezier(.05, .6, .25, 1.05);
        transition: transform 1s cubic-bezier(.05, .6, .25, 1.05), opacity .8s linear;
        transition: transform 1s cubic-bezier(.05, .6, .25, 1.05), opacity .8s linear, -webkit-transform 1s cubic-bezier(.05, .6, .25, 1.05)
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(0) a>.inner {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:first-of-type a>.inner {
        -webkit-transition-delay: .05s;
        transition-delay: .05s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(2) a>.inner {
        -webkit-transition-delay: .1s;
        transition-delay: .1s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(3) a>.inner {
        -webkit-transition-delay: .15s;
        transition-delay: .15s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(4) a>.inner {
        -webkit-transition-delay: .2s;
        transition-delay: .2s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(5) a>.inner {
        -webkit-transition-delay: .25s;
        transition-delay: .25s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(6) a>.inner {
        -webkit-transition-delay: .3s;
        transition-delay: .3s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(7) a>.inner {
        -webkit-transition-delay: .35s;
        transition-delay: .35s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(8) a>.inner {
        -webkit-transition-delay: .4s;
        transition-delay: .4s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(9) a>.inner {
        -webkit-transition-delay: .45s;
        transition-delay: .45s
    }
    body.is-sp-nav-active #sp-g-nav .navigation li:nth-of-type(10) a>.inner {
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    body.is-sp-nav-active #sp-g-nav .telephone-block {
        opacity: 1;
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    body.is-sp-nav-active #sp-header #sp-g-nav-trigger .line:first-of-type {
        -webkit-transform: translateY(0) rotate(45deg);
        transform: translateY(0) rotate(45deg)
    }
    body.is-sp-nav-active #sp-header #sp-g-nav-trigger .line:nth-of-type(2) {
        opacity: 0;
        -webkit-transform: scaleX(0);
        transform: scaleX(0)
    }
    body.is-sp-nav-active #sp-header #sp-g-nav-trigger .line:nth-of-type(3) {
        -webkit-transform: translateY(0) rotate(-45deg);
        transform: translateY(0) rotate(-45deg)
    }
    body.is-sp-nav-active #g-header>.inner:before {
        background-color: #fff;
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
        -webkit-transition: background-color .6s linear, -webkit-transform 0s;
        transition: background-color .6s linear, -webkit-transform 0s;
        transition: transform 0s, background-color .6s linear;
        transition: transform 0s, background-color .6s linear, -webkit-transform 0s
    }
    body.index #sp-header #sp-g-nav-trigger .line:before,
    body.index.is-header-min #g-header>.inner:before {
        background-color: #fff
    }
    body.index.is-header-min #sp-header #sp-g-nav-trigger .line:before,
    body.index.is-sp-nav-active #sp-header #sp-g-nav-trigger .line:before {
        background-color: #1a1a1a
    }
}

@media screen and (max-width:480px) {
    #sp-g-nav .navigation a {
        height: 50px;
        padding: 0 30px
    }
}

html.is-ie #side-nav {
    display: none
}

.js-sec-parent {
    position: relative;
    z-index: 50
}

#side-nav {
    position: fixed;
    width: 100%;
    height: 100vh;
    top: 0;
    left: 0;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    pointer-events: none;
    z-index: 150
}

#side-nav>.inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: absolute;
    width: 100%;
    min-height: 400px;
    top: 50%;
    left: 0;
    padding: 0 50px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#side-nav .label {
    overflow: hidden
}

#side-nav .label .one-time-split-target>span {
    display: inline-block;
    -webkit-transition: -webkit-transform .7s cubic-bezier(.25, .9, .3, 1.25);
    transition: -webkit-transform .7s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .7s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .7s cubic-bezier(.25, .9, .3, 1.25), -webkit-transform .7s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transform: translate3d(-105%, 0, 0) rotate(90deg);
    transform: translate3d(-105%, 0, 0) rotate(90deg);
    -webkit-transform-origin: top left;
    transform-origin: top left
}

#side-nav .label.vertical-text,
#side-nav .page-current-list>li {
    font-size: 1.2rem;
    letter-spacing: .5em;
    line-height: 1
}

#side-nav .page-current-list>li {
    position: absolute;
    top: 50%;
    right: 50px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

#side-nav .page-current-list a {
    display: block
}

#side-nav .page-current-list p {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
    overflow: hidden
}

#side-nav .page-current-list p>span {
    display: inline-block;
    min-width: .3em;
    min-height: .3em;
    -webkit-transition: -webkit-transform .7s cubic-bezier(.25, .9, .3, 1.25);
    transition: -webkit-transform .7s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .7s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .7s cubic-bezier(.25, .9, .3, 1.25), -webkit-transform .7s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transform: translate3d(-105%, 0, 0) rotate(-180deg);
    transform: translate3d(-105%, 0, 0) rotate(-180deg)
}

body.is-page-opened #side-nav .label .one-time-split-target>span,
body.is-page-opened #side-nav .page-current-list>li.current p>span {
    -webkit-transform: translateZ(0) rotate(0deg);
    transform: translateZ(0) rotate(0deg)
}

body.is-page-opened #side-nav .page-current-list>li.current p>span {
    z-index: 10
}

body.is-page-opened.index #side-nav .label .one-time-split-target>span {
    -webkit-transform: translate3d(-105%, 0, 0) rotate(90deg);
    transform: translate3d(-105%, 0, 0) rotate(90deg)
}

body.is-page-opened.is-side-nav-hide #side-nav .label .one-time-split-target>span {
    -webkit-transform: translate3d(-105%, 0, 0) rotate(90deg) !important;
    transform: translate3d(-105%, 0, 0) rotate(90deg) !important
}

body.is-page-opened.is-side-nav-hide #side-nav .page-current-list>li p>span {
    -webkit-transform: translate3d(-105%, 0, 0) rotate(-180deg) !important;
    transform: translate3d(-105%, 0, 0) rotate(-180deg) !important
}

body.is-page-opened.is-side-current-0 #side-nav .label .one-time-split-target>span,
body.is-page-opened .is-side-current-1 #side-nav .label .one-time-split-target>span,
body.is-page-opened.is-side-current-1.index #side-nav .page-current-list>li.current p>span,
body.is-page-opened.is-side-current-1.index #side-nav .page-current-list>li.side-works p>span,
body.is-page-opened .is-side-current-2 #side-nav .label .one-time-split-target>span,
body.is-page-opened.is-side-current-2 #side-nav .page-current-list>li.side-about p>span,
body.is-page-opened.is-side-current-3 #side-nav .page-current-list>li.side-blog p>span,
body.is-page-opened.is-side-nav-show #side-nav .label .one-time-split-target>span {
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

@media screen and (max-width:1200px) {
    #side-nav {
        display: none
    }
}

@media screen and (max-width:768px) {
    #side-nav {
        display: none
    }
}

.trans-in-bottom {
    opacity: 0;
    -webkit-transform: translate3d(0, 60px, 0);
    transform: translate3d(0, 60px, 0)
}

.fade-in {
    opacity: 0
}

.way-string-in .string-trimmer-parts,
.waypoint.sub-copy .cover {
    display: inline-block;
    opacity: 0
}

.waypoint.sub-copy .cover {
    -webkit-transform: translate3d(-100%, 100%, 0);
    transform: translate3d(-100%, 100%, 0);
    overflow: hidden
}

.waypoint.sub-copy .cover .svg-img {
    -webkit-transform: translate3d(100%, 0, 0);
    transform: translate3d(100%, 0, 0)
}

.blog-list .way-list .thumb-outer {
    opacity: 0;
    -webkit-transform: scaleY(0) translateZ(0);
    transform: scaleY(0) translateZ(0);
    -webkit-transform-origin: top;
    transform-origin: top;
    overflow: hidden
}

.blog-list .way-list .thumb-outer:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    background-color: #1a1a1a
}

.blog-list .way-list .thumb-inner {
    opacity: 0;
    -webkit-transform: scale(1.25) translateZ(0);
    transform: scale(1.25) translateZ(0)
}

.blog-list .way-list .date,
.blog-list .way-list .description {
    opacity: 0;
    -webkit-transition: opacity .7s linear;
    transition: opacity .7s linear
}

#works-detail .main-visual {
    overflow: hidden
}

#works-detail .main-visual .img-outer {
    opacity: 0;
    -webkit-transform: scale(1.15) translateZ(0);
    transform: scale(1.15) translateZ(0)
}

#works-detail .main-visual:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #efefef
}

#works-detail .gallery-list .modal-trigger .img-inner {
    opacity: 0;
    -webkit-transform: scale(1.25) translateZ(0);
    transform: scale(1.25) translateZ(0)
}

#works-detail .gallery-list .modal-trigger .img-outer {
    position: relative;
    overflow: hidden;
    opacity: 0;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top;
    transform-origin: top
}

#works-detail .gallery-list .modal-trigger .img-outer:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1a1a1a;
    -webkit-transform-origin: bottom;
    transform-origin: bottom
}

.main-visual .mv-video-container .cover,
.main-visual .sp-mv-container .cover {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-color: #1a1a1a;
    z-index: 10
}

.main-visual .mv-video-container>.inner,
.main-visual .sp-mv-container>.inner {
    -webkit-transform: scale(1.2);
    transform: scale(1.2)
}

#about .title-sec-01 .section-foot:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #efefef;
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000)
}

#about .example .example-list li .img-cover {
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000);
    opacity: 0
}

#about .example .example-list li .img-cover .img {
    opacity: 0;
    -webkit-transform: scale(1.4);
    transform: scale(1.4)
}

#about .example .example-list li .img-cover:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1a1a1a;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: bottom;
    transform-origin: bottom
}

#about .flow .flow-list .unit-head:before {
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: top;
    transform-origin: top
}

#about .profile .section-head .img-outer {
    position: relative;
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000);
    opacity: 0
}

#about .profile .section-head .img-outer:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1a1a1a;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: bottom;
    transform-origin: bottom
}

#about .profile .section-head .img-cover {
    opacity: 0;
    -webkit-transform: scale(1.4);
    transform: scale(1.4)
}

html:not(.is-ie) .works-list .way-list .label {
    opacity: 0;
    -webkit-transform: scaleY(0) translateZ(0);
    transform: scaleY(0) translateZ(0);
    -webkit-transform-origin: top;
    transform-origin: top
}

html:not(.is-ie) .works-list .way-list .label p:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1a1a1a;
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000)
}

html:not(.is-ie) .works-list .way-list .label span {
    opacity: 0;
    -webkit-transform: scale(1.2) translateZ(0);
    transform: scale(1.2) translateZ(0)
}

html:not(.is-ie) .works-list .way-list .img {
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000)
}

html:not(.is-ie) .works-list .way-list .description {
    opacity: 0;
    -webkit-transition: opacity .7s linear;
    transition: opacity .7s linear
}

html.is-ie .works-list .way-list {
    opacity: 0;
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

html:not(.is-ie) .works-list-2 .way-list .label {
    opacity: 0;
    -webkit-transform: scaleY(0) translateZ(0);
    transform: scaleY(0) translateZ(0);
    -webkit-transform-origin: top;
    transform-origin: top
}

html:not(.is-ie) .works-list-2 .way-list .label p:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1a1a1a;
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000)
}

html:not(.is-ie) .works-list-2 .way-list .label span {
    opacity: 0;
    -webkit-transform: scale(1.2) translateZ(0);
    transform: scale(1.2) translateZ(0)
}

html:not(.is-ie) .works-list-2 .way-list .img {
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000)
}

html:not(.is-ie) .works-list-2 .way-list .description {
    opacity: 0;
    -webkit-transition: opacity .7s linear;
    transition: opacity .7s linear
}

html.is-ie .works-list-2 .way-list {
    opacity: 0;
    -webkit-transform: translateY(100px);
    transform: translateY(100px);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.fade-in.is-action {
    opacity: 1;
    -webkit-transition: opacity 1.2s linear;
    transition: opacity 1.2s linear
}

.product_title {
    margin-top: 10px;
    text-align: center;
    margin-bottom: 50px;
    /* display: block; */
}

.product_title h1 {
    font-size: 25px;
    padding-top: 20px;
}

.product_title p {
    font-size: 16px;
    padding-top: 20px;
}

@media screen and (max-width:768px) {
    .product_title {
        margin-top: 0;
        text-align: center;
        margin-bottom: 20px;
    }
    .product_title h1 {
        font-size: 25px;
        padding-top: 20px;
    }
}

@media screen and (max-width:500px) {
    .product_title {
        padding: 10px 50px;
    }
    .product_title p {
        text-align: left;
    }
}


/*----------------------------------------------------
QCDS
------------------*/

.boxContact {
    position: relative;
    margin: 3em;
    padding: 1em 1em;
    border: solid 1px #ddd;
    border-radius: 2px;
    max-width: 1000px;
    margin: 30px auto;
    width: 100%;
}

.boxContact .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 15px;
    line-height: 1;
    font-size: 19px;
    background: #FFF;
    color: #333;
    font-weight: bold;
}

.boxContact p {
    margin: 0;
    padding: 0;
}

.list_01 {
    padding: 0;
    /* margin-top: 50px; */
    font-size: 20px;
}

.list_01 ol {
    counter-reset: number;
    list-style-type: none!important;
    padding: 0.3em 0.2em;
    /* border: solid 2px #dedede; */
}

.list_01 ol li {
    /* border-bottom: solid 1px #333; */
    position: relative;
    padding: 0.5em 3em 0.5em 1.5em;
    line-height: 1.4em;
    /* font-weight: 600; */
    text-align: left;
    display: inline-block;
}

.list_01 ol li a {
    /* text-decoration: solid; */
    border-bottom: 1px dashed #333;
}

.list_01 ol li a:hover {
    color: #607d8b;
}

.list_01 ol li:before {
    position: absolute;
    counter-increment: number;
    content: '\e6b4';
    display: inline-block;
    color: #333;
    font-family: themify;
    font-weight: bold;
    font-family: 'Font Awesome 6 pro';
    content: "\f8d3";
    font-size: 20px;
    border-radius: 50%;
    left: 0;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    top: 45%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.list_01 ol li:last-of-type {
    border-bottom: none;
}

.list_01 ol li span {
    font-size: 0.7em;
}

.trans-in-bottom .is-action,
.waypoint.is-action.trans-in-bottom,
.waypoint.is-action .trans-in-bottom {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, transform 1.2s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1)
}

.way-string-in.is-action .string-trimmer-parts,
.waypoint.is-action .way-string-in .string-trimmer-parts {
    opacity: 1;
    -webkit-transition: opacity 1.3s linear;
    transition: opacity 1.3s linear
}

.sub-copy.waypoint.is-action .cover {
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear;
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    -webkit-transition-delay: .2s;
    transition-delay: .2s
}

.sub-copy.waypoint.is-action .cover .svg-img {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    -webkit-transition-delay: .2s;
    transition-delay: .2s
}

.main-visual.is-action .mv-video-container .cover,
.main-visual.is-action .sp-mv-container .cover {
    opacity: 0;
    -webkit-transition: opacity 1s linear, visibility 1s linear;
    transition: opacity 1s linear, visibility 1s linear;
    pointer-events: none
}

.main-visual.is-action .mv-video-container>.inner {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 1.5s cubic-bezier(0, .6, .2, 1);
    transition: 1.5s cubic-bezier(0, .6, .2, 1)
}

.main-visual.is-action .sp-mv-container>.inner {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 2.5s cubic-bezier(0, .6, .2, 1);
    transition: 2.5s cubic-bezier(0, .6, .2, 1)
}

.main-visual.is-action-end .mv-video-container .cover,
.main-visual.is-action-end .mv-video-container>.inner,
.main-visual.is-action-end .sp-mv-container .cover,
.main-visual.is-action-end .sp-mv-container>.inner {
    -webkit-transition: none;
    transition: none
}

.blog-list .way-list.is-action .thumb-outer {
    opacity: 1;
    -webkit-transform: scaleY(1) translateZ(0);
    transform: scaleY(1) translateZ(0);
    -webkit-transition: opacity .5s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: opacity .5s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: transform .6s cubic-bezier(0, .6, .2, 1), opacity .5s linear;
    transition: transform .6s cubic-bezier(0, .6, .2, 1), opacity .5s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1)
}

.blog-list .way-list.is-action .thumb-outer:after {
    -webkit-transform: scaleY(0) translateZ(0);
    transform: scaleY(0) translateZ(0);
    -webkit-transition: opacity .7s cubic-bezier(.7, .1, .2, 1), -webkit-transform .7s cubic-bezier(.7, .1, .2, 1);
    transition: opacity .7s cubic-bezier(.7, .1, .2, 1), -webkit-transform .7s cubic-bezier(.7, .1, .2, 1);
    transition: transform .7s cubic-bezier(.7, .1, .2, 1), opacity .7s cubic-bezier(.7, .1, .2, 1);
    transition: transform .7s cubic-bezier(.7, .1, .2, 1), opacity .7s cubic-bezier(.7, .1, .2, 1), -webkit-transform .7s cubic-bezier(.7, .1, .2, 1)
}

.blog-list .way-list.is-action .thumb-inner {
    opacity: 1;
    -webkit-transform: scale(1) translateZ(0);
    transform: scale(1) translateZ(0);
    -webkit-transition: opacity .6s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1);
    transition: opacity .6s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.8s cubic-bezier(0, .6, .2, 1), opacity .6s linear;
    transition: transform 1.8s cubic-bezier(0, .6, .2, 1), opacity .6s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1)
}

.blog-list .way-list.is-action .date,
.blog-list .way-list.is-action .description {
    opacity: 1
}


/* 
#g-footer .waypoint-container.section-foot.is-action>.bg {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: transform 2s cubic-bezier(0, .6, .2, 1), opacity .6s linear;
    transition: transform 2s cubic-bezier(0, .6, .2, 1), opacity .6s linear
}

#g-footer .waypoint-container.section-foot.is-action .message .string-trimmer-parts {
    opacity: 1;
    -webkit-transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear;
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear
}

#g-footer .waypoint-container.section-foot.is-action .link-line .string-trimmer-parts {
    opacity: 1;
    -webkit-transition: opacity 1.2s linear;
    transition: opacity 1.2s linear
}

#g-footer .waypoint-container.section-foot.is-action .line {
    opacity: 1;
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear;
    transition: transform 1.2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear;
    -webkit-transition-delay: 1.1s;
    transition-delay: 1.1s
} */

body.is-page-init #works-detail .main-visual.is-action .img-outer {
    opacity: 1;
    -webkit-transform: scale(1) translateZ(0);
    transform: scale(1) translateZ(0);
    -webkit-transition: opacity 1.6s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.6s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.6s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.6s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.6s cubic-bezier(0, .6, .2, 1), opacity 1.6s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.6s cubic-bezier(0, .6, .2, 1), opacity 1.6s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.6s cubic-bezier(0, .6, .2, 1)
}

body.is-page-init #works-detail .main-visual.is-action:after {
    opacity: 0;
    -webkit-transition: opacity 1s linear;
    transition: opacity 1s linear
}

#works-detail .gallery-list .modal-trigger.is-action .img-inner {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transition: opacity .7s linear, -webkit-transform 1.6s cubic-bezier(0, .6, .2, 1);
    transition: opacity .7s linear, -webkit-transform 1.6s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.6s cubic-bezier(0, .6, .2, 1), opacity .7s linear;
    transition: transform 1.6s cubic-bezier(0, .6, .2, 1), opacity .7s linear, -webkit-transform 1.6s cubic-bezier(0, .6, .2, 1)
}

#works-detail .gallery-list .modal-trigger.is-action .img-outer {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transition: opacity .5s linear, -webkit-transform .65s cubic-bezier(0, .6, .2, 1);
    transition: opacity .5s linear, -webkit-transform .65s cubic-bezier(0, .6, .2, 1);
    transition: transform .65s cubic-bezier(0, .6, .2, 1), opacity .5s linear;
    transition: transform .65s cubic-bezier(0, .6, .2, 1), opacity .5s linear, -webkit-transform .65s cubic-bezier(0, .6, .2, 1)
}

#works-detail .gallery-list .modal-trigger.is-action .img-outer:after {
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transition: -webkit-transform .65s cubic-bezier(.6, 0, .3, 1);
    transition: -webkit-transform .65s cubic-bezier(.6, 0, .3, 1);
    transition: transform .65s cubic-bezier(.6, 0, .3, 1);
    transition: transform .65s cubic-bezier(.6, 0, .3, 1), -webkit-transform .65s cubic-bezier(.6, 0, .3, 1)
}

body.is-page-init .title-sec-01 .section-foot:after {
    opacity: 0;
    -webkit-transition: opacity 1.6s linear;
    transition: opacity 1.6s linear
}

#about .example .example-list li .unit-head.is-action .img-cover {
    opacity: 1;
    -webkit-transition: opacity .5s linear;
    transition: opacity .5s linear
}

#about .example .example-list li .unit-head.is-action .img-cover:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transition: -webkit-transform .7s cubic-bezier(.6, 0, .3, 1) .3s;
    transition: -webkit-transform .7s cubic-bezier(.6, 0, .3, 1) .3s;
    transition: transform .7s cubic-bezier(.6, 0, .3, 1) .3s;
    transition: transform .7s cubic-bezier(.6, 0, .3, 1) .3s, -webkit-transform .7s cubic-bezier(.6, 0, .3, 1) .3s
}

#about .example .example-list li .unit-head.is-action .img-cover .img {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: opacity 1.2s linear, -webkit-transform 2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, -webkit-transform 2s cubic-bezier(0, .6, .2, 1);
    transition: transform 2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear;
    transition: transform 2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear, -webkit-transform 2s cubic-bezier(0, .6, .2, 1)
}

#about .flow .flow-list .unit-head.is-action:before {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transition: -webkit-transform 1s cubic-bezier(.6, 0, .3, 1) .2s;
    transition: -webkit-transform 1s cubic-bezier(.6, 0, .3, 1) .2s;
    transition: transform 1s cubic-bezier(.6, 0, .3, 1) .2s;
    transition: transform 1s cubic-bezier(.6, 0, .3, 1) .2s, -webkit-transform 1s cubic-bezier(.6, 0, .3, 1) .2s
}

#about .profile .section-head.is-action .img-outer {
    opacity: 1;
    -webkit-transition: opacity .5s linear;
    transition: opacity .5s linear
}

#about .profile .section-head.is-action .img-outer:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transition: -webkit-transform .7s cubic-bezier(.6, 0, .3, 1) .3s;
    transition: -webkit-transform .7s cubic-bezier(.6, 0, .3, 1) .3s;
    transition: transform .7s cubic-bezier(.6, 0, .3, 1) .3s;
    transition: transform .7s cubic-bezier(.6, 0, .3, 1) .3s, -webkit-transform .7s cubic-bezier(.6, 0, .3, 1) .3s
}

#about .profile .section-head.is-action .img-cover {
    opacity: 1;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: opacity 1.2s linear, -webkit-transform 2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, -webkit-transform 2s cubic-bezier(0, .6, .2, 1);
    transition: transform 2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear;
    transition: transform 2s cubic-bezier(0, .6, .2, 1), opacity 1.2s linear, -webkit-transform 2s cubic-bezier(0, .6, .2, 1)
}

html:not(.is-ie) .works-list .way-list.is-action .label {
    opacity: 1;
    -webkit-transform: scaleY(1) translateZ(0);
    transform: scaleY(1) translateZ(0);
    -webkit-transition: opacity .5s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: opacity .5s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: transform .6s cubic-bezier(0, .6, .2, 1), opacity .5s linear;
    transition: transform .6s cubic-bezier(0, .6, .2, 1), opacity .5s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1)
}

html:not(.is-ie) .works-list .way-list.is-action .label p:after {
    -webkit-transform: scaleY(0) translateZ(0);
    transform: scaleY(0) translateZ(0);
    -webkit-transition: -webkit-transform .7s cubic-bezier(.7, .1, .2, 1);
    transition: -webkit-transform .7s cubic-bezier(.7, .1, .2, 1);
    transition: transform .7s cubic-bezier(.7, .1, .2, 1);
    transition: transform .7s cubic-bezier(.7, .1, .2, 1), -webkit-transform .7s cubic-bezier(.7, .1, .2, 1)
}

html:not(.is-ie) .works-list .way-list.is-action .label span {
    opacity: 1;
    -webkit-transform: scale(1) translateZ(0);
    transform: scale(1) translateZ(0);
    -webkit-transition: opacity .6s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1);
    transition: opacity .6s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.8s cubic-bezier(0, .6, .2, 1), opacity .6s linear;
    transition: transform 1.8s cubic-bezier(0, .6, .2, 1), opacity .6s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1)
}

html:not(.is-ie) .works-list .way-list.is-action .description {
    opacity: 1;
    -webkit-transform: translateY(0) translateZ(0);
    transform: translateY(0) translateZ(0)
}

html.is-ie .works-list .way-list.is-action {
    opacity: 1;
    -webkit-transform: translateY(1);
    transform: translateY(1);
    -webkit-transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, transform 1.2s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1)
}

html:not(.is-ie) .works-list-2 .way-list.is-action .label {
    opacity: 1;
    -webkit-transform: scaleY(1) translateZ(0);
    transform: scaleY(1) translateZ(0);
    -webkit-transition: opacity .5s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: opacity .5s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: transform .6s cubic-bezier(0, .6, .2, 1), opacity .5s linear;
    transition: transform .6s cubic-bezier(0, .6, .2, 1), opacity .5s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1)
}

html:not(.is-ie) .works-list-2 .way-list.is-action .label p:after {
    -webkit-transform: scaleY(0) translateZ(0);
    transform: scaleY(0) translateZ(0);
    -webkit-transition: -webkit-transform .7s cubic-bezier(.7, .1, .2, 1);
    transition: -webkit-transform .7s cubic-bezier(.7, .1, .2, 1);
    transition: transform .7s cubic-bezier(.7, .1, .2, 1);
    transition: transform .7s cubic-bezier(.7, .1, .2, 1), -webkit-transform .7s cubic-bezier(.7, .1, .2, 1)
}

html:not(.is-ie) .works-list-2 .way-list.is-action .label span {
    opacity: 1;
    -webkit-transform: scale(1) translateZ(0);
    transform: scale(1) translateZ(0);
    -webkit-transition: opacity .6s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1);
    transition: opacity .6s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1);
    transition: transform 1.8s cubic-bezier(0, .6, .2, 1), opacity .6s linear;
    transition: transform 1.8s cubic-bezier(0, .6, .2, 1), opacity .6s linear, -webkit-transform 1.8s cubic-bezier(0, .6, .2, 1)
}

html:not(.is-ie) .works-list-2 .way-list.is-action .description {
    opacity: 1;
    -webkit-transform: translateY(0) translateZ(0);
    transform: translateY(0) translateZ(0)
}

html.is-ie .works-list-2 .way-list.is-action {
    opacity: 1;
    -webkit-transform: translateY(1);
    transform: translateY(1);
    -webkit-transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, transform 1.2s cubic-bezier(0, .6, .2, 1);
    transition: opacity 1.2s linear, transform 1.2s cubic-bezier(0, .6, .2, 1), -webkit-transform 1.2s cubic-bezier(0, .6, .2, 1)
}

@media screen and (min-width:768px) {
    .blog-list .way-list.is-action:nth-of-type(3n+1) .thumb-outer {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    .blog-list .way-list.is-action:nth-of-type(3n+1) .thumb-inner,
    .blog-list .way-list.is-action:nth-of-type(3n+1) .thumb-outer:after {
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    .blog-list .way-list.is-action:nth-of-type(3n+1) .date,
    .blog-list .way-list.is-action:nth-of-type(3n+1) .description {
        opacity: 1;
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    .blog-list .way-list.is-action:nth-of-type(3n+2) .thumb-outer {
        -webkit-transition-delay: 75ms;
        transition-delay: 75ms
    }
    .blog-list .way-list.is-action:nth-of-type(3n+2) .thumb-inner,
    .blog-list .way-list.is-action:nth-of-type(3n+2) .thumb-outer:after {
        -webkit-transition-delay: .575s;
        transition-delay: .575s
    }
    .blog-list .way-list.is-action:nth-of-type(3n+2) .date,
    .blog-list .way-list.is-action:nth-of-type(3n+2) .description {
        opacity: 1;
        -webkit-transition-delay: .575s;
        transition-delay: .575s
    }
    .blog-list .way-list.is-action:nth-of-type(3n+3) .thumb-outer {
        -webkit-transition-delay: .15s;
        transition-delay: .15s
    }
    .blog-list .way-list.is-action:nth-of-type(3n+3) .thumb-inner,
    .blog-list .way-list.is-action:nth-of-type(3n+3) .thumb-outer:after {
        -webkit-transition-delay: .65s;
        transition-delay: .65s
    }
    .blog-list .way-list.is-action:nth-of-type(3n+3) .date,
    .blog-list .way-list.is-action:nth-of-type(3n+3) .description {
        opacity: 1;
        -webkit-transition-delay: .65s;
        transition-delay: .65s
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(3n+1) .img-outer {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(3n+1) .img-inner,
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(3n+1) .img-outer:after {
        -webkit-transition-delay: .6s;
        transition-delay: .6s
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(3n+2) .img-outer {
        -webkit-transition-delay: 75ms;
        transition-delay: 75ms
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(3n+2) .img-inner,
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(3n+2) .img-outer:after {
        -webkit-transition-delay: .675s;
        transition-delay: .675s
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(3n+3) .img-outer {
        -webkit-transition-delay: .15s;
        transition-delay: .15s
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(3n+3) .img-inner,
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(3n+3) .img-outer:after {
        -webkit-transition-delay: .75s;
        transition-delay: .75s
    }
}

@media screen and (min-width:769px) {
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+3) .label {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+3) .label p:after,
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+3) .label span {
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+3) .description {
        -webkit-transition-delay: 1s;
        transition-delay: 1s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+2) .label {
        -webkit-transition-delay: .1s;
        transition-delay: .1s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+2) .label p:after,
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+2) .label span {
        -webkit-transition-delay: .6s;
        transition-delay: .6s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+2) .description {
        -webkit-transition-delay: 1.1s;
        transition-delay: 1.1s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+1) .label {
        -webkit-transition-delay: .2s;
        transition-delay: .2s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+1) .label p:after,
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+1) .label span {
        -webkit-transition-delay: .7s;
        transition-delay: .7s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(3n+1) .description {
        -webkit-transition-delay: 1.2s;
        transition-delay: 1.2s;
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+3) .label {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+3) .label p:after,
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+3) .label span {
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+3) .description {
        -webkit-transition-delay: 1s;
        transition-delay: 1s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+2) .label {
        -webkit-transition-delay: .1s;
        transition-delay: .1s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+2) .label p:after,
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+2) .label span {
        -webkit-transition-delay: .6s;
        transition-delay: .6s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+2) .description {
        -webkit-transition-delay: 1.1s;
        transition-delay: 1.1s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+1) .label {
        -webkit-transition-delay: .2s;
        transition-delay: .2s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+1) .label p:after,
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+1) .label span {
        -webkit-transition-delay: .7s;
        transition-delay: .7s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(3n+1) .description {
        -webkit-transition-delay: 1.2s;
        transition-delay: 1.2s
    }
}

@media screen and (max-width:768px) and (min-width:414px) {
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(odd) .label {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(odd) .label p:after,
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(odd) .label span {
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(odd) .description {
        -webkit-transition-delay: 1s;
        transition-delay: 1s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(2n+2) .label {
        -webkit-transition-delay: .1s;
        transition-delay: .1s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(2n+2) .label p:after,
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(2n+2) .label span {
        -webkit-transition-delay: .6s;
        transition-delay: .6s
    }
    html:not(.is-ie) .works-list .way-list.is-action:nth-of-type(2n+2) .description {
        -webkit-transition-delay: 1.1s;
        transition-delay: 1.1s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(odd) .label {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(odd) .label p:after,
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(odd) .label span {
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(odd) .description {
        -webkit-transition-delay: 1s;
        transition-delay: 1s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(2n+2) .label {
        -webkit-transition-delay: .1s;
        transition-delay: .1s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(2n+2) .label p:after,
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(2n+2) .label span {
        -webkit-transition-delay: .6s;
        transition-delay: .6s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action:nth-of-type(2n+2) .description {
        -webkit-transition-delay: 1.1s;
        transition-delay: 1.1s
    }
}

@media screen and (max-width:414px) {
    html:not(.is-ie) .works-list .way-list.is-action .label {
        -webkit-transition-delay: 0s;
        transition-delay: 0s;
        font-family: "Century Gothic", sans-serif;
    }
    html:not(.is-ie) .works-list .way-list.is-action .label p:after,
    html:not(.is-ie) .works-list .way-list.is-action .label span {
        -webkit-transition-delay: .5s;
        transition-delay: .5s;
        font-family: "Century Gothic", sans-serif;
    }
    html:not(.is-ie) .works-list .way-list.is-action .description {
        -webkit-transition-delay: 1s;
        transition-delay: 1s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action .label {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action .label p:after,
    html:not(.is-ie) .works-list-2 .way-list.is-action .label span {
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    html:not(.is-ie) .works-list-2 .way-list.is-action .description {
        -webkit-transition-delay: 1s;
        transition-delay: 1s
    }
}

@media screen and (max-width:768px) {
    .blog-list .way-list.is-action .thumb-outer {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    .blog-list .way-list.is-action .thumb-inner,
    .blog-list .way-list.is-action .thumb-outer:after {
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    .blog-list .way-list.is-action .date,
    .blog-list .way-list.is-action .description {
        opacity: 1;
        -webkit-transition-delay: .5s;
        transition-delay: .5s
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(odd) .img-outer {
        -webkit-transition-delay: 0s;
        transition-delay: 0s
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(odd) .img-inner,
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(odd) .img-outer:after {
        -webkit-transition-delay: .6s;
        transition-delay: .6s
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(2n+2) .img-outer {
        -webkit-transition-delay: 75ms;
        transition-delay: 75ms
    }
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(2n+2) .img-inner,
    #works-detail .gallery-list .modal-trigger.is-action:nth-of-type(2n+2) .img-outer:after {
        -webkit-transition-delay: .675s;
        transition-delay: .675s
    }
}

::selection {
    background: #1a1a1a;
    color: #fff;
}

::-moz-selection {
    background: #1a1a1a;
    color: #fff
}

::-webkit-input-placeholder {
    color: #ccc
}

::-moz-placeholder {
    color: #ccc
}

* {
    outline: none;
    margin: 0;
    padding: 0
}

*,
:after,
:before {
    -webkit-box-sizing: border-box;
    /* box-sizing: border-box; */
}

link {}

body,
html {
    height: 100%
}

html {
    font-size: 62.5%
}

body {
    color: #fff;
    /* background: #0d0d0d; */
    font-size: 1.6rem;
    font-family: \\6E38\660E\671D, dnp-shuei-mincho-pr6n, YuMincho, Hiragino Mincho ProN, Hiragino Mincho Pro, "\FF2D\FF33   \660E\671D", serif;
    /* font-family: 'Noto Sans JP',"æ¸¸ã‚´ã‚·ãƒƒã‚¯", "Yu Gothic","æ¸¸æ˜Žæœ",'Amerigo BT', YuMincho, "ãƒ’ãƒ©ã‚®ãƒŽæ˜Žæœ ProN W3", "Hiragino Mincho ProN","HGæ˜ŽæœE","ï¼­ï¼³ ï¼°æ˜Žæœ","ï¼­ï¼³ æ˜Žæœ",serif; */
    /* font-weight: 400; */
    line-height: 1.5;
    -webkit-text-size-adjust: 100%;
    overflow-y: scroll;
    overflow-x: hidden;
    text-rendering: optimizeLegibility;
    -webkit-font-smoothing: antialiased;
}

body.is-click-disable * {
    pointer-events: none !important
}

a {
    color: #1a1a1a;
    cursor: pointer;
    text-decoration: none;
}

h3,
time {
    letter-spacing: .15em
}

#contents,
#wrap {
    position: relative;
    height: 100%;
}

#page {
    position: relative;
    top: 60px;
}

#page,
.page-content {
    position: relative;
    z-index: 1;
    margin-bottom: 100px;
    /* top: 60px; */
}

#page:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    position: fixed;
    top: 0;
    left: 0;
    /* border: 10px solid #e6e6e6; */
    z-index: 10;
    pointer-events: none;
}

br.min-800-show,
br.mq,
span.hidden-text {
    display: none
}

@media screen and (max-width:768px) {
    body {
        font-size: 1.4rem
    }
    #page:after {
        border-width: 5px;
        border-bottom: 0
    }
    br.pc {
        display: none
    }
    br.mq {
        display: block;
        display: contents
    }
    body {
        /* min-width: 320px */
    }
}

@media screen and (max-width:800px) {
    br.min-800-show {
        display: inline-block
    }
}

@media screen and (max-width:480px) {
    br.mq {
        display: block
    }
}

.vertical-text {
    /*     -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl; */
    vertical-align: top;
    letter-spacing: .03em;
    -ms-writing-mode: lr-tb;
    -webkit-writing-mode: horizontal-tb;
    writing-mode: horizontal-tb;
}

.linkArea2 {
    text-align: center;
    margin-top: 40px;
    width: 100%;
    max-width: 1000px;
    margin: 30px auto;
}

.boxFlexible_eventinfo {
    position: relative;
    margin: 3em 2em 5em;
    padding: 1em 1em;
    border: solid 1px #ddd;
    /*	border: solid 1px #0a0a0a; text-align: left; */
}

.boxFlexible_eventinfo .box-title {
    position: absolute;
    display: inline-block;
    top: -37px;
    left: -3px;
    padding: 0 9px;
    height: 35px;
    line-height: 35px;
    vertical-align: middle;
    font-size: 18px;
    /* background: #999; */
    color: #1f1f1f;
    font-weight: bold;
    /* border-radius: 5px 5px 0 0; */
}

.boxFlexible_eventinfo p {
    margin: 0;
    padding: 0;
    font-size: 20px;
    line-height: 2;
    /* font-weight: 600; */
    padding: 10px;
}

.boxFlexible_eventinfo p span {
    /* border-bottom: 1px solid #c11920; */
    /* font-weight: 500; */
}


/* .btn_ver2  */

.btn_ver2 {
    display: inline-block;
    width: 275px;
    max-width: 100%;
    padding: 0;
    margin: 0 10px;
    color: #fff;
    background: #4f4f4f;
    /* border: #3f3d3d 1px solid; */
    /* border-bottom: #3f3d3d 1px solid; */
    font-size: 14px;
    text-decoration: none;
    text-align: center;
    font-weight: 500;
    line-height: 60px;
    letter-spacing: 1px;
    position: relative;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 1px;
}

.btn_ver2:after {
    font-family: 'Font Awesome 6 pro';
    content: "\e649";
    /* content: "\f16d"; */
    content: "\f105";
    font-size: 13px;
    font-style: normal;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    top: 0;
    right: 15px;
    z-index: 1;
    line-height: 55px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}

.btn_ver2:hover {
    color: #000;
    background: #9E9E9E;
    border: #8b8b8b 1px solid;
}

.btn_ver2:hover:after {
    right: 10px;
}

.link-line {
    position: relative;
    display: inline-block
}

.link-line .line {
    height: 2px;
    bottom: -10px;
    left: 0
}

.link-line .line,
.link-line .line:before {
    display: block;
    position: absolute;
    width: 100%
}

.link-line .line:before {
    height: 100%;
    content: ""
}

.section-title {
    font-size: 3rem;
    line-height: 1.82;
    letter-spacing: .05em;
}

.section-title .small-text {
    display: block;
    margin-bottom: 8px;
    line-height: 1;
    font-size: 1.4rem;
    letter-spacing: .3em
}

.section-title .text-outer {
    display: inline-block;
    line-height: 1
}

.section-title .number-text {
    margin-left: 5px;
    line-height: 1;
    font-size: 1rem;
    vertical-align: top
}

.section-title .text {
    display: inline-block
}

.copy-title-block {
    text-align: center
}

.copy-title {
    display: inline-block;
    position: relative
}

.copy-title .sub-copy {
    position: absolute;
    right: 0;
    left: 0;
    text-align: center;
    bottom: -30px;
    -webkit-transform: rotate(-7deg);
    transform: rotate(-7deg)
}

.copy-title .sub-copy .text {
    opacity: 0
}

.copy-title .sub-copy .cover {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    width: 182px;
    height: 30px;
    margin-left: 80px
}

.copy-title .sub-copy .svg-img {
    width: 182px;
    height: 30px
}

.text-justify {
    text-align: justify
}

.img-cover {
    position: relative;
    overflow: hidden;
    -webkit-mask-image: -webkit-radial-gradient(#fff, #000)
}

.img-cover .img {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background-position: 0%;
    background-repeat: no-repeat;
    background-size: cover;
    background-color: #efefef;
}

.img-cover .img img{
    width: 100%;
    object-fit: cover;
}

@media screen and (max-width:768px) {
    .img-cover .img {
        position: absolute;
        /* width: 100%; */
        /* height: 100%; */
        /* top: 50px; */
    }
}

.title-sec-01 h1 {
    margin-top: 100px;
    margin-top: 0;
}

.title-sec-01 .section-head {
    position: relative
}

.title-sec-01 .section-head,
.title-sec-02 {
    /* display: -webkit-box; */
    display: -ms-flexbox;
    /* display: flex; */
    /* -webkit-box-align: center; */
    -ms-flex-align: center;
    /* align-items: center; */
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    /* justify-content: center; */
    /* height: 60vh; */
    /* max-height: 200px; */
    /* min-height: 200px; */
    text-align: center;
    max-width: 1200px;
    width: 100%;
    margin: 50px auto 10px;
}

.title-sec-02 {
    padding-top: 110px
}

.telephone-block {
    text-align: center
}

.telephone-block .tel {
    position: relative;
    display: inline-block;
    margin-bottom: 25px;
    font-size: 3.2rem;
    letter-spacing: .3em;
    background-image: url(../img/icon/telephone.png);
    background-repeat: no-repeat;
    background-position: 0;
    background-size: 24px
}

.telephone-block .tel .inner {
    padding-left: 40px
}

.telephone-block .info {
    font-size: 1.4rem;
    line-height: 2.14;
    letter-spacing: .1em
}

.copyright {
    font-size: 1.2rem;
    letter-spacing: .45em
}

.copyright span {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 80px;
    padding: 0 20px
}

.copyright span,
.navigation,
.navigation a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
}

.navigation a {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 60px;
    padding: 0 20px;
    font-size: 1.5rem;
    line-height: 1
}

@media screen and (min-height:901px) {
    .title-sec-01 h1 {
        /* margin-top: 100px */
    }
}

@media screen and (max-width:768px) {
    .section-title {
        font-size: 2.75rem;
        line-height: 1.6
    }
    .title-sec-01 h1 {
        margin-top: 0
    }
    .title-sec-01 .section-head {
        /* height: 350px */
    }
    .title-sec-02 {
        height: 350px;
        padding-top: 65px
    }
    .navigation {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    .navigation a {
        position: relative;
        height: 50px;
        padding: 0 30px;
        letter-spacing: .1em;
        border-bottom: 1px solid rgba(0, 0, 0, .1)
    }
    .navigation .sp-arrow {
        position: absolute;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: 4px;
        top: 50%;
        right: 40px;
        margin-top: -2px
    }
    .navigation .sp-arrow:before {
        display: block;
        width: 15px;
        height: 1px;
        content: "";
        position: relative;
        background-color: #1a1a1a
    }
    .navigation .sp-arrow:after {
        display: block;
        width: 4px;
        height: 100%;
        content: "";
        position: absolute;
        top: 0;
        right: -1px;
        border-top: 2px solid transparent;
        border-bottom: 2px solid transparent;
        border-left: 4px solid #1a1a1a
    }
    .copy-title .sub-copy img {
        width: 187.5px;
        margin-left: 75px
    }
    .copyright span {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        height: 70px
    }
}

@media screen and (max-width:500px) {
    .telephone-block .tel {
        font-size: 2.4rem;
        letter-spacing: .25em;
        margin-bottom: 20px
    }
    .title-sec-01 h1 {
        margin-top: 0;
        font-size: 2rem;
        padding: 1%;
    }
    .title-sec-01 .section-head {
        /* height: 150px; */
        /* max-height: inherit; */
        /* min-height: inherit; */
        padding: 1em;
        margin-top: 10px;
    }
}

@media screen and (max-width:374px) {
    .copy-title .sub-copy .cover {
        margin-left: 40px
    }
}

#top .section-title {
    margin-bottom: 50px
}

#top .section-title .text {
    display: inline-block
}

#top .top-sections {
    padding-top: 50px;
    padding-bottom: 150px
}

#top .main-visual .mv-video-container {
    position: absolute;
    width: 100%;
    height: 50vh;
    top: 0;
    left: 0;
    overflow: hidden;
}

.mv-video-container {}

#top .main-visual .mv-video-container>.inner {
    width: 100%;
    height: 100%
}

#top .main-visual .mv-video-container:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .2);
    /* background-image: url(../img/common/filter.png); */
    background-repeat: repeat;
    background-position: 50%
}

#top .main-visual .mv-video-container .block {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: 100%;
    background-color: #1a1a1a;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

#top .main-visual .mv-video {
    width: 100%;
    height: 100%
}

#top .main-visual .sp-mv-container {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

#top .main-visual .section-head {
    position: relative;
    width: 100%;
    height: 50vh;
}

#top .main-visual h1 {
    position: absolute;
    top: 20%;
    right: 45%;
    left: 45%;
    color: #fff;
    margin: 0 auto;
    text-align: center;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    z-index: 50;
}

#top .main-visual h1 a {
    display: inline-block;
    color: #fff;
    text-align: center;
    text-align: center;
}

#top .main-visual h1 .ja {
    display: block;
    margin: 0 auto 25px;
    text-align: center
}

#top .main-visual h1 .en {
    line-height: 1.5625;
    letter-spacing: .1em;
}

#top .main-visual .mouse {
    position: absolute;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 45px;
    height: 45px;
    right: 0;
    left: 0;
    bottom: 100px;
    margin: 0 auto;
    cursor: pointer;
    z-index: 10
}

#top .main-visual .mouse>.inner {
    width: 20px;
    height: 34px;
    border: 2px solid #fff;
    border-radius: 10px
}

#top .main-visual .mouse>.wheel,
#top .main-visual .mouse>.wheel-shadow {
    position: absolute;
    width: 4px;
    height: 4px;
    border-radius: 2px;
    top: 40%;
    right: 0;
    left: 0;
    margin: -1px auto 0;
    -webkit-animation: mouseScroll 1.2s cubic-bezier(.8, 0, .3, 1) infinite alternate;
    animation: mouseScroll 1.2s cubic-bezier(.8, 0, .3, 1) infinite alternate
}

#top .main-visual .mouse>.wheel {
    background: #fff;
    -webkit-animation-delay: -.08s;
    animation-delay: -.08s;
    z-index: 20
}

#top .main-visual .mouse>.wheel-shadow {
    background: #ccc
}

#top .main-visual .section-foot {
    position: relative;
    margin-top: -80px;
    background-color: #fff;
    z-index: 20
}

#top .main-visual .topics-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 80px;
    border: 10px solid #fff
}

#top .main-visual .topics-link .date {
    padding: 0 30px 0 20px;
    letter-spacing: .2em
}

#top .main-visual .topics-link .description {
    font-size: 1.4rem;
    letter-spacing: .05em;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}


/* .linkArea_campaign */

#top .linkArea_campaign {
    position: absolute;
    bottom: 50px;
    left: 5%;
    width: 50%;
    z-index: 4;
}


/* .btnCampaign */

#top .btn_link_campaign {
    display: inline-block;
    margin: 0 0 20px 20px;
    padding: 16px 42px 14px 26px;
    color: #111;
    border-color: #fefefe;
    background: rgba(255, 255, 255, 0.8);
    position: absolute;
    z-index: 1;
    bottom: 0px;
    right: 20px;
}

#top .btn_link_campaign .jp {
    font-size: 20px;
    font-weight: 500;
    letter-spacing: 1px;
    line-height: 1.7;
}

#top .btn_link_campaign .jp span {
    font-size: 16px;
    background: #000;
    color: #fff;
    padding: 1% 2% 3%;
    border-radius: 1em;
}

#top .btn_link_campaign .jp span:hover {
    background: #fff;
    color: #000;
}

#top .btn_link_campaign:after {
    position: absolute;
    top: 0px;
    right: 0px;
    width: 30px;
    font-size: 11px;
    font-family: 'themify';
    content: "\e65a";
    font-weight: normal;
    line-height: 30px;
    text-align: center;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    z-index: 0;
    -webkit-transition: all 0s;
    -moz-transition: all 0s;
    transition: all 0s;
}

#top .btn_link_campaign:hover {
    color: #fff;
    background: #111;
}

@media only screen and (max-width: 800px) {
    #top .linkArea_campaign {
        position: initial;
        padding: 50px 0 0;
        margin: 0;
        width: 100%;
        text-align: center;
        display: block;
        width: 100%;
        border: none;
        background-color: none;
    }
    #top .btn_link_campaign {
        /* padding: 2px 0 0 0; */
        line-height: 50px;
        margin: 0;
        display: block;
        bottom: 120px;
        right: 0;
    }
    #top .btn_link_campaign .jp {
        line-height: inherit;
        font-size: 15px;
        line-height: 2;
    }
    #top .btn_link_campaign .jp br {
        display: none;
    }
    #top .btn_link_campaign .jp span {
        padding-bottom: 1%;
        font-size: 13px;
    }
    #top .btn_link_campaign:hover {
        color: #111;
        border-color: #fefefe;
        background: rgba(255, 255, 255, 0.8);
    }
    #top .btn_link_campaign:after {
        top: 2px;
        right: 6px;
        line-height: 28px;
        bottom: 0;
        margin: auto 0;
    }
}

@media only screen and (max-width: 500px) {
    #top .btn_link_campaign {
        /* padding: 2px 0 0 0; */
        line-height: 50px;
        margin: 0;
        display: block;
        bottom: 0px;
        right: 0;
    }
}

#top .copy {
    padding-top: 100px;
    padding-bottom: 120px;
}

#top .copy .section-head {
    text-align: center
}

#top .copy .section-head p {
    line-height: 2.5;
    letter-spacing: .05em
}

#top .works {
    padding-top: 50px;
}

#top .works .section-head {
    padding-bottom: 50px;
}

#top .about {
    padding-bottom: 110px
}

#top .about .img-cover {
    width: 100%;
    height: 56.25vw;
    max-height: 400px;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 80px;
}

#top .about .section-body {
    text-align: center
}

#top .about .section-body .unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    text-align: left
}

#top .about .section-body .unit>div {
    width: 100%;
}

#top .about .section-body .unit p {
    line-height: 2.3;
    letter-spacing: .05em
}

#top .about .section-body .unit .unit-head {
    padding-right: 20px
}

#top .about .section-body .unit .unit-foot {
    padding-left: 20px
}

#top .about .section-foot {
    padding-top: 80px;
    text-align: center;
}

#top .blog h2 {
    margin-bottom: 135px
}

#top .blog .section-foot {
    padding-top: 90px
}

html.is-ie #top .works .section-head {
    padding-bottom: 280px
}

@media screen and (max-width:768px) {
    #top .section-title {
        margin-bottom: 30px
    }
    #top .top-sections {
        padding-top: 27.5px;
        padding-bottom: 50px
    }
    #top .main-visual .mouse {
        display: none
    }
    #top .main-visual .topics-link {
        display: block;
        height: auto;
        padding: 30px;
        border-width: 0
    }
    #top .main-visual .topics-link .date {
        padding: 0;
        margin-bottom: 12.5px
    }
    #top .main-visual .topics-link .description {
        white-space: normal;
        line-height: 1.78571
    }
    #top .copy {
        padding-top: 90px;
        padding-bottom: 100px
    }
    #top .copy .section-head p {
        font-size: 1.4rem;
        line-height: 2.14286
    }
    #top .works .section-head {
        padding-bottom: 0
    }
    #top .about {
        padding-bottom: 100px
    }
    #top .about h2 {
        line-height: 1.6
    }
    #top .about .img-cover {
        margin-bottom: 90px
    }
    #top .about .section-body .unit {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0 30px
    }
    #top .about .section-body .unit>div {
        width: 100%
    }
    #top .about .section-body .unit .unit-head {
        padding-right: 0
    }
    #top .about .section-body .unit .unit-foot {
        padding-left: 0
    }
    #top .about .section-body .unit p {
        margin-bottom: 12.5px;
        font-size: 1.4rem;
        line-height: 2.14286;
        text-align: center
    }
    #top .about .section-foot {
        padding-top: 27.5px
    }
    #top .blog .date {
        line-height: 1
    }
    #top .blog h2 {
        margin-bottom: 80px
    }
    #top .blog .section-foot {
        padding-top: 20px
    }
}

@media screen and (max-width:480px) {
    #top h2.section-title {
        font-size: 2.6rem
    }
    #top .about .section-body .unit {
        padding: 0
    }
}

#works>.inner {
    padding-bottom: 240px
}

#works .section-title {
    letter-spacing: .1em
}

#works-detail>.inner {
    padding-top: 280px;
    padding-bottom: 240px
}

#works-detail .article-title {
    font-size: 3.2rem;
    letter-spacing: .05em;
    line-height: 1.35
}

#works-detail .head {
    padding-bottom: 200px
}

#works-detail .head .location {
    display: inline-block;
    margin-top: 5px;
    margin-bottom: 50px;
    letter-spacing: .05em
}

#works-detail .head .content {
    max-width: 800px;
    line-height: 2.5;
    letter-spacing: .05em
}

#works-detail .head .content p {
    text-align: justify
}

#works-detail .main-visual .img-cover {
    padding-bottom: 50%
}

#works-detail .main-visual .img {
    top: -60%;
    height: 160%
}

#works-detail .gallery {
    padding-top: 50px;
    padding-bottom: 50px
}

#works-detail .gallery .gallery-list {
    width: 105%;
    margin-left: -2.5%;
    font-size: 0;
    letter-spacing: 0
}

#works-detail .gallery .gallery-list>li {
    width: 28.572%;
    margin-right: 2.38095%;
    margin-left: 2.38095%;
    margin-bottom: 4.761905%;
    cursor: pointer
}

#works-detail .gallery .gallery-list>li.horizontal .img-cover {
    padding-bottom: 66.66667%
}

#works-detail .gallery .gallery-list>li.vertical .img-cover {
    padding-bottom: 150%
}

#works-detail .contents .detail-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 13.5px;
    padding-bottom: 10px
}

#works-detail .contents .detail-list>li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 33.333%;
    margin-bottom: 20px
}

#works-detail .contents .detail-block {
    font-size: 1.3rem;
    letter-spacing: .05em
}

#works-detail .contents .detail-block .label {
    min-width: 4.5em
}

#works-detail .contents .detail-block .content {
    width: calc(100% - 4.5em);
    text-indent: -1.5em;
    padding-right: 1.5em;
    padding-left: 1.5em
}

#works-detail .contents .detail-block.long {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    padding-top: 30px
}

#works-detail .contents .detail-block.long:before {
    display: block;
    width: 14px;
    height: 1px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1a1a1a
}

#works-detail .contents .unit {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-top: 125px;
    padding-bottom: 100px
}

#works-detail .contents .unit:after,
#works-detail .contents .unit:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    left: 0;
    background-color: rgba(0, 0, 0, .1)
}

#works-detail .contents .unit:before {
    top: 0
}

#works-detail .contents .unit:after {
    bottom: 0
}

#works-detail .contents .unit-head .title {
    width: 300px;
    margin-bottom: 15px;
    font-size: 2.2rem;
    line-height: 1.8em
}

#works-detail .contents .unit-foot {
    max-width: 72.5%;
    margin-left: 60px
}

#works-detail .others .section-title {
    text-align: center
}

#works-detail .others .section-head {
    padding-top: 140px;
    padding-bottom: 140px
}

html.is-mobile .main-visual .img,
html.is-tablet .main-visual .img {
    top: 0;
    height: 100%
}

@media screen and (max-width:768px) {
    #works>.inner {
        padding-bottom: 0
    }
    #works-detail>.inner {
        padding-top: 20vh;
        padding-bottom: 50px
    }
    #works-detail .article-title {
        font-size: 2.8rem
    }
    #works-detail .location {
        font-size: 1.8rem
    }
    #works-detail .head {
        padding-bottom: 67.5px
    }
    #works-detail .head .content {
        margin: 0 auto;
        line-height: 2.14286
    }
    #works-detail .gallery {
        padding-bottom: 10px
    }
    #works-detail .gallery>.container {
        padding: 30px
    }
    #works-detail .gallery .gallery-list {
        width: 102%;
        margin-left: -1%
    }
    #works-detail .gallery .gallery-list>li {
        width: 47%;
        margin-right: 1.5%;
        margin-left: 1.5%;
        margin-bottom: 3%
    }
    #works-detail .contents .unit {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 45px 30px 35px
    }
    #works-detail .contents .unit:after,
    #works-detail .contents .unit:before {
        width: calc(100% - 60px);
        right: 0;
        margin: 0 auto
    }
    #works-detail .contents .unit-head .title {
        width: auto;
        margin-bottom: 10px;
        font-size: 2.2rem;
        line-height: 2
    }
    #works-detail .contents .location {
        font-size: 1.8rem;
        text-align: left
    }
    #works-detail .contents .unit-foot {
        max-width: 100%;
        margin-left: 0
    }
    #works-detail .contents .detail-list {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        width: 100%;
        padding-top: 30px
    }
    #works-detail .contents .detail-list>li {
        margin-bottom: 10px
    }
    #works-detail .contents .detail-block .content,
    #works-detail .contents .detail-block .label {
        line-height: 2.14286
    }
    #works-detail .contents .detail-block .long {
        padding-top: 20px
    }
    #works-detail .others .section-head {
        padding-top: 80px;
        padding-bottom: 70px
    }
    #works-detail .main-visual .img {
        top: 0;
        height: 100%
    }
}

@media screen and (max-width:480px) {
    #works>.inner {
        padding-bottom: 30px
    }
    #works-detail .article-title {
        font-size: 2.6rem;
        text-align: inherit
    }
    #works-detail .head .location {
        margin-top: 10px
    }
    #works-detail .gallery {
        padding-top: 0
    }
    #works-detail .contents .unit-head .title {
        line-height: 1.6
    }
    #works-detail .contents .detail-list>li {
        width: 100%;
        margin-bottom: 5px
    }
    #works-detail .others .section-head {
        padding-top: 60px;
        padding-bottom: 50px
    }
}

#faq>.inner {
    padding-bottom: 60px
}

#faq .sec .unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    letter-spacing: .05em;
    margin-bottom: 30px
}

#faq .sec .unit-head {
    width: 75px
}

#faq .sec .unit-foot {
    width: calc(100% - 75px)
}

#faq .question a {
    display: block
}

#faq .question .question-list {
    padding: 0 20px
}

#faq .answer .answer-list>li {
    position: relative;
    padding: 40px 20px
}

#faq .answer .answer-list>li:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .1)
}

#faq .answer .answer-list .list-head {
    color: #008e3c;
    font-weight: 600
}

#faq .answer .answer-list .list-foot {
    margin-bottom: 0;
    line-height: 2.5
}

@media screen and (max-width:768px) {
    #faq>.inner {
        padding-bottom: 45px
    }
    #faq .sec .unit-head {
        width: 45px
    }
    #faq .sec .unit-foot {
        width: calc(100% - 45px)
    }
    #faq .question>.inner {
        padding-top: 0;
        padding-bottom: 50px
    }
    #faq .question>.inner:before {
        display: none
    }
    #faq .question .question-list {
        padding: 0;
        border-top: 1px solid rgba(0, 0, 0, .1)
    }
    #faq .question .question-list>li {
        border-bottom: 1px solid rgba(0, 0, 0, .1)
    }
    #faq .question .question-list a {
        padding: 25px 0;
        margin-bottom: 0
    }
    #faq .question .question-list a .unit {
        margin: 0;
        padding: 0
    }
    #faq .question .question-list a>.inner:nth-of-type(2),
    #faq .question .question-list a>.inner:nth-of-type(3) {
        top: 25px
    }
    #faq .question .question-list p {
        line-height: 1.78571
    }
    #faq .answer .answer-list>li {
        padding: 25px 0
    }
    #faq .answer .answer-list>li:before {
        background-color: #1a1a1a
    }
    #faq .answer .answer-list>li p {
        line-height: 1.78571
    }
}

.blog-page .article-list {
    padding-bottom: 135px
}

.blog-page .page-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: 620px;
    margin: 45px auto 0
}

.blog-page .page-nav .link-arrow {
    padding: 15px 0
}

.blog-page .page-nav .link-arrow.disable {
    opacity: .2;
    pointer-events: none
}

.blog-page .page-nav .arrow {
    position: relative;
    width: 60px;
    height: 6px
}

.blog-page .page-nav .arrow:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    background-color: #1a1a1a
}

.blog-page .page-nav .arrow:after {
    display: block;
    width: 6px;
    height: 100%;
    content: "";
    position: absolute;
    top: 0
}

.blog-page .page-nav .arrow.prev {
    margin-right: 35px
}

.blog-page .page-nav .arrow.prev:after {
    left: -1px;
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
    border-right: 6px solid #1a1a1a
}

.blog-page .page-nav .arrow.next {
    margin-left: 35px
}

.blog-page .page-nav .arrow.next:after {
    right: -1px;
    border-top: 3px solid transparent;
    border-bottom: 3px solid transparent;
    border-left: 6px solid #1a1a1a
}

.blog-page .page-nav-list {
    padding: 0 15px;
    border-right: 1px solid rgba(0, 0, 0, .1);
    border-left: 1px solid rgba(0, 0, 0, .1);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.blog-page .page-nav-list .page-list {
    padding-right: 10px;
    padding-left: 10px
}

.blog-page .page-nav-list a {
    color: #999;
    padding: 15px;
    letter-spacing: .05em
}

.blog-page .page-nav-list a.current {
    color: #1a1a1a;
    pointer-events: none
}

.blog-page .blog-list>li {
    margin-bottom: 90px
}

#blog>.inner {
    padding-bottom: 75px
}

#blog .article-information {
    border-top: 1px solid rgba(0, 0, 0, .1);
    padding-top: 80px
}

#blog .article-information .block {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#blog .article-information .blocks {
    width: 33.333%
}

#blog .article-information .title {
    font-size: 1.4rem;
    letter-spacing: .3em;
    margin-bottom: 30px
}

#blog .article-information a {
    font-size: 1.2rem;
    line-height: 2.5;
    letter-spacing: .15em
}

#blog .article-information .tag-list li {
    display: inline-block
}

#blog .article-information .tag-list a {
    display: block;
    padding: 0 15px;
    margin-right: 5px;
    margin-bottom: 5px;
    background-color: #ebebeb;
    border-radius: 5px
}

#blog-single .title-sec-02 {
    height: 400px
}

#blog-single>.inner {
    padding-bottom: 0
}

#blog-single .main>.inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    position: relative;
    padding-top: 75px;
    padding-bottom: 60px
}

#blog-single .main>.inner:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .1)
}

#blog-single article {
    width: 65%;
    max-width: calc(100% - 350px)
}

#blog-single article .date {
    margin-bottom: 30px;
    font-size: 1.4rem;
    letter-spacing: .3em
}

#blog-single article h1 {
    font-size: 2.6rem
}

#blog-single article .article-content {
    padding-top: 40px;
    line-height: 1.875;
    letter-spacing: .05em
}

#blog-single article .article-content p {
    margin-bottom: 30px
}

#blog-single article .article-content img {
    display: block;
    max-width: 100%;
    height: auto;
    margin: 30px 0
}

#blog-single .side {
    width: 35%;
    max-width: 350px
}

#blog-single .side .blocks {
    margin-bottom: 75px
}

#blog-single .side .title {
    margin-bottom: 25px;
    font-size: 1.4rem;
    letter-spacing: .3em
}

#blog-single .side-list a {
    font-size: 1.2rem;
    line-height: 2.5;
    letter-spacing: .15em
}

#blog-single .tag-list {
    padding-right: 100px
}

#blog-single .tag-list>li {
    display: inline-block
}

#blog-single .tag-list a {
    display: block;
    padding: 0 15px;
    margin-right: 5px;
    margin-bottom: 5px;
    font-size: 1.2rem;
    line-height: 2.5;
    background-color: #ebebeb;
    border-radius: 5px
}

#blog-single .article-list {
    position: relative;
    padding-top: 100px
}

#blog-single .article-list:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .1)
}

#blog-single .page-nav {
    margin-bottom: 60px
}

@media screen and (max-width:768px) {
    .blog-page .page-nav-list {
        padding: 0;
        border: 0
    }
    .blog-page .page-nav-list .page-list {
        padding-right: 3px;
        padding-left: 3px
    }
    .blog-page .blog-list {
        border-bottom: 1px solid #1a1a1a
    }
    .blog-page .blog-list>li {
        margin-bottom: 0
    }
    .blog-page .article-list {
        padding-bottom: 0
    }
    .blog-page .page-nav {
        width: 100%;
        max-width: 620px;
        overflow: hidden;
        margin-top: 0;
        padding: 45px 0
    }
    .blog-page .page-nav .link-arrow {
        display: none
    }
    .blog-page .page-nav .arrow {
        position: relative;
        width: 15px;
        height: 4px
    }
    .blog-page .page-nav .arrow:after {
        display: block;
        width: 4px;
        height: 100%;
        content: "";
        position: absolute;
        top: 0
    }
    .blog-page .page-nav .arrow.prev:after {
        border-top: 2px solid transparent;
        border-bottom: 2px solid transparent;
        border-right: 3px solid #1a1a1a
    }
    .blog-page .page-nav .arrow.next:after {
        border-top: 2px solid transparent;
        border-bottom: 2px solid transparent;
        border-left: 3px solid #1a1a1a
    }
    #blog>.inner {
        padding-bottom: 45px
    }
    #blog .article-information {
        padding-top: 50px
    }
    #blog .article-information .block {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    #blog .article-information .block-archive,
    #blog .article-information .block-category {
        width: 50%;
        margin-bottom: 35px
    }
    #blog .article-information .block-tags {
        width: 100%
    }
    #blog-single .title-sec-02 {
        height: 250px;
        min-height: auto
    }
    #blog-single>.inner {
        padding-bottom: 45px
    }
    #blog-single .main>.inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: start;
        -ms-flex-pack: start;
        justify-content: flex-start;
        padding-top: 0
    }
    #blog-single .main>.inner:before {
        display: none
    }
    #blog-single article {
        width: inherit;
        max-width: 100%
    }
    #blog-single article h1 {
        font-size: 2rem
    }
    #blog-single article .date {
        margin-bottom: 25px
    }
    #blog-single article .article-content {
        padding-top: 20px;
        line-height: 1.78571
    }
    #blog-single .side {
        width: 100%;
        max-width: 100%;
        padding-top: 50px;
        border-top: 1px solid #1a1a1a
    }
    #blog-single .side>.block {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap
    }
    #blog-single .side>.block .block-archive,
    #blog-single .side>.block .block-category {
        width: 50%;
        margin-bottom: 40px
    }
    #blog-single .side>.block .block-tags {
        width: 100%;
        margin-bottom: 0
    }
    #blog-single .side .title {
        margin-bottom: 10px
    }
    #blog-single .article-list {
        padding-top: 0
    }
    #blog-single .article-list:before {
        display: none
    }
    #blog-single .blog-list li:first-of-type {
        border-top: 1px solid #1a1a1a;
        padding-top: 20px
    }
    #blog-single .page-nav {
        padding-bottom: 0
    }
}

#contact.is-l-check .title-sec-02,
#contact.thanks .title-sec-02 {
    height: 35vh;
    min-height: 300px
}

#contact .title-sec-02>.inner {
    margin: 0
}

#contact .title-sec-02 .section-head {
    max-width: 600px;
    margin-top: 20px;
    margin-right: auto;
    margin-left: auto;
    text-align: left;
    line-height: 2.5;
    letter-spacing: .05em
}

#contact .title-sec-02 a {
    color: #008e3c
}

#contact .form-sec {
    overflow: hidden
}

#contact .form-sec>.inner {
    position: relative
}

#contact .form-sec>.inner:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .1)
}

#contact .form-sec .section-head {
    padding: 80px 0 70px
}

#contact .form-sec .section-foot {
    padding-top: 25px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between
}

#contact .form-sec .section-foot,
#contact .form-sec .section-foot .back {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

#contact .form-sec .section-foot .back {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    max-width: 190px;
    height: 120px;
    background-color: #e6e6e6;
    border: 0;
    margin-right: 20px
}

#contact .form-sec .section-foot .send {
    max-width: 400px
}

#contact #contact-form {
    max-width: 600px;
    margin: 0 auto;
    padding-bottom: 130px
}

#contact #contact-form .form-list.has-error dt {
    color: #d80000
}

#contact #contact-form .form-list.has-error input,
#contact #contact-form .form-list.has-error textarea {
    background-color: rgba(216, 0, 0, .2)
}

#contact #contact-form .form-list.has-error dd .help-block {
    opacity: 1
}

#contact #contact-form .form-list.is-active dt {
    -webkit-transform: translate3d(15px, 20px, 0) scale(1);
    transform: translate3d(15px, 20px, 0) scale(1)
}

#contact #contact-form .form-list.is-active dd .help-block {
    opacity: 0
}

#contact #contact-form dt {
    position: relative;
    font-size: 1.1rem;
    color: #999;
    z-index: 10;
    -webkit-transform: translate3d(15px, 38px, 0) scale(1.25);
    transform: translate3d(15px, 38px, 0) scale(1.25);
    -webkit-transform-origin: top left;
    transform-origin: top left;
    pointer-events: none;
    -webkit-transition: color .3s cubic-bezier(.75, 0, .25, 1), -webkit-transform .3s cubic-bezier(.75, 0, .25, 1);
    transition: color .3s cubic-bezier(.75, 0, .25, 1), -webkit-transform .3s cubic-bezier(.75, 0, .25, 1);
    transition: transform .3s cubic-bezier(.75, 0, .25, 1), color .3s cubic-bezier(.75, 0, .25, 1);
    transition: transform .3s cubic-bezier(.75, 0, .25, 1), color .3s cubic-bezier(.75, 0, .25, 1), -webkit-transform .3s cubic-bezier(.75, 0, .25, 1)
}

#contact #contact-form dt .caution {
    display: inline-block;
    margin-left: .5em;
    color: #d80000
}

#contact #contact-form dd {
    position: relative
}

#contact #contact-form dd .help-block {
    position: absolute;
    top: 22px;
    right: 20px;
    color: #d80000;
    opacity: 0;
    -webkit-transition: .3s cubic-bezier(.75, 0, .25, 1);
    transition: .3s cubic-bezier(.75, 0, .25, 1);
    pointer-events: none
}

#contact #contact-form input,
#contact #contact-form textarea {
    display: block;
    width: 100%;
    padding: 20px 15px;
    background-color: #f2f2f2;
    border: 0;
    -webkit-transition: background-color .3s cubic-bezier(.75, 0, .25, 1);
    transition: background-color .3s cubic-bezier(.75, 0, .25, 1)
}

#contact .form-check {
    padding-top: 15px
}

#contact .form-check dt {
    display: block;
    font-size: 1.2rem;
    color: gray;
    letter-spacing: .1em
}

#contact .form-check dt .caution {
    display: none
}

#contact .form-check dt label {
    display: block;
    padding: 20px 20px 0
}

#contact .form-check dd {
    padding: 10px 20px 15px;
    letter-spacing: .1em;
    border-bottom: 1px solid rgba(0, 0, 0, .1)
}

#contact .form-check .form-group {
    max-width: 600px;
    margin: 0 auto
}

#contact.thanks .title-sec-02 .section-head {
    text-align: center
}

#contact.thanks .content-sec>.inner {
    position: relative;
    padding: 70px 0 100px
}

#contact.thanks .content-sec>.inner:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .1)
}

#contact.thanks .content-sec .check {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 85px;
    height: 85px;
    margin: 0 auto 50px;
    background-color: #1a1a1a;
    border-radius: 50%
}

#contact.thanks .content-sec .message-block {
    text-align: center
}

#contact.thanks .content-sec .message-block p {
    margin-bottom: 40px
}

#contact.thanks .content-sec .message-block .block-head {
    line-height: 2.5
}

#contact.thanks .content-sec .message-block .block-body {
    color: #4c4c4c;
    line-height: 2.5
}

#contact.thanks .content-sec .message-block .block-foot {
    color: #4c4c4c
}

#contact.thanks .content-sec .message-block .block-foot small {
    font-size: 1.4rem;
    line-height: 2.85
}

@media screen and (max-width:768px) {
    #contact.is-l-check .title-sec-02 {
        height: 250px;
        min-height: auto
    }
    #contact .form-sec .section-foot .back {
        height: 67.5px
    }
    #contact.thanks .title-sec-02 {
        height: 250px;
        min-height: auto
    }
    #contact.thanks .content-sec .check {
        -webkit-transform: scale(.8);
        transform: scale(.8)
    }
}

.is-others .g-nav-menu a {
    position: relative;
    /* color: #fff; */
}

.is-others .g-nav-menu a>span {
    display: inline-block;
    /* color: #000; */
}

.is-others .g-nav-menu a:before {
    display: block;
    width: 10px;
    height: 1px;
    content: "";
    position: absolute;
    bottom: 20px;
    right: 0;
    left: 0;
    margin: 0 auto;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: opacity .3s linear .1s, background-color .55s linear, -webkit-transform .3s cubic-bezier(0, .6, .2, 1) .1s;
    transition: opacity .3s linear .1s, background-color .55s linear, -webkit-transform .3s cubic-bezier(0, .6, .2, 1) .1s;
    transition: transform .3s cubic-bezier(0, .6, .2, 1) .1s, opacity .3s linear .1s, background-color .55s linear;
    transition: transform .3s cubic-bezier(0, .6, .2, 1) .1s, opacity .3s linear .1s, background-color .55s linear, -webkit-transform .3s cubic-bezier(0, .6, .2, 1) .1s;
    background-color: #1a1a1a
}

.is-others .g-nav-menu a.is-before-hover:before {
    -webkit-transition: 0s;
    transition: 0s;
    -webkit-transform: scaleX(3);
    transform: scaleX(3)
}

.is-others .g-nav-menu a.is-hover:before {
    -webkit-transition: background-color .55s linear, -webkit-transform .35s cubic-bezier(0, .6, .2, 1);
    transition: background-color .55s linear, -webkit-transform .35s cubic-bezier(0, .6, .2, 1);
    transition: transform .35s cubic-bezier(0, .6, .2, 1), background-color .55s linear;
    transition: transform .35s cubic-bezier(0, .6, .2, 1), background-color .55s linear, -webkit-transform .35s cubic-bezier(0, .6, .2, 1)
}

.is-others .g-nav-menu a.is-hover:before,
.is-others .g-nav-menu li.current a:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.is-others:not(.is-ie) .works-list a .img-cover {
    -webkit-transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .6s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s
}

.is-others:not(.is-ie) .works-list a .img {
    -webkit-transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .7s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-others:not(.is-ie) .works-list a .label span {
    display: inline-block;
    position: relative;
    font-family: "Century Gothic",'Abel', sans-serif;
}

.is-others:not(.is-ie) .works-list a .label p {
    -webkit-transition: color .65s cubic-bezier(.8, 0, .125, 1);
    transition: color .65s cubic-bezier(.8, 0, .125, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    color: #fff;
}

.is-others:not(.is-ie) .works-list a .label p:before {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1a1a1a;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transition: -webkit-transform .65s cubic-bezier(.8, 0, .125, 1);
    transition: -webkit-transform .65s cubic-bezier(.8, 0, .125, 1);
    transition: transform .65s cubic-bezier(.8, 0, .125, 1);
    transition: transform .65s cubic-bezier(.8, 0, .125, 1), -webkit-transform .65s cubic-bezier(.8, 0, .125, 1)
}

.is-others:not(.is-ie) .works-list a.is-before-hover .label p:before {
    opacity: 0;
    -webkit-transform: scaleY(.7);
    transform: scaleY(.7);
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transition: none;
    transition: none
}

.is-others:not(.is-ie) .works-list a.is-hover {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transition: -webkit-transform .4s;
    transition: -webkit-transform .4s;
    transition: transform .4s;
    transition: transform .4s, -webkit-transform .4s
}

.is-others:not(.is-ie) .works-list a.is-hover .img-cover {
    -webkit-transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: transform .6s cubic-bezier(.1, .6, .45, 1), -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    -webkit-transform: scale(.96);
    transform: scale(.96)
}

.is-others:not(.is-ie) .works-list a.is-hover .img {
    -webkit-transform: scale(1.08);
    transform: scale(1.08);
    -webkit-transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: transform .7s cubic-bezier(.1, .6, .45, 1), -webkit-transform .7s cubic-bezier(.1, .6, .45, 1)
}

.is-others:not(.is-ie) .works-list a.is-hover .label p {
    background-color: transparent;
    color: #fff;
    -webkit-transition: color .4s linear, background .2s linear;
    transition: color .4s linear, background .2s linear
}

.is-others:not(.is-ie) .works-list a.is-hover .label p:before {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transition: opacity .1s linear, -webkit-transform .7s cubic-bezier(0, .6, .2, 1);
    transition: opacity .1s linear, -webkit-transform .7s cubic-bezier(0, .6, .2, 1);
    transition: transform .7s cubic-bezier(0, .6, .2, 1), opacity .1s linear;
    transition: transform .7s cubic-bezier(0, .6, .2, 1), opacity .1s linear, -webkit-transform .7s cubic-bezier(0, .6, .2, 1)
}

.is-others.is-ie .works-list a .img-cover {
    -webkit-transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .6s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s
}

.is-others.is-ie .works-list a .img {
    -webkit-transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .7s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-others.is-ie .works-list a .label span {
    display: inline-block;
    position: relative
}

.is-others.is-ie .works-list a .label p {
    overflow: hidden;
    -webkit-transition: color .65s cubic-bezier(.8, 0, .125, 1);
    transition: color .65s cubic-bezier(.8, 0, .125, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-others.is-ie .works-list a .label p:before {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: transparent;
    -webkit-transition: background-color .65s cubic-bezier(.8, 0, .125, 1);
    transition: background-color .65s cubic-bezier(.8, 0, .125, 1)
}

.is-others.is-ie .works-list a.is-hover {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transition: -webkit-transform .4s;
    transition: -webkit-transform .4s;
    transition: transform .4s;
    transition: transform .4s, -webkit-transform .4s
}

.is-others.is-ie .works-list a.is-hover .img-cover {
    -webkit-transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: transform .6s cubic-bezier(.1, .6, .45, 1), -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    -webkit-transform: scale(.96);
    transform: scale(.96)
}

.is-others.is-ie .works-list a.is-hover .img {
    -webkit-transform: scale(1.08);
    transform: scale(1.08);
    -webkit-transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: transform .7s cubic-bezier(.1, .6, .45, 1), -webkit-transform .7s cubic-bezier(.1, .6, .45, 1)
}

.is-others.is-ie .works-list a.is-hover .label p {
    background-color: transparent;
    color: #fff;
    -webkit-transition: color .4s linear, background .2s linear;
    transition: color .4s linear, background .2s linear
}

.is-others.is-ie .works-list a.is-hover .label p:before {
    background-color: #1a1a1a;
    -webkit-transition: background-color .7s cubic-bezier(0, .6, .2, 1);
    transition: background-color .7s cubic-bezier(0, .6, .2, 1)
}

.is-others:not(.is-ie) .works-list-2 a .img-cover {
    -webkit-transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .6s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s
}

.is-others:not(.is-ie) .works-list-2 a .img {
    -webkit-transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .7s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-others:not(.is-ie) .works-list-2 a .label span {
    display: inline-block;
    position: relative
}

.is-others:not(.is-ie) .works-list-2 a .label p {
    -webkit-transition: color .65s cubic-bezier(.8, 0, .125, 1);
    transition: color .65s cubic-bezier(.8, 0, .125, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden
}

.is-others:not(.is-ie) .works-list a .label p:before {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1a1a1a;
    -webkit-transform: scaleY(0);
    transform: scaleY(0);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transition: -webkit-transform .65s cubic-bezier(.8, 0, .125, 1);
    transition: -webkit-transform .65s cubic-bezier(.8, 0, .125, 1);
    transition: transform .65s cubic-bezier(.8, 0, .125, 1);
    transition: transform .65s cubic-bezier(.8, 0, .125, 1), -webkit-transform .65s cubic-bezier(.8, 0, .125, 1)
}

.is-others:not(.is-ie) .works-list-2 a.is-before-hover .label p:before {
    opacity: 0;
    -webkit-transform: scaleY(.7);
    transform: scaleY(.7);
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transition: none;
    transition: none
}

.is-others:not(.is-ie) .works-list-2 a.is-hover {
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transition: -webkit-transform .4s;
    transition: -webkit-transform .4s;
    transition: transform .4s;
    transition: transform .4s, -webkit-transform .4s
}

.is-others:not(.is-ie) .works-list-2 a.is-hover .img-cover {
    -webkit-transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: transform .6s cubic-bezier(.1, .6, .45, 1), -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    -webkit-transform: scale(.96);
    transform: scale(.96)
}

.is-others:not(.is-ie) .works-list-2 a.is-hover .img {
    -webkit-transform: scale(1.08);
    transform: scale(1.08);
    -webkit-transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: transform .7s cubic-bezier(.1, .6, .45, 1), -webkit-transform .7s cubic-bezier(.1, .6, .45, 1)
}

.is-others:not(.is-ie) .works-list-2 a.is-hover .label p {
    background-color: transparent;
    background: #000;
    color: #fff;
    -webkit-transition: color .4s linear, background .2s linear;
    transition: color .4s linear, background .2s linear
}

.is-others:not(.is-ie) .works-list-2 a.is-hover .label p:before {
    opacity: 1;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transform-origin: top;
    transform-origin: top;
    -webkit-transition: opacity .1s linear, -webkit-transform .7s cubic-bezier(0, .6, .2, 1);
    transition: opacity .1s linear, -webkit-transform .7s cubic-bezier(0, .6, .2, 1);
    transition: transform .7s cubic-bezier(0, .6, .2, 1), opacity .1s linear;
    transition: transform .7s cubic-bezier(0, .6, .2, 1), opacity .1s linear, -webkit-transform .7s cubic-bezier(0, .6, .2, 1)
}

.is-others.is-ie .works-list-2 a .img-cover {
    -webkit-transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .6s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .6s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .6s cubic-bezier(.1, .6, .45, 1) .1s
}

.is-others.is-ie .works-list a .img {
    -webkit-transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .7s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .7s cubic-bezier(.1, .6, .45, 1) .1s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-others.is-ie .works-list-2 a .label span {
    display: inline-block;
    position: relative
}

.is-others.is-ie .works-list-2 a .label p {
    overflow: hidden;
    -webkit-transition: color .65s cubic-bezier(.8, 0, .125, 1);
    transition: color .65s cubic-bezier(.8, 0, .125, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-others.is-ie .works-list-2 a .label p:before {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: transparent;
    -webkit-transition: background-color .65s cubic-bezier(.8, 0, .125, 1);
    transition: background-color .65s cubic-bezier(.8, 0, .125, 1)
}

.is-others.is-ie .works-list-2 a.is-hover {
    -webkit-transform-origin: bottom;
    transform-origin: bottom;
    -webkit-transform: scaleY(1);
    transform: scaleY(1);
    -webkit-transition: -webkit-transform .4s;
    transition: -webkit-transform .4s;
    transition: transform .4s;
    transition: transform .4s, -webkit-transform .4s
}

.is-others.is-ie .works-list-2 a.is-hover .img-cover {
    -webkit-transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: transform .6s cubic-bezier(.1, .6, .45, 1);
    transition: transform .6s cubic-bezier(.1, .6, .45, 1), -webkit-transform .6s cubic-bezier(.1, .6, .45, 1);
    -webkit-transform: scale(.96);
    transform: scale(.96)
}

.is-others.is-ie .works-list-2 a.is-hover .img {
    -webkit-transform: scale(1.08);
    transform: scale(1.08);
    -webkit-transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: transform .7s cubic-bezier(.1, .6, .45, 1);
    transition: transform .7s cubic-bezier(.1, .6, .45, 1), -webkit-transform .7s cubic-bezier(.1, .6, .45, 1)
}

.is-others.is-ie .works-list-2 a.is-hover .label p {
    background-color: transparent;
    color: #fff;
    -webkit-transition: color .4s linear, background .2s linear;
    transition: color .4s linear, background .2s linear
}

.is-others.is-ie .works-list-2 a.is-hover .label p:before {
    background-color: #1a1a1a;
    -webkit-transition: background-color .7s cubic-bezier(0, .6, .2, 1);
    transition: background-color .7s cubic-bezier(0, .6, .2, 1)
}

.is-others .blog-list .img-cover {
    -webkit-transition: -webkit-transform .45s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .45s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .45s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .45s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .45s cubic-bezier(.1, .6, .45, 1) .1s
}

.is-others .blog-list .img {
    -webkit-transition: -webkit-transform .5s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .5s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .5s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .5s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .5s cubic-bezier(.1, .6, .45, 1) .1s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-others .blog-list a.is-hover .img-cover {
    -webkit-transition: -webkit-transform .45s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .45s cubic-bezier(.1, .6, .45, 1);
    transition: transform .45s cubic-bezier(.1, .6, .45, 1);
    transition: transform .45s cubic-bezier(.1, .6, .45, 1), -webkit-transform .45s cubic-bezier(.1, .6, .45, 1);
    -webkit-transform: scale(.95);
    transform: scale(.95)
}

.is-others .blog-list a.is-hover .img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-transition: -webkit-transform .5s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .5s cubic-bezier(.1, .6, .45, 1);
    transition: transform .5s cubic-bezier(.1, .6, .45, 1);
    transition: transform .5s cubic-bezier(.1, .6, .45, 1), -webkit-transform .5s cubic-bezier(.1, .6, .45, 1)
}

.is-others .gallery-list .img-cover {
    -webkit-transition: -webkit-transform .45s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .45s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .45s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .45s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .45s cubic-bezier(.1, .6, .45, 1) .1s;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.is-others .gallery-list .img {
    -webkit-transition: -webkit-transform .5s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: -webkit-transform .5s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .5s cubic-bezier(.1, .6, .45, 1) .1s;
    transition: transform .5s cubic-bezier(.1, .6, .45, 1) .1s, -webkit-transform .5s cubic-bezier(.1, .6, .45, 1) .1s;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.is-others .gallery-list>li.is-hover .img-cover {
    -webkit-transition: -webkit-transform .45s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .45s cubic-bezier(.1, .6, .45, 1);
    transition: transform .45s cubic-bezier(.1, .6, .45, 1);
    transition: transform .45s cubic-bezier(.1, .6, .45, 1), -webkit-transform .45s cubic-bezier(.1, .6, .45, 1);
    -webkit-transform: scale(.95);
    transform: scale(.95)
}

.is-others .gallery-list>li.is-hover .img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-transition: -webkit-transform .5s cubic-bezier(.1, .6, .45, 1);
    transition: -webkit-transform .5s cubic-bezier(.1, .6, .45, 1);
    transition: transform .5s cubic-bezier(.1, .6, .45, 1);
    transition: transform .5s cubic-bezier(.1, .6, .45, 1), -webkit-transform .5s cubic-bezier(.1, .6, .45, 1)
}

.is-others .btn.square-01 {
    -webkit-transition: color .55s cubic-bezier(.75, 0, .15, 1) .1s;
    transition: color .55s cubic-bezier(.75, 0, .15, 1) .1s
}

.is-others .btn.square-01>.inner {
    position: relative
}

.is-others .btn.square-01>.inner .text-cover {
    position: relative;
    display: inline-block
}

.is-others .btn.square-01>.inner .text-cover span {
    display: inline-block
}

.is-others .btn.square-01>.inner:before {
    -webkit-transition: -webkit-transform .55s cubic-bezier(.75, 0, .15, 1) .1s;
    transition: -webkit-transform .55s cubic-bezier(.75, 0, .15, 1) .1s;
    transition: transform .55s cubic-bezier(.75, 0, .15, 1) .1s;
    transition: transform .55s cubic-bezier(.75, 0, .15, 1) .1s, -webkit-transform .55s cubic-bezier(.75, 0, .15, 1) .1s;
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1a1a1a;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right
}

.is-others .btn.square-01 .arrow.before {
    -webkit-transition: .55s cubic-bezier(.75, 0, .15, 1), opacity .55s linear;
    transition: .55s cubic-bezier(.75, 0, .15, 1), opacity .55s linear;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    opacity: 1;
    -webkit-transition-delay: .2s;
    transition-delay: .2s
}

.is-others .btn.square-01 .arrow.after {
    -webkit-transition: 0s .75s;
    transition: 0s .75s;
    opacity: 1;
    -webkit-transform: translateZ(0);
    transform: translateZ(0)
}

.is-others .btn.square-01.is-before-hover>.inner:before {
    -webkit-transform: scaleX(.9);
    transform: scaleX(.9);
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transition: none;
    transition: none;
    opacity: 0
}

.is-others .btn.square-01.is-hover {
    color: #fff;
    -webkit-transition: color .4s linear;
    transition: color .4s linear
}

.is-others .btn.square-01.is-hover>.inner:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transition: opacity .05s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: opacity .05s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1);
    transition: transform .6s cubic-bezier(0, .6, .2, 1), opacity .05s linear;
    transition: transform .6s cubic-bezier(0, .6, .2, 1), opacity .05s linear, -webkit-transform .6s cubic-bezier(0, .6, .2, 1)
}

.is-others .btn.square-01.is-hover>.inner .text-cover span {
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-transition: opacity .4s linear, -webkit-transform .4s cubic-bezier(.25, .9, .3, 1.25);
    transition: opacity .4s linear, -webkit-transform .4s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .4s cubic-bezier(.25, .9, .3, 1.25), opacity .4s linear;
    transition: transform .4s cubic-bezier(.25, .9, .3, 1.25), opacity .4s linear, -webkit-transform .4s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transition-delay: .05s;
    transition-delay: .05s
}

.is-others .btn.square-01.is-hover .arrow.after {
    -webkit-transition: opacity .4s linear .05s, -webkit-transform .6s cubic-bezier(.25, .9, .3, 1.25);
    transition: opacity .4s linear .05s, -webkit-transform .6s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .6s cubic-bezier(.25, .9, .3, 1.25), opacity .4s linear .05s;
    transition: transform .6s cubic-bezier(.25, .9, .3, 1.25), opacity .4s linear .05s, -webkit-transform .6s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transform: translate3d(15px, 0, 0);
    transform: translate3d(15px, 0, 0);
    opacity: 0
}

.is-others .btn.square-01.is-hover .arrow.before {
    -webkit-transition: 0s;
    transition: 0s;
    opacity: 0;
    -webkit-transform: translate3d(-40px, 0, 0);
    transform: translate3d(-40px, 0, 0)
}

.is-others .contact-link:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    background-color: transparent;
    -webkit-transition: background-color .7s linear;
    transition: background-color .7s linear
}

.is-others .contact-link .link-line>.line:before {
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transition: -webkit-transform .7s cubic-bezier(.8, 0, .125, 1);
    transition: -webkit-transform .7s cubic-bezier(.8, 0, .125, 1);
    transition: transform .7s cubic-bezier(.8, 0, .125, 1);
    transition: transform .7s cubic-bezier(.8, 0, .125, 1), -webkit-transform .7s cubic-bezier(.8, 0, .125, 1);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-others .contact-link.is-hover:after {
    background-color: rgba(0, 0, 0, .4);
    -webkit-transition: background-color .35s linear;
    transition: background-color .35s linear
}

.is-others .contact-link.is-hover .link-line>.line:before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: right;
    transform-origin: right;
    -webkit-transition: opacity .1s linear, -webkit-transform .7s cubic-bezier(0, .6, .2, 1);
    transition: opacity .1s linear, -webkit-transform .7s cubic-bezier(0, .6, .2, 1);
    transition: transform .7s cubic-bezier(0, .6, .2, 1), opacity .1s linear;
    transition: transform .7s cubic-bezier(0, .6, .2, 1), opacity .1s linear, -webkit-transform .7s cubic-bezier(0, .6, .2, 1)
}

.is-others .navigation .text {
    position: relative
}

.is-others .navigation .text span {
    display: inline-block;
    -webkit-transition: -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: transform .5s cubic-bezier(.8, 0, .125, 1), -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    -webkit-transition-delay: .1s;
    transition-delay: .1s
}

.is-others .navigation .text:before {
    display: block;
    width: 8px;
    height: 1px;
    content: "";
    position: absolute;
    top: 50%;
    left: -12px;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transition: -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: transform .5s cubic-bezier(.8, 0, .125, 1), -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    -webkit-transition-delay: .15s;
    transition-delay: .15s;
    background-color: #1a1a1a
}

.is-others .navigation a.is-hover .text:before {
    opacity: 1;
    -webkit-transition: opacity .25s linear, -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    transition: opacity .25s linear, -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .25s cubic-bezier(.25, .9, .3, 1.25), opacity .25s linear;
    transition: transform .25s cubic-bezier(.25, .9, .3, 1.25), opacity .25s linear, -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transform-origin: left;
    transform-origin: left
}

.is-others .navigation a.is-hover .text span {
    -webkit-transition: opacity .25s linear, -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    transition: opacity .25s linear, -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .25s cubic-bezier(.25, .9, .3, 1.25), opacity .25s linear;
    transition: transform .25s cubic-bezier(.25, .9, .3, 1.25), opacity .25s linear, -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
    -webkit-transition-delay: .05s;
    transition-delay: .05s
}

.is-others .navigation li.current a .text:before {
    opacity: 1;
    -webkit-transition: opacity .3s linear, -webkit-transform .3s cubic-bezier(.25, .9, .3, 1.25);
    transition: opacity .3s linear, -webkit-transform .3s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .3s cubic-bezier(.25, .9, .3, 1.25), opacity .3s linear;
    transition: transform .3s cubic-bezier(.25, .9, .3, 1.25), opacity .3s linear, -webkit-transform .3s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transform-origin: left;
    transform-origin: left
}

.is-others .navigation li.current a .text span {
    -webkit-transition: opacity .3s linear, -webkit-transform .3s cubic-bezier(.25, .9, .3, 1.25);
    transition: opacity .3s linear, -webkit-transform .3s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .3s cubic-bezier(.25, .9, .3, 1.25), opacity .3s linear;
    transition: transform .3s cubic-bezier(.25, .9, .3, 1.25), opacity .3s linear, -webkit-transform .3s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
    -webkit-transition-delay: .05s;
    transition-delay: .05s
}

.is-others .blog-page .page-nav-list a {
    position: relative;
    -webkit-transition: color .3s linear .1s;
    transition: color .3s linear .1s
}

.is-others .blog-page .page-nav-list a:before {
    display: block;
    width: 10px;
    height: 1px;
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    margin: 0 auto;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: opacity .3s linear .1s, -webkit-transform .3s cubic-bezier(0, .6, .2, 1) .1s;
    transition: opacity .3s linear .1s, -webkit-transform .3s cubic-bezier(0, .6, .2, 1) .1s;
    transition: transform .3s cubic-bezier(0, .6, .2, 1) .1s, opacity .3s linear .1s;
    transition: transform .3s cubic-bezier(0, .6, .2, 1) .1s, opacity .3s linear .1s, -webkit-transform .3s cubic-bezier(0, .6, .2, 1) .1s;
    background-color: #1a1a1a
}

.is-others .blog-page .page-nav-list a.is-before-hover:before {
    -webkit-transition: 0s;
    transition: 0s;
    -webkit-transform: scaleX(2);
    transform: scaleX(2)
}

.is-others .blog-page .page-nav-list a.is-hover {
    -webkit-transition: color .35s linear;
    transition: color .35s linear;
    color: #1a1a1a
}

.is-others .blog-page .page-nav-list a.is-hover:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition: -webkit-transform .35s cubic-bezier(0, .6, .2, 1);
    transition: -webkit-transform .35s cubic-bezier(0, .6, .2, 1);
    transition: transform .35s cubic-bezier(0, .6, .2, 1);
    transition: transform .35s cubic-bezier(0, .6, .2, 1), -webkit-transform .35s cubic-bezier(0, .6, .2, 1)
}

.is-others #blog-single .tag-list a,
.is-others #blog .article-information .tag-list a {
    -webkit-transition: background-color .55s linear, color .55s linear;
    transition: background-color .55s linear, color .55s linear
}

.is-others #blog-single .tag-list a.is-hover,
.is-others #blog .article-information .tag-list a.is-hover {
    -webkit-transition: color .25s cubic-bezier(0, .6, .2, 1), background-color .25s cubic-bezier(0, .6, .2, 1);
    transition: color .25s cubic-bezier(0, .6, .2, 1), background-color .25s cubic-bezier(0, .6, .2, 1);
    color: #fff;
    background-color: #1a1a1a
}

.is-others .question a {
    -webkit-transition: color .7s linear;
    transition: color .7s linear
}

.is-others .question a.is-hover {
    -webkit-transition: color .25s cubic-bezier(0, .6, .2, 1);
    transition: color .25s cubic-bezier(0, .6, .2, 1);
    color: #008e3c
}

.is-others .link-arrow .arrow,
.is-others .link-arrow .arrow:after,
.is-others .link-arrow .arrow:before {
    -webkit-transition: -webkit-transform .3s cubic-bezier(.6, 0, .3, 1) .1s;
    transition: -webkit-transform .3s cubic-bezier(.6, 0, .3, 1) .1s;
    transition: transform .3s cubic-bezier(.6, 0, .3, 1) .1s;
    transition: transform .3s cubic-bezier(.6, 0, .3, 1) .1s, -webkit-transform .3s cubic-bezier(.6, 0, .3, 1) .1s
}

.is-others .link-arrow .arrow.next:before {
    -webkit-transform-origin: left;
    transform-origin: left
}

.is-others .link-arrow .arrow.prev:before {
    -webkit-transform-origin: right;
    transform-origin: right
}

.is-others .link-arrow.is-hover .arrow,
.is-others .link-arrow.is-hover .arrow:after,
.is-others .link-arrow.is-hover .arrow:before {
    -webkit-transition: -webkit-transform .4s cubic-bezier(0, .6, .2, 1);
    transition: -webkit-transform .4s cubic-bezier(0, .6, .2, 1);
    transition: transform .4s cubic-bezier(0, .6, .2, 1);
    transition: transform .4s cubic-bezier(0, .6, .2, 1), -webkit-transform .4s cubic-bezier(0, .6, .2, 1)
}

.is-others .link-arrow.is-hover .arrow:after,
.is-others .link-arrow.is-hover .arrow:before {
    -webkit-transition-delay: .05s;
    transition-delay: .05s
}

.is-others .link-arrow.is-hover .arrow:before {
    -webkit-transform: scaleX(1.2);
    transform: scaleX(1.2)
}

.is-others .link-arrow.is-hover .arrow.next {
    -webkit-transform: translate3d(6px, 0, 0);
    transform: translate3d(6px, 0, 0)
}

.is-others .link-arrow.is-hover .arrow.next:after {
    -webkit-transform: translate3d(12px, 0, 0);
    transform: translate3d(12px, 0, 0)
}

.is-others .link-arrow.is-hover .arrow.prev {
    -webkit-transform: translate3d(-6px, 0, 0);
    transform: translate3d(-6px, 0, 0)
}

.is-others .link-arrow.is-hover .arrow.prev:after {
    -webkit-transform: translate3d(-12px, 0, 0);
    transform: translate3d(-12px, 0, 0)
}

.is-others .modal-close .back .bar:before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
}

.is-others .modal-close .back .bar:first-of-type:before {
    -webkit-transform-origin: left;
    transform-origin: left
}

.is-others .modal-close .back .bar:nth-of-type(2):before {
    -webkit-transform-origin: right;
    transform-origin: right
}

.is-others .modal-close.is-hover .front .bar:before {
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: -webkit-transform .5s cubic-bezier(0, .6, .2, 1);
    transition: -webkit-transform .5s cubic-bezier(0, .6, .2, 1);
    transition: transform .5s cubic-bezier(0, .6, .2, 1);
    transition: transform .5s cubic-bezier(0, .6, .2, 1), -webkit-transform .5s cubic-bezier(0, .6, .2, 1)
}

.is-others .modal-close.is-hover .front .bar:first-of-type:before {
    -webkit-transform-origin: right;
    transform-origin: right
}

.is-others .modal-close.is-hover .front .bar:nth-of-type(2):before {
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transition-delay: .175s;
    transition-delay: .175s
}

.is-others .modal-close.is-hover .back .bar:before {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transition: -webkit-transform .5s cubic-bezier(.6, 0, .3, 1);
    transition: -webkit-transform .5s cubic-bezier(.6, 0, .3, 1);
    transition: transform .5s cubic-bezier(.6, 0, .3, 1);
    transition: transform .5s cubic-bezier(.6, 0, .3, 1), -webkit-transform .5s cubic-bezier(.6, 0, .3, 1)
}

.is-others .modal-close.is-hover .back .bar:first-of-type:before {
    -webkit-transition-delay: .5s;
    transition-delay: .5s
}

.is-others .modal-close.is-hover .back .bar:nth-of-type(2):before {
    -webkit-transition-delay: .675s;
    transition-delay: .675s
}

.is-others #sp-g-nav-trigger .line {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    overflow: hidden;
    -webkit-transition: background-color .7s linear;
    transition: background-color .7s linear
}

.is-others #sp-g-nav-trigger .line:before {
    -webkit-transform-origin: left;
    transform-origin: left
}

.is-others #sp-g-nav-trigger .line:after,
.is-others #sp-g-nav-trigger .line:before {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

.is-others #sp-g-nav-trigger .line:after {
    /* background-color: #1a1a1a; */
    /*     ヘッダメニュー3　によりComment */
}

.is-others #sp-g-nav-trigger.is-hover .line:before,
.is-others #sp-g-nav-trigger .line:after {
    -webkit-transform-origin: right;
    transform-origin: right;
    -webkit-transform: scaleX(0);
    transform: scaleX(0)
}

.is-others #sp-g-nav-trigger.is-hover .line:before {
    -webkit-transition: background-color .7s linear, -webkit-transform .4s cubic-bezier(0, .6, .2, 1);
    transition: background-color .7s linear, -webkit-transform .4s cubic-bezier(0, .6, .2, 1);
    transition: transform .4s cubic-bezier(0, .6, .2, 1), background-color .7s linear;
    transition: transform .4s cubic-bezier(0, .6, .2, 1), background-color .7s linear, -webkit-transform .4s cubic-bezier(0, .6, .2, 1)
}

.is-others #sp-g-nav-trigger.is-hover .line:first-of-type:before {
    -webkit-transition-delay: .2s;
    transition-delay: .2s
}

.is-others #sp-g-nav-trigger.is-hover .line:nth-of-type(2):before {
    -webkit-transition-delay: .15s;
    transition-delay: .15s
}

.is-others #sp-g-nav-trigger.is-hover .line:nth-of-type(3):before {
    -webkit-transition-delay: .1s;
    transition-delay: .1s
}

.is-others #sp-g-nav-trigger.is-hover .line:after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1);
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transition: -webkit-transform .4s cubic-bezier(0, .6, .2, 1);
    transition: -webkit-transform .4s cubic-bezier(0, .6, .2, 1);
    transition: transform .4s cubic-bezier(0, .6, .2, 1);
    transition: transform .4s cubic-bezier(0, .6, .2, 1), -webkit-transform .4s cubic-bezier(0, .6, .2, 1)
}

.is-others #sp-g-nav-trigger.is-hover .line:first-of-type:after {
    -webkit-transition-delay: .4s;
    transition-delay: .4s
}

.is-others #sp-g-nav-trigger.is-hover .line:nth-of-type(2):after {
    -webkit-transition-delay: .35s;
    transition-delay: .35s
}

.is-others #sp-g-nav-trigger.is-hover .line:nth-of-type(3):after {
    -webkit-transition-delay: .3s;
    transition-delay: .3s
}

.is-others .side-link:before {
    display: block;
    width: 8px;
    height: 1px;
    content: "";
    position: absolute;
    top: 50%;
    left: -12px;
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transform-origin: left;
    transform-origin: left;
    -webkit-transition: -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: transform .5s cubic-bezier(.8, 0, .125, 1), -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    -webkit-transition-delay: .15s;
    transition-delay: .15s;
    background-color: #1a1a1a
}

.is-others .side-link .text {
    display: inline-block;
    -webkit-transition: -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: transform .5s cubic-bezier(.8, 0, .125, 1);
    transition: transform .5s cubic-bezier(.8, 0, .125, 1), -webkit-transform .5s cubic-bezier(.8, 0, .125, 1);
    -webkit-transition-delay: .1s;
    transition-delay: .1s
}

.is-others .side-link.is-hover:before {
    -webkit-transition: -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    transition: -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .25s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .25s cubic-bezier(.25, .9, .3, 1.25), -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.is-others .side-link.is-hover .text {
    -webkit-transition: opacity .25s linear, -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    transition: opacity .25s linear, -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    transition: transform .25s cubic-bezier(.25, .9, .3, 1.25), opacity .25s linear;
    transition: transform .25s cubic-bezier(.25, .9, .3, 1.25), opacity .25s linear, -webkit-transform .25s cubic-bezier(.25, .9, .3, 1.25);
    -webkit-transform: translate3d(5px, 0, 0);
    transform: translate3d(5px, 0, 0);
    -webkit-transition-delay: .05s;
    transition-delay: .05s
}

.is-others .topics-link {
    -webkit-transition: color .6s linear .05s, background-color .6s linear .05s;
    transition: color .6s linear .05s, background-color .6s linear .05s
}

.is-others .topics-link:hover {
    background-color: #efefef;
    -webkit-transition: color .3s ease, background-color .3s ease;
    transition: color .3s ease, background-color .3s ease
}

html.is-mobile .works-list a .label span,
html .is-tablet .works-list a .label span {
    display: inline-block
}

html.is-mobile .works-list a .label p,
html .is-tablet .works-list a .label p {
    position: relative;
    overflow: hidden;
    -webkit-transition: color .4s linear, background-color .4s linear;
    transition: color .4s linear, background-color .4s linear
}

html.is-mobile .works-list a.is-hover .label p,
html .is-tablet .works-list a.is-hover .label p {
    color: #fff;
    background-color: #1a1a1a;
    -webkit-transition: color .1s ease, background-color .1s ease;
    transition: color .1s ease, background-color .1s ease
}

html.is-mobile .works-list-2 a .label span,
html .is-tablet .works-list a .label span {
    display: inline-block
}

html.is-mobile .works-list-2 a .label p,
html .is-tablet .works-list-2 a .label p {
    position: relative;
    overflow: hidden;
    -webkit-transition: color .4s linear, background-color .4s linear;
    transition: color .4s linear, background-color .4s linear
}

html.is-mobile .works-list-2 a.is-hover .label p,
html .is-tablet .works-list-2 a.is-hover .label p {
    color: #fff;
    background-color: #1a1a1a;
    -webkit-transition: color .1s ease, background-color .1s ease;
    transition: color .1s ease, background-color .1s ease
}

html.is-mobile .btn.square-01,
html .is-tablet .btn.square-01 {
    -webkit-transition: color .4s linear, background-color .4s linear;
    transition: color .4s linear, background-color .4s linear
}

html.is-mobile .btn.square-01 .arrow,
html .is-tablet .btn.square-01 .arrow {
    -webkit-transition: opacity .4s linear, -webkit-transform .4s ease;
    transition: opacity .4s linear, -webkit-transform .4s ease;
    transition: opacity .4s linear, transform .4s ease;
    transition: opacity .4s linear, transform .4s ease, -webkit-transform .4s ease
}

html.is-mobile .btn.square-01.is-hover,
html .is-tablet .btn.square-01.is-hover {
    color: #fff;
    background-color: #1a1a1a;
    -webkit-transition: color .1s ease, background-color .1s ease;
    transition: color .1s ease, background-color .1s ease
}

html.is-mobile .btn.square-01.is-hover .arrow,
html .is-tablet .btn.square-01.is-hover .arrow {
    opacity: 0;
    -webkit-transition: opacity .3s linear, -webkit-transform .3s ease;
    transition: opacity .3s linear, -webkit-transform .3s ease;
    transition: opacity .3s linear, transform .3s ease;
    transition: opacity .3s linear, transform .3s ease, -webkit-transform .3s ease;
    -webkit-transform: translateX(10px);
    transform: translateX(10px)
}

html.is-mobile .blog-list a .img,
html.is-mobile .blog-list a .img-cover,
html.is-mobile .gallery-list>li .img,
html.is-mobile .gallery-list>li .img-cover,
html.is-mobile .works-list a .img,
html.is-mobile .works-list a .img-cover,
html.is-mobile .works-list-2 a .img,
html.is-mobile .works-list-2 a .img-cover,
html .is-tablet .blog-list a .img,
html .is-tablet .blog-list a .img-cover,
html .is-tablet .gallery-list>li .img,
html .is-tablet .gallery-list>li .img-cover,
html .is-tablet .works-list a .img,
html .is-tablet .works-list a .img-cover,
html .is-tablet .works-list-2 a .img,
html .is-tablet .works-list-2 a .img-cover {
    -webkit-transition: -webkit-transform .5s ease .05s;
    transition: -webkit-transform .5s ease .05s;
    transition: transform .5s ease .05s;
    transition: transform .5s ease .05s, -webkit-transform .5s ease .05s
}

html.is-mobile .blog-list a.is-hover .img-cover,
html.is-mobile .gallery-list>li.is-hover .img-cover,
html.is-mobile .works-list a.is-hover .img-cover,
html.is-mobile .works-list-2 a.is-hover .img-cover,
html .is-tablet .blog-list a.is-hover .img-cover,
html .is-tablet .gallery-list>li.is-hover .img-cover,
html .is-tablet .works-list a.is-hover .img-cover,
html .is-tablet .works-list-2 a.is-hover .img-cover {
    -webkit-transform: scale(.94);
    transform: scale(.94);
    -webkit-transition: -webkit-transform .3s ease;
    transition: -webkit-transform .3s ease;
    transition: transform .3s ease;
    transition: transform .3s ease, -webkit-transform .3s ease
}

html.is-mobile .blog-list a.is-hover .img,
html.is-mobile .gallery-list>li.is-hover .img,
html.is-mobile .works-list a.is-hover .img,
html.is-mobile .works-list-2 a.is-hover .img,
html .is-tablet .blog-list a.is-hover .img,
html .is-tablet .gallery-list>li.is-hover .img,
html .is-tablet .works-list a.is-hover .img,
html .is-tablet .works-list-2 a.is-hover .img {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
    -webkit-transition: -webkit-transform .35s ease;
    transition: -webkit-transform .35s ease;
    transition: transform .35s ease;
    transition: transform .35s ease, -webkit-transform .35s ease
}

html.is-mobile .contact-link:after,
html .is-tablet .contact-link:after {
    display: block;
    width: 100%;
    height: 100%;
    content: "";
    position: absolute;
    background-color: transparent;
    -webkit-transition: background-color .5s linear;
    transition: background-color .5s linear
}

html.is-mobile .contact-link.is-hover:after,
html .is-tablet .contact-link.is-hover:after {
    background-color: rgba(0, 0, 0, .6);
    -webkit-transition: background-color .1s ease;
    transition: background-color .1s ease
}

@-webkit-keyframes mouseScroll {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    to {
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }
}

@keyframes mouseScroll {
    0% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
    to {
        -webkit-transform: translateY(10px);
        transform: translateY(10px)
    }
}


/* -----------------------------------------------------------
   #SCROLL down
   ----------------------------------------------------------- */


/* 
.mainvisual{
  position: relative;
  height: 100vh;
  background: url(http://mias.kilo.jp/material/photo/img03.jpg) no-repeat center;
  background-size: cover;
} */


/*SCROLLâ€¹*/

.scroll {
    position: absolute;
    width: 100%;
    bottom: 0;
    text-align: center;
}

.scroll a {
    position: relative;
    display: inline-block;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
    text-decoration: none;
    padding: 0 0 50px;
}


/*SCROLLâ€¹*/

.scroll a:before {
    content: "";
    position: absolute;
    width: 10px;
    height: 10px;
    left: 0;
    right: 0;
    bottom: 25px;
    margin: auto;
    border-bottom: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    animation: move 2s infinite;
}
/* line */

/* ----------------------------------------------------------
   
   #scrollUp
   
   ---------------------------------------------------------- */

#scrollUp {
    position: fixed;
    bottom: 15px;
    right: 15px;
    z-index: 1000;
}

#scrollUp a {
    width: 50px;
    height: 50px;
    display: block;
    color: #fefefe;
    /* background: #1c354c; */
    background: #000;
    border: none;
    text-align: center;
    z-index: 11;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    position: relative;
    z-index: 1;
}

#scrollUp a:before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    font-family: 'themify';
    content: "\e648";
    font-family: 'Font Awesome 6 pro';
    content: "\f077";
    font-size: 18px;
    line-height: 50px;
    font-weight: 400;
}

#scrollUp a:hover {
    -webkit-transform: translate(0px, -10px);
    -moz-transform: translate(0px, -10px);
    -o-transform: translate(0px, -10px);
    -ms-transform: translate(0px, -10px);
    transform: translate(0px, -10px);
}

@media only screen and (max-width: 800px) {
    #scrollUp a:hover {
        -webkit-transform: translate(0px, 0px);
        -moz-transform: translate(0px, 0px);
        -o-transform: translate(0px, 0px);
        -ms-transform: translate(0px, 0px);
        transform: translate(0px, 0px);
    }
}

@media only screen and (max-width: 414px) {
    #scrollUp a {
        width: 50px;
        height: 50px;
    }
    #scrollUp a:before {
        font-size: 16px;
        line-height: 48px;
    }
}


/*=========================================== */


/*! #about　ヤマザキについて
  =========================================== */

#about .title-sec-01 .section-foot {
    height: 56.25vw;
    max-height: 400px;
}

#about .sec {
    overflow-x: hidden
}

#about .sec h2 {
    margin-bottom: 40px
}

#about .sec p {
    margin-bottom: 10px;
    letter-spacing: .05em;
    line-height: 2.3;
    /* text-align: center; */
}

#about .sec-line>.inner {
    position: relative;
    padding-top: 100px;
}

#about .sec-line>.inner:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .1)
}

#about .sec-line .section-body {
    padding-top: 185px
}

#about .sec-01 {
    /* padding-top: 50px; */
    padding-bottom: 100px;
}

#about .sec-01 .unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#about .sec-01 .unit-head {
    width: 550px;
    margin-right: 0;
    margin-left: 0
}

#about .sec-01 .unit-foot {
    width: 37.5%;
    margin-left: 6.875%
}

#about .sec-01 .unit-foot>.img-cover {
    padding-bottom: 100%
}

#about .sec-01 .unit-foot .img {
    background-image: url(img/slideshow_01.jpg);
}

#about .sec-02 {
    padding-top: 100px;
    padding-bottom: 220px
}

#about .sec-02 .unit-head {
    width: 445px;
    margin-left: 50%
}

#about .sec-02 .unit-foot {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: 220px
}

#about .sec-02 .unit-foot .img-cover-head {
    width: 37.5%;
    padding-bottom: 28.60169%;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%)
}

#about .sec-02 .unit-foot .img-cover-head .img {
    background-image: url(../img/about/img_02.jpg)
}

#about .sec-02 .unit-foot .img-cover-foot {
    width: 62.5%;
    padding-bottom: 28.40909%
}

#about .sec-02 .unit-foot .img-cover-foot .img {
    background-image: url(../img/about/img_03.jpg)
}

#about .sec-03 {
    padding-top: 100px;
    padding-bottom: 190px
}

#about .sec-03 .unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#about .sec-03 .unit-head {
    width: 550px;
    margin-left: 40px
}

#about .sec-03 .unit-foot {
    width: 31.25%;
    margin-top: 110px;
    margin-right: 40px
}

#about .sec-03 .unit-foot .img-cover {
    padding-bottom: 120%
}

#about .sec-03 .unit-foot .img {
    background-image: url(../img/about/img_04.jpg)
}

#about .example {
    padding-bottom: 50px
}

#about .example h2 {
    text-align: center
}

#about .example .example-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
}

#about .example .example-list li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 50%;
    margin-bottom: 80px
}

#about .example .example-list li:nth-of-type(2n) {
    padding-left: 40px
}

#about .example .example-list li:nth-of-type(odd) {
    padding-right: 40px
}

#about .example .example-list li .img-cover {
    width: 120px;
    height: 120px;
    border-radius: 50%
}

#about .example .example-list li:first-of-type .img {
    background-image: url(../img/about/example_01.jpg)
}

#about .example .example-list li:nth-of-type(2) .img {
    background-image: url(../img/about/example_02.jpg)
}

#about .example .example-list li:nth-of-type(3) .img {
    background-image: url(../img/about/example_03.jpg)
}

#about .example .example-list li:nth-of-type(4) .img {
    background-image: url(../img/about/example_04.jpg)
}

#about .example .example-list li:nth-of-type(5) .img {
    background-image: url(../img/about/example_05.jpg)
}

#about .example .example-list li:nth-of-type(6) .img {
    background-image: url(../img/about/example_06.jpg)
}

#about .example .example-list p {
    line-height: 2.2
}

#about .example .example-list .unit-head {
    padding-right: 30px
}

#about .example .example-list .unit-title {
    margin-bottom: 20px;
    font-size: 2rem;
    letter-spacing: .1em
}

#about .flow {
    max-width: 1200px;
    width: 100%;
    padding-bottom: 110px;
    padding: 0 3% 110px;
    margin: 0 auto;
}

#about .flow h2 {
    text-align: center
}

#about .flow h3 {
    font-size: 2rem;
    letter-spacing: .1em
}

#about .flow .flow-list .unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 10px
}

#about .flow .flow-list .unit:last-child .unit-head:before {
    display: none
}

#about .flow .flow-list .unit>.inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%
}

#about .flow .flow-list .unit-head {
    position: relative
}

#about .flow .flow-list .unit-head:before {
    display: block;
    width: 1px;
    height: calc(100% - 35px);
    content: "";
    position: absolute;
    top: 35px;
    right: 13px;
    background-color: #1a1a1a
}

#about .flow .flow-list .unit-head p {
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    font-size: 1.8rem;
    letter-spacing: .3em
}

#about .flow .flow-list .unit-head i,
#about .flow .flow-list .unit-head p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

#about .flow .flow-list .unit-head i {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 28px;
    height: 28px;
    margin-left: 5px;
    background-color: #1a1a1a;
    color: #fff;
    letter-spacing: 0;
    line-height: 1;
    border-radius: 50%
}

#about .flow .flow-list .unit-body {
    width: 15%;
    padding-right: 20px;
    padding-left: 40px;
}

#about .flow .flow-list .unit-foot {
    width: calc(100% - 200px);
    padding-left: 80px;
    padding-bottom: 100px;
    margin-top: -3px;
}

#about .flow .flow-list .unit-foot p {
    font-size: 1.6rem;
    line-height: 2.3;
    letter-spacing: .05em
}

#about .profile {
    padding-bottom: 180px
}

#about .profile .section-head .img-cover,
#about .profile .section-head .img-outer {
    /* width: 1000px; */
    height: 360px;
    margin: 0 auto;
    /* border-radius: 50%; */
    overflow: hidden;
    max-width: 1000px;
    width: 100%;
}

#about .profile .section-head .img {
    background-image: url(../../about/img/about_2.jpg);
}

#about .profile .section-body {
    max-width: 1000px;
    margin: 0 auto;
    padding-top: 60px;
}

#about .profile h2 {
    margin-bottom: 60px;
    text-align: center
}

#about .profile h2 .label {
    display: block;
    font-size: 2.2rem
}

#about .profile h2 .name {
    display: block;
    font-size: 3rem
}

#about .profile p {
    letter-spacing: .05em;
    line-height: 2.3
}

#about .profile p:not(:last-of-type) {
    margin-bottom: 15px
}

#about .js-parallax-target .img {
    /* top: -60%; */
    /* height: 160%; */
}

#about .js-parallax-target .img.img-02 {
    top: -50%;
    height: 150%
}

html.is-mobile #about .js-parallax-target .img,
html.is-mobile #about .js-parallax-target .img.img-02,
html.is-tablet #about .js-parallax-target .img,
html.is-tablet #about .js-parallax-target .img.img-02 {
    top: 0;
    height: 100%
}

@media screen and (max-width:768px) {
    #about h2.section-title {
        line-height: 1.6
    }
    #about .sec .section-title,
    #about .sec p {
        text-align: center
    }
    #about .sec p {
        line-height: 2.14286
    }
    #about .sec .unit {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    #about .sec .unit-head {
        width: auto
    }
    #about .sec-01 {
        padding-top: 135px;
        padding-bottom: 0
    }
    #about .sec-01 .unit {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-right: -10px;
        margin-left: -10px
    }
    #about .sec-01 .unit-head {
        margin-right: 10px;
        margin-left: 10px
    }
    #about .sec-01 .unit-foot {
        width: 100%;
        margin-top: 90px;
        margin-left: 0
    }
    #about .sec-02 {
        padding-top: 135px;
        padding-bottom: 0
    }
    #about .sec-02 .unit-head {
        margin-left: 0
    }
    #about .sec-02 .unit-head>.inner {
        padding-right: 0
    }
    #about .sec-02 .unit-foot {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-top: 90px;
        margin-right: -10px;
        margin-left: -10px
    }
    #about .sec-02 .unit-foot .img-cover-head {
        width: 100%;
        padding-bottom: 76.71233%;
        margin-bottom: 5px;
        -webkit-transform: none;
        transform: none
    }
    #about .sec-02 .unit-foot .img-cover-foot {
        width: 100%;
        padding-bottom: 45.20548%
    }
    #about .sec-03 {
        padding-top: 135px;
        padding-bottom: 50px
    }
    #about .sec-03 .unit {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-right: -10px;
        margin-left: -10px
    }
    #about .sec-03 .unit-head {
        padding-right: 10px;
        padding-left: 10px;
        margin-left: 0
    }
    #about .sec-03 .unit-foot {
        width: 100%;
        margin-top: 90px;
        margin-right: 0
    }
    #about .sec-line>.inner {
        padding-top: 95px
    }
    #about .sec-line>.inner:before {
        width: calc(100% - 30px);
        right: 0;
        margin: 0 auto
    }
    #about .example {
        padding-bottom: 67.5px
    }
    #about .example .inner:before,
    #about .example .pc-label {
        display: none
    }
    #about .example .section-body {
        padding-top: 100px
    }
    #about .example .example-list,
    #about .example .example-list>li {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column
    }
    #about .example .example-list>li {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        width: 100%;
        margin-bottom: 70px
    }
    #about .example .example-list>li:nth-of-type(odd) {
        padding-right: 0
    }
    #about .example .example-list>li:nth-of-type(2n) {
        padding-left: 0
    }
    #about .example .example-list>li:last-child {
        margin-bottom: 0
    }
    #about .example .example-list .unit-head {
        padding-right: 0
    }
    #about .example .example-list .unit-foot {
        text-align: center
    }
    #about .example .example-list .unit-title {
        margin-top: 35px
    }
    #about .example .example-list p {
        line-height: 2.14286
    }
    #about .flow {
        padding-bottom: 0
    }
    #about .flow h3 {
        font-size: 1.8rem
    }
    #about .flow .section-body {
        padding-top: 85px
    }
    #about .flow .flow-list .unit>.inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding-left: 27.5px
    }
    #about .flow .flow-list .unit-head {
        position: relative;
        padding-left: 20px
    }
    #about .flow .flow-list .unit-head .step-label {
        position: absolute;
        top: 3px;
        left: 0;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        vertical-align: top;
        line-height: 1;
        font-size: 1.5rem;
        letter-spacing: .3em
    }
    #about .flow .flow-list .unit-body {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        padding-bottom: 20px
    }
    #about .flow .flow-list .unit-foot {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        padding-bottom: 70px
    }
    #about .flow .flow-list .unit-foot p {
        font-size: inherit;
        line-height: 1.78571
    }
    #about .profile {
        padding-top: 90px;
        padding-bottom: 110px
    }
    #about .profile h2 {
        margin-bottom: 30px
    }
    #about .profile p {
        line-height: 2.14286;
        text-align: left;
    }
    #about .profile .section-head {
        padding: 0 20px
    }
    #about .profile .section-head .img-cover,
    #about .profile .section-head .img-outer {
        /* width: 250px; */
        height: 200px;
    }
    #about .profile .section-body {
        padding-top: 50px
    }
    #about .sec-01 .unit-foot>.img-cover {
        padding-bottom: 60%
    }
    #about .js-parallax-target .img.img-02 {
        top: 0;
        height: 100%;
    }
}

@media screen and (max-width:768px) {
    #about h2.section-title {
        font-size: 2.4rem
    }
    #about .sec {
        padding-top: 80px
    }
    #about .sec .unit-foot {
        margin-top: 60px
    }
    #about .sec-line>.inner {
        padding-top: 40px
    }
    #about .sec-01 {
        padding-top: 90px
    }
    #about .profile {
        padding-bottom: 60px
    }
    #about .example .section-body {
        padding-top: 80px
    }
}

@media screen and (max-width:768px) {
    #about .sec-01 {
        padding-top: 0px
    }
}

#about table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%
}

#about th,
#about td {
    text-align: left;
    vertical-align: top
}

@font-face {
    font-family: 'icomoon';
    src: url(css/fonts/icomoon.eot?u8yqn1);
    src: url(css/fonts/icomoon.eot?u8yqn1#iefix) format('embedded-opentype'), url(css/fonts/icomoon.ttf?u8yqn1) format('truetype'), url(css/fonts/icomoon.woff?u8yqn1) format('woff'), url(css/fonts/icomoon.svg?u8yqn1#icomoon) format('svg');
    font-weight: normal;
    font-style: normal
}

[class^='icon-'],
[class*=' icon-'] {
    font-family: 'icomoon' !important;
    speak: none;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}


/*! .title */

#about .titMain {
    line-height: 1;
    text-align: center;
    position: relative;
    padding-bottom: 26px;
    margin-bottom: 35px
}

#about .titMain:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    margin: 0 auto;
    background: #013076;
    height: 3px;
    width: 60px
}

#about .titMainEn {
    font-size: 5rem;
    font-weight: bold;
    font-family: 'Oswald', sans-serif;
    display: block;
    color: #14305a;
    letter-spacing: .15em;
    line-height: 1.1;
    margin-bottom: 12px
}

#about .titMainJa {
    font-size: 2rem;
    font-weight: bold;
    color: #1f1f1f;
    line-height: 1.1;
    letter-spacing: .075em;
    line-height: 1.1
}

.titMainSmall {
    padding-bottom: 24px
}

#about .titMainSmall .titMainEn {
    font-size: 4.5rem
}

#about .titMainSmall .titMainJa {
    font-size: 1.6rem
}

#about .titSub {
    color: #000;
    margin-bottom: 25px;
}

#about .titSubEn {
    font-size: 30px;
    font-weight: bold;
    /* font-family: 'Oswald', sans-serif; */
    display: block;
    line-height: 1.1;
    letter-spacing: .13em;
}

#about .titSubJa {
    font-size: 16px;
    text-align: left;
    display: block;
    line-height: 1.1;
    margin-top: 8px;
}


/*! .mvChild
  =========================================== */

#about .mvChild {
    width: 100%;
    display: table;
    padding: 75px 0 85px;
    background-color: #0b254d;
    background-size: cover;
    background-position: center center
}

#about .mvChildIn {
    display: table-cell;
    vertical-align: middle;
    height: 100%;
    width: 100%;
    color: #fff;
    text-align: center
}

#about .mvChildTitEn {
    font-family: 'Oswald', sans-serif;
    font-size: 5rem;
    line-height: 1.1;
    font-weight: bold;
    letter-spacing: .13em
}

#about .mvChildTitJa {
    font-size: 2rem;
    line-height: 1.1;
    font-weight: bold;
    margin-top: 12px;
    letter-spacing: .02em
}

#about .mvChildTxt {
    margin-top: 30px;
    font-size: 1.5rem;
    line-height: 2.13
}

@media(min-width:600px) {
    #about .mediaQueries {
        font-family: tb
    }
}

@media(min-width:900px) {
    #about .mediaQueries {
        font-family: tb-lg
    }
}

@media(min-width:1200px) {
    #about .mediaQueries {
        font-family: pc
    }
}

@media(min-width:1800px) {
    #about .mediaQueries {
        font-family: pc-lg
    }
}

#about .company {
    width: 100%;
    max-width: 1200px;
    margin: 50px auto 0px;
    height: 100%;
    padding-bottom: 150px;
    padding: 0 15px 15px;
}

#about .companyTable {
    margin-top: 30px;
    margin-bottom: 100px;
}

#about .companyTable th,
#about .companyTable td {
    border: 1px dashed #d6d6d6;
    text-align: left;
}

#about .companyTable th {
    width: 250px;
    border-left: 0;
    padding: 10px 1% 10px;
    font-weight: 400;
}

#about .companyTable td {
    border-right: 0;
    padding: 10px 0 10px 30px;
}

#about .companyTable tr {
    border-bottom: dashed 1px #eee;
    /*   cursor: pointer; */
}


/*   .companyTable tr:hover{
  background-color: #9E9E9E;
  color:#fff;
  
  } */

#about .companyTable th:before {
    font-family: 'themify';
    content: "\e724";
    /* color: #d00e00; */
    left: 0;
    padding-right: 10px;
    font-size: 14px;
}

@media only screen and (max-width: 500px) {
    #about .companyTable th {
        width: 100px;
        border-left: 0;
        padding: 18px 0 16px
    }
}

#about .companyScenery {
    margin: 120px -1000%;
    height: 255px;
    background: #ddd;
    background: url(css/../img/company/bg_company01.jpg);
    -webkit-animation: bgscroll 500s linear infinite;
    animation: bgscroll 500s linear infinite
}

@-webkit-keyframes bgscroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

@keyframes bgscroll {
    0% {
        -webkit-transform: translateX(0);
        transform: translateX(0)
    }
    100% {
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

#about .message {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 0px;
    height: 100%;
    /* padding-bottom: 150px; */
}

#about .messageIn {
    width: 1105px;
    overflow: hidden;
    padding-bottom: 100px;
    margin: 50px auto;
}

#about .messageBox {
    float: left;
    width: 584px
}

#about .messageTxt {
    margin-top: 18px;
    letter-spacing: .075em
}

#about .messageImg {
    float: right;
    width: 450px;
    /*     height: 520px; */
    /*     background: url(../images/company_appearance.jpg) */
}

.messageImg img {
    width: 100%;
    padding: 1%;
}

#about .message li {
    font-size: 14px;
    font-weight: 400;
}

@media only screen and (max-width: 500px) {
    #about .messageIn {
        width: 100%;
        overflow: hidden;
        padding-bottom: 100px;
    }
    #about .messageBox {
        clear: both;
        width: 100%;
    }
    #about .messageTxt {
        margin-top: 18px;
        letter-spacing: .075em
    }
    #about .messageImg {
        clear: both;
        width: 100%;
        /*     height: 520px; */
        /*     background: url(../images/company_appearance.jpg) */
    }
    #about .messageImg img {
        width: 100%;
        padding: 1%;
    }
}


/* 時計 */

.brands_viewarea {
    /* background-color: #01273a; */
    background: #f1f1f1;
    padding: 77px 4.3% 123px 4.3%;
    /* border: 1px solid #607D8B; */
}

.brands_viewarea_ichiran {
    font-size: 1.3em;
    text-align: center;
    margin-bottom: 30px;
}

@media screen and (min-width: 1260px) {
    .brands_viewarea {
        /* background-color: #01273a; */
        background: #f1f1f1;
        padding: 77px 1.3% 123px 1.3%;
        /* border: 1px solid #607D8B; */
    }
}

.brands_viewarea--tit {
    font-size: 20px;
    font-weight: 300;
    line-height: 1;
    font-family: "Halant", serif;
    font-weight: 300;
    -webkit-transform: scaleY(0.9);
    transform: scaleY(0.9);
    -webkit-transform-origin: center;
    transform-origin: center;
    display: inline-block;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #917c50;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: -16px
}

.brands_viewarea--tit-catename {
    letter-spacing: 4.5px
}

.brands_viewarea--tit-brandkind {
    letter-spacing: 4.5px;
    margin-left: 25px;
    padding-left: 30px;
    position: relative
}

.brands_viewarea--tit-brandkind:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #917c50;
    left: 0;
    top: 3px;
    position: absolute;
    height: 12px;
    width: 1px
}

.brands_viewarea--tit-brandkind.no-line {
    margin-left: 0;
    padding-left: 0
}

.brands_viewarea--tit-brandkind.no-line:before {
    display: none
}

.brands_viewarea--inner {
    margin-top: 55px
}

.brands_list {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
}

.brands_link {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    /* -webkit-box-pack: start; */
    -ms-flex-pack: start;
    /* justify-content: flex-start; */
    padding: 28px 30px 30px;
    position: relative;
    -webkit-transition: -webkit-box-shadow .2s linear;
    transition: -webkit-box-shadow .2s linear;
    transition: box-shadow .2s linear;
    transition: box-shadow .2s linear, -webkit-box-shadow .2s linear;
    height: 305px;
    width: calc (100% / 4);
    /* width: -webkit-calc(100% / 3); */
    width: 98%;
    margin: 1%;
}


/* .brands_link:before, */

.brands_link:after {
    /*     background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #9E9E9E;
    bottom: 29px;
    right: 20px;
    position: absolute;
    height: 1px;
    width: 19px; */
}


/* .brands_link:hover:before, */

.brands_link:hover:after {
    /*     background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #9E9E9E; */
    /*     bottom: 29px;
    right: 20px;
    position: absolute;
    height: 1px;
    width: 25px; */
}

.brands_link:before {}

.brands_link:hover:before {
    font-family: 'Font Awesome 6 pro';
    content: "\f077";
    font-family: 'themify';
    content: "\e6af";
    font-size: 20px;
    bottom: 29px;
    right: 20px;
    position: absolute;
    /*      transition: -webkit-box-shadow .2s linear;
    transition: box-shadow .2s linear;
    transition: box-shadow .2s linear, -webkit-box-shadow .2s linear; */
}

.brands_link:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.brands_link:hover {
    -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
    z-index: 99;
    background: hsl(0deg 7% 87% / 60%);
}

.brands_link.not-have-logo {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.brands_link.not-have-logo .brands_item-titarea {
    margin-top: 2px
}

.brands_link.not-have-logo .brands_item-brandname {
    margin-top: 25px
}

.brands_link.not-have-logo .brands_item-brandname-ja {
    margin-top: 9px
}

@media screen and (min-width: 768px) {
    .brands_item {
        margin-right: 1px;
        margin-bottom: 1px;
        /* border: 1px dashed #ddd; */
        flex: 0 0 24%;
    }
    .brands_item.empty {
        height: 0;
        width: 366px
    }
}

@media screen and (min-width: 1260px) {
    .brands_item {
        margin-right: 1px;
        margin-bottom: 1px;
        /* border: 1px dashed #ddd; */
        flex: 0 0 15%;
    }
}

.brands_item-tit {
    font-size: 14px;
    font-weight: 300;
    line-height: 1;
    font-family: "Halant", serif;
    font-weight: 300;
    -webkit-transform: scaleY(0.9);
    transform: scaleY(0.9);
    -webkit-transform-origin: center;
    transform-origin: center;
    display: inline-block;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #917c50;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: 9px
}

.brands_item-tit-catename {
    letter-spacing: .3px
}

.brands_item-tit-brandkind {
    letter-spacing: .3px;
    margin-left: 15px;
    padding-left: 15px;
    position: relative
}

.brands_item-tit-brandkind:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #917c50;
    left: 0;
    top: 2px;
    position: absolute;
    height: 9px;
    width: 1px
}

.brands_item-brandname {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 10px;
}

.brands_item-brandname-en {
    font-size: 18px;
    font-weight: 400;
    line-height: 1;
    color: #231815;
    text-align: center
}

.brands_item-brandname-ja {
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    color: #aaa;
    font-family: "Yu Mincho", "YuMincho";
    letter-spacing: 2.2px;
    margin-top: 11px;
    margin-left: 4px
}

.brands_item-txt {
    font-size: 15px;
    /* white-space: nowrap; */
    text-overflow: ellipsis;
    width: 250px;
    max-height: calc(16 * 1.8 * 2 * 1px);
    font-size: 15px;
    line-height: 1.8;
    word-break: break-all;
    overflow: hidden;
    /*     white-space: nowrap; */
    /*   overflow: hidden; */
    /*   text-overflow: ellipsis; */
}

.brands_item-txt :after {
    content: '...';
    color: #ddd
}

.brands_item-imagearea {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 50%;
    width: 100%;
}

.brands_item-image.logo-trinity {
    /* height: 124px; */
    max-width: 180px;
    width: 60%;
}

@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

@media all and (-ms-high-contrast: none) {
    /*     .brands_item {
        -webkit-transition-delay: none;
        transition-delay: none
    } */
}


/* 時計 */

.brands_viewarea-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-transform: translate3d(0px, 20px, 0);
    transform: translate3d(0px, 20px, 0);
    -webkit-transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    z-index: 1
}

.is-open .brands_viewarea-inner {
    -webkit-transform: translate3d(0px, 0px, 0);
    transform: translate3d(0px, 0px, 0);
    -webkit-transition: opacity 0.3s linear 0.1s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
    transition: opacity 0.3s linear 0.1s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
    transition: opacity 0.3s linear 0.1s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
    transition: opacity 0.3s linear 0.1s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s
}

@media screen and (min-width: 768px) {
    .brands_viewarea-inner {
        height: 728px;
    }
}

@media screen and (min-width: 1500px) {
    .brands_viewarea-inner {
        /* position: absolute; */
        /* top: calc(((100% - 728px) / 2)) */
    }
}

.brands_viewarea-imagearea {
    background-color: #eee;
    min-width: 512px;
    overflow: hidden;
    width: 30%;
}

@media screen and (max-width: 1180px) {
    .brands_viewarea-imagearea {
        min-width: 350px;
        width: 350px
    }
}

.brands_viewarea-image {
    height: 100%
}

.brands_viewarea-image source,
.brands_viewarea-image img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover";
    height: 100%;
    width: 100%
}

.brands_viewarea-textarea {
    background-color: #eaeaea;
    overflow: hidden;
    padding: 60px 115px 0 59px;
    position: relative;
    width: 70%;
}

@media screen and (max-width: 1080px) {
    .brands_viewarea-textarea {
        overflow-y: auto
    }
}

@media screen and (max-width: 767px) {
    .brands_viewarea-textarea {
        overflow-y: hidden
    }
}

.brands_viewarea-textarea-name {
    font-size: 40px;
    font-weight: 400;
    line-height: 1;
    font-family: "Yu Mincho", "YuMincho";
    margin-top: 27px
}

.brands_viewarea-textarea-hurigana {
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    font-family: "Yu Mincho", "YuMincho";
    letter-spacing: 3px;
    margin-top: 13px
}

.brands_viewarea-textarea-detail {
    margin-top: 25px;
    margin-left: 3px;
    padding-top: 25px;
    position: relative
}

.brands_viewarea-textarea-detail:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #9E9E9E;
    position: absolute;
    top: 2px;
    left: 1px;
    height: 1px;
    width: 100%;
}

.brands_viewarea-textarea-tit {
    font-size: 20px;
    font-weight: 400;
    line-height: 1.4;
    font-family: "Yu Mincho", "YuMincho"
}

.brands_viewarea-textarea-txt {
    font-size: 16px;
    font-weight: 400;
    line-height: 2.15714;
}

.brands_viewarea-textarea-txt:not(:first-of-type) {
    margin-top: 11px
}

.brands_viewarea-textarea-table {
    margin-top: 20px;
    position: relative;
    z-index: 99
}

.brands_viewarea-textarea-table dl {
    font-size: 15px;
    font-weight: 400;
    line-height: 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-top: 1px solid #ddd;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 10px 0 14px 3px;
}

.brands_viewarea-textarea-table dt {
    min-width: 136px
}

.brands_viewarea-textarea-table dd {
    font-size: 13px;
    line-height: 1.23077;
    color: #000000;
    display: inline-block;
    word-break: break-all
}

.brands_viewarea-textarea-table dd a {
    font-size: 15px;
    line-height: 1.23077;
    color: #1c7098;
    display: inline-block;
    word-break: break-all;
}

.brands_viewarea-textarea-table dd a[target="_blank"]:after {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-image: url(../images/common/ico-blank_sm-glay.svg);
    margin-top: -4px;
    margin-left: 4px;
    -webkit-transition: background-image .2s linear;
    transition: background-image .2s linear;
    height: 8px;
    width: 8px
}

@media screen and (min-width: 768px) and (max-height: 690px) {
    .brands_viewarea-wrap {
        height: calc(100% - 5%);
        width: calc(100% - 5%)
    }
    .brands_viewarea-inner {
        height: inherit
    }
    .brands_viewarea-textarea {
        overflow-y: auto
    }
}

@media screen and (max-width: 767px) {
    .brands__viewarea {
        padding: 38px 20px 60px
    }
    .brands__viewarea--tit {
        font-size: 12px;
        line-height: 1;
        margin-left: -2px
    }
    .brands__viewarea--tit-catename {
        letter-spacing: 2.6px
    }
    .brands__viewarea--tit-brandkind {
        letter-spacing: 2.6px;
        margin-left: 11px;
        padding-left: 13px
    }
    .brands__viewarea--tit-brandkind:before {
        top: 2px;
        height: 8px
    }
    .brands__viewarea--inner {
        margin-top: 22px
    }
    .brands__viewarea--list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: 0
    }
    .brands__viewarea--link {
        padding: 23px 0px 30px;
        height: 188px;
        width: 100%
    }
    .brands__viewarea--link:before,
    .brands__viewarea--link:after {
        bottom: 15px;
        right: 10px;
        width: 10px
    }
    .brands__viewarea--item {
        width: calc((100% / 2) - 1px)
    }
    .brands__viewarea--item:nth-of-type(even) {
        margin-left: 1px
    }
    .brands__viewarea--item:nth-of-type(n+3) {
        margin-top: 1px
    }
    .brands__viewarea--item-tit {
        font-size: 10px;
        line-height: 1;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-left: 9px
    }
    .brands__viewarea--item-tit-catename {
        letter-spacing: .3px
    }
    .brands__viewarea--item-tit-brandkind {
        letter-spacing: .3px;
        margin-top: 3px;
        margin-left: 0;
        padding-left: 0
    }
    .brands__viewarea--item-tit-brandkind:before {
        display: none
    }
    .brands__viewarea--item-image {
        margin-top: 28px;
        margin-left: 4px
    }
    .brands_viewarea {
        bottom: 0;
        left: 0;
        right: 0;
        top: 0;
        height: 100%;
        width: 100%
    }
    .brands_viewarea_ichiran {
        font-size: 1.3em;
        text-align: center;
        margin-bottom: 30px;
    }
    .brands_viewarea-bg {
        bottom: 0;
        right: 0
    }
    .brands_viewarea-wrap {
        bottom: 0;
        display: block;
        left: 0;
        overflow-y: auto;
        position: relative;
        -webkit-overflow-scrolling: touch;
        right: 0;
        top: 0;
        height: inherit;
        width: 100%;
        z-index: 1
    }
    .brands_viewarea-inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 20px;
        position: relative;
        width: 100%;
        z-index: 999999
    }
    .brands_viewarea-imagearea {
        height: 250px;
        width: 100%;
        min-width: 100%
    }
    .brands_viewarea-image {
        display: inline-block;
        height: 100%;
        width: 100%
    }
    .brands_viewarea-image img,
    .brands_viewarea-image source {
        -o-object-fit: cover;
        object-fit: cover;
        font-family: "object-fit: cover";
        height: 100%;
        width: 100%
    }
    .brands_viewarea-image img {
        display: inline-block
    }
    .brands_viewarea-textarea {
        padding: 20px 20px;
        width: 100%;
    }
    .brands_viewarea-textarea:after {
        font-size: 177.5px;
        font-weight: 400;
        line-height: 1;
        bottom: -188px;
        content: "";
        color: rgba(145, 124, 80, 0.03);
        left: 30px;
        letter-spacing: -53px;
        position: absolute
    }
    .brands_viewarea-textarea-caption {
        font-size: 12px;
        line-height: 1
    }
    .brands_viewarea-textarea-caption-catename {
        letter-spacing: .4px
    }
    .brands_viewarea-textarea-caption-brandkind {
        letter-spacing: .4px;
        margin-left: 10px;
        padding-left: 10px
    }
    .brands_viewarea-textarea-caption-brandkind:before {
        top: 2px;
        height: 8px
    }
    .brands_viewarea-textarea-name {
        font-size: 21px;
        line-height: 1;
        margin-top: 20px
    }
    .brands_viewarea-textarea-hurigana {
        font-size: 11px;
        line-height: 1;
        letter-spacing: 3px;
        margin-top: 6px
    }
    .brands_viewarea-textarea-detail {
        margin-top: 12px;
        margin-left: 0;
        padding-top: 22px;
        position: relative
    }
    .brands_viewarea-textarea-detail:before {
        top: 2px;
        left: 0;
        height: 1px;
        width: 100%;
    }
    .brands_viewarea-textarea-tit {
        font-size: 16px;
        line-height: 1.25
    }
    .brands_viewarea-textarea-txt {
        font-size: 12px;
        line-height: 1.75
    }
    .brands_viewarea-textarea-txt:not(:first-of-type) {
        margin-top: 8px
    }
    .brands_viewarea-textarea-table {
        margin-top: 25px
    }
    .brands_viewarea-textarea-table dl {
        font-size: 13px;
        font-weight: 400;
        line-height: 1;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 16px 0 13px 6px
    }
    .brands_viewarea-textarea-table dt {
        min-width: 100%
    }
    .brands_viewarea-textarea-table dd {
        margin-top: 7px
    }
}


/* 時計_商品ページ */

.w_product_viewarea-inner {
    /*     background: #e6e6e6; */
    width: 100%;
    /*     border-top: 1px solid #ddd; */
    padding: 0 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-transform: translate3d(0px, 20px, 0);
    transform: translate3d(0px, 20px, 0);
    -webkit-transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    z-index: 1;
}

.w_product_viewarea-inner h1 {
    font-size: 25px
}

.w_product_viewarea-inner .wrap {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    display: flex;
    flex-wrap: nowrap;
}

.is-open .w_product_viewarea-inner {
    -webkit-transform: translate3d(0px, 0px, 0);
    transform: translate3d(0px, 0px, 0);
    -webkit-transition: opacity 0.3s linear 0.1s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
    transition: opacity 0.3s linear 0.1s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
    transition: opacity 0.3s linear 0.1s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
    transition: opacity 0.3s linear 0.1s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s
}

@media screen and (min-width: 768px) {
    .w_product_viewarea-inner {
        /* height: 728px; */
    }
}

@media screen and (min-width: 1500px) {
    .w_product_viewarea-inner {
        /* position: absolute; */
        /* top: calc(((100% - 728px) / 2)) */
    }
}

.w_product_viewarea-imagearea {
    background-color: #fff;
    min-width: 512px;
    overflow: hidden;
    width: 30%;
    padding: 5% 2%;
}

@media screen and (max-width: 1180px) {
    .w_product_viewarea-imagearea {
        min-width: 350px;
        width: 350px
    }
}

.w_product_viewarea-image {
    width: 100%;
}

.w_product_viewarea-image source,
.w_product_viewarea-image img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover";
    /* height: 100%; */
    width: 100%;
}

.w_product_viewarea-textarea {
    background-color: #fff;
    overflow: hidden;
    padding: 50px 2%;
    /* position: relative; */
    /* width: 70%; */
    flex: 0 0 60%;
}

@media screen and (max-width: 1080px) {
    .w_product_viewarea-textarea {
        overflow-y: auto
    }
}

@media screen and (max-width: 767px) {
    .w_product_viewarea-textarea {
        overflow-y: hidden
    }
    .w_product_viewarea-inner .wrap {
        width: 100%;
        flex-wrap: wrap;
    }
}

.w_product_viewarea-textarea-name {
    font-size: 26px;
    font-weight: 400;
    line-height: 1.3;
    font-family: "Yu Mincho", "YuMincho";
    margin-top: 27px;
}

.w_product_viewarea-textarea-hurigana {
    font-size: 14px;
    font-weight: 500;
    line-height: 1;
    font-family: "Yu Mincho", "YuMincho";
    letter-spacing: 3px;
    margin-top: 13px;
}

.w_product_viewarea-textarea-detail {
    margin-top: 25px;
    margin-left: 3px;
    padding-top: 25px;
    position: relative
}

.w_product_viewarea-textarea-detail:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #9E9E9E;
    position: absolute;
    top: 2px;
    left: 1px;
    height: 1px;
    width: 100%;
}

.w_product_viewarea-textarea-tit {
    font-size: 18px;
    font-weight: 500;
    line-height: 1.4;
    font-family: "Yu Mincho", "YuMincho";
}

.w_product_viewarea-textarea-txt {
    font-size: 15px;
    font-weight: 500;
    line-height: 2.1;
}

.w_product_viewarea-textarea-txt img {
    float: left;
    padding: 1em;
}

.w_product_viewarea-textarea-txt .img_fl {
    float: left;
    padding: 1em;
}

.w_product_viewarea-textarea-txt:not(:first-of-type) {
    margin-top: 11px
}

.w_product_viewarea_flexbox_etc {
    display: flex;
    flex-wrap: wrap;
    padding: 5px;
}


/* @media only screen and (min-width: 600px) {
.boxHozon {
	width: calc(100%/2.1);
}
}
 */

@media only screen and (min-width: 1000px) {
    .boxHozon {
        width: calc(48%);
        margin-bottom: 20px;
    }
}

.w_product_viewarea-price {
    margin-top: 25px;
}

.brands_viewarea-textarea-table {
    margin-top: 20px;
    position: relative;
    z-index: 99
}

.w_product_viewarea-price dl {
    font-size: 13px;
    font-weight: 400;
    line-height: 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-top: 1px solid #ddd;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px 0 19px 6px;
}

.w_product_viewarea-price dt {
    min-width: 136px
}

.w_product_viewarea-price dd {
    font-size: 15px;
    line-height: 1.23077;
    /*     color: #23a9db;
    display: inline-block; */
    word-break: break-all
}

.w_product_viewarea-price dd [target="_blank"]:after {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-image: url(../images/common/ico-blank_sm-glay.svg);
    margin-top: -4px;
    margin-left: 4px;
    -webkit-transition: background-image .2s linear;
    transition: background-image .2s linear;
    height: 8px;
    width: 8px
}

.w_product_viewarea-price dd span {
    font-size: 13px;
    line-height: 1.23077;
    /*     color: #23a9db;
    display: inline-block; */
    word-break: break-all
}

.w_product_viewarea-textarea-table {
    margin-top: 25px;
    padding: 10px;
    background: #eee;
    margin: 3%;
    border-radius: 5px;
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.w_product_viewarea-textarea-table dl {
    font-size: 13px;
    font-weight: 400;
    line-height: 1;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 16px 0 13px 6px;
    border-top: 1px solid #ddd;
}

.w_product_viewarea-textarea-table dt {
    min-width: 100%
}

.w_product_viewarea-textarea-table dd {
    margin-top: 7px
}

.w_product_viewarea-textarea-table li {
    line-height: 1.8;
    font-size: 13px;
}

.w_product_spec {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    /*折り返し有り・複数行*/
    width: 100%;
    padding: 10px;
}

.w_product_spec>div {
    margin: 0 5px;
    flex: 0 0 98%;
}

@media screen and (min-width: 768px) {
    .w_product_spec>div {
        margin: 0 5px;
        flex: 0 0 24%;
    }
}

@media screen and (min-width: 768px) and (max-height: 690px) {
    .w_product_viewarea-wrap {
        height: calc(100% - 5%);
        width: calc(100% - 5%)
    }
    .w_product_viewarea-inner {
        height: inherit
    }
    .w_product_viewarea-textarea {
        overflow-y: auto
    }
}

@media screen and (max-width: 767px) {
    .w_product__viewarea {
        padding: 38px 20px 60px
    }
    .w_product__viewarea--tit {
        font-size: 12px;
        line-height: 1;
        margin-left: -2px
    }
    .w_product__viewarea--tit-catename {
        letter-spacing: 2.6px
    }
    .w_product__viewarea--tit-brandkind {
        letter-spacing: 2.6px;
        margin-left: 11px;
        padding-left: 13px
    }
    .w_product__viewarea--tit-brandkind:before {
        top: 2px;
        height: 8px
    }
    .w_product__viewarea--inner {
        margin-top: 22px
    }
    .w_product__viewarea--list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: 0
    }
    .w_product__viewarea--link {
        padding: 23px 0px 30px;
        height: 188px;
        width: 100%
    }
    .w_product__viewarea--link:before,
    .w_product__viewarea--link:after {
        bottom: 15px;
        right: 10px;
        width: 10px
    }
    .w_product__viewarea--item {
        width: calc((100% / 2) - 1px)
    }
    .w_product__viewarea--item:nth-of-type(even) {
        margin-left: 1px
    }
    .w_product__viewarea--item:nth-of-type(n+3) {
        margin-top: 1px
    }
    .w_product__viewarea--item-tit {
        font-size: 10px;
        line-height: 1;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-left: 9px
    }
    .w_product__viewarea--item-tit-catename {
        letter-spacing: .3px
    }
    .w_product__viewarea--item-tit-brandkind {
        letter-spacing: .3px;
        margin-top: 3px;
        margin-left: 0;
        padding-left: 0
    }
    .w_product__viewarea--item-tit-brandkind:before {
        display: none
    }
    .w_product__viewarea--item-image {
        margin-top: 28px;
        margin-left: 4px
    }
    .w_product_viewarea {
        bottom: 0;
        left: 0;
        right: 0;
        top: 0;
        height: 100%;
        width: 100%
    }
    .w_product_viewarea-bg {
        bottom: 0;
        right: 0
    }
    .w_product_viewarea-wrap {
        bottom: 0;
        display: block;
        left: 0;
        overflow-y: auto;
        position: relative;
        -webkit-overflow-scrolling: touch;
        right: 0;
        top: 0;
        height: inherit;
        width: 100%;
        z-index: 1
    }
    .w_product_viewarea-inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 5px;
        position: relative;
        width: 100%;
        z-index: 999999;
    }
    .w_product_viewarea-imagearea {
        height: 250px;
        width: 100%;
        min-width: 100%
    }
    .w_product_viewarea-image {
        display: inline-block;
        height: 100%;
        width: 100%
    }
    .w_product_viewarea-image img,
    .w_product_viewarea-image source {
        -o-object-fit: cover;
        object-fit: cover;
        font-family: "object-fit: cover";
        height: 100%;
        width: 100%
    }
    .w_product_viewarea-image img {
        display: inline-block
    }
    .w_product_viewarea-textarea {
        padding: 20px 20px;
        width: 100%;
        flex: 0 0 100%;
    }
    .w_product_viewarea-textarea:after {
        font-size: 177.5px;
        font-weight: 400;
        line-height: 1;
        bottom: -188px;
        content: "";
        color: rgba(145, 124, 80, 0.03);
        left: 30px;
        letter-spacing: -53px;
        position: absolute
    }
    .w_product_viewarea-textarea-caption {
        font-size: 12px;
        line-height: 1
    }
    .w_product_viewarea-textarea-caption-catename {
        letter-spacing: .4px
    }
    .w_product_viewarea-textarea-caption-brandkind {
        letter-spacing: .4px;
        margin-left: 10px;
        padding-left: 10px
    }
    .w_product_viewarea-textarea-caption-brandkind:before {
        top: 2px;
        height: 8px
    }
    .w_product_viewarea-textarea-name {
        font-size: 21px;
        line-height: 1;
        margin-top: 20px
    }
    .w_product_viewarea-textarea-hurigana {
        font-size: 11px;
        line-height: 1;
        letter-spacing: 3px;
        margin-top: 6px
    }
    .w_product_viewarea-textarea-detail {
        margin-top: 12px;
        margin-left: 0;
        padding-top: 22px;
        position: relative
    }
    .w_product_viewarea-textarea-detail:before {
        top: 2px;
        left: 0;
        height: 1px;
        width: 100%;
    }
    .w_product_viewarea-textarea-tit {
        font-size: 16px;
        line-height: 1.25
    }
    .w_product_viewarea-textarea-txt {
        font-size: 12px;
        line-height: 1.75
    }
    .w_product_viewarea-textarea-txt:not(:first-of-type) {
        margin-top: 8px
    }
    .w_product_viewarea-textarea-table {
        margin-top: 20px;
        position: relative;
        z-index: 99
    }
    .w_product_viewarea-textarea-table dl {
        font-size: 13px;
        font-weight: 400;
        line-height: 1;
        /* -webkit-box-align: center; */
        -ms-flex-align: center;
        /* align-items: center; */
        border-top: 1px solid #ddd;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 20px 0 19px 6px;
    }
    .w_product_viewarea-textarea-table dt {
        min-width: 136px
    }
    .w_product_viewarea-textarea-table dd a {
        font-size: 13px;
        line-height: 1.23077;
        color: #23a9db;
        display: inline-block;
        word-break: break-all
    }
    .w_product_viewarea-textarea-table dd a[target="_blank"]:after {
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        content: "";
        display: inline-block;
        vertical-align: middle;
        /*     background-image: url(../images/common/ico-blank_sm-glay.svg); */
        margin-top: -4px;
        margin-left: 4px;
        -webkit-transition: background-image .2s linear;
        transition: background-image .2s linear;
        height: 8px;
        width: 8px
    }
    /*     .w_product_viewarea-textarea-table {
        margin-top: 25px
    }

    .w_product_viewarea-textarea-table dl {
        font-size: 13px;
        font-weight: 400;
        line-height: 1;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 16px 0 13px 6px
    }

    .w_product_viewarea-textarea-table dt {
        min-width: 100%
    }

    .w_product_viewarea-textarea-table dd {
        margin-top: 7px
    } */
}


/* 時計_商品ページ　↑↑ */


/* ----------------------------------------------------------- */


/* 時計メンテナンス */


/* watch_mainte
-----------------------------------------------------------------*/

.watch_mainte {
    margin-top: 12.4vw;
}

@media only screen and (max-width: 767px) {
    .watch_mainte {
        margin-top: 100px;
    }
}

.watch_mainte_body {
    background-color: #fff;
    max-width: 1200px;
    padding: 46px 100px 22px;
    position: relative;
    box-shadow: 0 0 20px rgba(0, 0, 0, .1);
    margin: 0 auto;
}

.watch_mainte_body h2 {
    font-size: 25px;
    color: #607d8b;
}

@media screen and (max-width: 1100px) {
    .watch_mainte_body {
        padding: 30px 5vw 20px;
    }
}

@media screen and (max-width: 500px) {
    .watch_mainte_body {
        padding: 30px 8vw 20px;
    }
    .watch_mainte_body h2 {
        font-size: 21px;
    }
}

.watch_mainte_obj {
    position: absolute;
    top: -.75em;
    right: 6%;
    line-height: 1;
    font-family: 'Oswald', sans-serif;
    font-size: 80px;
    font-weight: 700;
    color: rgba(38, 38, 38, .04);
}

@media screen and (max-width: 1100px) {
    .watch_mainte_obj {
        right: 0;
        font-size: 80px;
    }
}

@media only screen and (max-width: 767px) {
    .watch_mainte_obj {
        right: -12vw;
    }
}

.watch_mainte_item {
    padding: 43px 0;
    display: -ms-flexbox;
    display: flex;
    border-bottom: 1px solid #dedede;
    -ms-flex-align: start;
    align-items: flex-start;
}

@media screen and (max-width: 1100px) {
    .watch_mainte_item {
        padding: 30px 0;
        display: block;
    }
}

.watch_mainte_item:last-of-type {
    border-bottom: 0;
}

.watch_mainte_item_title {
    width: 22.5%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

.watch_mainte_item_title img {
    width: 100%;
    padding: 5%;
}

.watch_mainte_item_img {
    width: 22.5%;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
}

@media screen and (max-width: 1100px) {
    .watch_mainte_item_title {
        width: auto;
    }
}

.watch_mainte_item_title_num {
    line-height: 1;
    font-family: 'Oswald', sans-serif;
    font-size: 20px;
    font-weight: 700;
    color: #333;
}

@media screen and (max-width: 1100px) {
    .watch_mainte_item_title_num {
        font-size: 20px;
    }
}

.watch_mainte_item_title_text {
    margin-left: 5%;
    letter-spacing: .05em;
    font-size: 22px;
    font-weight: 700;
}

@media screen and (max-width: 1100px) {
    .watch_mainte_item_title_text {
        margin-left: 2%;
        font-size: 18px;
    }
}

.watch_mainte_item_text {
    width: 55.5%;
    line-height: 2;
    letter-spacing: .1em;
    font-size: 18px;
    font-weight: 500;
}

@media screen and (max-width: 1100px) {
    .watch_mainte_item_text {
        width: auto;
        margin-top: 2%;
        font-size: 16px;
    }
}

.watch_mainte_item_title_text {
    margin-left: 5%;
    letter-spacing: .05em;
    font-size: 22px;
    font-weight: 700;
}

@media screen and (max-width: 1100px) {
    .watch_mainte_item_title_text {
        margin-left: 2%;
        font-size: 18px;
    }
}

.watch_mainte_item_text {
    width: 51.5%;
    line-height: 2;
    letter-spacing: .1em;
    font-size: 16px;
    font-weight: 400;
    padding: 5px;
}

@media screen and (max-width: 1100px) {
    .watch_mainte_item_text {
        width: auto;
        margin-top: 2%;
        font-size: 16px;
    }
}

.watch_mainte_item_other {
    /* margin-left: 5%; */
    /* letter-spacing: .05em; */
    /* font-weight: 700; */
}

@media screen and (max-width: 1100px) {
    .watch_mainte_item_other {
        margin-left: 2%;
        width: auto;
        margin-top: 2%;
    }
}

.watch_mainte_item_other {
    width: 26%;
    line-height: 2;
    letter-spacing: .1em;
    font-size: 15px;
    font-weight: 400;
}

@media screen and (max-width: 1100px) {
    .watch_mainte_item_other {
        width: auto;
        margin-top: 2%;
        font-size: 16px;
    }
}

.watch_mainte_item_other ul {}

.watch_mainte_item_other ul li {
    display: block;
    margin-bottom: 5px;
    padding: 5px;
    border: 1px solid #ddd;
}

.watch_mainte_item_other ul li::before {
    content: "";
    /* padding-right: 5px; */
}


/* -----------------------------------------------------------
   #眼鏡　ブロック↓
   ----------------------------------------------------------- */

.glasses_viewarea {
    /* background-color: #01273a; */
    background: #f1f1f1;
    padding: 77px 4.3% 123px 4.3%;
    /* border: 1px solid #607D8B; */
}

@media screen and (min-width: 1260px) {
    .glasses_viewarea {
        /* background-color: #01273a; */
        background: #f1f1f1;
        padding: 77px 1.3% 123px 1.3%;
        /* border: 1px solid #607D8B; */
    }
}

.glasses_viewarea-tit {
    font-size: 20px;
    font-weight: 300;
    line-height: 1;
    font-family: "Halant", serif;
    font-weight: 300;
    -webkit-transform: scaleY(0.9);
    transform: scaleY(0.9);
    -webkit-transform-origin: center;
    transform-origin: center;
    display: inline-block;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #917c50;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: -16px
}

.glasses_viewarea-tit-catename {
    letter-spacing: 4.5px
}

.glasses_viewarea-tit-brandkind {
    letter-spacing: 4.5px;
    margin-left: 25px;
    padding-left: 30px;
    position: relative
}

.glasses_viewarea-tit-brandkind:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #917c50;
    left: 0;
    top: 3px;
    position: absolute;
    height: 12px;
    width: 1px
}

.glasses_viewarea-tit-brandkind.no-line {
    margin-left: 0;
    padding-left: 0
}

.glasses_viewarea-tit-brandkind.no-line:before {
    display: none
}

.glasses_viewarea-inner {
    /* margin-top: 55px */
}

.glasses_list {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
}

.glasses_link {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-color: #fff;
    cursor: pointer;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    /* -webkit-box-pack: start; */
    -ms-flex-pack: start;
    /* justify-content: flex-start; */
    padding: 28px 30px 30px;
    position: relative;
    -webkit-transition: -webkit-box-shadow .2s linear;
    transition: -webkit-box-shadow .2s linear;
    transition: box-shadow .2s linear;
    transition: box-shadow .2s linear, -webkit-box-shadow .2s linear;
    height: 305px;
    width: calc (100% / 4);
    /* width: -webkit-calc(100% / 3); */
    width: 98%;
    margin: 1%;
}


/* .glasses_link:before, */

.glasses_link:after {}


/* .brands_link:hover:before, */

.glasses_link:hover:after {}

.glasses_link:before {}

.glasses_link:hover:before {
    font-family: 'Font Awesome 6 pro';
    content: "\f08e";
    font-family: 'themify';
    content: "\e732";
    font-size: 20px;
    bottom: 20px;
    right: 20px;
    position: absolute;
    /*      transition: -webkit-box-shadow .2s linear;
    transition: box-shadow .2s linear;
    transition: box-shadow .2s linear, -webkit-box-shadow .2s linear; */
}

.glasses_link:after {
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg)
}

.glasses_link:hover {
    -webkit-box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
    box-shadow: 0px 0px 20px 0px rgba(0, 0, 0, 0.1);
    z-index: 99;
    background: hsl(0deg 7% 87% / 60%);
}

.glasses_link.not-have-logo {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

.glasses_link.not-have-logo .brands_item-titarea {
    margin-top: 2px
}

.glasses_link.not-have-logo .brands_item-brandname {
    margin-top: 25px
}

.glasses_link.not-have-logo .brands_item-brandname-ja {
    margin-top: 9px
}

@media screen and (min-width: 768px) {
    .glasses_item {
        margin-right: 1px;
        margin-bottom: 1px;
        /* border: 1px dashed #ddd; */
        flex: 0 0 24%;
    }
    .glasses_item.empty {
        height: 0;
        width: 366px
    }
}

@media screen and (min-width: 1260px) {
    .glasses_item {
        margin-right: 1px;
        margin-bottom: 1px;
        /* border: 1px dashed #ddd; */
        flex: 0 0 33%;
    }
}

.glasses_item-tit {
    font-size: 14px;
    font-weight: 300;
    line-height: 1;
    font-family: "Halant", serif;
    font-weight: 300;
    -webkit-transform: scaleY(0.9);
    transform: scaleY(0.9);
    -webkit-transform-origin: center;
    transform-origin: center;
    display: inline-block;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    color: #917c50;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-left: 9px
}

.glasses_item-tit-catename {
    letter-spacing: .3px
}

.glasses_item-tit-brandkind {
    letter-spacing: .3px;
    margin-left: 15px;
    padding-left: 15px;
    position: relative
}

.glasses_item-tit-brandkind:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #917c50;
    left: 0;
    top: 2px;
    position: absolute;
    height: 9px;
    width: 1px
}

.glasses_item-brandname {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-top: 10px;
}

.glasses_item-brandname-en {
    font-size: 18px;
    font-weight: 400;
    line-height: 1;
    color: #231815;
    text-align: center
}

.glasses_item-brandname-ja {
    font-size: 12px;
    font-weight: 500;
    line-height: 1;
    color: #aaa;
    font-family: "Yu Mincho", "YuMincho";
    letter-spacing: 2.2px;
    margin-top: 11px;
    margin-left: 4px
}

.glasses_item-txt {
    font-size: 15px;
    /* white-space: nowrap; */
    text-overflow: ellipsis;
    width: 250px;
    max-height: calc(16 * 1.8 * 2 * 1px);
    font-size: 15px;
    line-height: 1.8;
    word-break: break-all;
    overflow: hidden;
    /*     white-space: nowrap; */
    /*   overflow: hidden; */
    /*   text-overflow: ellipsis; */
}

.glasses_item-txt :after {
    content: '...';
    color: #ddd
}

.glasses_item-imagearea {
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 50%;
    width: 100%;
}

.glasses_item-image.logo-trinity {
    /* height: 124px; */
    max-width: 180px;
    width: 60%;
}

@media screen and (min-width: 768px) {}

@media screen and (max-width: 767px) {}

@media all and (-ms-high-contrast: none) {
    /*     .glasses_item {
        -webkit-transition-delay: none;
        transition-delay: none
    } */
}


/* -----------------------------------------------------------
   #眼鏡　↑
   ----------------------------------------------------------- */


/* 眼鏡　ブランド紹介 */

.glasses_viewarea-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-transform: translate3d(0px, 20px, 0);
    transform: translate3d(0px, 20px, 0);
    -webkit-transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    z-index: 1
}

.is-open .glasses_viewarea-inner {
    -webkit-transform: translate3d(0px, 0px, 0);
    transform: translate3d(0px, 0px, 0);
    -webkit-transition: opacity 0.3s linear 0.1s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
    transition: opacity 0.3s linear 0.1s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
    transition: opacity 0.3s linear 0.1s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s;
    transition: opacity 0.3s linear 0.1s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0.1s
}

.glasses_viewarea-inner {
    background: #f3f3f3;
}

.glasses_viewarea-inner:nth-child(odd) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-transform: translate3d(0px, 20px, 0);
    transform: translate3d(0px, 20px, 0);
    -webkit-transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    z-index: 1 flex-direction: row-reverse;
}

.glasses_viewarea-inner:nth-child(even) {
    background: #fff;
}

.glasses_viewarea-image {
    order: 1;
}

@media screen and (min-width: 768px) {
    .glasses_viewarea-inner {
        height: 728px;
    }
}

@media screen and (min-width: 1000px) {
    .glasses_viewarea-inner:nth-child(odd) {
        flex-direction: row-reverse;
    }
    .glasses_viewarea-inner:nth-child(even) {
        background: #fff;
    }
    .glasses_viewarea-inner {
        /* position: absolute; */
        /* top: calc(((100% - 728px) / 2)) */
    }
}

.glasses_viewarea-imagearea {
    background-color: #eee;
    min-width: 512px;
    overflow: hidden;
    width: 30%;
}

@media screen and (max-width: 1180px) {
    .glasses_viewarea-imagearea {
        min-width: 350px;
        width: 350px
    }
}

.glasses_viewarea-image {
    height: 100%
}

.glasses_viewarea-image source,
.glasses_viewarea-image img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover";
    height: 100%;
    width: 100%
}

.glasses_viewarea-textarea {
    /* background-color: #eaeaea; */
    overflow: hidden;
    padding: 60px 115px 0 59px;
    position: relative;
    width: 70%;
}

@media screen and (max-width: 1080px) {
    .glasses_viewarea-textarea {
        overflow-y: auto
    }
}

@media screen and (max-width: 767px) {
    .glasses_viewarea-textarea {
        overflow-y: hidden
    }
}

.glasses_viewarea-textarea-name {
    font-size: 40px;
    font-weight: 400;
    line-height: 1;
    font-family: "Yu Mincho", "YuMincho";
    margin-top: 27px
}

.glasses_viewarea-textarea-hurigana {
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    font-family: "Yu Mincho", "YuMincho";
    letter-spacing: 3px;
    margin-top: 13px;
}

.glasses_viewarea-textarea-detail {
    margin-top: 25px;
    margin-left: 3px;
    padding-top: 25px;
    position: relative
}

.glasses_viewarea-textarea-detail:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #9E9E9E;
    position: absolute;
    top: 2px;
    left: 1px;
    height: 1px;
    width: 100%;
}

.glasses_viewarea-textarea-tit {
    font-size: 20px;
    font-weight: 400;
    line-height: 1.4;
    font-family: "Yu Mincho", "YuMincho"
}

.glasses_viewarea-textarea-txt {
    font-size: 16px;
    font-weight: 400;
    line-height: 2;
}

.glasses_viewarea-textarea-txt:not(:first-of-type) {
    margin-top: 11px
}

.glasses_viewarea-textarea-table {
    margin-top: 20px;
    position: relative;
    z-index: 99
}

.glasses_viewarea-textarea-table dl {
    font-size: 15px;
    font-weight: 400;
    line-height: 1.8;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-top: 1px solid #ddd;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 15px 0 14px 6px;
}

.glasses_viewarea-textarea-table dt {
    min-width: 170px;
}

.glasses_viewarea-textarea-table dd {
    font-size: 15px;
    line-height: 1.23077;
    color: #000000;
    display: inline-block;
    word-break: break-all;
}

.glasses_viewarea-textarea-table dd a {
    font-size: 13px;
    line-height: 1.23077;
    color: #1c7098;
    display: inline-block;
    word-break: break-all;
}

.glasses_viewarea-textarea-table dd a[target="_blank"]:after {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-image: url(../images/common/ico-blank_sm-glay.svg);
    margin-top: -4px;
    margin-left: 4px;
    -webkit-transition: background-image .2s linear;
    transition: background-image .2s linear;
    height: 8px;
    width: 8px
}

@media screen and (min-width: 768px) and (max-height: 690px) {
    .glasses_viewarea-wrap {
        height: calc(100% - 5%);
        width: calc(100% - 5%)
    }
    .glasses_viewarea-inner {
        height: inherit
    }
    .glasses_viewarea-textarea {
        overflow-y: auto
    }
}

@media screen and (max-width: 767px) {
    .brands__viewarea {
        padding: 38px 20px 60px
    }
    .glasses_viewarea-tit {
        font-size: 12px;
        line-height: 1;
        margin-left: -2px
    }
    .glasses_viewarea-tit-catename {
        letter-spacing: 2.6px
    }
    .glasses_viewarea-tit-brandkind {
        letter-spacing: 2.6px;
        margin-left: 11px;
        padding-left: 13px
    }
    .glasses_viewarea-tit-brandkind:before {
        top: 2px;
        height: 8px
    }
    .glasses_viewarea-inner {
        margin-top: 22px
    }
    .glasses_viewarea-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: 0
    }
    .glasses_viewarea-link {
        padding: 23px 0px 30px;
        height: 188px;
        width: 100%
    }
    .glasses_viewarea-link:before,
    .glasses_viewarea-link:after {
        bottom: 15px;
        right: 10px;
        width: 10px
    }
    .glasses_viewarea-item {
        width: calc((100% / 2) - 1px)
    }
    .glasses_viewarea-item:nth-of-type(even) {
        margin-left: 1px
    }
    .glasses_viewarea-item:nth-of-type(n+3) {
        margin-top: 1px
    }
    .glasses_viewarea-item-tit {
        font-size: 10px;
        line-height: 1;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-left: 9px
    }
    .glasses_viewarea-item-tit-catename {
        letter-spacing: .3px
    }
    .glasses_viewarea-item-tit-brandkind {
        letter-spacing: .3px;
        margin-top: 3px;
        margin-left: 0;
        padding-left: 0
    }
    .glasses_viewarea-item-tit-brandkind:before {
        display: none
    }
    .glasses_viewarea-item-image {
        margin-top: 28px;
        margin-left: 4px
    }
    .glasses_viewarea {
        bottom: 0;
        left: 0;
        right: 0;
        top: 0;
        height: 100%;
        width: 100%
    }
    .glasses_viewarea-bg {
        bottom: 0;
        right: 0
    }
    .glasses_viewarea-wrap {
        bottom: 0;
        display: block;
        left: 0;
        overflow-y: auto;
        position: relative;
        -webkit-overflow-scrolling: touch;
        right: 0;
        top: 0;
        height: inherit;
        width: 100%;
        z-index: 1
    }
    .glasses_viewarea-inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 20px;
        position: relative;
        width: 100%;
        z-index: 999999
    }
    .glasses_viewarea-imagearea {
        height: 250px;
        width: 100%;
        min-width: 100%
    }
    .glasses_viewarea-image {
        display: inline-block;
        height: 100%;
        width: 100%
    }
    .glasses_viewarea-image img,
    .glasses_viewarea-image source {
        -o-object-fit: cover;
        object-fit: cover;
        font-family: "object-fit: cover";
        height: 100%;
        width: 100%
    }
    .glasses_viewarea-image img {
        display: inline-block
    }
    .glasses_viewarea-textarea {
        padding: 20px 20px;
        width: 100%;
    }
    .glasses_viewarea-textarea:after {
        font-size: 177.5px;
        font-weight: 400;
        line-height: 1;
        bottom: -188px;
        content: "";
        color: rgba(145, 124, 80, 0.03);
        left: 30px;
        letter-spacing: -53px;
        position: absolute
    }
    .glasses_viewarea-textarea-caption {
        font-size: 12px;
        line-height: 1
    }
    .glasses_viewarea-textarea-caption-catename {
        letter-spacing: .4px
    }
    .glasses_viewarea-textarea-caption-brandkind {
        letter-spacing: .4px;
        margin-left: 10px;
        padding-left: 10px
    }
    .glasses_viewarea-textarea-caption-brandkind:before {
        top: 2px;
        height: 8px
    }
    .glasses_viewarea-textarea-name {
        font-size: 21px;
        line-height: 1;
        margin-top: 20px
    }
    .glasses_viewarea-textarea-hurigana {
        font-size: 11px;
        line-height: 1;
        letter-spacing: 3px;
        margin-top: 6px
    }
    .glasses_viewarea-textarea-detail {
        margin-top: 12px;
        margin-left: 0;
        padding-top: 22px;
        position: relative
    }
    .glasses_viewarea-textarea-detail:before {
        top: 2px;
        left: 0;
        height: 1px;
        width: 100%;
    }
    .glasses_viewarea-textarea-tit {
        font-size: 16px;
        line-height: 1.25
    }
    .glasses_viewarea-textarea-txt {
        font-size: 16px;
        line-height: 1.75;
    }
    .glasses_viewarea-textarea-txt:not(:first-of-type) {
        margin-top: 8px
    }
    .glasses_viewarea-textarea-table {
        margin-top: 25px
    }
    .glasses_viewarea-textarea-table dl {
        font-size: 13px;
        font-weight: 400;
        line-height: 1;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 16px 0 13px 6px
    }
    .glasses_viewarea-textarea-table dt {
        min-width: 100%
    }
    .glasses_viewarea-textarea-table dd {
        margin-top: 7px
    }
}

@media screen and (max-width: 500px) {
    .glasses_viewarea-imagearea {
        height: 400px;
        width: 100%;
        min-width: 100%
    }
}


/* 眼鏡　ブランド紹介 */
/* -----------------------------------------------------------
#sub_works
----------------------------------------------------------- */
    
    #frame_works {
        /* float: right; */
        width: 100%;
        max-width: 1200px;
        margin: 0 auto;
    }
    
    @media only screen and (max-width: 900px) {
        #frame_works {
            width: 100%;

        }
    }
    
    @media only screen and (max-width: 736px) {
        #frame_works {
            padding: 70px 0;
        }

      
    }
    /* --------- .worksArea --------- */
    
    #frame_works .worksArea {
        z-index: 3;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: stretch;
        padding:1%;
    }
    
    #frame_works .worksArea .worksBox {
        flex: 0 0 24%;
        /* align-items: stretch; */
        /* background: #fff; */
        /* border: 1px solid #ddd; */
        /* border-radius: 0.5em; */
        margin-bottom: 15px;
    }
    





    /* .inner */
    
    #frame_works .worksArea .worksBox .inner {
        position: relative;
        padding: 20px 7.5% 20px;
        z-index: 2;
        border: 1px solid #ddd;
        border-radius: 0;
        /* margin-bottom: 20px; */
    }
    
    #frame_works .worksArea .worksBox .inner:before {
        position: absolute;
        right: 0;
        top: 0;
        left: 0;
        bottom: 0;
        content: "";
        border: #fefefe 0 solid;
        -webkit-transition: all 0.2s ease;
        -moz-transition: all 0.2s ease;
        -o-transition: all 0.2s ease;
        transition: all 0.2s ease;
        z-index: -1;
    }
    
    #frame_works .worksBox:hover .inner:before {
        border: #ccc 2px solid;
        border-radius: 0.5em;
        background:#ccc;
        color:#fff;
    }
    
    #frame_works .worksArea .worksBox .inner .imgArea {
         text-align: center;
    }

    #frame_works .worksArea .worksBox .inner .imgArea img{
        width: 100%;
        margin: 0 auto;
        max-width: 230px;
    }

    #frame_works .worksArea .worksBox .inner p {
      color: #555;
      font-size: 12px;
      text-align: center;
    }
    
    #frame_works .worksArea .worksBox .inner h2 {
        text-align: center;
        color: #555;
        margin: 10px 0 2px;
        font-weight: 600;
        font-size: 18px;
        display: block;
    }
    
    #frame_works .worksArea .worksBox .inner h2:after {
        content: '';
        display: block;
        width: 147px;
        height: 1px;
        background-color: #999;
        position: relative;
        bottom: 0px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
        color:#fff;
    }

    #frame_works .worksArea .worksBox .inner:hover {
        color:#fff;
    }

    #frame_works .worksArea .worksBox .inner:hover h2 {
        color:#fff;
    }


    #frame_works .worksArea .worksBox .inner .tenpo {
        padding: 10px 0;
        text-align: right;
    }
    #frame_works .worksArea .worksBox .inner .tenpo p {
text-align: right;
    }


    #frame_works .worksArea .worksBox .inner .tenpo p span  {
        background: #e5e5e5;
        padding: 0em 0.3em 0.3em;
        /* border-radius: 1em; */
        font-size: 12px;
        line-height: 15px;
        /* color: #fff; */
        margin: 0 0.3em;
        vertical-align: middle;
    }








    /* ul.category */
    
    #frame_works .worksArea .worksBox ul.category {
        margin-top: 20px;
        list-style: none;
        z-index: 2;
        text-align: center;
    }
    
    #frame_works .worksArea .worksBox ul.category li {
        display: inline-block;
        color: #fefefe;
        background: #999;
        font-size: 13px;
        font-weight: 500;
        line-height: 35px;
        letter-spacing: 1px;
        border-radius: 1.5em;
        padding: 0 35px 0 25px;
        position: relative;
        z-index: 1;
    }
    
    #frame_works .worksArea .worksBox ul.category li:after {
        position: absolute;
        top: 0;
        right: 10px;
        bottom: 0;
        font-size: 1.1em;
        /* line-height: 25px; */
        font-family: themify;
        /* content: "\e6ad"; */
        font-weight: normal;
        /* font-family: 'Font Awesome 6 pro'; */
        content: "\e649";
        vertical-align: 0;
    }


    #frame_works .worksArea .worksBox p.category {
        margin-top: 20px;
        list-style: none;
        z-index: 2;
        text-align: center;
    }
    
    #frame_works .worksArea .worksBox p.category {
        /* display: inline-block; */
        color: #555;
        /* background: #999; */
        /* border-bottom: 1px solid #999; */
        font-size: 13px;a
        font-weight: 500;
        line-height: 35px;
        letter-spacing: 1px;
        /* border-radius: 1.5em; */
        padding: 0 35px 0 25px;
        position: relative;
        z-index: 1;
        width: 13em;
        margin: 0 auto;
    }
    
    #frame_works .worksArea .worksBox p.category:after {
        position: absolute;
        top: 2px;
        /* right: 10px; */
        bottom: 0;
        font-size: 1.1em;
        /* line-height: 25px; */
        font-family: themify;
        /* content: "\e6ad"; */
        font-weight: normal;
        /* font-family: 'Font Awesome 6 pro'; */
        content: "\e649";
        vertical-align: 0;
    }












    
       
    #frame_works .worksArea .worksBox p.date {
        position: absolute;
        top: 20px;
        left: 7.5%;
        font-family: 'Poppins', sans-serif;
        font-weight: 500;
        line-height: 40px;
        font-size: 0;
        display: none;
    }
    
    #frame_works .worksArea .worksBox .inner h3 {
        font-size: 15px;
        font-weight: 500;
        line-height: 2;
        letter-spacing: 1px;
        padding: 0;
        margin-top: 10px;
    }
    
    #frame_works .worksArea .worksBox .icon_award {
        position: absolute;
        top: 15px;
        right: 7.5%;
        width: 55px;
        height: 55px;
        content: "";
        background: url(../images/common/icon_award.png) center center no-repeat;
        background-size: cover;
        z-index: 2;
    }
    
    @media only screen and (max-width: 900px) {
        #frame_works .worksArea .worksBox .inner {
            padding: 50px 7.5% 50px;
        }
        #frame_works .worksArea .worksBox .inner p{
            display:block;
        }
        
        #frame_works .worksArea .worksBox .inner:before {
            display: none;
        }


        #frame_works .worksArea .worksBox .inner:hover {
            color:#fff;
            background: #ccc;
            border-radius:0.5em;
        }

        .worksArea .worksBox .inner:hover h2 {
            color:#fff;
        
        }

        
        /* ul.category */
        #frame_works .worksArea .worksBox ul.category {
            margin-top: -35px;
            list-style: none;
            z-index: 2;
            display: block;
        }
        #frame_works .worksArea .worksBox ul.category li {
            padding: 0 15px 0 30px;
            /* margin-top: 50px; */
        }
        /* p.date */
        #frame_works .worksArea .worksBox p.date {
            top: 10px;
            left: 7.5%;
        }
        /*.worksArea .worksBox p.date span { font-size: 13px; }*/
        /* h3 */
        #frame_works .worksArea .worksBox .inner h3 {
            font-size: 14px;
            display: block;
        }
        /* .icon_award */
        #frame_works .worksArea .worksBox .icon_award {
            top: 10px;
            right: 7.5%;
            width: 50px;
            height: 50px;
        }
    }
    
    @media only screen and (max-width: 736px) {

        #frame_works .worksArea .worksBox .inner {
            padding: 40px 7.5% 30px;
        }
        #frame_works .worksArea .worksBox .inner:before {
            display: none;
        }


        /* ul.category */
        #frame_works .worksArea .worksBox ul.category {
            margin-top: 0px;
            list-style: none;
            z-index: 2;
            display: block;
        }
        #frame_works .worksArea .worksBox ul.category li {
            font-size: 11px;
            line-height: 25px;
            letter-spacing: 1px;
            padding: 0 10px 0 20px;
        }
        #frame_works .worksArea .worksBox ul.category li:before {
            left: 5px;
            font-size: 1em;
        }
        /* p.date */
        #frame_works .worksArea .worksBox p.date {
            top: 10px;
            left: 7.5%;
            line-height: 30px;
        }
        /*.worksArea .worksBox p.date span { font-size: 11px; }*/
        /* h3 */
        #frame_works .worksArea .worksBox .inner h3 {
            font-size: 11px;
            line-height: 1.8;
            margin-top: 5px;
        }

        #frame_works .worksArea .worksBox {
            flex: 0 0 49%;
            margin-bottom:10px;
         }

        
    }
    
    @media only screen and (max-width: 500px) {

        #frame_works .worksArea {
            z-index: 3;
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            align-items: stretch;
            padding:20px;
        }
    

        #frame_works .worksArea .worksBox {
            flex: 0 0 100%;
            margin-bottom: 20px;
        }

       



    }
    
    @media only screen and (max-width: 414px) {
        #frame_works .worksArea .worksBox p.date {
            letter-spacing: 0.5px;
        }
        #frame_works .worksArea .worksBox .inner h3 {
            line-height: 1.8;
            display: block;
        }
        #frame_works .worksArea .worksBox ul.category li {
            font-size: 9px;
            padding: 0 20px 0 20px;
        }
        #frame_works .worksArea .worksBox .icon_award {
            top: 6px;
            right: 4%;
            width: 30px;
            height: 30px;
        }
    }



/* メガネ レンズt*/

.box_lens {
    padding: 3rem 2rem;
    border: 2px solid #333;
    text-align: center;
    border-radius: 0.5em;
    margin-bottom: 50px;
}

.box_lens h1 {
    padding-bottom: 0.5rem;
    margin-bottom: 3rem;
    /* background: url(../images/box_lens_titlebg.svg) no-repeat bottom center;
background-size: auto 14px; */
    /* font-family: "YakuHanJP",dnp-shuei-mgothic-std, sans-serif; */
    line-height: 1.6;
    font-size: 141%;
    text-align: center;
    letter-spacing: normal;
}

.box_lens .kitname {
    position: relative;
}

.box_lens .kitname:after {
    position: absolute;
    top: -10px;
    left: -5px;
    content: "";
    display: block;
    width: 90px;
    height: 90px;
    /* background: #ddd; */
    z-index: 1;
}

.box_lens h1 {
    position: relative;
    /* padding: 1.5rem 2rem; */
    border-bottom: 2px solid #333;
    /* border-radius: 10px; */
    /* background: #f9f9f9; */
}

.box_lens h1:before {
    position: absolute;
    bottom: -14px;
    left: 49%;
    width: 0;
    height: 0;
    content: '';
    border-width: 14px 12px 0 12px;
    border-style: solid;
    border-color: #333 transparent transparent transparent;
}

.box_lens h1:after {
    position: absolute;
    bottom: -10px;
    left: 49%;
    width: 0;
    height: 0;
    content: '';
    border-width: 14px 12px 0 12px;
    border-style: solid;
    border-color: #fff transparent transparent transparent;
}

.box_lens p {
    text-align: cente;
    color: #014769;
}

.box_lens .kitname h2,
.box_lens .kitname p {
    position: relative;
    z-index: 2;
}

.box_lens .kitname h2 {
    margin-bottom: 1rem;
    /* font-family: "YakuHanJP",dnp-shuei-mgothic-std, sans-serif; */
    font-size: 176%;
    font-weight: 600;
}

.box_lens .kitname {
    position: relative;
}

.box_lens .kitname:after {
    position: absolute;
    top: -10px;
    left: -5px;
    content: "";
    display: block;
    width: 90px;
    height: 90px;
    /* background: #e5eb36; */
    z-index: 1;
}

.box_lens .kitname h2,
.box_lens .kitname p {
    position: relative;
    z-index: 2;
    text-align: left;
    font-weight: 400;
    color: #333;
}

.box_lens .kitname h2 {
    margin-bottom: 1rem;
    /* font-family: "YakuHanJP",dnp-shuei-mgothic-std, sans-serif; */
    font-size: 110%;
    font-weight: 600;
}

.box_lens .products {
    display: table;
    width: 100%;
    table-layout: fixed;
}

.box_lens .products li {
    display: table-cell;
    vertical-align: top;
}

@media only screen and (max-width: 500px) {
    .box_lens .kitname h2 {
        padding-top: 1rem;
        border-top: 1px solid #333;
    }
    .box_lens .products li {
        display: block;
        vertical-align: top;
    }
    .box_lens p {
        text-align: left;
    }
}

.box_lens .products li>figure,
.box_lens .products li>p {
    display: block;
    text-align: center;
}

.box_lens .products li p {
    position: relative;
    margin-top: 1.5rem;
    font-size: 88%;
    font-weight: 500;
    /* font-family: "YakuHanJP",dnp-shuei-mgothic-std, sans-serif; */
    line-height: 1.6;
    text-align: center;
}

.box_lens .products li p small {
    display: block;
    text-align: center;
}

.box_lens .products li p strong {
    font-size: 146%;
}

.box_lens .products li p strong+small {
    margin-top: .6rem;
}

.about_lens {
    margin-bottom: 50px;
    margin-top: 50px;
}

.about_lens p {
    font-weight: 400;
    line-height: 1.8
}

.col1,
.col2,
.col3,
.col4,
.col5,
.col6,
.col7,
.col8,
.col9,
.col10,
.col11,
.col12 {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    padding: 1.851%;
    width: 100%;
    letter-spacing: normal;
    /* i-b 隙間埋め用 */
    box-sizing: border-box;
}

.col1 img,
.col2 img,
.col3 img,
.col4 img,
.col5 img,
.col6 img,
.col7 img,
.col8 img,
.col9 img,
.col10 img,
.col11 img,
.col12 {
    padding: 20px;
    width: 100%;
}

@media screen and (min-width:768px) {
    #all {
        font-size: 1.6rem;
        /*タブレット基本フォントサイズ*/
    }
    /* on off */
    .on-sp {
        display: none!important;
    }
    .off-sp {
        display: inline-block!important;
    }
    .on-tb {
        display: inline-block;
    }
    .off-tb {
        display: none;
    }
    .on-pc {
        display: none!important;
    }
    .off-pc {
        display: inline-block;
    }
    .mb-0-tb {
        margin-bottom: 0!important;
    }
    .mb-05em-sp {
        margin-bottom: 0!important;
    }
    .mt-1em-tb {
        margin-top: 1em!important;
    }
    .mt-1em-sp {
        margin-top: 0!important;
    }
    .mt-2em-sp {
        margin-top: 0!important;
    }
    .mb-1em-sp {
        margin-bottom: 0!important;
    }
    .mb-2em-sp {
        margin-bottom: 0!important;
    }
    .mt-2em-tb {
        margin-top: 2em!important;
    }
    .mb-2em-tb {
        margin-bottom: 2em!important;
    }
    .ml-1em-tb {
        margin-left: 1em!important;
    }
    .pt-1em-sp {
        padding-top: 0!important;
    }
    /* column*/
    .wrapper {
        width: 100%;
    }
    .col1,
    .col2,
    .col3,
    .col4,
    .col5,
    .col6,
    .col7,
    .col8,
    .col9,
    .col10,
    .col11,
    .col12 {
        /* padding:20px; */
    }
    .col1 {
        width: 8.3333%;
    }
    .col2 {
        width: 16.6666%;
    }
    .col3 {
        width: 25%;
    }
    .col4 {
        width: 33.3333%;
    }
    .col5 {
        width: 48%;
    }
    .col6 {
        width: 50%;
    }
    .col7 {
        width: 58.333%;
    }
    .col8 {
        width: 66.666%;
    }
    .col9 {
        width: 74.999%;
    }
    .col10 {
        width: 83.333%;
    }
    .col11 {
        width: 91.666%;
    }
    .col12 {
        width: 100%;
    }
    .col1 img,
    .col2 img,
    .col3 img,
    .col4 img,
    .col5 img,
    .col6 img,
    .col7 img,
    .col8 img,
    .col9 img,
    .col10 img,
    .col11 img,
    .col12 {
        padding: 20px;
        width: 100%;
    }
}


/*@media screen and (min-width:768px)*/

@media screen and (min-width:1080px) {
    .wrapper {
        max-width: 1200px;
    }
    .col12 {
        max-width: 1200px;
    }
    /*
    .col12.wrap-pd-0,
    .col12.wrap-pd-5px,
    .col12.wrap-pd-10px{
    max-width: 1040px;
    }*/
    #all {
        font-size: 1.6rem;
        /*PC基本フォントサイズ*/
    }
    /* on off */
    .off-tb {
        display: inline-block;
    }
    .on-pc {
        display: inline-block!important;
    }
    .off-pc {
        display: none;
    }
}


/*@media screen and (min-width:1080px)*/

@media screen and (max-width:767px) {
    .col1-sp {
        width: 8.3333%;
    }
    .col2-sp {
        width: 16.6666%;
    }
    .col3-sp {
        width: 25%;
    }
    .col4-sp {
        width: 33.3333%;
    }
    .col5-sp {
        width: 41.6666%;
    }
    .col6-sp {
        width: 50%;
    }
    .col7-sp {
        width: 58.333%;
    }
    .col8-sp {
        width: 66.666%;
    }
    .col9-sp {
        width: 74.999%;
    }
    .col10-sp {
        width: 83.333%;
    }
    .col11-sp {
        width: 91.666%;
    }
}


/*@media screen and (max-width:767px)*/

.control .wrap_flex {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 2%;
}

.control dl {
    /* position: relative; */
    margin-bottom: 50px;
    border: 3px solid #d9dce2;
    border-radius: 15px;
    flex: 0 0 48%;
    letter-spacing: normal;
    box-sizing: border-box;
}

.control dl:nth-child(n+5) {
    margin-bottom: 5px;
}

.control dt {
    position: relative;
    top: -15px;
    margin-bottom: -15px;
    text-align: center;
}

.control dt span {
    display: inline-block;
    background: #FFF;
    padding: 0 3rem;
    line-height: 1.3;
    text-align: center;
    font-size: 20px;
    letter-spacing: 0.5em;
}

.control dd {
    padding: 0 1rem 2rem;
    text-align: center;
    font-size: 100%;
}

.control dl img {
    width: 90%;
    padding: 4%;
}

@media only screen and (max-width: 500px) {
    .control dl {
        flex: 0 0 99%;
    }
    .control dl img {
        width: 96%;
        padding: 2%;
    }
}


/*number_title*/

.number_title {
    position: relative;
    margin-bottom: 4rem;
    text-align: center;
    /* font-family: dnp-shuei-mgothic-std, sans-serif; */
    font-size: 176%;
    line-height: 1.3;
}

.number_title:before,
.number_title:after {
    position: absolute;
    left: 5%;
    top: 50%;
    transform: translateY(-50%);
    content: "";
    width: 40px;
    height: 1px;
    border-top: 1px dashed #000000;
}

.number_title:after {
    left: auto;
    right: 5%;
}

.number_title strong {
    position: relative;
    z-index: 2;
}

.number_title span {
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: rgb(0 0 0 / 10%);
    /* font-family: 'Ropa Sans', sans-serif; */
    font-size: 14rem;
    z-index: 1;
}

#service_flow .number_title span img {
    display: block;
}

.back_gray .number_title span {
    color: #FFF;
}


/* CONTENTS */


/* SERVICE INDEX */

.number_title {
    margin-bottom: 6rem;
}

.number_title:before,
.number_title:after {
    width: 140px;
}

.number_title span {
    font-size: 13rem;
}

#service_flow .number_title span img {
    width: 120px;
}

@media only screen and (max-width: 500px) {
    .number_title:before,
    .number_title:after {
        width: 40px;
    }
}


/* -----------------------------------------------------------
   #shop_店舗紹介
   ----------------------------------------------------------- */


/* #shop_company { padding: 90px 5%; background: url(../images/common/noise.png) repeat #f5f5f5;} */

@media only screen and (max-width: 900px) {
    #shop_company {
        padding: 80px 5%;
    }
}

@media only screen and (max-width: 738px) {
    #shop_company {
        padding: 30px 5%;
    }
}


/* .aboutArea */

#shop_company .aboutArea {
    padding: 50px 5%;
    background: #fefefe;
}

#shop_company .logoArea {
    float: left;
    width: 45%;
}

#shop_company .logoArea .imgArea {
    border: #e5e8ef 1px solid;
}

#shop_company .logoArea .imgArea img {
    width: 100%;
}


/* .infoArea */

#shop_company .infoArea {
    float: right;
    width: 50%;
}

@media only screen and (max-width: 900px) {
    /* .aboutArea */
    #shop_company .aboutArea {
        padding: 45px 5%;
    }
}

@media only screen and (max-width: 736px) {
    /* .aboutArea */
    #shop_company .aboutArea {
        padding: 0;
        background: none;
        margin-top: 50px;
    }
    #shop_company .logoArea {
        float: none;
        width: 100%;
    }
    #shop_company .logoArea .imgArea {
        background: #fefefe;
        border: #ddd 1px solid;
    }
    #shop_company .logoArea h2 {
        font-size: 16px;
        padding-bottom: 5px
    }
    /* .infoArea */
    #shop_company .infoArea {
        margin-top: 35px;
        float: none;
        width: 100%;
    }
}

#shop_company .infoArea p {
    padding: 2%;
    margin-top: 10px;
    background: #efeeee;
    font-size: 14px;
    line-height: 1.8;
}

#shop_company .aboutArea:first-child {
    margin-top: 0px;
}


/* ======== table.tableOther ======== */

table.company {
    border-collapse: collapse;
    text-align: left;
    font-size: 14px;
    letter-spacing: 1px;
    line-height: 1.9;
    width: 100%;
    border-bottom: #e5e8ef 1px solid;
}

table.company tr {
    border-top: #e5e8ef 1px solid;
}

table.company th {
    width: 25%;
    padding: 20px 0;
    vertical-align: 0;
    font-weight: 700;
}

table.company th span {
    display: block;
    font-weight: 500;
    font-size: 0.9em;
}

table.company td {
    padding: 20px 0;
    vertical-align: 0;
}

table.company td .linkArea {
    margin-top: 10px;
    text-align: left;
}

table.company td .linkArea a.btn {
    margin: 0;
}

@media only screen and (max-width: 900px) {
    table.company {
        font-size: 13px;
    }
}

@media only screen and (max-width: 736px) {
    table.company {
        font-size: 12px;
        line-height: 1.8;
        border-bottom: #ddd 1px solid;
    }
    table.company tr {
        border-top: #ddd 1px solid;
    }
    table.company th {
        width: 30%;
        letter-spacing: 0.5px;
    }
}


/* -----------------------------------------------------------
   
      access_map
   
   ----------------------------------------------------------- */

.access_map {
    padding: 10px;
    margin: 20px 0 20px;
    /*background: #1a1a1a;*/
    /*	background: #fff url(../images/site_bcg04.png);
       color:#fff;
   
       -webkit-border-radius: 5px;
       -moz-border-radius: 5px;
       -o-border-radius: 5px;
       border-radius: 5px;
   
       -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
       -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
       box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);*/
    /* background: #f7f7f7; */
    border: 1px solid #dedede;
    /* -webkit-box-shadow: 0 1px 4px rgba(0,0,0,.2), 0 -1px 0 #f2f2f2; */
    -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, .2), 0 -1px 0 #f2f2f2;
    /* box-shadow: 0 1px 4px rgba(0,0,0,.2), 0 -1px 0 #f2f2f2; */
}

.access_map p {
    font-size: 18px;
    font-weight: 600;
}

.access_map h3 {
    font-size: 15px;
    font-weight: 600;
}


/* ヤマザキの歴史 */


/*============================================================
  history
============================================================*/

{
    padding-top: 0;
}

.history-body {
    padding-bottom: 2.8vw;
    border-radius: 0px;
    border: 1px solid #ccc;
    overflow: hidden;
    margin-bottom: 2.8vw;
}

@media (max-width: 768px) and (orientation: portrait) {
    .history-body {
        padding-bottom: 6vw;
    }
}


/*  content
  ------------------------------------------------*/

.history-content .history-title {
    /* display: table; */
    width: 40vw;
    height: 15vw;
    /* background-color: rgba(255,255,255,0.60); */
    border-radius: 4px;
    position: absolute;
    right: 0;
    top: 2.8vw;
    left: 0;
    /* margin: 0 auto; */
}

.yamazaki-content .history-title .history-inner {
    display: table-cell;
    width: 100%;
    height: 100%;
    /* max-height: 200px; */
    text-align: left;
    vertical-align: middle;
}

.history-content .history-title .txt-title>span {
    display: history;
    color: #555;
    letter-spacing: 0.16em;
    line-height: 1;
}

.history-content .history-title .txt-title>strong {
    display: history;
    color: #555;
    letter-spacing: 0.2em;
    line-height: 1;
    margin-top: 1.6rem;
}

.history-content .history-title .txt-title::before,
.history-content .history-title .txt-title::after {
    display: none;
}

.history-content .history-title .history-logo {
    margin-top: 14%;
    position: relative;
}

.history-content .history-title .pic-logo {
    display: history;
    margin: 0 auto;
}

.history-content .history-title .pic-logo+.pic-logo {
    margin-top: 16%;
}

.history-content .history-title .pic-logo+.pic-logo::before,
.history-content .history-title .pic-logo+.pic-logo::after {
    content: "";
    display: history;
    width: 4rem;
    height: 1px;
    margin: auto;
    background-color: #666;
    position: absolute;
    left: 0;
    right: 0;
    top: 0.8rem;
    bottom: 0;
}

.history-content .history-title .pic-logo+.pic-logo::before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.history-content .history-title .pic-logo+.pic-logo::after {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.history-content .history-title .pic-logo.ondo {
    width: 24%;
}

.history-content .history-title .pic-logo.beans {
    width: 24%;
}

.history-content .history-letter {
    width: 100%;
}

.history-content .history-letter .wrap {
    padding: 5.6vw 2.3vw 0;
    padding: 0;
    /* max-width: 1280px; */
    margin: 0 auto;
    width: 100%;
}

.history-content .history-letter dl {
    padding-top: 5.6vw;
}

.history-content .history-letter .txt-answer+.txt-question {
    margin-top: 4.2vw;
}

.history-content .history-letter .txt-answer {
    padding: 0 1vw;
    margin-top: 1.6rem;
}

@media (max-width: 768px) and (orientation: portrait) {
    .history-content .history-image {
        width: 150%;
    }
    .history-content .history-title {
        display: history;
        width: 100%;
        height: auto;
        background-color: none;
        border-radius: 0;
        margin-top: 4rem;
        position: static;
    }
    .history-content .history-title .history-inner {
        display: history;
    }
    .history-content .history-title .history-logo {
        display: table;
        table-layout: fixed;
        width: 90%;
        margin: 5.2rem auto 2rem;
    }
    .history-content .history-title .pic-logo {
        display: table-cell;
        width: 50%;
        text-align: center;
        vertical-align: middle;
    }
    .history-content .history-title .pic-logo+.pic-logo {
        margin-top: 0;
    }
    .history-content .history-title .pic-logo+.pic-logo::before,
    .history-content .history-title .pic-logo+.pic-logo::after {
        top: 0;
    }
    .history-content .history-title .pic-logo.ondo {
        width: 50%;
    }
    .history-content .history-title .pic-logo.ondo>img {
        width: 44%;
        margin-bottom: 2%;
    }
    .history-content .history-title .pic-logo.beans {
        width: 50%;
    }
    .history-content .history-title .pic-logo.beans>img {
        width: 44%;
    }
    .history-content .history-letter {
        /* border-bottom: 1px solid #eee; */
        padding: 6vw 6vw;
    }
    .history-content .history-letter .txt-answer+.txt-question {
        margin-top: 4vw;
    }
    .history-content .history-letter .txt-answer {
        padding: 0;
        margin-top: 1rem;
    }
}


/* ヤマザキの歴史 */


/* グランドセイコーhistory */


/*============================================================
  produce
============================================================*/

{
    padding-top: 0;
}

.block-body {
    padding-bottom: 2.8vw;
    border-radius: 0px;
    border: 1px solid #ccc;
    overflow: hidden;
    margin-bottom: 2.8vw;
}

@media (max-width: 768px) and (orientation: portrait) {
    .block-body {
        padding-bottom: 6vw;
    }
}


/*  content
  ------------------------------------------------*/

.block-content .block-title {
    /* display: table; */
    width: 40vw;
    height: 15vw;
    /* background-color: rgba(255,255,255,0.60); */
    border-radius: 4px;
    position: absolute;
    right: 0;
    top: 2.8vw;
    left: 0;
    /* margin: 0 auto; */
}

.block-content .block-title .block-inner {
    display: table-cell;
    width: 100%;
    height: 100%;
    /* max-height: 200px; */
    text-align: left;
    vertical-align: middle;
}

.block-content .block-title .txt-title>span {
    display: block;
    color: #555;
    letter-spacing: 0.16em;
    line-height: 1;
}

.block-content .block-title .txt-title>strong {
    display: block;
    color: #555;
    letter-spacing: 0.2em;
    line-height: 1;
    margin-top: 1.6rem;
}

.block-content .block-title .txt-title::before,
.block-content .block-title .txt-title::after {
    display: none;
}

.block-content .block-title .block-logo {
    margin-top: 14%;
    position: relative;
}

.block-content .block-title .pic-logo {
    display: block;
    margin: 0 auto;
}

.block-content .block-title .pic-logo+.pic-logo {
    margin-top: 16%;
}

.block-content .block-title .pic-logo+.pic-logo::before,
.block-content .block-title .pic-logo+.pic-logo::after {
    content: "";
    display: block;
    width: 4rem;
    height: 1px;
    margin: auto;
    background-color: #666;
    position: absolute;
    left: 0;
    right: 0;
    top: 0.8rem;
    bottom: 0;
}

.block-content .block-title .pic-logo+.pic-logo::before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.block-content .block-title .pic-logo+.pic-logo::after {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.block-content .block-title .pic-logo.ondo {
    width: 24%;
}

.block-content .block-title .pic-logo.beans {
    width: 24%;
}

.block-content .block-letter {
    padding: 5.6vw 2.3vw 0;
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
}

.block-content .block-letter dl {
    padding-top: 5.6vw;
}

.block-content .block-letter .txt-answer+.txt-question {
    margin-top: 4.2vw;
}

.block-content .block-letter .txt-answer {
    padding: 0 1vw;
    margin-top: 1.6rem;
}

@media (max-width: 768px) and (orientation: portrait) {
    .block-content .block-image {
        width: 150%;
    }
    .block-content .block-title {
        display: block;
        width: 100%;
        height: auto;
        background-color: none;
        border-radius: 0;
        margin-top: 4rem;
        position: static;
    }
    .block-content .block-title .block-inner {
        display: block;
    }
    .block-content .block-title .block-logo {
        display: table;
        table-layout: fixed;
        width: 90%;
        margin: 5.2rem auto 2rem;
    }
    .block-content .block-title .pic-logo {
        display: table-cell;
        width: 50%;
        text-align: center;
        vertical-align: middle;
    }
    .block-content .block-title .pic-logo+.pic-logo {
        margin-top: 0;
    }
    .block-content .block-title .pic-logo+.pic-logo::before,
    .block-content .block-title .pic-logo+.pic-logo::after {
        top: 0;
    }
    .block-content .block-title .pic-logo.ondo {
        width: 50%;
    }
    .block-content .block-title .pic-logo.ondo>img {
        width: 44%;
        margin-bottom: 2%;
    }
    .block-content .block-title .pic-logo.beans {
        width: 50%;
    }
    .block-content .block-title .pic-logo.beans>img {
        width: 44%;
    }
    .block-content .block-letter {
        border-bottom: 1px solid #eee;
        padding: 6vw 6vw;
    }
    .block-content .block-letter .txt-answer+.txt-question {
        margin-top: 4vw;
    }
    .block-content .block-letter .txt-answer {
        padding: 0;
        margin-top: 1rem;
    }
}


/*家族の物語 */


/*============================================================
  story
============================================================*/

.story-body {
    padding-bottom: 2.8vw;
    border-radius: 0px;
    border: 1px solid #ccc;
    overflow: hidden;
    margin-bottom: 2.8vw;
}

@media (max-width: 768px) and (orientation: portrait) {
    .story-body {
        padding-bottom: 6vw;
    }
}


/*  content
  ------------------------------------------------*/

.story-content .story-title {
    /* display: table; */
    width: 40vw;
    height: 15vw;
    /* background-color: rgba(255,255,255,0.60); */
    border-radius: 4px;
    position: absolute;
    right: 0;
    top: 2.8vw;
    left: 0;
    /* margin: 0 auto; */
}

.yamazaki-content .story-title .story-inner {
    display: table-cell;
    width: 100%;
    height: 100%;
    /* max-height: 200px; */
    text-align: left;
    vertical-align: middle;
}

.story-content .story-title .txt-title>span {
    display: history;
    color: #555;
    letter-spacing: 0.16em;
    line-height: 1;
}

.story-content .story-title .txt-title>strong {
    display: history;
    color: #555;
    letter-spacing: 0.2em;
    line-height: 1;
    margin-top: 1.6rem;
}

.story-content .story-title .txt-title::before,
.story-content .story-title .txt-title::after {
    display: none;
}

.story-content .story-title .story-logo {
    margin-top: 14%;
    position: relative;
}

.story-content .story-title .pic-logo {
    display: history;
    margin: 0 auto;
}

.story-content .story-title .pic-logo+.pic-logo {
    margin-top: 16%;
}

.story-content .story-title .pic-logo+.pic-logo::before,
.story-content .story-title .pic-logo+.pic-logo::after {
    content: "";
    display: history;
    width: 4rem;
    height: 1px;
    margin: auto;
    background-color: #666;
    position: absolute;
    left: 0;
    right: 0;
    top: 0.8rem;
    bottom: 0;
}

.story-content .story-title .pic-logo+.pic-logo::before {
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.story-content .story-title .pic-logo+.pic-logo::after {
    -webkit-transform: rotate(-45deg);
    -moz-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    -o-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.story-content .story-title .pic-logo.ondo {
    width: 24%;
}

.story-content .story-title .pic-logo.beans {
    width: 24%;
}

.story-content .story-letter {
    width: 100%;
}

.story-content .story-letter .wrap {
    padding: 5.6vw 2.3vw 0;
    padding: 0;
    /* max-width: 1280px; */
    margin: 0 auto;
    width: 100%;
}

.story-content .story-letter dl {
    padding-top: 5.6vw;
}

.story-content .story-letter .txt-answer+.txt-question {
    margin-top: 4.2vw;
}

.story-content .story-letter .txt-answer {
    padding: 0 1vw;
    margin-top: 1.6rem;
}

@media (max-width: 768px) and (orientation: portrait) {
    .story-content .story-image {
        width: 150%;
    }
    .story-content .story-title {
        display: history;
        width: 100%;
        height: auto;
        background-color: none;
        border-radius: 0;
        margin-top: 4rem;
        position: static;
    }
    .story-content .story-title .story-inner {
        display: history;
    }
    .story-content .story-title .story-logo {
        display: table;
        table-layout: fixed;
        width: 90%;
        margin: 5.2rem auto 2rem;
    }
    .story-content .story-title .pic-logo {
        display: table-cell;
        width: 50%;
        text-align: center;
        vertical-align: middle;
    }
    .story-content .story-title .pic-logo+.pic-logo {
        margin-top: 0;
    }
    .story-content .story-title .pic-logo+.pic-logo::before,
    .story-content .story-title .pic-logo+.pic-logo::after {
        top: 0;
    }
    .story-content .story-title .pic-logo.ondo {
        width: 50%;
    }
    .story-content .story-title .pic-logo.ondo>img {
        width: 44%;
        margin-bottom: 2%;
    }
    .story-content .story-title .pic-logo.beans {
        width: 50%;
    }
    .story-content .story-title .pic-logo.beans>img {
        width: 44%;
    }
    .story-content .story-letter {
        /* border-bottom: 1px solid #eee; */
        padding: 6vw 6vw;
    }
    .story-content .story-letter .txt-answer+.txt-question {
        margin-top: 4vw;
    }
    .story-content .story-letter .txt-answer {
        padding: 0;
        margin-top: 1rem;
    }
}


/* ヤマザキの歴史 */


/*  grid
------------------------------------------------*/

.grid1 {
    /* padding-left: 0.7vw; */
    /* padding-right: 0.7vw; */
}

.grid2 {
    padding-left: 1.4vw;
    padding-right: 1.4vw;
}

.grid3 {
    padding-left: 2.1vw;
    padding-right: 2.1vw;
}

.grid4 {
    padding-left: 2.8vw;
    padding-right: 2.8vw;
}

.grid5 {
    padding-left: 14vw;
    padding-right: 14vw;
}

@media (max-width: 768px) and (orientation: portrait) {
    .grid1 {
        padding-left: 2vw;
        padding-right: 2vw;
    }
    .grid2 {
        padding-left: 4vw;
        padding-right: 4vw;
    }
    .grid3 {
        padding-left: 4vw;
        padding-right: 4vw;
    }
    .grid4 {
        padding-left: 4vw;
        padding-right: 4vw;
    }
    .grid5 {
        padding-left: 6vw;
        padding-right: 6vw;
    }
}


/*  text
  ------------------------------------------------*/

.txt.lv1 {
    font-size: 2.8rem;
    letter-spacing: 0.24em;
    line-height: 1.8;
}

.txt.lv2 {
    font-size: 2.3rem;
    letter-spacing: 0.2em;
    line-height: 1.6;
}

.txt.lv3 {
    font-size: 1.7rem;
    letter-spacing: 0.2em;
    line-height: 1.6;
}

.txt.lv4 {
    font-size: 20px;
    letter-spacing: 0.2em;
    line-height: 2.2;
}

.txt.lv5 {
    font-size: 1.5rem;
    letter-spacing: 0.16em;
    line-height: 1.5;
}

.txt.lv6 {
    font-size: 1.4rem;
    letter-spacing: 0.1em;
    line-height: 2;
}

.txt.lv7 {
    font-size: 16px;
    letter-spacing: 0.08em;
    line-height: 1.8;
    font-weight: 400;
}

.txt.lv8 {
    font-size: 13px;
    letter-spacing: 0.08em;
    line-height: 1.8;
    /* font-weight: 600; */
}

.txt.lv9 {
    font-size: 1.1rem;
    letter-spacing: 0.08em;
    line-height: 1.8;
}

.txt.lv10 {
    font-size: 1rem;
    letter-spacing: 0.08em;
    line-height: 1.8;
}

.txt.lv11 {
    font-size: 0.8rem;
    letter-spacing: 0.08em;
    line-height: 1.8;
}

.t_weight_6 {
    text-weight: 600
}

.t_weight_5 {
    text-weight: 500
}

.t_weight_4 {
    text-weight: 400
}

.txt.regular {
    font-weight: normal;
}

.txt.bold {
    font-weight: 700;
}

.txt.semibold {
    font-weight: 500;
}

.txt.wht {
    color: #fff;
}

.txt.brn {
    color: #665c56;
}

.txt.orn {
    color: #e82b2b;
}

.txt.grn {
    color: #076158;
}

.txt.blue {
    color: #0c1d36;
}

.txt.center {
    text-align: center;
}

.txt.left {
    text-align: left;
}

.txt.right {
    text-align: right;
}

.txt>strong,
.txt>em,
.txt>span,
.txt>b,
.txt>sup {
    color: inherit;
    font-weight: inherit;
    letter-spacing: inherit;
    line-height: inherit;
}

.txt.overpass {
    font-family: "Overpass";
}

.txt.lineGray {
    border-bottom: #ddd 1px solid;
}

@media (max-width: 768px) and (orientation: portrait) {
    .txt.lv1 {
        font-size: 1.1rem;
    }
    .txt.lv2 {
        font-size: 1.1rem;
    }
    .txt.lv3 {}
    .txt.lv4 {
        /* font-size: 1.1rem; */
        line-height: 1.5;
    }
    .txt.lv5 {
        font-size: 1.1rem;
        line-height: 1.5;
    }
    .txt.lv6 {
        font-size: 1.1rem;
    }
    .txt.lv7 {
        /* font-size: 1.1rem; */
        /* line-height: 1.5; */
    }
    .txt.lv8 {}
    .txt.lv9 {}
    .txt.lv10 {}
}

@media (max-width: 500px) and (orientation: portrait) {
    .txt.lv1 {
        font-size: 1.6rem;
    }
    .txt.lv2 {
        font-size: 1.1rem;
    }
    .txt.lv3 {}
    .txt.lv4 {
        /* font-size: 1rem; */
        /* line-height: 1.5; */
    }
    .txt.lv5 {
        font-size: 1.1rem;
        line-height: 1.5;
    }
    .txt.lv6 {
        font-size: 1.1rem;
    }
    .txt.lv7 {
        /* font-size: 1rem; */
        /* line-height: 1.5; */
    }
    .txt.lv8 {}
    .txt.lv9 {}
    .txt.lv10 {}
}

.commitArea ul li {
    font-weight: 400;
}

.itemCol_0 {
    flex: 0 0 100%;
}

.itemCol_1 {
    flex: 0 0 100%;
}

.itemCol_2 {
    flex: 0 0 100%;
}

.itemCol_3 {
    flex: 0 0 100%;
}

.itemCol_4 {
    flex: 0 0 100%;
}

.itemCol_5 {
    flex: 0 0 100%;
}

.itemCol_6 {
    flex: 0 0 100%;
}

.itemCol_7 {
    flex: 0 0 100%;
}

.itemCol_8 {
    flex: 0 0 100%;
}

.itemCol_9 {
    flex: 0 0 100%;
}

.itemCol_1 img,
.itemCol_2 img,
.itemCol_3 img,
.itemCol_4 img,
.itemCol_5 img,
.itemCol_6 img,
.itemCol_7 img,
.itemCol_8 img,
.itemCol_9 img,
.itemCol_0 img {
    width: 100%;
    padding: 2%;
}

.commitArea {
    background: #f3f3f3;
    padding: 5.6vw 2.3vw 5.6vw;
}

.commitArea:nth-child(odd) {
    flex-direction: row-reverse;
}

.commitArea:nth-child(even) {
    background: #fff;
}

.commitArea .wrap {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1200px;
    justify-content: center;
    /* 子要素をflexboxにより中央に配置する */
    /* align-items: center; */
    /* 子要素をflexboxにより中央に配置する */
    /* margin-bottom: 100px; */
    margin-top: 10px;
}

.sp_order_1 {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
}

.sp_order_2 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
}


/* 
.itemCol_2 {
    width: 100%;
    padding: 2%
}

.itemCol_4 {
    width: 100%;
} */

@media ( min-width: 800px) {
    .commitArea {
        background: #f3f3f3;
        padding: 5.6vw 2.3vw 5.6vw;
    }
    .commitArea:nth-child(odd) {
        flex-direction: row-reverse;
    }
    .commitArea:nth-child(even) {
        background: #fff;
    }
    .commitArea .wrap {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        max-width: 1200px;
        justify-content: center;
        /* 子要素をflexboxにより中央に配置する */
        /* align-items: center; */
        /* 子要素をflexboxにより中央に配置する */
        /* margin-bottom: 100px; */
        margin-top: 10px;
    }
    .itemCol_0 {
        flex: 0 0 100%;
        padding: 1%;
    }
    .itemCol_1 {
        flex: 0 0 10%;
    }
    .itemCol_2 {
        flex: 0 0 20%;
        padding: 1%;
    }
    .itemCol_3 {
        flex: 0 0 30%;
        padding: 1%;
    }
    .itemCol_4 {
        flex: 0 0 40%;
    }
    .itemCol_5 {
        flex: 0 0 50%;
        padding: 1%;
    }
    .itemCol_6 {
        flex: 0 0 60%;
        padding: 1%;
    }
    .itemCol_7 {
        flex: 0 0 70%;
        padding: 1%;
    }
    .itemCol_8 {
        flex: 0 0 80%;
        padding: 1%;
    }
    .itemCol_9 {
        flex: 0 0 90%;
        padding: 1%;
    }
    .itemCol_1 img,
    .itemCol_3 img,
    .itemCol_4 img {
        width: 96%;
        padding: 2%;
    }
    .itemCol_2 img {
        /* height: 250px; */
        object-fit: cover;
    }
    .itemCol_7 p span,
    .itemCol_6 p span,
    .itemCol_0 p span {
        border-bottom: 1px solid #ddd;
        line-height: 2.0;
    }
    .sp_order_1 {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
    }
    .sp_order_2 {
        -webkit-box-ordinal-group: 1;
        -ms-flex-order: 1;
        -webkit-order: 1;
        order: 1;
    }
}

.g-historyArea {
    /* background: #f3f3f3; */
    padding: 5.6vw 2.3vw 5.6vw;
}

.g-historyArea {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    max-width: 1200px;
    justify-content: center;
    /* 子要素をflexboxにより中央に配置する */
    /* align-items: center; */
    /* 子要素をflexboxにより中央に配置する */
    /* margin-bottom: 100px; */
    margin-top: 10px;
}

.sp_order_1 {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
}

.sp_order_2 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
}

@media ( min-width: 800px) {
    .g-historyArea {
        padding: 5.6vw 2.3vw 5.6vw;
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        max-width: 1200px;
        justify-content: center;
        /* 子要素をflexboxにより中央に配置する */
        /* align-items: center; */
        /* 子要素をflexboxにより中央に配置する */
        /* margin-bottom: 100px; */
        margin-top: 10px;
    }
}

@keyframes move {
    0% {
        transform: rotate(45deg) translate(0, 0);
    }
    20% {
        transform: rotate(45deg) translate(10px, 10px);
    }
    40% {
        transform: rotate(45deg) translate(0, 0);
    }
}


/*
----------------------------------------------------------
Archive: Staff
スタッフページ
---------------------------------------------------------- */


/*
----------------------------------------------------------
Page: Common
---------------------------------------------------------- */

.single-page {
    /*margin:0 45px;*/
}

.page-section {
    margin: 60px auto;
    width: 100%;
    max-width: 1280px;
    padding: 70px 5%;
    background: #fefefe;
    border: #f5f5f5 1px solid;
    /* border-left: none; */
    -webkit-border-radius: 0px 15px 0 0px;
    border-radius: 0px 15px 0 0px;
}

.page-section:first-child {
    margin-top: 50px;
}


/*
.page-section-sub:not(:first-child){border-top:1px solid #d9e3e5;padding-top:60px;margin-top:60px;}*/

@media (max-width:900px) {
    .page-section {
        margin: 50px 2.5%;
        padding: 60px 5%;
    }
}

@media (max-width:738px) {
    .page-section {
        margin: 40px 10px 0;
        padding: 50px 5%;
        border: #f0f0f0 1px solid;
    }
}

@media (max-width:414px) {
    .page-section {
        padding: 40px 4%;
        margin: 40px 0;
    }
}

.page-section.dashed {
    border: #111 1px dashed;
}

.page-section .lead-image {
    display: block;
    width: 100%;
    -webkit-border-radius: 10px;
    border-radius: 10px;
}

.page-section-header {
    text-align: center;
}

.page-section-header .lead {
    font-size: 30px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    letter-spacing: 2px;
}

.page-section-header .caption {
    margin-top: 30px;
}

.section-body-lead {
    margin-top: -15px;
    text-align: center;
}

.section-body-lead p {
    font-size: 14px;
    font-family: 'Noto Sans JP', sans-serif;
    font-weight: 400;
    line-height: 2;
    letter-spacing: 1px;
}

.section-body-lead p br.mobile {
    display: none
}

;
@media only screen and (max-width: 738px) {
    .section-body-lead {
        text-align: center;
    }
    .section-body-lead p {
        display: inline-block;
        font-size: 13px;
        line-height: 1.9;
        font-weight: 400;
        /* ? text-align: left;*/
    }
}

.archive-staff-items {}

.archive-staff-items .item {
    padding: 60px 0;
    border-top: #d9e3e5 1px solid;
    overflow: hidden;
    position: relative;
    z-index: 0;
}

.archive-staff-items .item:first-child {
    padding-top: 0;
    border: none;
}

.archive-staff-items .item:last-child {
    padding-bottom: 0;
}

@media only screen and (max-width: 900px) {
    .archive-staff-items .item {
        padding: 50px 0;
    }
}

@media only screen and (max-width: 738px) {
    .archive-staff-items .item {
        padding: 45px 0;
    }
}

.archive-staff-items .item>.image {
    width: 30%;
    float: left;
    position: relative;
    /* -webkit-border-radius: 100%; */
    /* border-radius: 100%; */
}

.archive-staff-items .item>.text {
    float: right;
    width: 60%;
}

.archive-staff-items .item>.text .role {
    display: inline-block;
    font-size: 14px;
    /* font-family: 'Overpass', sans-serif; */
    font-weight: 400;
    letter-spacing: 0.125em;
    line-height: 1.4;
    text-transform: uppercase;
    position: relative;
    z-index: 0;
}

.archive-staff-items .item>.text .role:after {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    height: 50%;
    content: "";
    background: #ddd;
    z-index: -1;
}

.archive-staff-items .item>.text .name {
    margin: 10px 0 25px;
}

.archive-staff-items .item>.text .name .jp {
    margin-top: 10px;
    padding-left: 20px;
    font-size: 16px;
    /* font-family: 'Noto Sans JP', sans-serif; */
    font-weight: 400;
    letter-spacing: 4px;
    display: block;
    line-height: 1;
    position: relative;
    z-index: 0;
}

.jp span {
    font-size: 13px
}

.archive-staff-items .item>.text .name .jp:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 10px;
    height: 0;
    content: "";
    border-top: #0d0d0d 1px solid;
    z-index: -1;
}

.archive-staff-items .item>.text .name .en {
    font-size: 26px;
    /* font-family: 'Overpass', sans-serif; */
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 1.2;
    display: block;
}

.archive-staff-items .item>.text .comment {
    padding: 25px 25px 25px 0;
    margin-top: 25px;
    font-size: 16px;
    line-height: 1.9;
    position: relative;
    z-index: 0;
}

.archive-staff-items .item>.text .comment:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -30px;
    content: "";
    background: #f7f7f7;
    z-index: -1;
    -webkit-border-radius: 0px 0px 15px 15px;
    border-radius: 0px 0px 15px 15px;
}

@media only screen and (max-width: 900px) {
    .archive-staff-items .item>.text .name .en {
        font-size: 25px;
    }
    .archive-staff-items .item>.text .comment {
        margin-top: 20px;
        padding: 20px 25px 20px 0;
        font-size: 15px;
    }
    .archive-staff-items .item>.text .comment:after {
        left: -25px;
    }
}

@media only screen and (max-width: 738px) {
    .archive-staff-items .item>.image {
        margin: 0 auto;
        width: 100%;
        max-width: 250px;
        float: none;
    }
    .archive-staff-items .item>.text {
        float: none;
        width: 100%;
        margin: 25px 0 0;
        text-align: center;
    }
    .archive-staff-items .item>.text .name {
        margin-bottom: 20px;
        text-align: center;
    }
    .archive-staff-items .item>.text .role {
        font-size: 13px;
        letter-spacing: 0.1em;
    }
    .archive-staff-items .item>.text .name {
        margin: 5px 0 20px;
    }
    .archive-staff-items .item>.text .name .jp {
        margin-top: 10px;
        padding-left: 0;
    }
    .archive-staff-items .item>.text .name .jp:before {
        display: none;
    }
    .archive-staff-items .item>.text .name .en {
        font-size: 22px;
    }
    .archive-staff-items .item>.text .career {
        margin: 0 auto;
        text-align: left;
        max-width: 450px;
    }
    .archive-staff-items .item>.text .comment {
        max-width: 450px;
        padding: 20px 5%;
        margin: 20px auto 0;
        font-size: 13px;
        text-align: left;
    }
    .archive-staff-items .item>.text .comment:after {
        left: 0;
    }
}

@media only screen and (max-width: 414px) {
    .archive-staff-items .item>.image {
        max-width: 200px;
    }
}


/* Aspect-ratio-fixed image  */

.bg-image {
    display: block;
    /*background-color: #eff6f9;*/
    background-color: #ecf4f6;
    background-position: center;
    background-size: cover;
}

.bg-image:before {
    display: block;
    content: '';
    width: 100%;
    padding-bottom: 100%;
}


/* variants */

.bg-image.ratio-9:before {
    padding-bottom: 110%;
}

.bg-image.ratio-11:before {
    padding-bottom: 100%;
}

.bg-image.ratio-43:before {
    padding-bottom: 75%;
}

.bg-image.ratio-32:before {
    padding-bottom: 66.6666%;
}

.bg-image.ratio-21:before {
    padding-bottom: 50%;
}


/* -----------------------------------------------------------
   #コンセプト　企業理念
   ----------------------------------------------------------- */

#concept_flow {
    padding: 90px 5%;
    /* background: url(../images/common/noise.png) repeat #f5f5f5; */
    width: 100%;
    background: #f5f5f5;
}

@media only screen and (max-width: 900px) {
    #concept_flow {
        padding: 80px 5%;
    }
}

@media only screen and (max-width: 736px) {
    #concept_flow {
        padding: 70px 5%;
        background: #fefefe;
    }
}


/* --------- .flowArea --------- */

#concept_flow .flowArea {
    margin: -10px;
    font-size: 0;
    display: flex;
}

#concept_flow .flowBox {
    /* display: inline-block; */
    margin: 0;
    border: #f5f5f5 10px solid;
    /* width: 33.333%; */
    text-align: center;
    /* position: relative; */
    z-index: 2;
    padding: 1%;
    background: #fff;
    flex: 0 0 33.3333%;
}


/* .inner */

#concept_flow .flowBox .inner {
    padding: 35px 5% 50px;
    /* background: #fefefe; */
}


/* h3 */

#concept_flow .flowBox h3 {
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 1px;
    position: relative;
    z-index: 3;
    line-height: 1;
    padding: 65px 0 30px;
    text-align: center;
}

#concept_flow .flowBox h3:before {
    position: absolute;
    top: 0px;
    left: 50%;
    margin-left: -25px;
    width: 50px;
    height: 50px;
    line-height: 52px;
    color: #fefefe;
    font-size: 25px;
    font-family: 'Poppins', sans-serif;
    font-weight: 300;
    text-align: center;
    letter-spacing: 0;
    vertical-align: 0;
    background: #111;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
}

#concept_flow .flowBox:nth-child(1) h3:before {
    content: "1";
}

#concept_flow .flowBox:nth-child(2) h3:before {
    content: "2";
}

#concept_flow .flowBox:nth-child(3) h3:before {
    content: "3";
}

#concept_flow .flowBox:nth-child(4) h3:before {
    content: "4";
}

#concept_flow .flowBox:nth-child(5) h3:before {
    content: "5";
}

#concept_flow .flowBox:nth-child(6) h3:before {
    content: "6";
}

#concept_flow .flowBox h3:after {
    position: absolute;
    bottom: 0;
    left: 25px;
    right: 25px;
    height: 0;
    content: "";
    border-top: #e5e8ef 1px solid;
    z-index: 2;
}


/* .txtArea */

#concept_flow .flowArea .txtArea {
    display: inline-block;
    margin: 20px auto 0;
}

@media only screen and (max-width: 900px) {
    #concept_flow .flowBox .inner {
        padding: 30px 5% 45px;
    }
    #concept_flow .flowBox h3 {
        font-size: 16px;
        padding: 55px 0 30px;
    }
    #concept_flow .flowBox h3:before {
        margin-left: -20px;
        width: 40px;
        height: 40px;
        line-height: 42px;
        font-size: 20px;
    }
    #concept_flow .flowBox h3:after {
        left: 5%;
        right: 5%;
    }
}

@media only screen and (max-width: 768px) {
    #concept_flow .flowBox {
        width: 50%;
    }
}

@media only screen and (max-width: 736px) {
    #concept_flow .flowArea {
        margin: 0;
        font-size: 0;
    }
    #concept_flow .flowBox {
        display: block;
        margin-top: 50px;
        border: none;
        width: 100%;
        text-align: center;
    }
    #concept_flow .flowBox:after {
        position: absolute;
        bottom: -50px;
        right: 0;
        left: 0;
        height: 50px;
        line-height: 50px;
        font-size: 20px;
        font-family: themify;
        content: "\e62a";
        z-index: 1;
    }
    #concept_flow .flowBox:last-child:after {
        display: none;
    }
    /* .inner */
    #concept_flow .flowBox .inner {
        padding: 35px 5%;
        border: #e5e8ef 1px solid;
    }
    /* h3 */
    #concept_flow .flowBox h3 {
        font-size: 16px;
        padding: 55px 0 25px;
    }
    #concept_flow .flowBox h3:after {
        border-top: #e5e8ef 1px dotted
    }
    #concept_flow .flowArea .txtArea {
        margin: 15px auto 0;
    }
}

.quality {
    width: 45%;
    margin: 0 auto;
    text-align: center;
    padding: 50px 30px;
    /* float:left; */
    /* background: #fff; */
    background: #050126;
}
@media only screen and (max-width: 818px) {
    .quality {
        width: 45%;
        margin: 0 auto;
        text-align: center;
        padding: 50px 30px;
        margin: 30px 2.5%;
    }
}
.quality .wrap {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto;
}

.quality h2 {
    position: relative;
    line-height: 1.4;
    padding: 0.25em 1em;
    display: inline-block;
    top: 0;
}

.quality h2:before,
h2:after {
    position: absolute;
    top: 0;
    content: '';
    width: 8px;
    height: 100%;
    display: inline-block;
}

.quality h2:before {
    /* border-left: solid 1px black; */
    /* border-top: solid 1px black; */
    /* border-bottom: solid 1px black; */
    /* left: 0; */
}

.quality h2:after {
    /* content: ''; */
    /* border-top: solid 1px black; */
    /* border-right: solid 1px black; */
    /* border-bottom: solid 1px black; */
    /* right: 0; */
}

.ios_img {
    border: 1px #eee solid;
    max-width: 800px;
    width: 100%;
    margin: 30px auto;
}

.ios_img img {
    max-width: 700px;
    width: 96%;
    padding: 3%;
}

.quality h2 {
    font-size: 20px;
    font-weight: 400;
    text-align: left;
    padding-left: 30px;
    margin-bottom: 30px;
    line-height: 1.5;
}

.quality h3 {
    position: relative;
    color: #fff;
    text-align: left;
    font-size: 18px;
    line-height: 2.5;
    padding-left: 40px;
    border-bottom: solid 1px;
    font-weight: 400;
    /* max-width: 800px; */
    /* width: 100%; */
    font-family: "Century Gothic",'Abel', sans-serif;
}

.quality h3:before {
    /*疑似要素*/
    font-family: 'Font Awesome 6 pro';
    content: "\f292";
    position: absolute;
    left: 0.6em;
    /*左端からのアイコンまでの距離*/
    top: 2px;
    font-weight: 500;
}

.quality p {
    margin-top: 40px;
    line-hight: 2;
    font-size: 18px;
    font-weight: 400;
    text-align: right;
}


/* ul.circle */

ul.circle {
    margin: 0;
    padding: 0 0 0 15px;
    list-style: circle;
    font-size: 14px;
    text-align: left;
}

ul.circle li {
    margin-top: 3px;
    font-size: 16px;
    font-weight: 500;
    letter-spacing: 0.5px;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
}

ul.shop {
    margin: 0;
    padding: 0 0 0 15px;
    list-style: circle;
    font-size: 14px;
    text-align: left;
}

ul.shop li {
    margin-top: 3px;
    /* font-size: 16px; */
    font-weight: 500;
    letter-spacing: 0.5px;
    line-height: 1.8;
    font-feature-settings: "palt" 1;
    display: inline;
    padding-right: 2%;
}

@media only screen and (max-width: 900px) {
    ul.circle li {
        font-size: 13px;
    }
}

@media only screen and (max-width: 738px) {
    ul.circle li {
        font-size: 12px;
    }
    .quality {
        padding: 50px 30px;
        width: 100%;
        margin-bottom: 10px;
    }
    .quality h2 {
        padding: 0 0px;
    }
}


/* Line */


/* .aboutArea */

#Line .aboutArea {
    padding: 50px 5%;
    background: #fefefe;
}

#Line .logoArea {
    float: left;
    width: 45%;
}

#Line .logoArea .imgArea {
    border: #e5e8ef 1px solid;
}

#Line .logoArea .imgArea img {
    width: 100%;
}


/* .infoArea */

#Line .infoArea {
    float: right;
    width: 50%;
}

@media only screen and (max-width: 900px) {
    /* .aboutArea */
    #Line .aboutArea {
        padding: 45px 5%;
    }
}

@media only screen and (max-width: 736px) {
    /* .aboutArea */
    #Line .aboutArea {
        padding: 0;
        background: none;
        margin-top: 50px;
    }
    #Line .logoArea {
        float: none;
        width: 100%;
    }
    #Line .logoArea .imgArea {
        background: #fefefe;
        border: #ddd 1px solid;
    }
    #Line .logoArea h2 {
        font-size: 16px;
        padding-bottom: 5px
    }
    /* .infoArea */
    #Line .infoArea {
        margin-top: 35px;
        float: none;
        width: 100%;
    }
}

#Line .infoArea p {
    padding: 2%;
    margin-top: 10px;
    background: #efeeee;
    font-size: 14px;
    line-height: 1.8;
}

#Line .aboutArea:first-child {
    margin-top: 0px;
}

.line-b .card {
    display: flex;
    flex-wrap: wrap;
}

.line-b .card .item {
    width: 32%;
}

.line-b .card .item:not(:nth-child(3n)) {
    margin-right: 15px;
}

.line-b .card .item:nth-child(n+4) {
    margin-top: 15px;
}


/* ❷ */

.line-b .card .item a {
    display: flex;
    flex-direction: column;
    height: 100%;
}

.line-b .card .txt {
    background: #fff;
    margin: 5px 0 15px;
    padding: 10px;
    flex-grow: 1;
    /* ★ポイント★ */
}

.line-b .card .btn {
    margin-top: auto;
}


/* -----------------------------------------------------------
   #home_works_news_top
   ----------------------------------------------------------- */

#home_works_news_top {
    padding: 90px 5%;
    /* background: url(../images/common/noise.png) repeat #f5f5f5; */
    background: #f5f5f5;
}

@media only screen and (max-width: 900px) {
    #home_works_news_top {
        padding: 0;
    }
}

@media only screen and (max-width: 736px) {
    #home_works_news_top {
        padding: 0;
    }
}


/* -----------------------------------------------------------
   #home_works_news
   ----------------------------------------------------------- */

#home_works_news {
    padding: 90px 5%;
    /* background: url(../images/common/noise.png) repeat #f5f5f5; */
    background: #f5f5f5;
}

@media only screen and (max-width: 900px) {
    #home_works_news {
        padding: 0;
    }
}

@media only screen and (max-width: 736px) {
    #home_works_news {
        padding: 0;
    }
}


/* -----------------------------------------------------------
      #home_works
      ----------------------------------------------------------- */

#home_works {
    float: right;
    width: 100%;
}

@media only screen and (max-width: 900px) {
    #home_works {
        float: none;
        width: 100%;
        padding: 80px 5%;
        background: #ddd;
    }
}

@media only screen and (max-width: 736px) {
    #home_works {
        padding: 70px 5%;
    }
}


/* --------- .worksArea --------- */

.worksArea {
    position: relative;
    font-size: 0;
    margin: -2px -2px 0;
    z-index: 3;
}

.worksArea .worksBox {
    display: inline-block;
    width: 25%;
    margin: 0;
    border: transparent 2px solid;
}


/* .inner */

.worksArea .worksBox .inner {
    position: relative;
    /* background: #fefefe; */
    padding: 20px 7.5% 20px;
    z-index: 2;
}

.worksArea .worksBox .inner:before {
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    bottom: 0;
    content: "";
    border: #fefefe 0 solid;
    -webkit-transition: all 0.2s ease;
    -moz-transition: all 0.2s ease;
    -o-transition: all 0.2s ease;
    transition: all 0.2s ease;
    z-index: -1;
}

.worksArea .worksBox:hover .inner:before {
    border: #111 5px solid;
}

.worksArea .worksBox .inner img {
    width: 100%;
}


/* ul.category */

.worksArea .worksBox ul.category {
    margin-top: -35px;
    list-style: none;
    z-index: 2;
}

.worksArea .worksBox ul.category li {
    display: inline-block;
    color: #fefefe;
    background: #111;
    font-size: 13px;
    font-weight: 500;
    line-height: 35px;
    letter-spacing: 1px;
    padding: 0 20px 0 35px;
    position: relative;
    z-index: 1;
}

.worksArea .worksBox ul.category li:before {
    position: absolute;
    top: 0;
    left: 10px;
    bottom: 0;
    font-size: 1.2em;
    font-family: themify;
    content: "\e6ad";
    font-weight: normal;
    vertical-align: 0;
}


/* p.date */


/*.worksArea .worksBox p.date { position: absolute; top:20px; left:7.5%; font-family: 'Poppins', sans-serif; font-weight: 500;line-height:40px; }
   .worksArea .worksBox p.date span { padding-left:5px; color: #e96c36; }*/

.worksArea .worksBox p.date {
    position: absolute;
    top: 20px;
    left: 7.5%;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    line-height: 40px;
    font-size: 0;
    display: none;
}


/*.worksArea .worksBox p.date span { font-size: 14px; color: #e96c36; }*/


/* h3 */

.worksArea .worksBox .inner h3 {
    font-size: 16px;
    font-weight: 500;
    line-height: 2;
    letter-spacing: 1px;
    padding: 0;
    margin-bottom: 10px;
    text-align: center;
}


/* .icon_award */

.worksArea .worksBox .icon_award {
    position: absolute;
    top: 15px;
    right: 7.5%;
    width: 55px;
    height: 55px;
    content: "";
    background: url(../images/common/icon_award.png) center center no-repeat;
    background-size: cover;
    z-index: 2;
}

@media only screen and (max-width: 900px) {
    .worksArea .worksBox .inner {
        padding: 50px 7.5% 50px;
    }
    .worksArea .worksBox .inner:before {
        display: none;
    }
    /* ul.category */
    .worksArea .worksBox ul.category {
        margin-top: -35px;
        list-style: none;
        z-index: 2;
    }
    .worksArea .worksBox ul.category li {
        padding: 0 15px 0 30px;
    }
    /* p.date */
    .worksArea .worksBox p.date {
        top: 10px;
        left: 7.5%;
    }
    /*.worksArea .worksBox p.date span { font-size: 13px; }*/
    /* h3 */
    .worksArea .worksBox .inner h3 {
        /* font-size: 14px; */
    }
    /* .icon_award */
    .worksArea .worksBox .icon_award {
        top: 10px;
        right: 7.5%;
        width: 50px;
        height: 50px;
    }
}

@media only screen and (max-width: 736px) {
    .worksArea .worksBox .inner {
        padding: 40px 7.5% 30px;
    }
    .worksArea .worksBox .inner:before {
        display: none;
    }
    /* ul.category */
    .worksArea .worksBox ul.category {
        margin-top: -25px;
        list-style: none;
        z-index: 2;
    }
    .worksArea .worksBox ul.category li {
        /* font-size: 11px; */
        line-height: 25px;
        letter-spacing: 1px;
        padding: 0 10px 0 20px;
    }
    .worksArea .worksBox ul.category li:before {
        left: 5px;
        font-size: 1em;
    }
    /* p.date */
    .worksArea .worksBox p.date {
        top: 10px;
        left: 7.5%;
        line-height: 30px;
    }
    /*.worksArea .worksBox p.date span { font-size: 11px; }*/
    /* h3 */
    .worksArea .worksBox .inner h3 {
        /* font-size: 11px; */
        line-height: 1.8;
        margin-top: 5px;
    }
}

@media only screen and (max-width: 500px) {
    .worksArea .worksBox {
        width: 100%;
    }
}

@media only screen and (max-width: 414px) {
    .worksArea .worksBox p.date {
        letter-spacing: 0.5px;
    }
    .worksArea .worksBox .inner h3 {
        line-height: 1.8;
    }
    .worksArea .worksBox ul.category li {
        /* font-size: 9px; */
        padding: 0 5px 0 18px;
    }
    .worksArea .worksBox .icon_award {
        top: 6px;
        right: 4%;
        width: 30px;
        height: 30px;
    }
}


/* 商品紹介 */


/* ----------------------------------------------------------
   .headline
   ---------------------------------------------------------- */

.headline {
    margin-bottom: 15px;
    text-align: center;
    position: relative;
    z-index: 1;
}

.headline h2.en {
    font-size: 16px;
    /*     font-family: 'Poppins', sans-serif; */
    font-weight: 700;
    letter-spacing: 2px;
    line-height: 1;
}

.headline h2.jp {
    font-size: 22px;
    font-weight: 600;
    letter-spacing: 2px;
    margin-top: 10px;
    margin-bottom: 5px;
}

@media only screen and (max-width: 900px) {
    .headline {
        margin-bottom: 45px;
    }
    .headline h2.en {
        /* font-size: 30px; */
    }
    .headline h2.jp {
        font-size: 18px;
        font-weight: 700;
        letter-spacing: 1px;
        line-height: 1;
        margin-top: 15px;
        margin-bottom: 10px;
    }
}

@media only screen and (max-width: 736px) {
    .headline {
        margin-bottom: 40px;
    }
    .headline h2.en {
        font-size: 14px;
    }
    .headline h2.jp {
        /* font-size: 13px; */
        margin-top: 10px;
    }
}

@media only screen and (max-width: 414px) {
    .headline h2.jp {
        /* font-size: 12px; */
    }
}


/* -----------------------------------------------------------
  #home_news
   ----------------------------------------------------------- */

#home_news {
    float: left;
    width: 25%;
    padding: 0.5%;
    /*background: url(../images/pattern/noise.png) repeat #d9e3eb;*/
}

@media only screen and (max-width: 900px) {
    #home_news {
        float: none;
        width: 100%;
        background: #f0f0f0;
        padding: 80px 5%;
    }
}

@media only screen and (max-width: 736px) {
    #home_news {
        padding: 70px 5%;
    }
}


/* --------- .newsArea --------- */

#home_news .newsArea {
    margin: 0 auto;
    max-width: 900px;
}

#home_news .newsArea dl {
    margin: 1px 0 0;
    padding: 5px 15px;
    font-size: 13px;
    line-height: 2;
    text-align: left;
    letter-spacing: 1px;
    background: #fefefe;
    position: relative;
    z-index: 1;
}

#home_news .newsArea dl:first-child {
    margin: 0;
}

#home_news .newsArea dl dt {
    display: block;
    margin: 0;
    font-family: 'Poppins', sans-serif;
    font-weight: 500;
    line-height: 1.2;
}

#home_news .newsArea dl dt span {
    padding-left: 5px;
    color: #e96c36;
}

#home_news .newsArea dl dd {
    display: flex;
}

#home_news .newsArea dl a {
    /* position: absolute; */
    /* top: 0; */
    /* right: 0; */
    /* bottom: 0; */
    /* left: 0; */
    /* z-index: 1; */
    line-height: 1.5;
}

#home_news .newsArea dl:after {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 100%;
    height: 0;
    content: "";
    border-bottom: transparent 3px solid;
    z-index: 1;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

#home_news .newsArea dl:hover:after {
    right: 0;
    border-color: #111;
}

@media only screen and (max-width: 900px) {
    #home_news .newsArea dl:after {
        display: none;
    }
}

@media only screen and (max-width: 736px) {
    #home_news .newsArea dl {
        font-size: 12px;
    }
}


/* --------------------------------------------------------- */


/* Chapter section outline */

.chapter-section {
    position: relative;
    max-width: 1580px;
    margin-right: auto;
    margin-left: auto;
    padding-top: 50px;
}

.chapter-section:before {
    content: "";
    position: absolute;
    top: 0;
    display: block;
    width: 100%;
    height: 3px;
    background-image: var(--svg-v-line-bk);
    opacity: 0.5;
}

.chapter-section:first-of-type:before {
    display: none;
}

.chapter-section:first-of-type {
    padding-top: 40px;
}

.chapter-section-header {
    width: calc(100% - 60px);
    margin: 0 auto 70px auto;
    box-sizing: border-box;
    text-align: center;
}

.chapter-section-header__ttl {
    display: inline-flex;
    margin-bottom: 10px;
    font-size: 1.8rem;
    font-weight: normal;
    letter-spacing: 0.15em;
}

.chapter-section-header__more {
    display: none;
}

.chapter-section-header .more-btn__label {
    writing-mode: horizontal-tb;
    writing-mode: sideways-lr;
    border: 1px solid #333;
    padding: 0.5em 1em;
    font-size: 13px;
    border-radius: 0.2em;
}

.chapter-section-body {}

@media print,
screen and (min-width: 768px) {
    .chapter-section {
        padding-top: 80px;
        margin-bottom: 80px;
    }
    .chapter-section-header {
        width: calc(100% - 100px);
    }
}

@media screen and (min-width: 1280px) {
    .chapter-section {}
    .chapter-section-header {
        display: flex;
        justify-content: space-between;
        align-items: center;
        width: calc(100% - 180px);
        text-align: left;
    }
    .chapter-section-header__more {
        display: block;
    }
    .chapter-section-header>* {
        margin-bottom: 0;
    }
    .chapter-section-header__ttl {
        font-size: 2.8rem;
        transform: scaleY(0.95) !important;
        transform-origin: left;
        letter-spacing: 0.15em;
    }
}


/* --------------------------------------------------------- */


/* Chapter contents */

.extra-outer {}

.extra {
    width: 100%;
    text-align: left;
}

@media screen and (min-width: 1280px) {
    .pick-up-contents {
        position: relative;
        padding-top: 100px;
    }
    .pick-up-contents::before {
        content: "";
        position: absolute;
        top: 0;
        display: block;
        width: 100%;
        height: 3px;
        background-image: var(--svg-v-line-bk);
        opacity: 0.5;
    }
    .extra-outer {
        margin-bottom: 140px;
    }
    .extra {
        position: relative;
        display: flex;
        align-items: center;
        justify-content: space-between;
        flex-direction: row-reverse;
    }
}

.extra__ttl {
    font-size: 2rem;
    letter-spacing: 0.15em;
}

@media screen and (min-width: 1280px) {
    /* 
	   chromeだけ 縦書中に position + padding の同要素指定にバグがある。
	   配置とpaddingは別要素に指定する必要がある。
	 */
    .extra__ttl-outer a {
        /* writing-mode: tb-rl; */
        /* writing-mode: vertical-rl; */
        font-feature-settings: normal;
        position: absolute;
        right: -0px;
        top: -20px;
        bottom: auto;
        left: auto;
        width: 100%;
        height: 100%;
        box-sizing: border-box;
    }
    .extra__ttl {
        position: absolute;
        /* left: auto; */
        right: 0;
        top: -20px;
        width: 30em;
        /* background-color: #fff; */
        /* border-radius: 0 0 0 20px; */
        padding: 0 0px 0px;
        /* height: auto; */
        margin: 0;
        font-size: 2.2rem;
        letter-spacing: 0.05em;
        text-align: right;
    }
    .extra__ttl-inner {
        display: inline-block;
        height: calc(100% / 0.99);
    }
    .extra__ttl-text-transform {
        display: inline-block;
        transform: scaleY(0.9);
        transform-origin: 0 0;
    }
    .extra__ttl::before,
    .extra__ttl::after {
        position: absolute;
        display: block;
        top: 0;
        /* width: 30px; */
        /* height: 30px; */
        content: "";
        background-image: var(--svg-round-out-corners-RT-wt);
        background-size: cover;
    }
    .extra__ttl::before {
        left: -60px;
        top: 0px;
        bottom: auto;
    }
    .extra__ttl::after {
        right: 40px;
        top: auto;
        bottom: -30px;
    }
    .extra__ttl .in-corner {
        pointer-events: none;
        position: absolute;
        left: 0;
        top: 0;
        display: block;
        width: 100%;
        height: 100%;
    }
    .extra__ttl .in-corner::before {
        position: absolute;
        display: block;
        bottom: 0;
        left: 0;
        width: 20px;
        height: 20px;
        content: "";
        background-image: var(--svg-round-in-corners-RT-wt);
        background-size: cover;
    }
}

.extra__anchor {
    display: block;
    font-weight: bolder;
}

.extra__img {
    position: relative;
    width: 100%;
    margin-bottom: 30px;
    overflow: hidden;
    border-radius: 5px;
}

.extra__img .img-in-corner::before,
.extra__img .img-in-corner::after {
    width: 30px;
    height: 30px;
}

.extra__img-inner {
    position: absolute;
    top: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
}

.extra__img-inner.current {
    opacity: 1;
}

.extra__img-inner:first-child {
    position: relative;
}

.extra__img img {
    display: block;
    width: 100%;
    /* 	height: 45vh; */
    /* 	min-height: 260px; */
}

.extra-1-1-img {
    background-image: url(/assets/img/home/about_main_1.webp);
}

.-no-webp .extra-1-1-img {
    background-image: url(/assets/img/home/about_main_1.jpg);
}

@media screen and (min-width: 768px) {
    .extra__img img {
        height: auto;
    }
}

@media screen and (min-width: 1280px) {
    .extra__img {
        width: calc(100% - 250px);
        transform: translateX(0);
        margin: 0;
        border-radius: 5px;
    }
    .extra__img img {
        border-radius: 5px;
        object-fit: cover;
        width: 100%;
        min-height: 400px;
    }
}

.extra__video {
    position: relative;
    width: 100%;
    margin-bottom: 30px;
    overflow: hidden;
    border-radius: 5px;
}

.extra__video .img-in-corner::before,
.extra__video .img-in-corner::after {
    width: 30px;
    height: 30px;
}

.extra__video img {
    display: block;
    width: 100%;
    height: 45vh;
    min-height: 260px;
}

.extra__video-inner {
    top: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.1);
    transform: scale(1.01);
}

.extra__video .main-player {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 300%;
    height: 100%;
    left: -100%;
    /*opacity: 0;*/
    transition: opacity 1s ease;
}

.extra__video.video_playing .main-player {
    opacity: 1;
}

@media screen and (min-width: 768px) {
    .extra__video img {
        height: auto;
    }
}

@media screen and (min-width: 1280px) {
    .extra__video {
        width: calc(100% - 160px);
        transform: translateX(0);
        margin: 0;
        border-radius: 10px;
    }
    .extra__video img {
        border-radius: 5px;
        object-fit: cover;
        width: 100%;
        min-height: 400px;
    }
}


/* ------------------------- */

.extra.carrers .extra__video {
    background-image: url(/assets/img/careers/main.jpg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}


/* ------------------------- */

.extra__body {
    flex-direction: column;
    align-items: flex-start;
}

.extra__body>* {
    width: 100%;
}

@media screen and (min-width: 768px) {
    .extra__body {
        width: 100%;
    }
}

@media screen and (min-width: 1280px) {
    /* 
	   chromeだけ 縦書中に position + padding の同要素指定にバグがある。
	   配置とpaddingは別要素に指定する必要がある。
	 */
    .extra__body-outer {
        position: absolute;
        top: auto;
        right: auto;
        left: -0;
        top: 40px;
        bottom: -1px;
        width: auto;
        /* height: 360px; */
        margin: 0;
    }
    .extra__body {
        position: relative;
        width: 250px;
        margin: 0;
        top: -30px;
        padding: 10px 50px 0 0;
        box-sizing: border-box;
        background-color: #fff;
        border-radius: 0 15px 0 0;
        writing-mode: tb-rl;
        writing-mode: vertical-rl;
        font-feature-settings: normal;
        font-size: 1.8rem;
        /* text-align: justify; */
        letter-spacing: 0.05em;
        /* display: block; */
        display: flex;
        flex-flow: column wrap;
    }
    .extra__body::before,
    .extra__body::after {
        position: absolute;
        display: block;
        top: 0;
        width: 30px;
        height: 30px;
        content: "";
        /* background-image: var(--svg-round-out-corners-LB-wt); */
        background-size: cover;
    }
    .extra__body::before {
        left: 160px;
        top: -30px;
        bottom: auto;
    }
    .extra__body::after {
        right: -30px;
        top: auto;
        bottom: 0px;
    }
    .extra__body .in-corner {
        position: absolute;
        left: 0;
        top: 0;
        display: block;
        width: 100%;
        height: 100%;
    }
    .extra__body .in-corner::before {
        position: absolute;
        display: block;
        top: 0;
        right: 0;
        width: 20px;
        height: 20px;
        content: "";
        background-image: var(--svg-round-in-corners-LB-wt);
        background-size: cover;
    }
    .extra__body>* {
        width: auto;
    }
}

.extra__des {
    margin: 0 0 20px;
}

@media screen and (min-width: 1280px) {
    .extra__des {
        margin: 0 0 0 0;
        transform: scaleY(0.9);
        transform-origin: 0 0;
        /* height: calc(100% / 0.9); */
        height: calc(100% / 1.2);
        /* display: block; */
        /* float: right; */
        flex: 0 0 100%;
    }
    .extra__des p {
        margin: 0 0 0 0;
    }
}

.extra-chapter__list {
    list-style: none;
    margin-top: 0;
    margin-bottom: 0;
    padding: 0;
}

.extra-chapter__list.-sub {
    display: none;
}

.extra-chapter__list li {
    margin-bottom: 0.75em;
}

.extra-chapter__list li:last-child {
    margin-bottom: 0;
}

@media screen and (min-width: 1280px) {
    .extra-chapter__list {
        /* display: block; */
        margin: 0;
        text-align: right;
        /* float: right; */
        /* width: 250px; */
        flex: 0 0 100%;
    }
    .extra-chapter__list.-sub {
        display: block;
        text-align: right;
    }
    .extra-chapter__list li {
        display: inline-block;
        margin-right: 30px;
        margin: 0 15px 15px 0;
        display: block;
    }
    .extra-chapter__list.-sub li {
        margin: 15px 15px 0 0;
    }
}

@media screen and (min-width: 1280px) {
    /* reverse */
    .extra.-reverse {
        flex-direction: row;
    }
    .extra.-reverse .extra__img {
        transform: translateX(-60px);
    }
}


/* 補聴器*/

.ha_viewarea-inner {}

.ha_viewarea-inner .wrap {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    flex-wrap: nowrap;
}

.ha_viewarea-inner .wrap {}

.ha_viewarea-inner {
    background: #f3f3f3;
}

.ha_viewarea-inner:nth-child(even) {
    background: #fff;
}

.ha_viewarea-inner .wrap:nth-child(odd) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-transform: translate3d(0px, 20px, 0);
    transform: translate3d(0px, 20px, 0);
    -webkit-transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    z-index: 1
    /*       */
    ;
    flex-direction: row-reverse;
}

.ha_viewarea-inner .wrap:nth-child(even) {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    -webkit-transform: translate3d(0px, 20px, 0);
    transform: translate3d(0px, 20px, 0);
    -webkit-transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    transition: opacity 0.3s linear 0s, transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s, -webkit-transform 1s cubic-bezier(0.19, 1, 0.22, 1) 0s;
    z-index: 1
    /*     flex-direction: row-reverse; */
}

.ha_viewarea-image {
    order: 1;
}

.ha_viewarea-inner .num {
    width: 50px;
    height: 50px;
    padding-top: 13px;
    border: 1px solid #b2b2b2;
    background: #FFC107;
    font-size: 25px;
    font-family: 'Hind Guntur', sans-serif;
    font-weight: 400;
    text-align: center;
    line-height: 1;
    float: left;
    clear: left;
    border-radius: 5%;
    -webkit-border-radius: 5%;
    -moz-border-radius: 5%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

@media screen and (min-width: 768px) {
    .ha_viewarea-inner {
        height: 100%;
        padding: 60px 0;
    }
}

@media screen and (min-width: 1000px) {
    .ha_viewarea-inner:nth-child(odd) {
        flex-direction: row-reverse;
    }
    .ha_viewarea-inner:nth-child(even) {
        background: #fff;
    }
    .ha_viewarea-inner {
        /* position: absolute; */
        /* top: calc(((100% - 728px) / 2)) */
    }
}

.ha_viewarea-imagearea {
    /* background-color: #eee; */
    min-width: 512px;
    overflow: hidden;
    width: 30%;
}

@media screen and (max-width: 1180px) {
    .ha_viewarea-imagearea {
        min-width: 350px;
        width: 350px
    }
}

.ha_viewarea-image {
    height: 100%
}

.ha_viewarea-image source,
.ha_viewarea-image img {
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover";
    /* height: 100%; */
    width: 100%;
    padding: 2%;
    order: 1;
    /* flex-direction: row-reverse; */
}

.ha_viewarea-textarea {
    /* background-color: #eaeaea; */
    overflow: hidden;
    padding: 30px 115px 0 59px;
    position: relative;
    width: 70%;
}

@media screen and (max-width: 1080px) {
    .ha_viewarea-textarea {
        overflow-y: auto
    }
}

@media screen and (max-width: 767px) {
    .ha_viewarea-textarea {
        overflow-y: hidden
    }
}

.ha_viewarea-textarea-name {
    font-size: 30px;
    font-weight: 400;
    line-height: 1.8;
    font-family: "Yu Mincho", "YuMincho";
    /* margin-top: 27px */
    padding-left: 60px;
}

.ha_viewarea-textarea-hurigana {
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    font-family: "Yu Mincho", "YuMincho";
    letter-spacing: 3px;
    margin-top: 13px
}

.ha_viewarea-textarea-detail {
    margin-top: 25px;
    margin-left: 3px;
    padding-top: 25px;
    position: relative
}

.ha_viewarea-textarea-detail:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #9E9E9E;
    position: absolute;
    top: 2px;
    left: 1px;
    height: 1px;
    width: 100%;
}

.ha_viewarea-textarea-tit {
    font-size: 20px;
    font-weight: 400;
    line-height: 1.4;
    font-family: "Yu Mincho", "YuMincho"
}

.ha_viewarea-textarea-txt {
    font-size: 16px;
    font-weight: 400;
    line-height: 2.35714;
}

.ha_viewarea-textarea-txt:not(:first-of-type) {
    margin-top: 11px
}

.ha_viewarea-textarea-table {
    margin-top: 20px;
    position: relative;
    z-index: 99
}

.ha_viewarea-textarea-table dl {
    font-size: 20px;
    font-weight: 400;
    line-height: 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-top: 1px solid #ddd;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px 0 19px 6px;
}

.ha_viewarea-textarea-table dt {
    min-width: 136px
}

.ha_viewarea-textarea-table dd {
    font-size: 20px;
    line-height: 1.23077;
    color: #000000;
    display: inline-block;
    word-break: break-all;
}

.ha_viewarea-textarea-table dd a {
    font-size: 20px;
    line-height: 1.23077;
    color: #1c7098;
    display: inline-block;
    word-break: break-all;
}

.ha_viewarea-textarea-table dd a[target="_blank"]:after {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-image: url(../images/common/ico-blank_sm-glay.svg);
    margin-top: -4px;
    margin-left: 4px;
    -webkit-transition: background-image .2s linear;
    transition: background-image .2s linear;
    height: 8px;
    width: 8px
}

@media screen and (min-width: 768px) and (max-height: 690px) {
    .ha_viewarea-wrap {
        height: calc(100% - 5%);
        width: calc(100% - 5%)
    }
    .ha_viewarea-inner {
        height: inherit
    }
    .ha_viewarea-textarea {
        overflow-y: auto
    }
}

@media screen and (max-width: 767px) {
    .ha_viewarea-inner .wrap {
        flex-wrap: wrap;
    }
    .brands__viewarea {
        padding: 38px 20px 60px
    }
    .ha_viewarea-tit {
        font-size: 12px;
        line-height: 1;
        margin-left: -2px
    }
    .ha_viewarea-tit-catename {
        letter-spacing: 2.6px
    }
    .ha_viewarea-tit-brandkind {
        letter-spacing: 2.6px;
        margin-left: 11px;
        padding-left: 13px
    }
    .ha_viewarea-tit-brandkind:before {
        top: 2px;
        height: 8px
    }
    .ha_viewarea-inner {
        margin-top: 22px
    }
    .ha_viewarea-list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin-left: 0
    }
    .ha_viewarea-link {
        padding: 23px 0px 30px;
        height: 188px;
        width: 100%
    }
    .ha_viewarea-link:before,
    .ha_viewarea-link:after {
        bottom: 15px;
        right: 10px;
        width: 10px
    }
    .ha_viewarea-item {
        width: calc((100% / 2) - 1px)
    }
    .ha_viewarea-item:nth-of-type(even) {
        margin-left: 1px
    }
    .ha_viewarea-item:nth-of-type(n+3) {
        margin-top: 1px
    }
    .ha_viewarea-item-tit {
        font-size: 10px;
        line-height: 1;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-left: 9px
    }
    .ha_viewarea-item-tit-catename {
        letter-spacing: .3px
    }
    .ha_viewarea-item-tit-brandkind {
        letter-spacing: .3px;
        margin-top: 3px;
        margin-left: 0;
        padding-left: 0
    }
    .ha_viewarea-item-tit-brandkind:before {
        display: none
    }
    .ha_viewarea-item-image {
        margin-top: 28px;
        margin-left: 4px
    }
    .ha_viewarea {
        bottom: 0;
        left: 0;
        right: 0;
        top: 0;
        height: 100%;
        width: 100%
    }
    .ha_viewarea-bg {
        bottom: 0;
        right: 0
    }
    .ha_viewarea-wrap {
        bottom: 0;
        display: block;
        left: 0;
        overflow-y: auto;
        position: relative;
        -webkit-overflow-scrolling: touch;
        right: 0;
        top: 0;
        height: inherit;
        width: 100%;
        z-index: 1
    }
    .ha_viewarea-inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 20px;
        position: relative;
        width: 100%;
        z-index: 999999
    }
    .ha_viewarea-imagearea {
        height: 250px;
        width: 100%;
        min-width: 100%
    }
    .ha_viewarea-image {
        display: inline-block;
        height: 100%;
        width: 100%
    }
    .ha_viewarea-image img,
    .ha_viewarea-image source {
        -o-object-fit: cover;
        object-fit: cover;
        font-family: "object-fit: cover";
        height: 100%;
        width: 100%
    }
    .ha_viewarea-image img {
        display: inline-block
    }
    .ha_viewarea-textarea {
        padding: 20px 20px;
        width: 100%;
    }
    .ha_viewarea-textarea:after {
        font-size: 177.5px;
        font-weight: 400;
        line-height: 1;
        bottom: -188px;
        content: "";
        color: rgba(145, 124, 80, 0.03);
        left: 30px;
        letter-spacing: -53px;
        position: absolute
    }
    .ha_viewarea-textarea-caption {
        font-size: 12px;
        line-height: 1
    }
    .ha_viewarea-textarea-caption-catename {
        letter-spacing: .4px
    }
    .ha_viewarea-textarea-caption-brandkind {
        letter-spacing: .4px;
        margin-left: 10px;
        padding-left: 10px
    }
    .ha_viewarea-textarea-caption-brandkind:before {
        top: 2px;
        height: 8px
    }
    .ha_viewarea-textarea-name {
        font-size: 21px;
        line-height: 1;
        margin-top: 20px
    }
    .ha_viewarea-textarea-hurigana {
        font-size: 11px;
        line-height: 1;
        letter-spacing: 3px;
        margin-top: 6px
    }
    .ha_viewarea-textarea-detail {
        margin-top: 12px;
        margin-left: 0;
        padding-top: 22px;
        position: relative
    }
    .ha_viewarea-textarea-detail:before {
        top: 2px;
        left: 0;
        height: 1px;
        width: 100%;
    }
    .ha_viewarea-textarea-tit {
        font-size: 16px;
        line-height: 1.25
    }
    .ha_viewarea-textarea-txt {
        font-size: 12px;
        line-height: 1.75
    }
    .ha_viewarea-textarea-txt:not(:first-of-type) {
        margin-top: 8px
    }
    .ha_viewarea-textarea-table {
        margin-top: 25px
    }
    .ha_viewarea-textarea-table dl {
        font-size: 13px;
        font-weight: 400;
        line-height: 1;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 16px 0 13px 6px
    }
    .ha_viewarea-textarea-table dt {
        min-width: 100%
    }
    .ha_viewarea-textarea-table dd {
        margin-top: 7px
    }
}

#cnt-item-box {
    background: #dee2e2;
    display: flex;
    padding: 50px 0 50px;
}

#cnt-item-box .cnt-item {
    max-width: 1280px;
    width: 100%;
    height: 500px;
    margin: 0 auto 0;
    padding: 50px;
    box-sizing: border-box;
    background: #fff;
    display: flex;
    position: relative;
}

#cnt-item-box .cnt-item .text-box {
    width: 45%;
    order: 2;
    box-sizing: border-box;
}

#cnt-item-box .cnt-item .text-box .text-box-in {
    top: 50%;
    transform: translate(0, -50%);
    position: relative;
}

#cnt-item-box .cnt-item .text-box h2 {
    /* font-family: 'Abel', sans-serif; */
    color: #333;
    opacity: 0.9;
    font-weight: 700;
    line-height: 1.3em;
    box-sizing: border-box;
    font-size: 1.6em;
    letter-spacing: 0.1em;
}

#cnt-item-box .cnt-item .text-box h3 {
    font-size: 1.3em;
    letter-spacing: 0.1em;
    font-weight: normal;
    color: #777;
}

#cnt-item-box .cnt-item .text-box p {
    margin-top: 30px;
    font-size: 16px;
    line-height: 1.8;
    /* font-family: 'Abel', sans-serif; */
}

#cnt-item-box .cnt-item .image-box {
    width: 55%;
    padding-right: 40px;
    box-sizing: border-box;
    order: 1;
}

#cnt-item-box .cnt-item .num01 .image {
    width: 100%;
    height: 100%;
    background: url(../../hearingaid/img/ha-01.jpg) no-repeat top;
    background-size: cover;
}


/* #cnt-item-box .cnt-item .num02 .image{
    width:100%;
    height:100%;
    background: url(../images/pre_02.jpg) no-repeat top;
    background-size:cover;
}
#cnt-item-box .cnt-item .num03 .image{
    width:100%;
    height:100%;
    background:url(../images/pre_03.jpg) no-repeat top;
    background-size:cover;
} */

@media screen and (max-width: 1580px),
(max-device-width: 1580px) {
    /*     #cnt-copy1 .text-box, */
    #cnt-item-box .cnt-item {
        width: calc(100% - 200px);
        width: -webkit-calc(100% - 100px);
    }
}

@media screen and (max-width: 920px),
(max-device-width: 920px) {
    #cnt-item-box .cnt-item {
        display: block;
        height: auto;
    }
    #cnt-item-box .cnt-item .text-box {
        width: 100%;
    }
    #cnt-item-box .cnt-item .text-box .text-box-in {
        top: 0;
        padding: 0 20px;
        transform: translate(0, 0);
    }
    #cnt-item-box .cnt-item .image-box {
        width: 100%;
        height: 400px;
        padding: 0;
        margin-top: 30px;
    }
}

@media screen and (max-width: 800px),
(max-device-width: 800px) {
    #cnt-item-box .cnt-item .image-box {
        height: 350px;
    }
}

@media screen and (max-width: 700px),
(max-device-width: 700px) {
    #cnt-item-box .cnt-item {
        width: calc(100% - 200px);
        width: -webkit-calc(100% - 200px);
    }
    #cnt-item-box .cnt-item .image-box {
        height: 300px;
    }
}

@media screen and (max-width: 600px),
(max-device-width: 600px) {
    #cnt-item-box {
        padding: 10px 0 40px;
        width: 100%;
        box-sizing: border-box;
    }
    #cnt-item-box .cnt-item {
        padding: 40px 20px;
        box-sizing: border-box;
        margin: 40px auto 0;
        width: calc(100% - 40px);
        width: -webkit-calc(100% - 40px);
    }
    #cnt-item-box .cnt-item {
        margin: 30px auto 0;
        width: 100%;
    }
    #cnt-item-box .cnt-item .text-box .text-box-in {
        padding: 0;
    }
    #cnt-item-box .cnt-item .text-box h2 {
        font-size: 1.4em;
    }
    #cnt-item-box .cnt-item .text-box h3,
    #cnt-item-box .cnt-item .text-box p {
        text-size-adjust: 100%;
        -webkit-text-size-adjust: 100%;
    }
    #cnt-item-box .cnt-item .image-box {
        height: 250px;
    }
}

.gallery_col {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    /* align-items: center; */
    padding: 1em 0.1em;
    max-width: 1280px;
    margin: 0 auto;
    /*     align-items: flex-start; */
    height: 100%;
}

.gallery_col>div {
    flex: 1 0 200px;
    margin: 0.4em 0.5em;
    padding: 1em;
    border: 1px solid #ddd;
    font-weight: 500;
}

.line_col {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    padding: 1em 0.1em;
    max-width: 1280px;
    margin: 0 auto;
    align-items: flex-start;
    height: 100%;
}

.line_col>div {
    flex: 1 0 200px;
    margin: 0.4em 0.5em;
    padding: 1em;
    border: 1px solid #ddd;
    font-weight: 500;
    text-align: center;
    justify-content: center;
    align-items: center;
}

.boxLine .why_txt {
    font-size: 18px;
    color: #fefefe;
    line-height: 2;
    background: #008175;
    padding: 3px 5px;
}

.boxLine .why_com {
    font-size: 15px;
    font-size: 16px;
    /* color: #000; */
    line-height: 2;
    text-align: left;
}

.boxLine img {
    max-width: 290px;
    width: 100%;
    margin: 0 auto;
    /* padding: 5%; */
}

@media only screen and (max-width: 738px) {
    .boxLine img {
        width: 100%;
    }
}

.turnArea {
    padding: 50px 2%;
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
}

.turnArea .title_A {
    font-size: 25px;
    line-height: 2;
    margin-bottom: 10px;
}

.turnArea .title_caption {
    font-size: 18px;
}

.turnArea .title_arrow {
    margin-top: 20px;
    font-size: 18px;
    line-height: 2;
    text-align: center;
    /* border:#ddd 1px solid; */
    /* padding:5px;
    border-radius:0.5em; */
}

.turnArea .txt_border {
    border: #ddd 1px solid;
    padding: 10px;
    border-radius: 0.5em;
}

.turnArea .txt_nami {
    background: linear-gradient(transparent 70%, #FFEB3B 70%);
}

@media only screen and (max-width: 800px) {
    .turnArea {
        padding: 50px 5%;
    }
}

@media only screen and (max-width: 738px) {
    .turnArea {
        padding: 40px 5%;
    }
    .turnArea .title_A {
        font-size: 20px;
        line-height: 2;
    }
}

.boxSignia {
    position: relative;
    margin: 2em 0 2em;
    padding: 1.5em 1em 0.5em;
    border: solid 2px #000;
    /* border-radius: 8px; */
    /* flex-wrap: wrap; */
}

.boxSignia .box-titleA {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    font-size: 18px;
    background: #FFF;
    color: #000;
    font-weight: 500;
}

.boxSignia_box {
    display: flex;
    flex-wrap: wrap;
}

.boxSignia_box>div {
    flex: 0 0 50%;
}

.boxSignia_box>div img {
    width: 80%;
    margin: 0 10%;
}

.boxSignia p {
    margin: 0;
    padding: 0.5em;
}

@media only screen and (max-width: 500px) {
    .boxSignia_box>div {
        flex: 0 0 100%;
    }
}

.boxFlexible .why_txt {
    font-size: 16px;
    color: #008175;
    line-height: 2;
}

.boxFlexible .why_com {
    font-size: 15px;
    font-size: 1em;
    /* color: #000; */
    line-height: 2;
}

.boxFlexible img {
    /* max-width:200px; */
    width: 100%;
    margin: 0 auto;
    padding: 2％;
}

@media only screen and (max-width: 738px) {
    .boxFlexible img {
        width: 100%;
    }
}

.boxHozon {
    width: calc(98%);
    margin: 0.5% auto;
    box-sizing: border-box;
    border: 1px solid #ddd;
    border-radius: 5px;
    padding: 1%;
}

.boxHozon .box-title {
    font-size: 1.2em;
    /* background: #919191; */
    border-bottom: 1px solid #ddd;
    padding: 4px 4px 4px 1.8em;
    text-align: left;
    color: #5d5d5d;
    font-weight: bold;
    letter-spacing: 0.05em;
    position: relative;
}

.boxHozon .box-title:before {
    position: relative;
    /*     font-family: 'themify';
    content: "\e60a"; */
    font-family: 'Font Awesome 6 pro';
    content: "\f46d";
    position: absolute;
    left: 0.5em;
    color: #607D8B;
    font-size: 1.3em;
    top: -3px;
}

.boxHozon p {
    padding: 15px 20px;
}

.boxHozon li {
    line-height: 1.5;
    padding: 0.5em 2em 0.5em 2em;
    border-bottom: dashed 1px silver;
    list-style-type: none!important;
}

.boxHozon li:last-of-type {
    border-bottom: none;
}

.boxHozon li:before {
    font-family: 'Font Awesome 6 pro';
    content: "\f14a";
    /*     font-family: 'Font Awesome 6 pro';
    content: "\f737"; */
    position: relative;
    left: 0;
    padding-right: 1em;
    color: #777777;
    font-size: 1.2em;
}


/* 補聴器 */


/* 金地金 */

#gold .menu {
    font-size: 10px;
    letter-spacing: 0.13em;
    /*   position: fixed; */
    top: 35px;
    right: 97px;
    z-index: 555;
}

#gold .menu li {
    float: left;
    margin-left: 14px;
}

.tra05 {
    -webkit-transition: all 500ms cubic-bezier(0.190, 1.000, 0.220, 1.000);
    transition: all 500ms cubic-bezier(0.190, 1.000, 0.220, 1.000);
}

.hover:hover {
    cursor: pointer;
    filter: alpha(opacity=60);
    opacity: 0.6;
}

#gold-item-box_cat {
    /* background: #fafafa; */
    /* display: flex; */
    padding: 3%;
}

article#gold-item-box_cat {}

#gold-item-box_cat .gold-item {
    max-width: 1280px;
    width: 100%;
    /* height: 500px; */
    margin: 0 auto 0;
    padding: 3%;
    box-sizing: border-box;
    background: #fff;
    /* display: flex; */
    position: relative;
}

#gold-item-box_cat .gold-item .text-box {
    width: 100%;
    order: 2;
    box-sizing: border-box;
    padding: 2%;
    line-height: 2;
    /* background: #fefefe; */
    font-size: 15px;
}

#gold-item-box_cat .gold-item .text-box::before {
    position: absolute;
    top: 7px;
    left: 0;
    bottom: 7px;
    right: 0;
    content: "";
    border: #ddd 1px solid;
    z-index: index 1;
}

#gold-item-box_cat .gold-item .text-box::after {
    position: absolute;
    top: 0;
    left: 7px;
    bottom: 0;
    right: 7px;
    content: "";
    border: #ddd 1px dotted;
    z-index: 3;
}

#gold-item-box {
    background: #fafafa;
    display: flex;
    padding: 50px 0 50px;
}

#gold-item-box .gold-item {
    max-width: 1280px;
    width: 100%;
    height: 500px;
    margin: 0 auto 0;
    padding: 50px;
    box-sizing: border-box;
    background: #fff;
    display: flex;
    position: relative;
}

#gold-item-box .gold-item .text-box {
    width: 45%;
    order: 2;
    box-sizing: border-box;
}

#gold-item-box .gold-item .text-box .text-box-in {
    top: 50%;
    transform: translate(0, -50%);
    position: relative;
}

#gold-item-box .gold-item .text-box h2 {
    /* font-family: 'Abel', sans-serif; */
    color: #333;
    opacity: 0.9;
    font-weight: 700;
    line-height: 1.6em;
    box-sizing: border-box;
    font-size: 1.6em;
    letter-spacing: 0.1em;
}

#gold-item-box .gold-item .text-box h3 {
    font-size: 1.3em;
    letter-spacing: 0.1em;
    font-weight: normal;
    color: #777;
}

#gold-item-box .gold-item .text-box p {
    margin-top: 30px;
    font-size: 16px;
    line-height: 1.8;
    /* font-family: 'Abel', sans-serif; */
}

#gold-item-box .gold-item .image-box {
    width: 55%;
    padding-right: 40px;
    box-sizing: border-box;
    order: 1;
}

#gold-item-box .gold-item .num01 .image {
    width: 100%;
    height: 100%;
    background: url(../../gold/img/gold_1.jpg) no-repeat top right;
    background-size: cover;
}

@media screen and (max-width: 1580px),
(max-device-width: 1580px) {
    /*     #cnt-copy1 .text-box, */
    #gold-item-box .gold-item {
        width: calc(100% - 200px);
        width: -webkit-calc(100% - 100px);
    }
}

@media screen and (max-width: 920px),
(max-device-width: 920px) {
    #gold-item-box .gold-item {
        display: block;
        height: auto;
    }
    #gold-item-box .gold-item .text-box {
        width: 100%;
    }
    #gold-item-box .gold-item .text-box .text-box-in {
        top: 0;
        padding: 0 20px;
        transform: translate(0, 0);
    }
    #gold-item-box .gold-item .image-box {
        width: 100%;
        height: 400px;
        padding: 0;
        margin-top: 30px;
    }
}

@media screen and (max-width: 800px),
(max-device-width: 800px) {
    #gold-item-box .gold-item .image-box {
        height: 350px;
    }
}

@media screen and (max-width: 700px),
(max-device-width: 700px) {
    #gold-item-box .gold-item {
        width: calc(100% - 200px);
        width: -webkit-calc(100% - 200px);
    }
    #gold-item-box .gold-item .image-box {
        height: 300px;
    }
}

@media screen and (max-width: 600px),
(max-device-width: 600px) {
    #gold-item-box {
        padding: 10px 0 40px;
        width: 100%;
        box-sizing: border-box;
    }
    #gold-item-box .gold-item {
        padding: 40px 20px;
        box-sizing: border-box;
        margin: 40px auto 0;
        width: calc(100% - 40px);
        width: -webkit-calc(100% - 40px);
    }
    #gold-item-box .gold-item {
        margin: 30px auto 0;
        width: 100%;
    }
    #gold-item-box .gold-item .text-box .text-box-in {
        padding: 0;
    }
    #gold-item-box .gold-item .text-box h2 {
        font-size: 1.4em;
    }
    #gold-item-box .gold-item .text-box h3,
    #gold-item-box .gold-item .text-box p {
        text-size-adjust: 100%;
        -webkit-text-size-adjust: 100%;
    }
    #gold-item-box .gold-item .image-box {
        height: 250px;
    }
}

.gold_col {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    /* align-items: center; */
    padding: 1em 0.1em;
    max-width: 1280px;
    margin: 0 auto;
    /*     align-items: flex-start; */
    height: 100%;
}

.gold_col>div {
    flex: 1 0 250px;
    margin: 0.4em 0.5em;
    padding: 1em;
    border: 1px solid #ddd;
    font-weight: 500;
}

.goldArea {
    padding: 50px 2%;
    max-width: 1280px;
    margin: 0 auto;
    width: 100%;
}

.goldArea .title_A,
.gold_bsul .title_A {
    font-size: 25px;
    line-height: 2;
    margin-bottom: 10px;
}

.goldArea .title_caption {
    font-size: 18px;
}

.goldArea .txt_nami,
.gold_bsul .txt_nami {
    background: linear-gradient(transparent 70%, #a39839 70%);
}

@media only screen and (max-width: 800px) {
    .goldArea {
        padding: 50px 5%;
    }
}

@media only screen and (max-width: 738px) {
    .goldArea {
        padding: 40px 5%;
    }
    .goldArea .title_A,
    .gold_bsul .title_A {
        font-size: 20px;
        line-height: 2;
    }
}

.goldArea_btn ul {
    list-style: none;
    display: flex;
}

.goldArea_btn li {
    width: 22%;
    text-align: center;
    background-color: #333;
    height: 50px;
    line-height: 50px;
    margin-right: 2px;
}

.goldArea_btn li a {
    text-decoration: none;
    color: #fff;
    font-weight: bold;
    padding: 20px;
}


/* .goldAreaL */

.goldAreaL {
    /* margin: 80px 0 0; */
    padding: 15px 5% 15px;
    text-align: center;
    font-size: 0;
    /* position: relative; */
    background: #f3f3f3;
    z-index: 1;
}

.goldAreaL .icon_stage {
    display: block;
    margin: 0 auto 15px;
    height: 55px;
    background: url(../images/service/icon_stage.png) center center no-repeat;
    background-size: contain;
}

.goldAreaL h4 {
    /* color: #fefefe; */
    font-size: 25px;
    font-weight: 700;
    letter-spacing: 2px;
}


/* ul */

.goldAreaL ul {
    list-style: none;
    display: flex;
    margin-top: 25px;
    font-size: 0;
    /* flex-direction: column; */
    /* 子要素をflexboxにより縦方向に揃える */
    justify-content: center;
    /* 子要素をflexboxにより中央に配置する */
    align-items: center;
    /* 子要素をflexboxにより中央に配置する */
}

.goldAreaL ul a {
    color: #ddd
}

.goldAreaL ul li {
    /* display: inline-block; */
    /* width: 25%; */
    /* border: transparent 10px solid; */
    color: #000;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: 0.5px;
    padding: 15px 0%;
    position: relative;
    /* z-index: 1; */
    /* flex-wrap: wrap; */
    /* flex: 0 0 33%; */
    /* margin: 0 0.5%; */
    width: 260px;
    /* border: #000 1px dashed; */
}

@media only screen and (max-width: 500px) {
    .goldAreaL ul {
        display: flex;
        flex-flow: column;
        width: 100%;
        /* border: #000 1px dashed; */
    }
    li.js-scroll.hover.tra05.button_gold3 {}
}

.goldAreaL ul li a {
    /* display: inline-block; */
    /* width: 25%; */
    /* border: transparent 10px solid; */
    color: #000;
    font-size: 14px;
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: 0px;
    padding: 10px 4%;
    position: relative;
    /* z-index: 1; */
    /* flex-wrap: wrap; */
    /* flex: 0 0 25%; */
}

.goldAreaL ul li:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    /* content: ""; */
    /* border: #000 1px dashed; */
    /* z-index: -1; */
}

.goldAreaL ul li a:hover {
    color: #fff;
}


/* .goldAreaL ul li.sizeL { width: 33.333%;}
.goldAreaL ul li:nth-last-child(1),
.goldAreaL ul li:nth-last-child(2),
.goldAreaL ul li:nth-last-child(3){width: 33.333%;} */

@media only screen and (max-width: 900px) {
    .goldAreaL {
        margin: 70px 0 0;
        padding: 40px 5%;
    }
    .goldAreaL .icon_stage {
        margin: 0 auto 10px;
        height: 45px;
    }
    .goldAreaL h4 {
        font-size: 20px;
    }
    .goldAreaL ul {
        margin-top: 20px;
    }
    /* .goldAreaL ul li { width: 33.333%; font-size: 13px; padding: 15px 1.5%; }
.goldAreaL ul li:nth-last-child(1),
.goldAreaL ul li:nth-last-child(2),
.goldAreaL ul li:nth-last-child(3),
.goldAreaL ul li:nth-last-child(4){width: 50%;} */
}

@media only screen and (max-width: 736px) {
    .goldAreaL {
        margin: 60px -5.5% 0;
        padding: 70px 5% 50px;
    }
    .goldAreaL:last-child {
        margin: 0px -5.5% 0;
        padding: 30px 5% 50px;
    }
    .goldAreaL .icon_stage {
        margin: 0 auto 10px;
        height: 40px;
    }
    .goldAreaL h4 {
        font-size: 16px;
    }
    .goldAreaL ul {
        margin-top: 15px;
        display: -webkit-box;
        /* old Android */
        display: -webkit-flex;
        /* Safari etc. */
        display: -ms-flexbox;
        /* IE10        */
        display: flex;
    }
    .goldAreaL li {
        font-size: 12px;
        flex: 0 0 48%;
    }
}

@media only screen and (max-width: 667px) {
    .goldAreaL li {
        flex: 0 0 98%;
    }
    /* .goldAreaL ul li:nth-last-child(1),
.goldAreaL ul li:nth-last-child(2),
.goldAreaL ul li:nth-last-child(3){width: 100%;} */
}

.btn,
a.btn,
button.btn {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    display: inline-block;
    /* padding: 1rem 4rem; */
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    /* color: #212529; */
    color: #fff;
    /* border-radius: 0.5rem; */
    border: 1px solid;
}

.btn-c {
    font-size: 14px;
    position: relative;
    padding: 1rem 4rem 1rem 2rem;
    color: #111;
    border: 1px solid #ddd;
    border: #000 1px dashed;
    border-radius: 0;
    margin: 0.3em;
    /* -webkit-box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2); */
    /* box-shadow: 0 10px 10px rgba(0, 0, 0, 0.2); */
}

.btn-c span {
    position: relative;
}

.btn-c:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: "";
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.btn-c:after {
    font-family: "Font Awesome 6 pro";
    font-size: 1.6rem;
    line-height: 1;
    position: absolute;
    top: calc(50% - 0.8rem);
    right: 1rem;
    margin: 0;
    padding: 0;
    content: "\f107";
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}

.btn-c:hover {
    color: #9E9E9E;
}

.btn-c:hover:before {
    opacity: 0;
}

.btn-c:hover:after {
    right: 0.5rem;
}


/* 売買 */

.container-fluid {
    padding: 2em;
    background-color: #f9f9f6;
    width: 100%;
}

.tab-panels {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}

.tab-panels ul {
    margin: 0;
    padding: 0;
}

.tab-panels ul li {
    list-style-type: none;
    display: inline-block;
    background: #607D8B;
    margin: 0;
    padding: .5em 1.5em;
    border-radius: .5em .5em 0 0;
    color: #fff;
    font-weight: 50;
    cursor: pointer;
    width: 49.65%;
}

.tab-panels ul li:hover {
    color: #fff;
    background: #b20;
}

.tab-panels ul li.active {
    color: #fff;
    background: #073850;
}

.tab-panels .panel {
    display: none;
    background: white;
    color: black;
    padding: 1.5em;
    border-radius: 0 0 .8em .8em;
    overflow: auto;
    border: 1px solid #eee;
}

.tab-panels .panel.active {
    display: block;
}

.transition,
ul li i:before,
ul li i:after,
p {
    transition: all 0.25s ease-in-out;
}

.flipIn,
ul li,
h1 {
    animation: flipdown 0.5s ease both;
}

.no-select,
h2 {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    font-size: 18px;
    margin-bottom: 10px;
}

.gold_bsul {
    width: 100%;
    max-width: 1200px;
    margin: 1em auto;
    padding: 1em;
    background: #fff;
    border-radius: 0 0 0.8em 0.8em;
}

.gold_bsul .sub_title {
    font-size: 23px;
}

.gold_bsul .sub_title:before {
    content: '◆';
}

.gold_bsul ul {
    list-style: none;
    perspective: 900;
    padding-left: 1em;
    margin: 0;
}

.gold_bsul div {
    /* background:#f8f8f8; */
    /* padding:1em; */
}

.gold_bsul ul {
    padding-top: 10px;
}

.gold_bsul li {
    position: relative;
    padding: 0 1em;
    margin: 0;
    padding-bottom: 4px;
    padding-top: 0px;
    border-top: 1px dotted rgba(145, 124, 80, 0.03);
    font-weight: 400;
    padding-left: 1em;
    text-indent: -1em;
}

.gold_bsul li:nth-of-type(1) {
    animation-delay: 0.5s;
}

.gold_bsul li:nth-of-type(2) {
    animation-delay: 0.75s;
}

.gold_bsul li:nth-of-type(3) {
    animation-delay: 1s;
}

.gold_bsul li:last-of-type {
    padding-bottom: 0;
}


/* .gold_bsul li i {
    position: absolute;
    transform: translate(-6px, 0);
    margin-top: 16px;
    right: 0;
}

.gold_bsul li i:before,
ul li i:after {
    content: "";
    position: absolute;
    /* background-color: #607d8b; */


/*     width: 3px;
    height: 9px;
    top: -10px;
}
 */

.gold_bsul li i:before {
    transform: translate(-2px, 0) rotate(45deg);
}

.gold_bsul li i:after {
    transform: translate(2px, 0) rotate(-45deg);
}

*/
/* .gold_bsul li input[type=checkbox] {
  position: absolute;
  cursor: pointer;
  width: 100%;
  height: 100%;
  z-index: 1;
  opacity: 0;
}
.gold_bsul li input[type=checkbox]:checked ~ div {
  margin-top: 0;
  max-height: 0;
  opacity: 0;
  transform: translate(0, 50%);
}
.gold_bsul li input[type=checkbox]:checked ~ i:before {
  transform: translate(2px, 0) rotate(45deg);
}
.gold_bsul li input[type=checkbox]:checked ~ i:after {
  transform: translate(-2px, 0) rotate(-45deg);
}
 */

.bs_viewarea-inner {}

.bs_viewarea-inner .wrap {
    width: 100%;
    max-width: 1280px;
    margin: 0 auto;
    flex-wrap: nowrap;
}

.bs_viewarea-inner .num {
    width: 35px;
    height: 35px;
    padding-top: 10px;
    /* border: 1px solid #b2b2b2; */
    background: #607D8B;
    color: #fff;
    font-size: 18px;
    font-family: 'Hind Guntur', sans-serif;
    font-weight: 400;
    text-align: center;
    line-height: 1;
    float: left;
    clear: left;
    border-radius: 50%;
    -webkit-border-radius: 50%;
    -moz-border-radius: 50%;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
}

@media screen and (min-width: 768px) {
    .bs_viewarea-inner {
        height: 100%;
        padding: 10px 0;
    }
}

.bs_viewarea-textarea {
    padding: 1em;
}

@media screen and (max-width: 1080px) {
    .bs_viewarea-textarea {}
}

@media screen and (max-width: 767px) {
    .bs_viewarea-textarea {
        overflow-y: hidden
    }
}

.bs_viewarea-textarea-name {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.8;
    font-family: "Yu Mincho", "YuMincho";
    /* margin-top: 27px */
    padding-left: 50px;
}

.bs_viewarea-textarea-hurigana {
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    font-family: "Yu Mincho", "YuMincho";
    letter-spacing: 3px;
    margin-top: 13px
}

.bs_viewarea-textarea-detail {
    margin-top: 10px;
    margin-left: 3px;
    padding-top: 18px;
    position: relative;
}

.bs_viewarea-textarea-detail:before {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    background-color: #9E9E9E;
    position: absolute;
    top: 2px;
    left: 1px;
    height: 1px;
    width: 100%;
}

.bs_viewarea-textarea-tit {
    font-size: 18px;
    font-weight: 400;
    line-height: 1.4;
    font-family: "Yu Mincho", "YuMincho"
}

.bs_viewarea-textarea-txt {
    font-size: 15px;
    font-weight: 400;
    line-height: 2.35714;
    padding-left: 1em;
}

.bs_viewarea-textarea-txt:not(:first-of-type) {
    /* margin-top: 11px; */
}

.bs_viewarea-textarea-table {
    margin-top: 20px;
    position: relative;
    z-index: 99
}

.bs_viewarea-textarea-table dl {
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-top: 1px solid #ddd;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 20px 0 19px 6px;
}

.bs_viewarea-textarea-table dt {
    min-width: 1em;
}

.bs_viewarea-textarea-table dd {
    font-size: 16px;
    line-height: 1.23077;
    color: #000000;
    display: inline-block;
    word-break: break-all;
    padding-left: 1em;
}

.bs_viewarea-textarea-table dd a {
    font-size: 16px;
    line-height: 1.23077;
    color: #1c7098;
    display: inline-block;
    word-break: break-all;
}

.bs_viewarea-textarea-table dd a[target="_blank"]:after {
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    content: "";
    display: inline-block;
    vertical-align: middle;
    /*     background-image: url(../images/common/ico-blank_sm-glay.svg); */
    margin-top: -4px;
    margin-left: 4px;
    -webkit-transition: background-image .2s linear;
    transition: background-image .2s linear;
    height: 8px;
    width: 8px
}

@media screen and (min-width: 768px) and (max-height: 690px) {
    .bs_viewarea-wrap {
        height: calc(100% - 5%);
        width: calc(100% - 5%)
    }
    .bs_viewarea-inner {
        height: inherit
    }
    .bs_viewarea-textarea {
        overflow-y: auto
    }
}

@media screen and (max-width: 767px) {
    .bs_viewarea-inner .wrap {
        flex-wrap: wrap;
    }
    .brands__viewarea {
        padding: 38px 20px 60px
    }
    .bs_viewarea-tit {
        font-size: 12px;
        line-height: 1;
        margin-left: -2px
    }
    .bs_viewarea-tit-catename {
        letter-spacing: 2.6px
    }
    .bs_viewarea-tit-brandkind {
        letter-spacing: 2.6px;
        margin-left: 11px;
        padding-left: 13px
    }
    .bs_viewarea-inner {
        margin-top: 22px
    }
    .bs_viewarea-item-tit {
        font-size: 10px;
        line-height: 1;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        margin-left: 9px
    }
    .bs_viewarea {
        bottom: 0;
        left: 0;
        right: 0;
        top: 0;
        height: 100%;
        width: 100%
    }
    .bs_viewarea-bg {
        bottom: 0;
        right: 0
    }
    .bs_viewarea-wrap {
        bottom: 0;
        display: block;
        left: 0;
        overflow-y: auto;
        position: relative;
        -webkit-overflow-scrolling: touch;
        right: 0;
        top: 0;
        height: inherit;
        width: 100%;
        z-index: 1
    }
    .bs_viewarea-inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 20px;
        position: relative;
        width: 100%;
        z-index: 999999
    }
    .bs_viewarea-imagearea {
        height: 250px;
        width: 100%;
        min-width: 100%
    }
    .bs_viewarea-textarea {
        padding: 20px 20px;
        width: 100%;
    }
    .bs_viewarea-textarea:after {
        font-size: 177.5px;
        font-weight: 400;
        line-height: 1;
        bottom: -188px;
        content: "";
        color: rgba(145, 124, 80, 0.03);
        left: 30px;
        letter-spacing: -53px;
        position: absolute
    }
    .bs_viewarea-textarea-name {
        font-size: 16px;
        line-height: 1;
        padding-left: 35px;
    }
    .bs_viewarea-textarea-hurigana {
        font-size: 11px;
        line-height: 1;
        letter-spacing: 3px;
        margin-top: 6px
    }
    .bs_viewarea-textarea-detail {
        margin-top: 12px;
        margin-left: 0;
        padding-top: 22px;
        position: relative
    }
    .bs_viewarea-textarea-detail:before {
        top: 2px;
        left: 0;
        height: 1px;
        width: 100%;
    }
    .bs_viewarea-textarea-tit {
        font-size: 16px;
        line-height: 1.25
    }
    .bs_viewarea-textarea-txt {
        /* font-size: 12px; */
        line-height: 1.75;
    }
    .bs_viewarea-textarea-txt:not(:first-of-type) {
        margin-top: 8px
    }
    .bs_viewarea-textarea-table {
        margin-top: 25px
    }
    .bs_viewarea-textarea-table dl {
        font-size: 13px;
        font-weight: 400;
        line-height: 1;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 16px 0 13px 6px
    }
    .bs_viewarea-textarea-table dt {
        min-width: 100%
    }
    .bs_viewarea-textarea-table dd {
        margin-top: 7px
    }
}

@media screen and (max-width: 500px) {
    .bs_viewarea-textarea {
        padding: 20px 0px;
        width: 100%;
    }
    .bs_viewarea-textarea-name {
        padding-top: 10px;
    }
}


/* 金地金 */


/* news */

.int_blogR {
    width: 17%;
    margin-left: 0;
    float: right;
}

.int_blogL {
    width: 82%;
    padding-right: 1%;
    float: left;
    border-right: 1px solid #f1efef;
}

@media screen and (max-width: 850px) {
    .int_blogR {
        width: 98%;
        margin-left: 1%;
        float: right;
        margin: 2%;
        margin-left: 2%;
    }
    .int_blogL {
        width: 98%;
        padding-right: 1%;
        float: left;
        border-right: none;
        margin: 2%;
    }
    .int_blog {
        width: 100%;
    }
}

.sd-section__head {
    padding: 8px 15px;
    font-size: 16px;
    font-weight: 500;
    background: #ddd;
    text-align: left;
    color: #505050;
}

.sd-section__item a {
    padding: 12px 30px;
    -webkit-transition: all .3s ease;
    transition: all .3s ease
}

.sd-section__item a:hover {
    background: #f3f2f3
}

.c-content-lessonplan--type_lessonplan .c-content-lessonplan__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    /* background-color: #f4f4f4; */
}

.c-content-lessonplan--type_lessonplan .c-content-lessonplan__bgW {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #fff;
}

.c-content-lessonplan--type_lessonplan .c-content-lessonplan__inner {
    position: relative;
    z-index: 1
}

@media only screen and (max-width:47.9375em) {
    .c-content-lessonplan--type_lessonplan .c-content-lessonplan__inner {
        /* padding-top: 60px; */
        /* padding-bottom: 60px; */
        padding: 30px 20px 0px;
    }
}

@media print,
screen and (min-width:48em) {
    .c-content-lessonplan--type_lessonplan .c-content-lessonplan__inner {
        padding-top: 0px;
        /* padding-top: 80px; */
        padding-bottom: 0px;
        /* border-top: 1px solid #ddd; */
    }
}

.c-content-lessonplan {
    position: relative;
    /* overflow: auto; */
    /* padding-bottom: 100px; */
    /* padding-top: 80px; */
}

.c-content-lessonplan__inner {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

@media only screen and (max-width:47.9375em) {
    .c-content-lessonplan__inner {
        width: 100%;
        padding: 54px 4.68% 50px
    }
}

@media print,
screen and (min-width:48em) {
    .c-content-lessonplan__inner {
        position: relative;
        z-index: 1;
        width: 90.64%;
        padding-top: 54px;
        padding-bottom: 50px;
        margin-right: auto;
        margin-left: auto
    }
}

@media print,
screen and (min-width:61.25em) {
    .c-content-lessonplan__inner {
        max-width: 1400px;
        padding-top: 75px;
        padding-bottom: 80px
    }
}

@media print,
screen and (min-width:87.5em) {
    .c-content-lessonplan__inner {
        padding-right: 0;
        padding-left: 0
    }
}

.c-content-lessonplan__inner>:first-child {
    margin-top: 0
}

@media ( min-width: 600px) {
    .flexbox {
        display: flex;
        flex-wrap: wrap;
        width: 100%;
        /* max-width: 1200px; */
        justify-content: center;
        /* 子要素をflexboxにより中央に配置する */
        /* align-items: center; */
        /* 子要素をflexboxにより中央に配置する */
        /* margin-bottom: 100px; */
    }
    .item_20 {
        width: 20%;
        padding: 2%;
    }
    .item_20 img {
        width: 90%;
        padding: 3%;
    }
    .item_30 {
        width: 28%;
        padding: 2% 0;
    }
    .item_30 img {
        width: 100%;
        padding: 3%;
    }
    .item_40 {
        width: 38%;
        padding: 2%;
    }
    .item_40 img {
        width: 100%;
        padding: 3%;
    }
    .item_50 {
        width: 46%;
        padding: 2%;
    }
    .item_50 img {
        width: 100%;
        padding: 3%;
    }
    .item_60 {
        width: 60%;
        padding: 2%;
    }
    .item_60 img {
        width: 100%;
    }
    .item_60 .tTaisho {
        font-size: 18px;
        margin-bottom: 20px;
        font-weight: 600;
    }
    .item_60 .kyu {
        font-size: 16px;
        color: #000;
        font-weight: 500;
        border: 0px solid #ddd;
        padding: 1%;
        margin: 1%;
        background: #f0d174;
    }
    .item_70 {
        width: 70%;
        padding: 2%;
    }
    .item_70 img {
        width: 100%;
    }
    .item_70 .tTaisho {
        font-size: 18px;
        margin-bottom: 20px;
        font-weight: 600;
    }
    .item_70 .kyu {
        font-size: 16px;
        color: #000;
        font-weight: 500;
        border: 0px solid #ddd;
        padding: 1%;
        margin: 1%;
        background: #f0d174;
    }
}

.line-solid {
    border-bottom: 1px solid #ddd;
}

.txtColor_red {
    color: #d00e00;
    font-weight: 600;
    font-size: 20px;
}

.box_access {
    position: relative;
    margin: 2em 0;
    padding: 25px 10px 7px;
    /* border: solid 1px #ddd; */
}

.box_access .box-title {
    line-height: 30px;
    font-size: 20px;
    /* background: #FFC107; */
    color: #000;
    font-weight: bold;
}

.box_access p {
    margin: 0;
    /* padding: 0; */
}

.id_ptop {
    padding-top: 60px
}

table.company th {
    width: 30%;
    padding: 20px;
}

table.company td {
    padding: 20px;
}


/* ======== table.tableOther ======== */

table.access {
    border-collapse: collapse;
    text-align: left;
    font-size: 14px;
    letter-spacing: 1px;
    line-height: 2;
    width: 100%;
}

table.access tr {
    display: block;
}

table.access th {
    display: block;
    width: 100%;
    padding: 5px;
    font-weight: 600;
    vertical-align: 0;
    color: #056d70;
    font-size: 17px;
}

table.access td {
    display: block;
    width: 100%;
    padding: 5px;
    padding-left: 5px;
    vertical-align: 0;
    border-bottom: #ddd 1px solid;
}

table.access td .linkArea {
    display: blockmargin-top: 10px;
    text-align: left;
}

table.access td .linkArea a.btn {
    margin: 0;
}

table.access td h3 {
    color: #056d70
}


/* ======== table.tableOther ======== */

table.company2 {
    border-collapse: collapse;
    text-align: left;
    font-size: 14px;
    letter-spacing: 1px;
    line-height: 1.5;
    width: 100%;
    margin-bottom: 20px;
}

table.company2 tr {
    display: block;
}

table.company2 th {
    display: inline-block;
    width: 8em;
    padding: 5px;
    vertical-align: 0;
}

table.company2 td {
    display: inline-block;
    /* width:100%; */
    padding: 5px;
    padding-left: 5px;
    vertical-align: 0;
    /* border-bottom: #ddd 1px solid; */
}

table.company2 td .linkArea {
    display: blockmargin-top: 10px;
    text-align: left;
}

table.company2 td .linkArea a.btn {
    margin: 0;
}


/* --- #map_canvas --- */

#map_canvas {
    width: 100%;
    margin-top: 70px;
    height: 400px;
    position: relative;
    z-index: 1;
    border: #ededed 1px solid;
}

@media only screen and (max-width: 950px) {
    table.access th {
        /* width:30%; */
        /* padding:20px; */
    }
    table.access td {
        padding: 20px;
    }
    table.company2 th {
        /* width:30%; */
        /* padding:20px; */
    }
    table.company2 td {
        padding: 20px;
    }
}

@media only screen and (max-width: 800px) {
    table.access {
        font-size: 13px;
    }
    table.company2 {
        font-size: 13px;
    }
}

@media only screen and (max-width: 738px) {
    table.access {
        font-size: 12px;
    }
    table.company2 {
        font-size: 12px;
    }
    /*	#map_canvas { display:none; }*/
}

@media only screen and (max-width: 414px) {
    table.access th {
        width: 100%;
        padding: 15px;
        font-size: 15px;
        font-weight: 600;
    }
    table.access td {
        padding: 15px;
    }
    table.company2 th {
        width: 100%;
        padding: 15px;
        font-size: 15px;
        font-weight: 600;
    }
    table.company2 td {
        padding: 15px;
    }
}

table.access ul {
    list-style-type: circle;
}

table.access li {
    line-height: 1.5;
    padding: 0.5%;
}

.l-wrapper {
    position: relative
}

.l-container.col2 {
    margin: 20px 10px
}

@media all and (min-width: 1200px) {
    .l-container.col2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        width: 1120px;
        margin: 50px auto;
    }
    .l-container.col2 .l-contents {
        -webkit-box-ordinal-group: 2;
        -ms-flex-order: 1;
        order: 1;
        width: calc(100% - 250px - 50px)
    }
    .l-container.col2 .l-sidebar {
        /* padding-top: 40px; */
        -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
        order: 2;
        width: 250px;
    }
}

.l-sidebar {
    margin-bottom: 60px;
    padding: 0 20px
}

.l-sidebar .sd-section+.sd-section {
    margin-top: 30px
}

.l-sidebar .sd-section__head {
    /* text-align: center; */
    padding: 10px;
    color: #FF9800;
    /* background: linear-gradient(55deg, #0a3c60 0%, #0a3c60 45%, #0d4b78 46%, #0d4b78 100%); */
    font-size: 16px;
    font-weight: 700;
}

.l-sidebar .sd-section__item {
    border-bottom: 1px solid #dcdcdc
}

.l-sidebar .sd-section__item a {
    text-decoration: none;
    display: block;
    padding: 10px 15px;
    /*     width:100px; */
}

.l-sidebar .sd-section__item a:after {
    /*     font-size: 10px;
    top: 0;
    right: 0px;
    z-index: 1;
    line-height: 55px;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    font-family: 'FontAwesome';
    content: "\f106"; */
}

@media all and (min-width: 600px) {
    .l-sidebar {
        margin-bottom: 120px;
        padding: 0
    }
    .l-sidebar .sd-section+.sd-section {
        margin-top: 45px
    }
    .l-sidebar .sd-section__head {
        padding: 8px;
        font-size: 16px;
    }
    .l-sidebar .sd-section__item a {
        padding: 12px 30px;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .l-sidebar .sd-section__item a:after {
        position: absolute;
        top: 50%;
        right: 20px;
        -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
        transform: translateY(-50%);
        content: "";
        display: block;
        width: 16px;
        height: 8px;
        font-family: 'FontAwesome';
        content: "\f106";
        font-size: 30px;
    }
    html.no-touchevents .blog-header__nav>li>a:not(.active):hover:after {
        animation: a-blog-header__nav .25s .05s backwards;
    }
    .l-sidebar .sd-section__item a:hover {
        background: #f3f2f3
    }
}

.c-archive01__item {
    position: relative
}

.c-archive01__item+.c-archive01__item {
    border-top: 1px solid #d1dfe1
}

.c-archive01__item+.c-archive01__item:after {
    position: absolute;
    top: -1px;
    left: 0;
    content: "";
    display: block;
    width: 70px;
    height: 1px;
    background: #705fa6
}

.c-archive01__item-link {
    display: block;
    padding: 20px 0 14px;
    text-decoration: none
}

.c-archive01__item-meta {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
}

.c-archive01__item-meta-date {
    width: 86px;
    font-size: 1.3rem
}

.c-archive01__item-meta-cat {
    width: calc(100% - 86px);
    font-size: 1.1rem;
    line-height: 1.5;
    letter-spacing: -.5em
}

.c-archive01__item-meta-cat-item {
    box-sizing: border-box;
    display: inline-block;
    padding: 1px 5px;
    min-width: 75px;
    border: 1px solid;
    letter-spacing: .06em;
    text-align: center
}

.c-archive01__item-tit {
    margin-top: 5px;
    font-size: 1.3rem
}

@media all and (min-width: 600px) {
    .c-archive01__item:after {
        width: 100px
    }
    .c-archive01__item-link {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start;
        padding: 21px 0
    }
    .c-archive01__item-meta {
        width: 210px
    }
    .c-archive01__item-meta-date {
        box-sizing: border-box;
        width: 120px;
        padding-left: 10px;
        font-size: 1.5rem
    }
    .c-archive01__item-meta-cat {
        width: calc(100% - 120px);
        font-size: 1.2rem
    }
    .c-archive01__item-meta-cat-item {
        display: block
    }
    .c-archive01__item-tit {
        box-sizing: border-box;
        width: calc(100% - 210px);
        margin-top: 0;
        padding-left: 28px;
        font-size: 1.5rem;
        line-height: 1.5;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .c-archive01__item-link:hover .c-archive01__item-tit {
        color: #8678b4;
        text-decoration: underline
    }
}

.c-archive02__item {
    position: relative;
    border-bottom: 1px solid #dcdcdc
}

.c-archive02__item:before {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 70px;
    height: 1px;
    background: #705fa6
}

.c-archive02__item-link {
    text-decoration: none;
    display: block;
    padding: 25px 0 20px
}

.c-archive02__item-date {
    display: inline-block;
    margin-right: 15px;
    font-size: 1.3rem
}

.c-archive02__item-cats {
    display: inline
}

.c-archive02__item-cat {
    display: inline-block;
    margin: 1px 5px 0 0;
    padding: 4px 15px;
    border: 1px solid #705fa6;
    font-size: 1.1rem;
    line-height: 1.2
}

.c-archive02__item-head {
    margin-top: 5px;
    font-size: 1.6rem;
    font-weight: 700
}

.c-archive02__item-txt {
    margin-top: 5px;
    line-height: 1.9
}

@media all and (min-width: 600px) {
    .c-archive02__item:before {
        width: 105px
    }
    .c-archive02__item-link {
        padding: 30px 0 30px
    }
    .c-archive02__item-area-head {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap
    }
    .c-archive02__item-meta {
        width: 220px
    }
    .c-archive02__item-date {
        margin-right: 25px;
        font-size: 1.6rem
    }
    .c-archive02__item-cats {
        display: inline
    }
    .c-archive02__item-cat {
        margin: 1px 5px 0 0;
        padding: 4px 20px;
        font-size: 1.2rem
    }
    .c-archive02__item-head {
        box-sizing: border-box;
        width: calc(100% - 220px);
        margin-top: 0;
        padding-left: 25px;
        font-size: 2rem
    }
    .c-archive02__item-txt {
        margin-top: 15px;
        line-height: 1.9
    }
}

.c-btn01 {
    max-width: 280px;
    margin: 16px auto 0;
    text-align: center;
    font-size: 1.5rem;
    line-height: 1.5
}

.c-btn01-list .c-btn01 {
    margin-top: 0
}

.c-btn01-list .c-btn01+.c-btn01 {
    margin-top: 12px
}

.c-btn01__link {
    box-sizing: border-box;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    height: 55px;
    padding: 0 40px 1px;
    border: 1px solid;
    text-decoration: none;
    color: #6a6436;
}

.c-btn01__link:after {
    position: absolute;
    top: 50%;
    right: 20px;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 16px;
    height: 8px;
    background: url("../img/common/ico_arw01.png") no-repeat center/contain
}

.c-btn01__link[href^="#"]:after {
    box-sizing: border-box;
    width: 10px;
    height: 10px;
    margin-top: -2px;
    background: transparent;
    border-style: solid;
    border-width: 1px 1px 0 0;
    -webkit-transform: translateY(-50%) rotate(135deg);
    -ms-transform: translateY(-50%) rotate(135deg);
    transform: translateY(-50%) rotate(135deg)
}

.c-btn01.is-white .c-btn01__link {
    color: #fff
}

.c-btn01.is-white .c-btn01__link:after {
    background-image: url("../img/common/ico_arw01_white.png")
}

.c-btn01.is-bg-white .c-btn01__link {
    background: #fff;
    color: #6a6436
}

@media all and (min-width: 600px) {
    .c-btn01 {
        max-width: 250px;
        margin: 35px auto 0
    }
    .c-btn01-list {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0 -10px
    }
    .c-btn01-list .c-btn01 {
        width: 250px;
        margin: 0 10px
    }
    .c-btn01-list .c-btn01+.c-btn01 {
        margin-top: 0
    }
    .c-btn01__link {
        height: 60px;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .c-btn01__link:hover {
        background: #6a6436;
        color: #fff
    }
    .c-btn01__link:after {
        right: 18px;
        width: 20px;
        height: 12px;
        margin-top: -2px;
        -webkit-transition: all .3s ease;
        transition: all .3s ease
    }
    .c-btn01__link:hover:after {
        right: 15px;
        background-image: url(../img/common/ico_arw01_white.png)
    }
    .c-btn01__link[href^="#"] {
        padding-right: 30px;
        padding-left: 30px
    }
    .c-btn01__link[href^="#"]:after {
        margin-top: -4px;
        margin-right: 1px
    }
    .c-btn01__link[href^="#"]:hover:after {
        right: 18px;
        margin-top: 2px
    }
    .c-btn01.is-white .c-btn01__link:hover {
        border-color: #8678b4
    }
}



/*---------------------ãƒœã‚¿ãƒ³---------------------------------*/

.link_btn {
    background-color: #5b5763;
    width: 82.5%;
    margin: 40px auto 0;
    text-align: center;
    color: #fff;
    position: relative;
    font-size: 16px;
    height: 54px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    transition: opacity .3s;
}

@media all and (-ms-high-contrast: none) {
    .link_btn {
        padding-top: 18px;
        padding-bottom: 12px;
    }
}

.link_btn::before,
.link_btn::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    margin: auto;
}

.link_btn::before {
    width: 26px;
    height: 26px;
    /* border: 1px solid #fff; */
    border-radius: 50%;
    left: 20px;
}

.link_btn::after {
    right: 30px;
    width: 5px;
    height: 5px;
    border-top: 1px solid #fff;
    border-right: 1px solid #fff;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.link_btn:hover {
    opacity: 0.5;
    text-decoration: none;
}

@media only screen and (max-width: 820px) {
    .link_btn {
        width: 71.5%;
        margin-top: 30px;
        font-size: 13px;
        height: 42px;
    }
    .link_btn::before {
        width: 18px;
        height: 18px;
        left: 10px;
    }
    .link_btn::after {
        /* left: 15px; */
        /* width: 5px; */
        /* height: 5px; */
    }
}

.link_btn.sm {
    font-size: 13px;
    width: 250px;
    max-width: 100%;
    color: #111;
    background: none;
    border: #111 1px solid;
    z-index: 100;
    height: 43px;
    margin-bottom: 3%;
}

.link_btn.sm::after {
    border-top: 1px solid #111;
    border-right: 1px solid #111;
}


/* blog-header
--------------------------- */

.blog-header .c-title-B {
    margin-bottom: 4vw;
}

.blog-header__navbox._fixed {
    position: fixed;
}

.blog-header__nav {
    margin-bottom: 2vw;
}

.blog-header__nav>li {
    border-top: 1px solid #DEE1EA;
}

.blog-header__nav>li>a {
    font-weight: 500;
    line-height: 1.6;
    text-align: left;
    display: block;
    padding: 1.3vw 40px 1.3vw 1vw;
    position: relative;
    transition: color .1s linear;
    border-bottom: 1px dashed #ddd;
    color: #505050;
}

.blog-header__nav>li>a.active {
    background-color: #F1F1F2;
}

html.no-touchevents .blog-header__nav>li>a:not(.active):hover {
    color: #F6921D;
}

.blog-header__nav>li>a:after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #9E9E9E;
    border-right: 2px solid #9E9E9E;
    position: absolute;
    top: 50%;
    right: 20px;
    transform: translate(-50%, -50%) rotate(45deg);
}

.blog-header__nav>li>a:hover:after {
    animation: a-top-blog__list .25s .05s backwards;
}

html.no-touchevents .blog-header__nav>li>a:not(.active):hover:after {
    animation: a-blog-header__nav .25s .05s backwards;
}

@keyframes a-blog-header__nav {
    60% {
        right: .5em;
    }
    100% {
        right: 1em;
    }
}


/* blog-article
--------------------------- */

.blog-article__header {
    margin: 3vw 0 -3vw;
}

.blog-article {
    padding: 0 4% 0 11%;
}

.category_title {
    position: relative;
    /* display: inline-block; */
    line-height: 1;
    font-family: "Century Gothic", CenturyGothic, AppleGothic, sans-serif;
    font-size: 25px;
    letter-spacing: 0.2em;
    /* padding-bottom: 30px; */
}

.category_title span {
    right: 0;
    top: 15px;
    position: absolute;
}

.news_title {
    font-size: 20px;
    text-align: left;
    padding: 1% 0;
    /*     color:#ff9d0d; */
}

.news_date {
    color: #d00007;
}

#detail {
    line-height: 2;
    /* display: flex; */
    /*     flex-wrap: wrap; */
    /* border: 1px solid #eee; */
    /* padding: 0.4em; */
    /* margin: 0 0 2em; */
    /* text-align: center; */
    /* align-items: center; */
    /* justify-content: center; */
}

.detailText {
    font-size: 16px !important;
    padding: 1em;
    border-radius: 5px;
    flex: 1 0 0;
    margin: 0.4em;
    /* border: 1px solid #eee; */
    min-width: 200px;
    /* font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; */
}

.detailText span {
    font-size: 16px !important;
}

.detailText a {
    font-size: 16px;
    color: #098b3b;
    font-weight: 600;
}

.detailText a:hover {
    color: #f58600
}

.detailText>div {
    font-size: 15px;
    /* font-size: 16px!important; */
}

.detailUpfile {
    margin: 5px 0 35px;
    text-align: center;
    padding: 2%;
    width: 50%;
}

@media only screen and (max-width: 600px) {
    .detailUpfile {
        margin: 5px 0 35px;
        text-align: center;
        padding: 2%;
        width: 100%;
    }
}

.detailUpfile img {
    /* max-width: 500px; */
}

.backORcloseBtn {
    text-align: right;
    line-height: 100%;
    /* margin: 15px; */
    padding-bottom: 15px;
}

.backORcloseBtn a {
    display: inline-block;
    padding: 0px 13px;
    /* 	border: 1px solid #d48e46; */
    color: #ffffff;
    background: #999;
    border-radius: 2px;
    text-decoration: none;
    font-size: 16px;
    line-height: 1.3;
}

.backORcloseBtn a::before {
    font-family: 'Font Awesome 5 Free';
    content: '\f30a';
    font-size: 1.5rem;
    font-weight: 600;
    color: #ffffff;
    line-height: 1.8;
    padding-right: 10px;
}

.backORcloseBtn a:hover {
    /*     background:#098b3b; */
}

.detailUpfile img {
    /* min-width: 300px; */
    height: auto;
    width: 100%;
    padding: 2%;
}

.pNav {
    padding: 2% 0;
    font-size: 15px;
    line-height: 1.8;
}

.pNav a {
    font-size: 15px;
    color: #666;
    border-bottom: 1px dotted #666;
}

.pNav a:hover {
    border-bottom: 0px solid #098b3b;
}

.categoryArea {
    text-align: right;
    padding-bottom: 60px;
}

.pCate {
    padding: 1% 0;
    font-size: 14px;
    /* text-align: right; */
    display: inline;
}

.pCate a {
    font-size: 14px;
    /* color: #fff; */
    /* border-bottom: 1px dotted #666; */
    padding: 0.5% 1%;
    /* background: #95908b; */
    /* margin: 1%; */
    /* border-radius: 50px; */
}

.pCate a:hover {
    color: #666
}

.pCate a:after {
    font-size: 10px;
    font-family: 'FontAwesome';
    content: "\f105";
    font-weight: normal;
    margin: 0 10px;
    height: 20px;
    line-height: 20px;
}


/* Pager style（外部化可） */

.pager {
    text-align: right;
    padding: 10px;
    clear: both;
    padding: 20px 0 0px;
}


/*ページャーボタン*/

.pager a {
    border: 1px solid #999;
    border-radius: 5px 5px 5px 5px;
    color: #333;
    font-size: 12px;
    padding: 3px 7px 2px;
    text-decoration: none;
    margin: 0 1px;
}


/*現在のページのボタン*/

.pager a.current {
    background: #999;
    border: 1px solid #999;
    border-radius: 5px 5px 5px 5px;
    color: #fff;
    font-size: 12px;
    padding: 3px 7px 2px;
    margin: 0 1px;
    text-decoration: none;
}

.pager a:hover {
    background: #999;
    color: #fff;
}

.overPagerPattern {
    padding: 0 2px;
}


/* .spinner */

.spinner {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    top: 0;
    margin: auto;
    -webkit-border-radius: 100%;
    -moz-border-radius: 100%;
    border-radius: 100%;
    width: 55px;
    height: 55px;
    opacity: 0.9;
    text-indent: -9999px;
    border-top: 1px solid #f9f9f9;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #999;
    border-left: 1px solid #999;
    -webkit-transform: translateZ(0);
    -moz-transform: translateZ(0);
    -o-transform: translateZ(0);
    -ms-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-animation: spin .75s linear infinite;
    -moz-animation: spin .75s linear infinite;
    -ms-animation: spin .75s linear infinite;
    -o-animation: spin .75s linear infinite;
    animation: spin .75s linear infinite
}

@-webkit-keyframes spin {
    0% {
        -webkit-transform: rotate(0)
    }
    100% {
        -webkit-transform: rotate(360deg)
    }
}

@-moz-keyframes spin {
    0% {
        -moz-transform: rotate(0)
    }
    100% {
        -moz-transform: rotate(360deg)
    }
}

@-ms-keyframes spin {
    0% {
        -ms-transform: rotate(0)
    }
    100% {
        -ms-transform: rotate(360deg)
    }
}

@-o-keyframes spin {
    0% {
        -o-transform: rotate(0)
    }
    100% {
        -o-transform: rotate(360deg)
    }
}

@keyframes spin {
    0% {
        transform: rotate(0)
    }
    100% {
        transform: rotate(360deg)
    }
}

@media screen and (max-width: 738px) {
    .spinner {
        width: 50px;
        height: 50px;
        opacity: 0.7;
    }
}

@media screen and (max-width: 560px) {
    .spinner {
        width: 40px;
        height: 40px;
    }
}



header#site-header {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 20004;
  width: 100%;
  /* height: 195px; */
  padding-left: 60px;
  padding-top: 55px;
}

header#site-header a:hover {
  color: #000;
}

header#site-header h1#logo-main {
  position: absolute;
  left: 65px;
  top: 20px;
  /* width: 250px; */
  /* height: 49px; */
  /* margin-top: 10px; */
}

header#site-header ul.menu > li {
  -webkit-transition: 0.2s ease;
  -moz-transition: 0.2s ease;
  -ms-transition: 0.2s ease;
  -o-transition: 0.2s ease;
  transition: 0.2s ease;
  display: inline-block;
}

.pc header#site-header ul.menu > li a:hover {
  opacity: .5;
}

header#site-header ul._sub {
  position: absolute;
  right: 260px;
  top: 0;
  height: 55px;
  padding-top: 20px;
}

header#site-header ul._sub > li {
  margin-right: 25px;
}

header#site-header ul._sub > li:last-child {
  margin-right: 0;
}

header#site-header ul._sub > li a {
  position: relative;
  display: block;
  font-weight: bold;
  font-size: 1.6rem;
  line-height: 16px;
}

header#site-header ul._sub > li.page a {
  padding-left: 12px;
  background: no-repeat left 3px transparent;
  background-size: auto 12px;
}

header#site-header ul._sub > li.page.access a:before {
/*   background-image: url(../img/common/icon_access.png); */
  font-weight: normal !important;
  font-family: 'Font Awesome 6 pro';
  content: "\f3c5";
  padding-right:10px;

}

header#site-header ul._sub > li.page.faq a {
  background-image: url(../img/common/icon_faq.png);
  padding-left: 14px;
}

header#site-header ul._sub > li.sns a {
  width: 16px;
  height: 12px;
}
/* line 899, ../_scss/style.scss */
header#site-header ul._sub > li.sns a span {
  display: none;
}
header#site-header ul._sub > li.sns a:before {
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -8px;
  display: block;
  width: 16px;
  height: 12px;
  font-family: 'hinuihitohi';
  font-weight: normal !important;
  font-size: 16px;
}

header#site-header ul._sub > li.facebook {
  margin-right: 3px;
}

header#site-header ul._sub > li.facebook a:before {
  content: '\e700';
}

header#site-header ul._sub > li.instagram a:before {
  content: '\e702';
}

header#site-header ul._sub > li.lang a {
  display: inline-block;
}

header#site-header ul._sub > li.lang a:after {
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 1px;
  background-color: #000;
  display: block;
  content: '';
}

header#site-header ul._main {
  /* margin-top: 20px; */
  /* text-align: right; */
  /* padding-right: 45px; */
}

header#site-header ul._main > li {
  margin-right: 62px;
  text-align: center;
}

header#site-header ul._main > li:last-child {
  margin-right: 0;
}

header#site-header ul._main > li a {
  display: block;
}
/
header#site-header ul._main > li a span {
  display: block;
}

header#site-header ul._main > li a span.main {
  /* font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif; */
  /* font-family: \\6E38\660E\671D, dnp-shuei-mincho-pr6n, YuMincho, Hiragino Mincho ProN, Hiragino Mincho Pro, "\FF2D\FF33 \660E\671D", serif; */
  letter-spacing: .1em;
  color: #000;
  font-size: 1.6rem;
  color: #000;
  margin-bottom: 8px;
  display: block;
}
/* line 939, ../_scss/style.scss */
header#site-header ul._main > li a span.sub {
  font-family: eb-garamond, serif;
  letter-spacing: .05em;
  font-size: 1rem;
  letter-spacing: .07em;
  color: #a6a6a6;
}
@media only screen and (max-width: 1020px) {

  header#site-header ul._main {
    margin-top: 50px;
  }

  header#site-header ul._main > li {
    margin-right: 54px;
  }
}
@media only screen and (max-width: 900px) {

  header#site-header {
    /* height: 185px; */
  }

  header#site-header h1#logo-main {
    /* width: 165px; */
    /* height: 165px; */
  }

  header#site-header h1#logo-main a.sitelogo._full {
    /* width: 165px; */
    /* height: 165px; */
  }

  header#site-header ul._main {
    margin-top: 20px;
  }

  header#site-header ul._main > li {
    margin-right: 42px;
  }
}
@media only screen and (max-width: 768px) {

  header#site-header {
    /* height: 185px; */
  }

  header#site-header h1#logo-main {
    left: 40px;
    /* width: 140px; */
    /* height: 140px; */
  }

  header#site-header h1#logo-main a.sitelogo._full {
    width: 200px;
    height: 39px;
  }

  header#site-header ul._main {
    margin-top: 40px;
    padding-right: 35px;
    display: none;
  }

  header#site-header ul._main > li {
    margin-right: 32px;
  }
}





/* @media screen and (max-width: 667px) { */
@media screen and (max-width: 812px) {

  header#site-header {
    width: 100%;
    height: 154px;
  }
  header#site-header h1#logo-main {
    left: 23px;
    top: 24px;
    width: 200px;
    height: 39px;
    margin-top: 0;
  }
  header#site-header h1#logo-main a.sitelogo._full {
    width: 200px;
    height: 49px;
  }
  header#site-header ul.menu {
    display: none;
  }
}

/* = [Site Navigation]
---------------------------------------------------------------------*/
/* line 1000, ../_scss/style.scss */
.open-nav, .open-menu {
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
}

/* line 1004, ../_scss/style.scss */
body.open-nav {
  overflow: hidden;
}

/* line 1005, ../_scss/style.scss */
nav#site-navi {
  -moz-animation: fadeOut 0.01s ease both;
  -webkit-animation: fadeOut 0.01s ease both;
  animation: fadeOut 0.01s ease both;
  position: fixed;
  left: 0;
  top: 0;
  z-index: 20005;
  width: 100%;
  height: 100%;
  overflow: hidden;
  background-color: white;
}
/* line 1007, ../_scss/style.scss */
.open-nav nav#site-navi {
  -moz-animation: fadeIn 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
  -webkit-animation: fadeIn 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
  animation: fadeIn 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
}
/* line 1008, ../_scss/style.scss */
.hide-nav nav#site-navi {
  -moz-animation: fadeOut 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
  -webkit-animation: fadeOut 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
  animation: fadeOut 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53) both;
}
/* line 1019, ../_scss/style.scss */
nav#site-navi #site-navi-inner {
  position: relative;
  width: 100%;
  height: 100vh;
  padding-top: 10px;
  padding-bottom: 10px;
}
/* line 1024, ../_scss/style.scss */
nav#site-navi .menu-wrapper {
  position: relative;
  z-index: 100;
  padding-left: 23.3%;
  display: table;
  width: 100%;
  height: 100%;
}
/* line 1028, ../_scss/style.scss */
nav#site-navi .menu-wrapper .page-visual {
  display: table-cell;
  position: relative;
  z-index: 1;
  width: 54.8%;
  height: 100%;
}
/* line 1032, ../_scss/style.scss */
nav#site-navi .menu-wrapper .page-visual .visual {
  -webkit-transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -moz-transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -ms-transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -o-transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  position: absolute;
  left: 0;
  top: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  background-repeat: no-repeat;
  background-position: center center;
  background-color: transparent;
  -moz-background-size: cover !important;
  -o-background-size: cover !important;
  -webkit-background-size: cover !important;
  background-size: cover !important;
  opacity: 0;
}
/* line 1036, ../_scss/style.scss */
.ie nav#site-navi .menu-wrapper .page-visual .visual {
  height: 97.8vh;
}
/* line 1039, ../_scss/style.scss */
nav#site-navi .menu-wrapper .page-visual .visual._default {
  opacity: 1;
  z-index: 1;
}
/* line 1040, ../_scss/style.scss */
nav#site-navi .menu-wrapper .page-visual .visual.__active {
  opacity: 1;
}
/* line 1046, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell {
  position: relative;
  z-index: 200;
  padding-top: 150px;
  display: table-cell;
  /* vertical-align: middle; */
}
/* line 1049, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell._left {
  width: 27.8%;
  padding-left: 10%;
}
/* line 1050, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell._right {
  width: 16.4%;
}
/* line 1053, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu > li:last-child {
  margin-bottom: 0 !important;
}
/* line 1054, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu > li a {
  display: block;
  white-space: nowrap;
}
/* line 1057, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu._main > li {
  margin-bottom: 56px;
}
/* line 1059, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu._main > li a {
  position: relative;
  -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -moz-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -ms-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -o-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
/* line 1062, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu._main > li a:before {
  -webkit-transition: width 0.22s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -moz-transition: width 0.22s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -ms-transition: width 0.22s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -o-transition: width 0.22s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: width 0.22s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  position: absolute;
  right: 109%;
  top: 50%;
  width: 0;
  height: 1px;
  background-color: #000;
  display: block;
  content: '';
}
/* line 1069, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu._main > li a span {
  display: block;
  -webkit-transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -moz-transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -ms-transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -o-transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: opacity 0.3s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
/* line 1072, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu._main > li a span.main {
  /* font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif; */
  letter-spacing: .1em;
  color: #000;
  font-size: 2.1rem;
  color: #000;
  margin-bottom: 13px;
}
/* line 1077, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu._main > li a span.sub {
  font-family: eb-garamond, serif;
  letter-spacing: .05em;
  font-size: 1.2rem;
  text-indent: 2px;
  color: #a6a6a6;
}
/* line 1084, ../_scss/style.scss */
.pc nav#site-navi .menu-wrapper div.cell ul.menu._main > li a:hover {
  padding-left: 4px;
}
/* line 1086, ../_scss/style.scss */
.pc nav#site-navi .menu-wrapper div.cell ul.menu._main > li a:hover span {
  opacity: .5;
}
/* line 1087, ../_scss/style.scss */
.pc nav#site-navi .menu-wrapper div.cell ul.menu._main > li a:hover:before {
  width: 130px;
}
/* line 1093, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu._sub {
  padding: 11px 0 11px 28px;
  border-left: 1px solid #000;
}
/* line 1096, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu._sub > li {
  margin-bottom: 25px;
/*   font-family: "游明朝", "YuMincho", "ヒラギノ明朝 Pro W6", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif; */
  letter-spacing: .1em;
  color: #000;
  font-size: 1.4rem;
  letter-spacing: 0;
}
/* line 1100, ../_scss/style.scss */
nav#site-navi .menu-wrapper div.cell ul.menu._sub > li a {
  -webkit-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -moz-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -ms-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  -o-transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
  transition: 0.2s cubic-bezier(0.55, 0.085, 0.68, 0.53);
}
/* line 1103, ../_scss/style.scss */
.pc nav#site-navi .menu-wrapper div.cell ul.menu._sub > li a:hover {
  opacity: .5;
}
/* line 1112, ../_scss/style.scss */
nav#site-navi a.sitelogo {
  position: absolute;
  left: 50px;
  top: 50px;
}
/* line 1114, ../_scss/style.scss */
nav#site-navi .meta-area {
  position: absolute;
  left: 58px;
  top: 150px;
  z-index: 100;
  width: 21.2%;
}
/* line 1117, ../_scss/style.scss */
nav#site-navi .meta-area .address {
  font-size: 1.25rem;
  line-height: 2;
  margin-bottom: 4px;
}
/* line 1118, ../_scss/style.scss */
nav#site-navi .meta-area .contact {
  font-family: eb-garamond, serif;
  letter-spacing: .05em;
  font-size: 1.5rem;
  white-space: nowrap;
}
/* line 1120, ../_scss/style.scss */
nav#site-navi .meta-area .contact .tel {
  display: inline-block;
}
/* line 1122, ../_scss/style.scss */
nav#site-navi .meta-area .contact .tel:after {
  display: inline-block;
  /* content: '|'; */
  padding: 0 5px;
}
/* line 1126, ../_scss/style.scss */
nav#site-navi ul.snslist {
  position: absolute;
  right: 60px;
  bottom: 50px;
  z-index: 101;
  display: inline-block;
  width: auto;
  text-align: right;
  display: none;
}
/* line 1130, ../_scss/style.scss */
nav#site-navi ul.snslist > li {
  -webkit-transition: 0.2s ease;
  -moz-transition: 0.2s ease;
  -ms-transition: 0.2s ease;
  -o-transition: 0.2s ease;
  transition: 0.2s ease;
  display: inline-block;
  margin-right: 25px;
}
/* line 1133, ../_scss/style.scss */
.pc nav#site-navi ul.snslist > li a:hover {
  opacity: .5;
}
/* line 1134, ../_scss/style.scss */
nav#site-navi ul.snslist > li:last-child {
  margin-right: 0;
}
/* line 1135, ../_scss/style.scss */
nav#site-navi ul.snslist > li a {
  position: relative;
  display: block;
  font-weight: bold;
  font-size: 1.2rem;
  line-height: 16px;
}
/* line 1141, ../_scss/style.scss */
nav#site-navi ul.snslist > li.sns a {
  width: 20px;
  height: 12px;
}
/* line 1143, ../_scss/style.scss */
nav#site-navi ul.snslist > li.sns a span {
  display: none;
}
/* line 1144, ../_scss/style.scss */
nav#site-navi ul.snslist > li.sns a:before {
  position: absolute;
  left: 0;
  top: 50%;
  margin-top: -8px;
  display: block;
  width: 20px;
  height: 12px;
  font-family: 'nezu';
  font-weight: normal !important;
  font-size: 20px;
}
/* line 1152, ../_scss/style.scss */
nav#site-navi ul.snslist > li.facebook {
  margin-right: 8px;
}
/* line 1154, ../_scss/style.scss */
nav#site-navi ul.snslist > li.facebook a:before {
  content: '\e700';
}
/* line 1156, ../_scss/style.scss */
nav#site-navi ul.snslist > li.instagram a:before {
  content: '\e702';
}
/* line 1157, ../_scss/style.scss */
nav#site-navi ul.snslist > li.lang a {
  display: inline-block;
}
/* line 1159, ../_scss/style.scss */
nav#site-navi ul.snslist > li.lang a:after {
  position: absolute;
  left: 0;
  bottom: -3px;
  width: 100%;
  height: 1px;
  background-color: #000;
  display: block;
  content: '';
}
@media screen and (max-width: 1200px) {
  /* line 1171, ../_scss/style.scss */
  nav#site-navi .menu-wrapper {
    padding-left: 21.2%;
  }
  /* line 1173, ../_scss/style.scss */
  nav#site-navi .menu-wrapper .page-visual {
    width: 54.8%;
  }
  /* line 1175, ../_scss/style.scss */
  nav#site-navi .menu-wrapper div.cell._left {
    padding-left: 9%;
  }
  /* line 1177, ../_scss/style.scss */
  nav#site-navi .menu-wrapper div.cell ul.menu._sub {
    padding: 11px 0 11px 24px;
  }
  /* line 1181, ../_scss/style.scss */
  nav#site-navi a.sitelogo {
    width: 180px;
    height: 180px;
  }
}
@media screen and (max-width: 1040px) {
  /* line 1189, ../_scss/style.scss */
  nav#site-navi .menu-wrapper div.cell._left {
    padding-left: 6.5%;
  }
  /* line 1192, ../_scss/style.scss */
  nav#site-navi .menu-wrapper div.cell ul.menu._main > li {
    margin-bottom: 40px;
  }
  /* line 1196, ../_scss/style.scss */
  nav#site-navi .menu-wrapper div.cell ul.menu._main > li a span.main {
    font-size: 1.7rem;
  }
  /* line 1201, ../_scss/style.scss */
  nav#site-navi .menu-wrapper div.cell ul.menu._sub {
    padding: 11px 0 11px 24px;
  }
  /* line 1205, ../_scss/style.scss */
  nav#site-navi a.sitelogo {
    width: 160px;
    height: 160px;
  }
}
@media screen and (max-width: 840px) {
  /* line 1211, ../_scss/style.scss */
  nav#site-navi .menu-wrapper {
    padding-left: 40%;
  }
  /* line 1213, ../_scss/style.scss */
  nav#site-navi .menu-wrapper .page-visual {
    display: none;
  }
  /* line 1215, ../_scss/style.scss */
  nav#site-navi a.sitelogo {
    left: 20%;
    top: 50%;
    margin-left: -80px;
    margin-top: -80px;
    width: 155px;
    height: 155px;
  }
  /* line 1220, ../_scss/style.scss */
  nav#site-navi .meta-area {
    display: inline-block;
    width: auto;
    bottom: 50px;
  }
}
/* @media screen and (max-width: 667px) { */
@media screen and (max-width: 812px) {
  /* line 1005, ../_scss/style.scss */
  nav#site-navi {
    overflow-y: scroll;
    padding-left: 0;
    padding-top: 117px;
    padding-bottom: 65px;
  }
  /* line 1228, ../_scss/style.scss */
  nav#site-navi #site-navi-inner {
    height: auto;
    padding-top: 0;
    padding-bottom: 0;
  }
  /* line 1230, ../_scss/style.scss */
  nav#site-navi a.sitelogo {
    display: none;
  }
  /* line 1231, ../_scss/style.scss */
  nav#site-navi .menu-wrapper {
    display: block;
    padding-left: 0;
    height: auto;
  }
  /* line 1233, ../_scss/style.scss */
  nav#site-navi .menu-wrapper div.cell {
    display: block;
    width: 100% !important;
    padding-top: 0;
  }
  nav#site-navi .menu-wrapper div.cell._left {
    padding-left: 0;
    padding-top: 0;
  }
  nav#site-navi .menu-wrapper div.cell ul.menu {
    text-align: center;
  }
  nav#site-navi .menu-wrapper div.cell ul.menu._main {
    margin-bottom: 65px;
  }
  nav#site-navi .menu-wrapper div.cell ul.menu._main > li {
    margin-bottom: 34px;
  }
  nav#site-navi .menu-wrapper div.cell ul.menu._main > li a span.main {
    font-size: 1.7rem;
    margin-bottom: 12px;
  }
  nav#site-navi .menu-wrapper div.cell ul.menu._sub {
    padding: 0;
    border-left: 0 none;
  }
  nav#site-navi .menu-wrapper div.cell ul.menu._sub > li {
    margin-bottom: 9px;
  }
  nav#site-navi .menu-wrapper div.cell ul.menu._sub > li:last-child {
    margin-bottom: 0;
  }
  nav#site-navi .menu-wrapper div.cell ul.menu._sub > li a {
    display: block;
    width: 100%;
    line-height: 55px;
    border: 1px solid #ccc;
  }
  nav#site-navi .meta-area {
    position: static;
    margin-top: 40px;
    width: 100%;
    text-align: center;
  }
  nav#site-navi .meta-area .address {
    font-size: 1.25rem;
    line-height: 2;
    margin-bottom: 4px;
  }
  nav#site-navi .meta-area .contact {
    font-family: eb-garamond, serif;
    letter-spacing: .05em;
    font-size: 1.5rem;
    white-space: nowrap;
  }
  nav#site-navi .meta-area .contact .tel {
    display: inline-block;
  }
  nav#site-navi .meta-area .contact .tel:after {
    display: inline-block;
    content: '|';
    padding: 0 5px;
  }
  nav#site-navi ul.snslist {
    position: static;
    margin-top: 25px;
    width: 100%;
    text-align: center;
  }
  nav#site-navi ul.snslist > li.sns a {
    width: 19px;
  }
  nav#site-navi ul.snslist > li.sns a:before {
    font-size: 19px;
  }
  nav#site-navi ul.snslist > li.facebook {
    margin-right: 5px;
  }
}



/* お問合わせ */

form#mail_form * {
    margin: 0;
    padding: 0;
}

form#mail_form {
    position: relative;
    width: 960px;
    /* top: 100px; */
    margin: 50px auto;
    padding: 10px 0;
    background: #ffffff;
    border: 1px solid #cccccc;
    border-radius: 7px;
    box-shadow: 0 0 7px rgba( 0, 0, 0, 0.2);
    font-size: 95%;
    line-height: 1.8;
}

form#mail_form dl {
    width: 90%;
    margin: 0 auto;
    overflow: hidden;
}

form#mail_form dl dt {
    clear: both;
    width: 30%;
    float: left;
    border-top: 1px solid #cccccc;
    padding: 15px 0;
    text-align: right;
    overflow: hidden;
}

form#mail_form dl dd {
    width: 65%;
    float: right;
    border-top: 1px solid #cccccc;
    padding: 15px 0 15px 5%;
}

form#mail_form dl dt:first-child,
form#mail_form dl dt:first-child+dd {
    border: none;
}

form#mail_form dl dt span {
    display: block;
    font-size: 85%;
    color: #3377ff;
}


/* -- for JavaScript ここから -------------------------------------------------------------------------------- */

form#mail_form dl dt span.required,
form#mail_form dl dt span.optional {
    display: inline-block;
    float: left;
    color: #ffffff;
    padding: 4px 10px;
    border-radius: 3px;
}

form#mail_form dl dt span.required {
    background: #a22925;
    /* border: 1px solid #d43f3a; */
}

form#mail_form dl dt span.optional {
    /* background: #337ab7; */
    /* border: 1px solid #2e6da4; */
}

form#mail_form dl dd span.error_blank,
form#mail_form dl dd span.error_format,
form#mail_form dl dd span.error_match {
    display: block;
    color: #ff0000;
    margin-top: 3px;
}

span.loading {
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border-top: 5px solid rgba( 255, 255, 255, 0.2);
    border-right: 5px solid rgba( 255, 255, 255, 0.2);
    border-bottom: 5px solid rgba( 255, 255, 255, 0.2);
    border-left: 5px solid #ffffff;
    -webkit-transform: translateZ( 0);
    -ms-transform: translateZ( 0);
    transform: translateZ( 0);
    -webkit-animation: load-circle 1.0s linear infinite;
    animation: load-circle 1.0s linear infinite;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -30px;
    margin-left: -30px;
}

@-webkit-keyframes load-circle {
    0% {
        -webkit-transform: rotate( 0deg);
        transform: rotate( 0deg);
    }
    100% {
        -webkit-transform: rotate( 360deg);
        transform: rotate( 360deg);
    }
}

@keyframes load-circle {
    0% {
        -webkit-transform: rotate( 0deg);
        transform: rotate( 0deg);
    }
    100% {
        -webkit-transform: rotate( 360deg);
        transform: rotate( 360deg);
    }
}


/* -- for JavaScript ここまで -------------------------------------------------------------------------------- */

form#mail_form input[type="text"],
form#mail_form input[type="email"],
form#mail_form input[type="tel"] {
    max-width: 90%;
    padding: 7px 2%;
    border: 1px solid #cccccc;
    /* border-radius: 3px; */
    background: #fafafa;
    -webkit-appearance: none;
    font-size: 100%;
    font-family: inherit;
    margin-top: 7px;
}

form#mail_form input[type="text"]:focus,
form#mail_form input[type="email"]:focus,
form#mail_form input[type="tel"]:focus,
form#mail_form textarea:focus {
    box-shadow: 0px 0px 5px #55ccff;
    border: 1px solid #55ccff;
    background: #ffffff;
}

form#mail_form ul li input[type="radio"],
form#mail_form ul li input[type="checkbox"] {
    margin-right: 10px;
    margin-top: 10px;
}

form#mail_form ul li:first-child input[type="radio"],
form#mail_form ul li:first-child input[type="checkbox"] {
    margin-top: 0px;
}

form#mail_form select {
    font-size: 100%;
    font-family: inherit;
    margin-top: 10px;
}

form#mail_form textarea {
    display: block;
    width: 90%;
    max-width: 90%;
    height: 200px;
    padding: 7px 2%;
    resize: vertical;
    border: 1px solid #cccccc;
    border-radius: 3px;
    background: #fafafa;
    -webkit-appearance: none;
    font-size: 100%;
    font-family: inherit;
}

form#mail_form ul {
    list-style-type: none;
}

form#mail_form ul li label:hover {
    cursor: pointer;
}

form#mail_form input#company {
    width: 60%;
}

form#mail_form input#name_1,
form#mail_form input#name_2,
form#mail_form input#read_1,
form#mail_form input#read_2,
form#mail_form input#postal,
form#mail_form input#phone,
form#mail_form input#schedule {
    width: 30%;
}

form#mail_form input#mail_address,
form#mail_form input#mail_address_confirm {
    width: 80%;
}

form#mail_form input#postal+a {
    display: inline-block;
    padding: 5px 15px;
    border: 1px solid #46b8da;
    border-radius: 3px;
    background: #5bc0de;
    font-size: 100%;
    color: #ffffff;
    text-decoration: none;
}

form#mail_form input#postal+a:hover {
    cursor: pointer;
    background: #31b0d5;
    border: 1px solid #269abc;
}

form#mail_form input#address {
    width: 90%;
}

form#mail_form p#form_submit {
    width: 90%;
    margin: 0 auto;
    padding: 15px 0;
    border-top: 1px solid #cccccc;
}

form#mail_form input[type="button"] {
    padding: 7px 20px;
    border: 1px solid #111;
    /* border-radius: 3px; */
    background: #333;
    font-size: 100%;
    color: #ffffff;
    font-family: inherit;
    -webkit-appearance: none;
}

form#mail_form input[type="button"]:hover {
    cursor: pointer;
    background: #111;
    border: 1px solid #111;
}

form#mail_form input#form_submit_button {
    margin-left: 35%;
}


/* -- responsive ----------------------------------------------------------------------------------------------------------------- */


/* 1000pixel start */

@media screen and ( max-width: 1000px) {
    form#mail_form {
        width: 95%;
        font-size: 100%;
    }
    form#mail_form dl {
        overflow: visible;
    }
    form#mail_form dl dt {
        width: auto;
        float: none;
        text-align: left;
        padding: 15px 0 5px;
        font-weight: bold;
    }
    form#mail_form dl dd {
        width: auto;
        float: none;
        border-top: none;
        padding: 0px 0 20px 0px;
    }
    form#mail_form dl dt span {
        font-weight: normal;
    }
    /* -- for JavaScript ここから -------------------------------------------------------------------------------- */
    form#mail_form dl dt span.required,
    form#mail_form dl dt span.optional {
        margin-right: 1em;
        margin-bottom: 2em;
    }
    /* -- for JavaScript ここまで -------------------------------------------------------------------------------- */
    form#mail_form input[type="text"],
    form#mail_form input[type="email"],
    form#mail_form input[type="tel"] {
        margin-top: 0px;
    }
    form#mail_form input#postal+a {
        padding: 6px 15px 5px;
    }
    form#mail_form input#form_submit_button {
        margin-left: 0;
    }
    form#mail_form select {
        font-size: 16px;
        margin-top: 0;
    }
    form#mail_form input#phone,
    form#mail_form input#schedule {
        width: 50%;
    }
}


/* 1000pixel end */

body {
    overflow-y: scroll;
    /* あってもなくてもどちらでも可 */
}

div#confirm_field {
    width: 960px;
    margin: 50px auto;
    padding: 10px 0;
    background: #ffffff;
    border: 1px solid #cccccc;
    border-radius: 7px;
    box-shadow: 0 0 7px rgba( 0, 0, 0, 0.2);
    font-size: 95%;
    line-height: 1.8;
}

div#confirm_field {
    display: none;
}

div#confirm_field h2 {
    width: 90%;
    margin: 0 auto;
    padding: 15px 0;
    font-size: 135%;
    font-weight: bold;
    text-align: center;
}

div#confirm_field dl {
    width: 90%;
    margin: 0 auto;
    overflow: hidden;
}

div#confirm_field dl dt {
    clear: both;
    width: 30%;
    float: left;
    border-top: 1px solid #cccccc;
    padding: 15px 0;
    text-align: right;
}

div#confirm_field dl dd {
    width: 65%;
    float: right;
    border-top: 1px solid #cccccc;
    padding: 15px 0 15px 5%;
}

div#confirm_field p#confirm_submit {
    width: 90%;
    margin: 0 auto;
    padding: 15px 0;
    border-top: 1px solid #cccccc;
}

div#confirm_field input[type="button"] {
    padding: 7px 20px;
    border-radius: 3px;
    font-size: 100%;
    color: #ffffff;
    font-family: inherit;
    -webkit-appearance: none;
}

div#confirm_field input#confirm_submit_button {
    background: #5cb85c;
    border: 1px solid #4cae4c;
    margin-left: 35%;
}

div#confirm_field input#confirm_submit_button:hover {
    cursor: pointer;
    background: #449d44;
    border: 1px solid #398439;
}

div#confirm_field input#confirm_cancel_button {
    background: #d9534f;
    border: 1px solid #d43f3a;
    margin-left: 20px;
}

div#confirm_field input#confirm_cancel_button:hover {
    cursor: pointer;
    background: #c9302c;
    border: 1px solid #ac2925;
}


/* -- responsive ----------------------------------------------------------------------------------------------------------------- */


/* 1000pixel start */

@media screen and ( max-width: 1000px) {
    div#confirm_field {
        width: 95%;
        font-size: 100%;
    }
    div#confirm_field h2 {
        text-align: left;
    }
    div#confirm_field dl {
        overflow: visible;
    }
    div#confirm_field dl dt {
        width: auto;
        float: none;
        text-align: left;
        padding: 15px 0 0;
        font-weight: bold;
    }
    div#confirm_field dl dt:before {
        content: "【";
    }
    div#confirm_field dl dt:after {
        content: "】";
    }
    div#confirm_field dl dd {
        width: auto;
        float: none;
        border-top: none;
        padding: 0px 0 15px 0px;
    }
    div#confirm_field input#confirm_submit_button {
        margin-left: 0;
    }
}


/* 1000pixel end */

#recruit .company {
    margin-top: 60px
}

#recruit .title-sec-01 .section-foot {
    height: 56.25vw;
    max-height: 300px;
}

#recruit .sec {
    /* overflow-x: hidden */
}

#recruit .sec h2 {
    margin-bottom: 40px
}

#recruit .sec p {
    margin-bottom: 10px;
    letter-spacing: .05em;
    line-height: 2.3
}

#recruit .sec-line>.inner {
    position: relative;
    padding-top: 100px;
}

#recruit .sec-line>.inner:before {
    display: block;
    width: 100%;
    height: 1px;
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: rgba(0, 0, 0, .1)
}

#recruit .sec-line .section-body {
    padding-top: 185px
}

#recruit .sec-01 {
    padding-top: 50px;
    padding-bottom: 100px;
    width: 100%;
    max-width: 1200px;
    margin: 0px auto 0;
}

#recruit .sec-01 .unit {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
}

#recruit .sec-01 .unit-head {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
}

#recruit .sec-01 .unit-foot {
    width: 37.5%;
    margin-left: 6.875%
}

#recruit .sec-01 .unit-foot>.img-cover {
    padding-bottom: 100%
}

#recruit .sec-01 .unit-foot .img {
    background-image: url(img/slideshow_01.jpg);
}

#recruit .titSub {
    color: #000;
    margin-bottom: 25px;
}

#recruit .titSubEn {
    font-size: 30px;
    font-weight: bold;
    /* font-family: 'Oswald', sans-serif; */
    display: block;
    line-height: 1.1;
    letter-spacing: .13em;
}

#recruit .titSubJa {
    font-size: 16px;
    text-align: left;
    display: block;
    line-height: 1.1;
    margin-top: 8px;
}

@media screen and (max-width:768px) {
    #recruit h2.section-title {
        line-height: 1.6
    }
    
    #recruit .titSubJa {
        text-align: center;
    }
    
    #recruit .sec .section-title,
    #recruit .sec p {
        text-align: center
    }
    #recruit .sec p {
        line-height: 2.14286
    }
    #recruit .sec .unit {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center
    }
    #recruit .sec .unit-head {
        width: auto
    }
    #recruit .sec-01 {
        padding-top: 135px;
        padding-bottom: 0
    }
    #recruit .sec-01 .unit {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin-right: -10px;
        margin-left: -10px
    }
    #recruit .sec-01 .unit-head {
        margin-right: 10px;
        margin-left: 10px
    }
    #recruit .sec-01 .unit-foot {
        width: 100%;
        margin-top: 90px;
        margin-left: 0
    }
    #recruit .flow .flow-list .unit-head .step-label {
        position: absolute;
        top: 3px;
        left: 0;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        vertical-align: top;
        line-height: 1;
        font-size: 1.5rem;
        letter-spacing: .3em
    }
    #recruit .flow .flow-list .unit-body {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        padding-bottom: 20px
    }
    #recruit .flow .flow-list .unit-foot {
        width: 100%;
        padding-right: 0;
        padding-left: 0;
        padding-bottom: 70px
    }
    #recruit .flow .flow-list .unit-foot p {
        font-size: inherit;
        line-height: 1.78571
    }
    #recruit .profile {
        padding-top: 90px;
        padding-bottom: 110px
    }
    #recruit .profile h2 {
        margin-bottom: 30px
    }
    #recruit .profile p {
        line-height: 2.14286;
        text-align: left;
    }
    #recruit .profile .section-head {
        padding: 0 20px
    }
    #recruit .profile .section-head .img-cover,
    #recruit .profile .section-head .img-outer {
        width: 250px;
        height: 250px
    }
    #recruit .profile .section-body {
        padding-top: 50px
    }
    #recruit .js-parallax-target .img,
    #recruit .js-parallax-target .img.img-02 {
        top: 0;
        height: 100%
    }
}

@media screen and (max-width:768px) {
    #recruit h2.section-title {
        font-size: 2.4rem
    }
    #recruit .sec {
        padding-top: 80px
    }
    #recruit .sec .unit-foot {
        margin-top: 60px
    }
    #recruit .sec-line>.inner {
        padding-top: 40px
    }
    #recruit .sec-01 {
        padding-top: 90px
    }
    #recruit .profile {
        padding-bottom: 60px
    }
    #recruit .example .section-body {
        padding-top: 80px
    }
}

#recruit table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%
}

#recruit th,
#recruit td {
    text-align: left;
    vertical-align: top
}


/*! #company
  =========================================== */

#recruit .companyTable {
    margin-top: 30px;
    margin-bottom: 100px;
}

#recruit .companyTable th,
#recruit .companyTable td {
    border: 1px dashed #d6d6d6;
    text-align: left;
}

#recruit .companyTable th {
    width: 250px;
    border-left: 0;
    padding: 10px 1% 10px;
    font-weight: 400;
}

#recruit .companyTable td {
    border-right: 0;
    padding: 10px 0 10px 30px;
}

#recruit .companyTable tr {
    border-bottom: dashed 1px #eee;
    /*   cursor: pointer; */
}


/*   .companyTable tr:hover{
  background-color: #9E9E9E;
  color:#fff;
   */


}
#recruit .companyTable th:before {
    font-family: 'themify';
    content: "\e724";
    /* color: #d00e00; */
    
    left: 0;
    padding-right: 10px;
    font-size: 14px;
}
@media only screen and (max-width: 500px) {
    #recruit .companyTable th {
        width: 100px;
        border-left: 0;
        padding: 18px 0 16px
    }
}
#recruit .companyScenery {
    margin: 120px -1000%;
    height: 255px;
    background: #ddd;
    background: url(css/../img/company/bg_company01.jpg);
    -webkit-animation: bgscroll 500s linear infinite;
    animation: bgscroll 500s linear infinite
}
#recruit .message {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto 0px;
    height: 100%;
    /* padding-bottom: 150px; */
}
#recruit .messageIn {
    width: 1105px;
    overflow: hidden;
    padding-bottom: 100px;
    margin: 50px auto;
}
#recruit .messageBox {
    float: left;
    width: 584px
}
#recruit .messageTxt {
    margin-top: 18px;
    letter-spacing: .075em
}
#recruit .messageImg {
    float: right;
    width: 450px;
    /*     height: 520px; */
    /*     background: url(../images/company_appearance.jpg) */
}
.messageImg img {
    width: 100%;
    padding: 1%;
}
#recruit .message li {
    font-size: 14px;
    font-weight: 400;
}
@media only screen and (max-width: 500px) {
    #recruit .messageIn {
        width: 100%;
        overflow: hidden;
        padding-bottom: 100px;
    }
    
    #recruit .messageBox {
        clear: both;
        width: 100%;
    }
    
    #recruit .messageTxt {
        margin-top: 18px;
        letter-spacing: .075em
    }
    
    #recruit .messageImg {
        clear: both;
        width: 100%;
        /*     height: 520px; */
        /*     background: url(../images/company_appearance.jpg) */
    }
    
    #recruit .messageImg img {
        width: 100%;
        padding: 1%;
    }
}

/* ボタン */
.button_cart {
    cursor: pointer;
    /* width: 100%; */
    
    font-weight: normal;
    font-size: 13px;
    line-height: 2em;
    letter-spacing: 0.18em;
    position: relative;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    background-color: #fff;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-color: #000;
    border-style: solid;
    border-width: 1px;
    padding: 13px 17px;
    padding: 0.8125em 1em 0.75em;
    transition: background-color 500ms ease-out;
}
.button_cart:hover,
.button_cart:focus {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
    text-decoration: none;
}
.button_cart2 {
    cursor: pointer;
    font-weight: normal;
    width: 90%;
    letter-spacing: 0.18em;
    position: relative;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    background-color: #fff;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-color: #000;
    border-style: solid;
    border-width: 1px;
    padding: 13px 17px;
    transition: background-color 500ms ease-out;
    font-size: 0.75rem;
}
.button_cart2:hover,
.button_cart2:focus {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
    text-decoration: none;
}
.button_cart3 {
    cursor: pointer;
    font-weight: normal;
    width: 80%;
    position: relative;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    background-color: #fff;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-color: #000;
    border-style: solid;
    border-width: 1px;
    padding: 20px 17px;
    transition: background-color 500ms ease-out;
    font-size: 0.75rem;
}
.button_cart3:hover,
.button_cart3:focus {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
    text-decoration: none;
}
button,
.button {
    cursor: pointer;
    font-family: inherit;
    font-weight: normal;
    font-size: 1em;
    line-height: 1;
    position: relative;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    background-color: #none;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-color: #000;
    border-style: solid;
    border-width: 1px;
    margin: 0 0 1.25em;
    padding: 13px 17px;
    transition: background-color 300ms ease-out;
    background: #fff;
}
button2,
.button2 {
    cursor: pointer;
    font-family: inherit;
    font-weight: normal;
    line-height: 1;
    position: relative;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    background-color: #none;
    color: #000;
    font-size: 1em;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-color: #000;
    border-style: solid;
    border-width: 1px;
    margin: 0 0 1.25em;
    padding: .8125em 1.5em .75em;
    transition: background-color 300ms ease-out;
}
button:hover,
button:focus,
.button:hover,
.button:focus {
    background-color: #ccc;
    color: #000;
}
button2:hover,
button2:focus,
.button2:hover,
.button2:focus {
    background-color: #000;
    color: #fff;
    text-decoration: none;
}
.button_gold {
    cursor: pointer;
    /* width: 100%; */
    
    font-weight: normal;
    font-size: 13px;
    line-height: 1.1em;
    letter-spacing: 0.18em;
    position: relative;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    background-color: #fff;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-color: #000;
    border-style: solid;
    border-width: 1px;
    padding: 13px 17px;
    padding: 0.8125em 1em 0.75em;
    transition: background-color 500ms ease-out;
}
.button_gold:hover,
.button_gold:focus {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
    text-decoration: none;
}
.button_gold2 {
    cursor: pointer;
    /* width: 100%; */
    
    margin: 5px;
    font-weight: normal;
    font-size: 13px;
    line-height: 1.1em;
    letter-spacing: 0.18em;
    position: relative;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    background-color: #cccccc;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-color: #000;
    border-style: solid;
    border-width: 1px;
    padding: 13px 17px;
    padding: 0.8125em 1em 0.75em;
    transition: background-color 500ms ease-out;
}
.button_gold2:hover,
.button_gold2:focus {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
    text-decoration: none;
}
.button_gold3 {
    margin: 5px;
    cursor: pointer;
    /* width: 100%; */
    
    font-weight: normal;
    font-size: 13px;
    line-height: 1.1em;
    letter-spacing: 0.18em;
    position: relative;
    text-decoration: none;
    text-align: center;
    display: inline-block;
    background-color: #fff;
    color: #000;
    -webkit-appearance: none;
    -moz-appearance: none;
    border-color: #000;
    border-style: dashed;
    border-width: 1px;
    padding: 13px 17px;
    padding: 0.8125em 1em 0.75em;
    transition: background-color 500ms ease-out;
}
.button_gold3:hover,
.button_gold3:focus {
    background-color: #000;
    color: #fff;
    border: 1px solid #000;
    text-decoration: none;
}

/* Read more */
.read-more {
    margin: 0 3px 15px;
    display: inline-block;
    width: 200px;
    max-width: 100%;
    color: #111;
    border: #111 1px solid;
    font-size: 14px;
    line-height: 40px;
    text-align: center;
    letter-spacing: 1px;
    position: relative;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 0;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
.read-more:after {
    font-family: 'themify';
    content: "\e649";
    font-size: 10px;
    font-style: normal;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    top: 0;
    right: 15px;
    z-index: 1;
    -webkit-transition: right 0.3s ease;
    -moz-transition: right 0.3s ease;
    transition: right 0.3s ease;
}
.read-more:hover {
    color: #fff;
    border: #9E9E9E 1px solid;
    background: #111;
}
.read-more:hover:after {
    right: 10px;
}
/* news more */
.news-more_ares {
    width:100%;
    text-align:center;
    margin: 15px 5px;
}
.news-more{
    margin: 0 3px 15px;
    display: inline-block;
    width: 120px;
    max-width: 100%;
    margin: 0 auto;
    color: #fff;
    background: #a52525;
    font-size: 13px;
    line-height: 25px;
    text-align: center;
    letter-spacing: 1px;
    position: relative;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 5em;
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
    padding-bottom: 3px;
}

.news-more:after {
    font-family: 'themify';
    content: "\e649";
    font-size: 10px;
    font-style: normal;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    top: 2px;
    right: 12px;
    z-index: 1;
    -webkit-transition: right 0.3s ease;
    -moz-transition: right 0.3s ease;
    transition: right 0.3s ease;
}
.news-more:hover {
    color: #fff;
    border: #9E9E9E 1px solid;
    background: #111;
}
.news-more:hover:after {
    right: 10px;
}
@media only screen and (max-width: 800px) {
    .read-more {
        margin-top: 15px;
        font-size: 13px;
    }
    
    * .read-more:after {
        right: 10px;
    }
    
    .read-more:hover {
        color: #fff;
        border: #111 1px solid;
        background: #111;
    }
}
@media only screen and (max-width: 738px) {
    .read-more {
        margin-top: 10px;
        width: 140px;
        font-size: 12px;
        line-height: 30px;
        border: none;
        border: #111 1px solid;
        font-size: 12px;
        line-height: 30px;
        text-align: center;
        letter-spacing: 1px;
        position: relative;
        -webkit-border-radius: 30px;
        -moz-border-radius: 30px;
        border-radius: 30px;
    }
    
    .read-more:after,
    .read-more:hover:after {
        right: 10px;
    }
}
@charset "UTF-8";
.pagetitle {
    padding: 5px;
    /* padding-bottom: 0; */
    
    text-align: center;
    /* background: url(../images/cotents_bg01.jpg); */
    
    background-position: 0 0;
    position: relative;
    overflow: hidden;
    /* height: 250px; */
    /* background: #eee; */
}
.pagetitle ul {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    text-align: right;
    font-size: 14px;
}
.pagetitle li {
    display: inline;
    padding: 0 5px;
}
.pagetitle {
    padding: 20px 5%;
    position: relative;
    z-index: 1;
    border-top: #ededed 1px solid;
    /* border-bottom: #f5f5f5 1px solid; */
    /* margin-bottom: 30px; */
}
.pagetitle:before {
    position: absolute;
    top: -1px;
    left: 5%;
    right: 5%;
    height: 0;
    content: "";
    border-top: #ededed 1px solid;
    z-index: 2;
}
.pagetitle ol {
    font-size: 0;
    margin: 0;
    padding: 0;
    line-height: 1.8;
    line-height: 1;
}
.pagetitle li {
    display: inline-block;
    *display: inline;
    *zoom: 1;
    list-style: none;
    font-size: 11px;
    font-weight: normal;
    margin: 0;
    padding: 0;
    letter-spacing: 1px;
    height: 20px;
    line-height: 20px;
}

/*#pagetitle li:after { font-size: 6px; font-family: 'themify'; content: "\e649"; font-weight: normal; margin: 0 10px; height:20px; line-height:20px; }*/
.pagetitle li:after {
    font-size: 10px;
    /* font-family: 'FontAwesome'; */
    /* content: "\f105"; */
    
    font-family: 'Font Awesome 6 pro';
    content: "\f054";
    font-weight: normal;
    margin: 0 10px;
    height: 20px;
    line-height: 20px;
}
.pagetitle li:last-child:after {
    display: none;
}
.pagetitle li i {
    font-size: 16px;
    padding-right: 5px;
    font-weight: normal;
    line-height: 1.3;
}
.pagetitle li a {
    /*border-bottom: #999 1px solid;*/
    
    position: relative;
    z-index: 1;
    height: 20px;
    line-height: 20px;
}

/*.breadcrumb li:first-child a:before {padding-right:5px; font-size: 11px; font-family: 'themify'; content: "\e69b";}*/
.#pagetitle li:first-child a:before {
    padding-right: 5px;
    font-size: 1.2rem;
    font-family: 'FontAwesome';
    content: "\f015";
}
.pagetitle li a:after {
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    width: 0;
    content: "";
    background: transparent;
    z-index: -1;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
}
.pagetitle li a:hover:after {
    width: 100%;
    /*background:#d7e4ed; */
}
.pagetitle li a:hover {
    color: #aaa;
    /*border-bottom: #999 1px solid;*/
}
@media only screen and (max-width: 800px) {
    .pagetitle {
        padding: 20px 0.5%;
        border-top: none;
    }
    
    .breadcrumb:before {
        display: none;
    }
    
    .pagetitle li a {
        /*border-bottom: #aaa 1px solid;*/
        font-size: 16px;
    }
    
    .pagetitle li a:hover:after {
        display: none;
    }
    
    .pagetitle li a:hover {
        color: #000;
    }
}
@media only screen and (max-width: 414px) {
    .pagetitle ol {
        font-size: 0;
        margin: -10px auto 0;
        padding: 0;
        display: block;
        text-align: left;
    }
    
    .pagetitle li {
        font-size: 14px;
        margin: 10px 0 0;
        padding: 0;
        letter-spacing: 1px;
    }
    
    .pagetitle li:after {
        margin: 0 5px;
    }
    
    .pagetitle li:last-child {
        overflow: hidden;
        text-overflow: ellipsis;
        white-space: nowrap;
        width: 10em;
    }
    
    .pagetitle li:first-child a {
        /* font-size: 0; */
        width: auto;
        padding-left: 10px;
        padding-bottom: 7px;
    }
    
    .pagetitle li:first-child a:before {
        padding-right: 0;
        font-size: 18px;
    }
    
    .pagetitle ul {
        text-align: left;
        font-size: 10px;
    }
    
    .pagetitle li {
        display: inline;
    }
    
    .pagetitle li a {
        font-size: 14px;
    }
}
@media only screen and (max-width: 320px) {
    .pagetitle li:last-child {
        width: ;
    }
}

/* repair */
.archive-repair-items {}
.archive-repair-items p {
    font-size: 18px;
}
.archive-repair-items .title:before {
    font-family: 'Font Awesome 6 pro';
    content: "\f3a5";
    left: 1.5em;
    color: #333;
    font-size: 1.2em;
    top: -3px;
    padding-right: 0.5em;
}
.archive-repair-items .item {
    padding: 60px 0;
    border-top: #d9e3e5 1px solid;
    overflow: hidden;
    position: relative;
    z-index: 0;
}
.archive-repair-items .item:first-child {
    padding-top: 0;
    border: none;
}
.archive-repair-items .item:last-child {
    padding-bottom: 0;
}
@media only screen and (max-width: 900px) {
    .archive-repair-items .item {
        padding: 50px 0;
    }
}
@media only screen and (max-width: 738px) {
    .archive-repair-items .item {
        padding: 45px 0;
    }
}
.archive-repair-items .item>.image {
    width: 30%;
    float: left;
    position: relative;
    /* -webkit-border-radius: 100%; */
    /* border-radius: 100%; */
}
.archive-repair-items .item>.text {
    float: right;
    width: 60%;
}
.archive-repair-items .item>.text .role {
    display: inline-block;
    font-size: 14px;
    /* font-family: 'Overpass', sans-serif; */
    
    font-weight: 400;
    letter-spacing: 0.125em;
    line-height: 1.4;
    text-transform: uppercase;
    position: relative;
    z-index: 0;
}
.archive-repair-items .item>.text .role:after {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    height: 50%;
    content: "";
    background: #ddd;
    z-index: -1;
}
.archive-repair-items .item>.text .name {
    margin: 10px 0 25px;
}
.archive-repair-items .item>.text .name .jp {
    margin-top: 10px;
    padding-left: 20px;
    font-size: 16px;
    /* font-family: 'Noto Sans JP', sans-serif; */
    
    font-weight: 400;
    letter-spacing: 4px;
    display: block;
    line-height: 1;
    position: relative;
    z-index: 0;
}
.jp span {
    font-size: 13px
}
.archive-repair-items .item>.text .name .jp:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 10px;
    height: 0;
    content: "";
    border-top: #0d0d0d 1px solid;
    z-index: -1;
}
.archive-repair-items .item>.text .name .en {
    font-size: 26px;
    /* font-family: 'Overpass', sans-serif; */
    
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 1.2;
    display: block;
}
.archive-repair-items .item>.text .comment {
    padding: 25px 25px 25px 0;
    /* margin-top: 25px; */
    
    font-size: 16px;
    line-height: 1.9;
    position: relative;
    z-index: 0;
}
.archive-repair-items .item>.text .comment img {
    width: 94%;
    padding: 3%;
}
.archive-repair-items .item>.text .comment:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -30px;
    content: "";
    background: #f7f7f7;
    z-index: -1;
    -webkit-border-radius: 0px 0px 15px 15px;
    border-radius: 0px 0px 15px 15px;
}
@media only screen and (max-width: 900px) {
    .archive-repair-items .item>.text .name .en {
        font-size: 25px;
    }
    
    .archive-repair-items .item>.text .comment {
        margin-top: 20px;
        padding: 20px 25px 20px 0;
        font-size: 15px;
    }
    
    .archive-repair-items .item>.text .comment:after {
        left: -25px;
    }
}
@media only screen and (max-width: 738px) {
    .archive-repair-items .item>.image {
        margin: 0 auto;
        width: 100%;
        max-width: 250px;
        float: none;
    }
    
    .archive-repair-items .item>.text {
        float: none;
        width: 100%;
        margin: 25px 0 0;
        text-align: center;
    }
    
    .archive-repair-items .item>.text .name {
        margin-bottom: 20px;
        text-align: center;
    }
    
    .archive-repair-items .item>.text .role {
        font-size: 13px;
        letter-spacing: 0.1em;
    }
    
    .archive-repair-items .item>.text .name {
        margin: 5px 0 20px;
    }
    
    .archive-repair-items .item>.text .name .jp {
        margin-top: 10px;
        padding-left: 0;
    }
    
    .archive-repair-items .item>.text .name .jp:before {
        display: none;
    }
    
    .archive-repair-items .item>.text .name .en {
        font-size: 22px;
    }
    
    .archive-repair-items .item>.text .career {
        margin: 0 auto;
        text-align: left;
        max-width: 450px;
    }
    
    .archive-repair-items .item>.text .comment {
        max-width: 450px;
        padding: 20px 5%;
        margin: 20px auto 0;
        font-size: 13px;
        text-align: left;
    }
    
    .archive-repair-items .item>.text .comment:after {
        left: 0;
    }
}
@media only screen and (max-width: 414px) {
    .archive-repair-items .item>.image {
        max-width: 200px;
    }
}

/* reform */
.archive-reform-items {}
.archive-reform-items p {
    font-size: 18px;
}
.archive-reform-items .title:before {
    font-family: 'Font Awesome 6 pro';
    content: "\f3a5";
    left: 1.5em;
    color: #333;
    font-size: 1.2em;
    top: -3px;
    padding-right: 0.5em;
}
.archive-reform-items .item {
    padding: 60px 0;
    border-top: #d9e3e5 1px solid;
    overflow: hidden;
    position: relative;
    z-index: 0;
}
.archive-reform-items .item:first-child {
    padding-top: 0;
    border: none;
}
.archive-reform-items .item:last-child {
    padding-bottom: 0;
}
@media only screen and (max-width: 900px) {
    .archive-reform-items .item {
        padding: 50px 0;
    }
}
@media only screen and (max-width: 738px) {
    .archive-reform-items .item {
        padding: 45px 0;
    }
}
@media only screen and (max-width: 500px) {
    .archive-reform-items .item {
        padding: 0 5px 0;
    }
}
.archive-reform-items .item>.image {
    width: 30%;
    float: left;
    position: relative;
    /* -webkit-border-radius: 100%; */
    /* border-radius: 100%; */
}
.archive-reform-items .item>.text {
    float: right;
    width: 100%;
    padding: 1em;
}
.archive-reform-items .item>.text .role {
    display: inline-block;
    font-size: 14px;
    /* font-family: 'Overpass', sans-serif; */
    
    font-weight: 400;
    letter-spacing: 0.125em;
    line-height: 1.4;
    text-transform: uppercase;
    position: relative;
    z-index: 0;
}
.archive-reform-items .item>.text .role:after {
    position: absolute;
    right: 0;
    left: 0;
    bottom: 0;
    height: 50%;
    content: "";
    background: #ddd;
    z-index: -1;
}
.archive-reform-items .item>.text .name {
    margin: 10px 0 25px;
}
.archive-reform-items .item>.text .name .jp {
    margin-top: 10px;
    padding-left: 20px;
    font-size: 16px;
    /* font-family: 'Noto Sans JP', sans-serif; */
    
    font-weight: 400;
    letter-spacing: 4px;
    display: block;
    line-height: 1;
    position: relative;
    z-index: 0;
}
.jp span {
    font-size: 13px
}
.archive-reform-items .item>.text .name .jp:before {
    position: absolute;
    top: 50%;
    left: 0;
    width: 10px;
    height: 0;
    content: "";
    border-top: #0d0d0d 1px solid;
    z-index: -1;
}
.archive-reform-items .item>.text .name .en {
    font-size: 26px;
    /* font-family: 'Overpass', sans-serif; */
    
    font-weight: 400;
    letter-spacing: 1px;
    line-height: 1.2;
    display: block;
}
.archive-reform-items .item>.text .comment {
    padding: 25px 25px 25px 0;
    /* margin-top: 25px; */
    
    font-size: 16px;
    line-height: 1.9;
    position: relative;
    z-index: 0;
}
.archive-reform-items .item>.text .comment p {
    font-size: 16px;
    line-height: 1.9;
}
.archive-reform-items .item>.text .comment img {
    width: 94%;
    padding: 3%;
}
.archive-reform-items .item>.text .comment:after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: -30px;
    content: "";
    background: #f7f7f7;
    z-index: -1;
    -webkit-border-radius: 0px 0px 15px 15px;
    border-radius: 0px 0px 15px 15px;
}
@media only screen and (max-width: 900px) {
    .archive-reform-items .item>.text .name .en {
        font-size: 25px;
    }
    
    .archive-reform-items .item>.text .comment {
        margin-top: 20px;
        padding: 20px 25px 20px 0;
        font-size: 15px;
    }
    
    .archive-reform-items .item>.text .comment:after {
        left: -25px;
    }
}
@media only screen and (max-width: 738px) {
    .archive-reform-items .item>.image {
        margin: 0 auto;
        width: 100%;
        max-width: 250px;
        float: none;
    }
    
    .archive-reform-items .item>.text {
        float: none;
        width: 100%;
        /* margin: 25px 0 0; */
        text-align: center;
    }
    
    .archive-reform-items .item>.text .name {
        margin-bottom: 20px;
        text-align: center;
    }
    
    .archive-reform-items .item>.text .role {
        font-size: 13px;
        letter-spacing: 0.1em;
    }
    
    .archive-reform-items .item>.text .name {
        margin: 5px 0 20px;
    }
    
    .archive-reform-items .item>.text .name .jp {
        margin-top: 10px;
        padding-left: 0;
    }
    
    .archive-reform-items .item>.text .name .jp:before {
        display: none;
    }
    
    .archive-reform-items .item>.text .name .en {
        font-size: 22px;
    }
    
    .archive-reform-items .item>.text .career {
        margin: 0 auto;
        text-align: left;
        max-width: 450px;
    }
    
    .archive-reform-items .item>.text .comment {
        max-width: 450px;
        padding: 20px 5%;
        margin: 20px auto 0;
        font-size: 13px;
        text-align: left;
    }
    
    .archive-reform-items .item>.text .comment:after {
        left: 0;
    }
}
@media only screen and (max-width: 414px) {
    .archive-reform-items .item>.image {
        max-width: 200px;
    }
}



/* メガネ　安心保証 */

.bl_media {
  font-size: 12px;
}

[class*='col-'].bl_media {
  padding: 5px;
}

.el_ttl {
  font-size: 16px;
  /* font-weight: bold; */
}

/* ***
  * Layout
  **************************** */

.ly_pageInner {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 50px 40px;
}

.ly_pageInner.ly_pageInner__bgcBorder {
  background-color: #fff;
  border: 1px solid #E8E8E8;
  color: #000;
}

@media(max-width: 1024px) {
  .ly_pageInner {
    width: 95%;
  }
}

@media(max-width: 599px) {
  .ly_pageInner {
    padding: 32px;
  }
}

/* ***
  * Block
**************************** */

/* bl_pageHeader */
.bl_pageHeader_bg {
  background-color: #68A2BF;
}

.bl_pageHeader_ttl {
  font-size: 48px;
  font-weight: 500;
}

.bl_pageHeader_cont {
  display: flex;
  align-items: center;
  margin-top: 32px;
}

.bl_pageHeader_detail {
  width: 54%;
}

.bl_pageHeader_img {
  width: 40%;
  margin-left: auto;
}

.bl_pageHeader_img img {
  width: 100%;
}

/* .bl_service */

.bl_serviceUnit {
  display: flex;
  flex-wrap: wrap;
}

.bl_serviceUnit.bl_serviceUnit__col3 {
  justify-content: space-between;
}

.bl_serviceUnit__col2 > .bl_service {
  width: 50%;
}

.bl_serviceUnit__col2 > .bl_service.bl_service__s {
  width: 40%;
}

.bl_serviceUnit__col2 > .bl_service.bl_service__l {
  width: 58%;
  margin-left: auto;
}
.bl_serviceUnit__col2 > .bl_service.bl_service__ll {
  width: 100%;
  margin-bottom: 80px;
  text-align:center;
}
.bl_serviceUnit__col2 > .bl_service.bl_service__ll img {
  width: 80%;
  margin-bottom:30px;
}



.bl_serviceUnit__col3 > .bl_service {
  width: 31%;
}

.bl_serviceUnit__col3 > .bl_serviceAbout {
  width: 30%;
}

.bl_service.bl_service__bd {
  padding: 24px 16px;
  border: 1px solid #040000;
  border-radius: 10px;
}

.bl_service_icon {
  /* width: 50%; */
  max-width: 200px;
  margin: 0 auto;
}

.bl_service_icon img{
  width: 100%;
  margin: 0 auto;
}


.bl_service_list {
  padding: 40px 14px;
}

.bl_service_item {
  position: relative;
}

.bl_service_item::before {
  content: '';
  position: absolute;
  top: 50%;
  left: -12px;
  transform: translateY(-50%);
  width: 12px;
  height: 12px;
  background-color: #BD212F;
  border-radius: 50%;
}

.bl_service_item.hp_c8::before {
  background-color: #9A1D42;
}

.bl_service_item.hp_c12::before {
  background-color: #BA882F;
}

.bl_service_item.hp_c13::before {
  background-color: #3E7A45;
}

/* bl_serviceAbout */

.bl_serviceAbout {
  padding: 40px;
  background-color: #F4F4F4;
  border-radius: 10px;
  text-align: center;
}

.bl_serviceAbout_body {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  color: #0F80A2;
}

.bl_serviceAbout_body span {
  height: 90px;
}

.bl_serviceAbout_body span img {
  width: 40%;
  margin: 0 auto;
}

.bl_serviceAbout_ttl {
  font-size: 1.4rem;
  font-weight: 600;
}

/* bl_serviceFlow */

.bl_serviceFlow_img {
  width: 80%;
  margin: 0 auto;
}

.bl_serviceFlow_list {
  width: 100%;
  margin-top: 50px;
}

.bl_serviceFlow_item {
  display: flex;
  align-items: stretch;
  width: 75%;
  margin: 0 auto;
  border-bottom: 2px dashed #9FA0A0;
  padding: 30px 50px;
}

.bl_serviceFlow_item div {
  width: 80%;
}

.bl_serviceFlow_item_img {
  margin-right: 64px;
}

.bl_serviceFlow_item_img img {
  height: 40px;
  margin: 0 auto;
}
.bl_serviceFlow_item dl {
  display: flex;
  align-items: stretch;
  flex-wrap: wrap;
}

.bl_serviceFlow_item dd {
  flex: 1 1 60%;
}

/* bl_collabo */

.bl_collabo_ttl {
  text-align: center;
  font-size: 4.8rem;
}


.bl_collabo_ttl span {
  position: relative;
  border-bottom: 2px solid #231815;
}

.bl_collabo_ttl span::before {
  content: '';
  position: absolute;
  top: 0;
  left: -1.5em;
  width: 90px;
  height: 98px;
  background: url(../images/recycle/collabo.png);
  background-size: cover;
}


.bl_collabo_txt {
  padding: 30px 50px 0 0;
}

.bl_collabo_img {
  width: 65%;
  margin: 0 auto;
  padding-top: 80px;
}

@media(max-width: 768px) {
  .bl_serviceUnit > .bl_service {
    width: 100%;
    margin-bottom: 30px;
  }

  .bl_serviceUnit > .bl_service:last-child {
    margin-bottom: 0;
  }

  .bl_serviceUnit__col2 > .bl_service.bl_service__s {
    width: 35%;
  }
  .bl_serviceUnit__col2 > .bl_service.bl_service__ll img {
    width: 100%;
  }

  .bl_serviceAbout {
    padding: 28px;
  }

  .bl_serviceAbout_body span img {
    width: 85%;
  }

  .bl_serviceAbout_ttl {
    font-size: 1rem;
  }

  .bl_serviceFlow_img {
    width: 100%;
  }

  .bl_serviceFlow_item {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
  }

  /* bl_collabo */
  .bl_collabo_img {
    width: 95%;
  }
}

@media(max-width: 599px) {
  .bl_pageHeader_ttl {
    font-size: 30px;
    font-weight: 700;
  }

  .bl_pageHeader_cont {
    flex-direction: column;
    margin-top: 0;
  }

  .bl_pageHeader_detail {
    width: 100%;
    order: 2;
  }

  .bl_pageHeader_img {
    width: 100%;
  }

  /* bl_service */

  .bl_serviceUnit > .bl_service.bl_service.bl_service__s,
  .bl_serviceUnit > .bl_service.bl_service.bl_service__l,
  .bl_serviceUnit > .bl_service.bl_service.bl_service__ll,
  .bl_serviceUnit > .bl_serviceAbout {
    width: 100%;
  }

  /* bl_collabo */
  .bl_collabo_ttl {
    font-size: 2.8rem;
  }

  .bl_collabo_img {
    width: 100%;
    padding-top: 0;
  }

  .bl_collabo_txt {
    padding: 0;
  }

  .bl_collabo_ttl span::before {
    width: 51px;
    height: 56px;
  }

  /* bl_serviceAbout */
  .bl_serviceAbout {
    margin-bottom: 30px;
  }

  .bl_serviceAbout:last-child {
    margin-bottom: 0;
  }

  .bl_serviceAbout_body span img {
    width: 50%;
  }

  /* bl_bl_serviceFlow */
  .bl_serviceFlow_item_img {
    margin-right: 0;
    padding-bottom: 20px;
  }

  .bl_serviceFlow_item_img img {
    width: 40px;
    height: auto;
  }

  .bl_serviceFlow_item {
    flex-direction: column;
  }

  .bl_serviceFlow_item div {
    width: 100%;
  }
} 

/* ***
  * Element
**************************** */

.el_txt {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6;
  letter-spacing: .2rem;
  padding-right: 2em;
}

.el_txt.el_txt__s {
  font-size: 16px;
}

.el_txt.el_txt__ss {
  font-size: 14px;
}

.el_ttl.el_ttl__l {
  padding-bottom: 24px;
  font-size: 2.5rem;
  /* font-weight: 600; */
}

.el_ttl.font_bdv {
  text-align: center;
  font-size: 4.8rem;
  font-weight: 400;
  line-height: 1.5;
}

.el_ttl.font_bdv span {
  border-bottom: 2px solid;
}

.el_ttl.el_ttl__bdb {
  text-align: center;
}

.el_ttl.el_ttl__bdb span {
  font-size: 2.5rem;
  border-bottom: 2px dashed #F08300;
}


.el_check {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: .2rem;
  /* padding-right: 2em; */
  margin: 50px auto;
  width: 100%;
  max-width: 1200px;
  text-align: center;
}


.el_check p {
  font-size: 18px;
  font-weight: 700;
  line-height: 1.6;
  letter-spacing: .2rem;
}
.el_check .txt_nami {
    background: linear-gradient(transparent 70%, #FFEB3B 70%);
}
.el_txt img{
width:100%;
}
@media(max-width: 600px) {
    
    
.el_check {
  margin: 10px auto;
  width: 100%;
  padding: 2em;
  text-align: left;
}
    
  .el_check p{
     font-size: 15px;
     padding-left:1em;
     text-indent:-1em;
  }
}


/* btn */

.el_serviceBtn {
  position: relative;
  display: block;
  width: 300px;
  margin: 0 auto;
  padding: 8px 40px;
  border: 2px solid #040000;
  border-radius: 60px;
  text-align: center;
  font-size: 1.4rem;
  font-weight: 700;
  transition: .5s;
}

.el_serviceBtn:hover {
  color: #F08300;
  border-color: currentColor;
  transition: .5s;
}

.el_serviceBtn_themify {
  font-family: themify;
  font-weight: 700;
}

.el_serviceBtn_themify::before {
  position: absolute;
  top: 31%;
  left: 1.5em;
}

@media(max-width: 1024px) {
  .el_txt {
    font-size: 15px;
  }
}

@media(max-width: 600px) {
  .el_txt {
     padding-right:0;
  }
}


@media(max-width: 768px) {
  .el_ttl.el_ttl__l {
    font-size: 2rem;
  }

  .el_ttl.font_bdv {
    padding-bottom: 0;
  }
}

@media(max-width: 599px) {
  .el_ttl.el_ttl__l {
    font-size: 1.6rem;
  }

  .el_ttl.el_ttl__bdb span {
    font-size: 1.6rem;
    font-weight: 700;
  }

  .el_txt.el_txt__ss {
    font-size: 12px;
  }

  .el_serviceBtn {
    margin-bottom: 40px;
  }

  .el_serviceBtn_themify::before {
    top: 33%;
  }
}

/* ***
  * Helper
**************************** */

.hp_translateY100 {
  transform: translateY(100px);
}

.hp_mt_s {
  margin-top: 50px;
}

.hp_mt {
  margin-top: 100px;
}

.hp_mt_l {
  margin-top: 200px;
}

.hp_pt30 {
  padding-top: 30px;
}

.hp_bdb {
  width: 100%;
  margin-top: 60px;
  margin-bottom: 60px;
  border-bottom: 1px solid #e4e4e4;
}

.hp_posre {
  position: relative;
}

.hp_wrapBgl::before,
.hp_wrapBgl::after,
.hp_wrapBgr::before,
.hp_wrapBgr::after {
  content: '';
  position: absolute;
}

.hp_wrapBgl::before,
.hp_wrapBgr::before {
  top: 70px;
  left: 0;
  width: 100px;
  height: 5px;
  background-color: #0086ab;
  border-radius: 0 5px 5px 0;
}

.hp_wrapBgl::after,
.hp_wrapBgr::after {
  top: 70px;
  left: 0;
  width: 5px;
  height: 40px;
  background-color: #0086ab;
  border-radius: 0 0 5px 5px;
}

.hp_wrapBdb {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding-top: 70px;
  border-bottom: 5px solid #0086ab;
}

.hp_wrapBdb::before,
.hp_wrapBdb::after {
  content: '';
  position: absolute;
  bottom: 0;
  width: 5px;
  height: 40px;
  background-color: #0086ab;
  border-radius: 5px 5px 0 0;
}

.hp_wrapBdb::before {
  left: 0;
}

.hp_wrapBdb::after {
  right: 0;
}

@media(min-width: 1640px) {
  .hp_wrapBgl::before,
  .hp_wrapBgr::before,
  .hp_wrapBgl::before,
  .hp_wrapBgr::before,
  .hp_wrapBgl::after,
  .hp_wrapBgr::after {
    top: 145px;
  }
}

.hp_wrapBgr::before {
  right: 0;
  left: auto;
  border-radius: 5px 0 0 5px;
}

.hp_wrapBgr::after {
  right: 0;
  left: auto;
  border-radius: 0 0 5px 5px;
}

@media(max-width: 1024px) {
  .hp_wrapBdb {
    width: 95%;
  }
}

@media(max-width: 768px) {
  .hp_mt {
    margin-top: 50px;
  }

  .hp_wrapBdb {
    padding-top: 0;
    border: none;
  }

  .hp_wrapBgl::before,
  .hp_wrapBgr::before,
  .hp_wrapBgl::before,
  .hp_wrapBgr::before,
  .hp_wrapBgl::after,
  .hp_wrapBgr::after,
  .hp_wrapBdb::before,
  .hp_wrapBdb::after {
    display: none;
  }
}

@media(max-width: 599px) {
  .hp_mt_l {
    margin-top: 150px;
  }

  .hp_mt_s {
    margin-top: 24px;
  }

  .hp_bdb {
    margin: 0;
  }
}
/* -----------------------------------------------------------
.newyear_works
----------------------------------------------------------- */
.newyear_works {
	text-align:center;
    width: 80%;
	margin : 20px auto;
	background:#f0f0f0;
}

@media only screen and (max-width: 900px) {
    .newyear_works {
        float: none;
        width: 100%;
        padding: 10px;
        margin : 0px;
    }
}
