@charset "UTF-8";
/*================================================================================

media query mixin

================================================================================*/
/*    google font on web
--------------------------------------------------------------------------------*/
@import url("https://fonts.googleapis.com/css2?family=Marcellus&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@300&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200..900&display=swap");
/*    google font on server
--------------------------------------------------------------------------------*/
/*    icomoon
--------------------------------------------------------------------------------*/
/*    custom
--------------------------------------------------------------------------------*/
@media screen and (max-width: 1260px) { /* 1260px以上*/ }
@media screen and (max-width: 1024px) { /* 1024px以下*/ }
@media screen and (max-width: 768px) { /* 768px以下*/ }
@media screen and (max-width: 480px) { /* 480px以下*/ }
@media screen and (max-width: 320px) { /* 320px以下*/ }
/*================================================================================

reset & default & font

================================================================================*/
/*!
 * ress.css • v1.2.2
 * MIT License
 * github.com/filipelinhares/ress
 */
/* # ================================================================= # Global selectors # ================================================================= */
html { -webkit-box-sizing: border-box; box-sizing: border-box; overflow-y: scroll; /* All browsers without overlaying scrollbars */ -webkit-text-size-adjust: 100%; /* iOS 8+ */ }

*, ::before, ::after { background-repeat: no-repeat; /* Set `background-repeat: no-repeat` to all elements and pseudo elements */ -webkit-box-sizing: inherit; box-sizing: inherit; }

::before, ::after { text-decoration: inherit; /* Inherit text-decoration and vertical align to ::before and ::after pseudo elements */ vertical-align: inherit; }

* { padding: 0; /* Reset `padding` and `margin` of all elements */ margin: 0; }

/* # ================================================================= # General elements # ================================================================= */
/* Add the correct display in iOS 4-7.*/
audio:not([controls]) { display: none; height: 0; }

hr { overflow: visible; /* Show the overflow in Edge and IE */ }

/*
* Correct `block` display not defined for any HTML5 element in IE 8/9
* Correct `block` display not defined for `details` or `summary` in IE 10/11
* and Firefox
* Correct `block` display not defined for `main` in IE 11
*/
article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary { display: block; }

summary { display: list-item; /* Add the correct display in all browsers */ }

small { font-size: 80%; /* Set font-size to 80% in `small` elements */ }

[hidden], template { display: none; /* Add the correct display in IE */ }

abbr[title] { border-bottom: 1px dotted; /* Add a bordered underline effect in all browsers */ text-decoration: none; /* Remove text decoration in Firefox 40+ */ }

a { background-color: transparent; /* Remove the gray background on active links in IE 10 */ -webkit-text-decoration-skip: objects; /* Remove gaps in links underline in iOS 8+ and Safari 8+ */ }

a:active, a:hover { outline-width: 0; /* Remove the outline when hovering in all browsers */ }

code, kbd, pre, samp { font-family: monospace, monospace; /* Specify the font family of code elements */ }

b, strong { font-weight: bolder; /* Correct style set to `bold` in Edge 12+, Safari 6.2+, and Chrome 18+ */ }

dfn { font-style: italic; /* Address styling not present in Safari and Chrome */ }

/* Address styling not present in IE 8/9 */
mark { background-color: #ff0; color: #000; }

/* https://gist.github.com/unruthless/413930 */
sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; }

sub { bottom: -0.25em; }

sup { top: -0.5em; }

/* # ================================================================= # Forms # ================================================================= */
input { border-radius: 0; }

/* Apply cursor pointer to button elements */
button, [type="button"], [type="reset"], [type="submit"], [role="button"] { cursor: pointer; }

/* Replace pointer cursor in disabled elements */
[disabled] { cursor: default; }

[type="number"] { width: auto; /* Firefox 36+ */ }

[type="search"] { -webkit-appearance: textfield; /* Safari 8+ */ }

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration { -webkit-appearance: none; /* Safari 8 */ }

textarea { overflow: auto; /* Internet Explorer 11+ */ resize: vertical; /* Specify textarea resizability */ }

button, input, optgroup, select, textarea { font: inherit; /* Specify font inheritance of form elements */ }

optgroup { font-weight: bold; /* Restore the font weight unset by the previous rule. */ }

button { overflow: visible; /* Address `overflow` set to `hidden` in IE 8/9/10/11 */ }

/* Remove inner padding and border in Firefox 4+ */
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: 0; padding: 0; }

/* Replace focus style removed in the border reset above */
button:-moz-focusring, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { outline: 1px dotted ButtonText; }

button, html [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; /* Correct the inability to style clickable types in iOS */ }

button, select { text-transform: none; /* Firefox 40+, Internet Explorer 11- */ }

/* Remove the default button styling in all browsers */
button, input, select, textarea { background-color: transparent; border-style: none; color: inherit; }

/* Style select like a standard input */
select { -moz-appearance: none; /* Firefox 36+ */ -webkit-appearance: none; /* Chrome 41+ */ }

select::-ms-expand { display: none; /* Internet Explorer 11+ */ }

select::-ms-value { color: currentColor; /* Internet Explorer 11+ */ }

legend { border: 0; /* Correct `color` not being inherited in IE 8/9/10/11 */ color: inherit; /* Correct the color inheritance from `fieldset` elements in IE */ display: table; /* Correct the text wrapping in Edge and IE */ max-width: 100%; /* Correct the text wrapping in Edge and IE */ white-space: normal; /* Correct the text wrapping in Edge and IE */ }

::-webkit-file-upload-button { -webkit-appearance: button; /* Correct the inability to style clickable types in iOS and Safari */ font: inherit; /* Change font properties to `inherit` in Chrome and Safari */ }

[type="search"] { -webkit-appearance: textfield; /* Correct the odd appearance in Chrome and Safari */ outline-offset: -2px; /* Correct the outline style in Safari */ }

/* # ================================================================= # Specify media element style # ================================================================= */
img { border-style: none; /* Remove border when inside `a` element in IE 8/9/10 */ }

/* Add the correct vertical alignment in Chrome, Firefox, and Opera */
progress { vertical-align: baseline; }

svg:not(:root) { overflow: hidden; /* Internet Explorer 11- */ }

audio, canvas, progress, video { display: inline-block; /* Internet Explorer 11+, Windows Phone 8.1+ */ }

/* # ================================================================= # Accessibility # ================================================================= */
/* Hide content from screens but not screenreaders */
@media screen { [hidden~="screen"] { display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) { position: absolute !important; clip: rect(0 0 0 0) !important; } }
/* Specify the progress cursor of updating elements */
[aria-busy="true"] { cursor: progress; }

/* Specify the pointer cursor of trigger elements */
[aria-controls] { cursor: pointer; }

/* Specify the unstyled cursor of disabled, not-editable, or otherwise inoperable elements */
[aria-disabled] { cursor: default; }

/* # ================================================================= # Selection # ================================================================= */
/* Specify text selection background color and omit drop shadow */
::-moz-selection { background-color: #b3d4fc; /* Required when declaring ::selection */ color: #000; text-shadow: none; }

::selection { background-color: #b3d4fc; /* Required when declaring ::selection */ color: #000; text-shadow: none; }

/*======================================================================

Defaults Styles

======================================================================*/
html { font-size: 62.5%; }

body { margin: 0; padding: 0; color: #1a1a1a; font-family: 'Noto Sans JP', sans-serif; line-height: 1.6; font-size: 16px; font-size: 1.6rem; font-weight: 400; -webkit-text-size-adjust: 100%; -webkit-font-smoothing: antialiased; }
@media screen and (max-width: 768px) { body { font-size: 14px; font-size: 1.4rem; } }

* { margin: 0; padding: 0; }

/*selection*/
::-moz-selection { background-color: #b3d4fc; color: #1a1a1a; text-shadow: none; }

::selection { background-color: #b3d4fc; color: #1a1a1a; text-shadow: none; }

/*placeholder*/
::-webkit-input-placeholder-shown { color: #1a1a1a; }
:-ms-input-placeholder-shown { color: #1a1a1a; }
::-ms-input-placeholder-shown { color: #1a1a1a; }
::placeholder-shown { color: #1a1a1a; }

/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder { color: #1a1a1a; }

/* Firefox 18- */
::-moz-placeholder { color: #1a1a1a; opacity: 1; }

/* Firefox 19+ */
::-moz-placeholder { color: #1a1a1a; opacity: 1; }

/* IE 10+ */
::-ms-input-placeholder { color: #1a1a1a; }

img, svg { border: 0; border-style: none; vertical-align: top; font-size: 0; line-height: 0; max-width: 100%; height: auto; -ms-interpolation-mode: bicubic; }

ul, dl, ol { list-style-type: none; }

/*    Link
--------------------------------------------------------------------------------*/
a { -webkit-transition: .3s; transition: .3s; }

a:link { color: #1a1a1a; text-decoration: none; }

a:visited { color: #1a1a1a; text-decoration: none; }

a:hover { opacity: .6; text-decoration: none; -webkit-transition: .3s; transition: .3s; }
@media screen and (max-width: 768px) { a:hover { opacity: 1; } }

a:active { color: #1a1a1a; text-decoration: none; }

*:focus { outline: none; }

/*    Base Styles
--------------------------------------------------------------------------------*/
/*  margin */
.mg0a { margin: 0 auto; }

.mgt0 { margin-top: 0 !important; }

.mgt1 { margin-top: 1px !important; }

.mgt2 { margin-top: 2px !important; }

.mgt3 { margin-top: 3px !important; }

.mgt4 { margin-top: 4px !important; }

.mgt5 { margin-top: 5px !important; }

.mgt6 { margin-top: 6px !important; }

.mgt7 { margin-top: 7px !important; }

.mgt8 { margin-top: 8px !important; }

.mgt9 { margin-top: 9px !important; }

.mgt10 { margin-top: 10px !important; }

.mgt15 { margin-top: 15px !important; }

.mgt20 { margin-top: 20px !important; }

.mgt25 { margin-top: 25px !important; }

.mgt30 { margin-top: 30px !important; }

.mgt35 { margin-top: 35px !important; }

.mgt40 { margin-top: 40px !important; }

.mgt45 { margin-top: 45px !important; }

.mgt50 { margin-top: 50px !important; }

.mgt55 { margin-top: 55px !important; }

.mgt60 { margin-top: 60px !important; }

.mgl0 { margin-left: 0 !important; }

.mgl5 { margin-left: 5px !important; }

.mgl10 { margin-left: 10px !important; }

.mgl15 { margin-left: 15px !important; }

.mgl20 { margin-left: 20px !important; }

.mgl25 { margin-left: 25px !important; }

.mgl30 { margin-left: 30px !important; }

.mgl35 { margin-left: 35px !important; }

.mgl40 { margin-left: 40px !important; }

.mgl45 { margin-left: 45px !important; }

.mgl50 { margin-left: 50px !important; }

.mgl55 { margin-left: 55px !important; }

.mgl60 { margin-left: 60px !important; }

.mgr0 { margin-right: 0 !important; }

.mgr5 { margin-right: 5px !important; }

.mgr10 { margin-right: 10px !important; }

.mgr15 { margin-right: 15px !important; }

.mgr20 { margin-right: 20px !important; }

.mgr25 { margin-right: 25px !important; }

.mgr30 { margin-right: 30px !important; }

.mgr35 { margin-right: 35px !important; }

.mgr40 { margin-right: 40px !important; }

.mgr45 { margin-right: 45px !important; }

.mgr50 { margin-right: 50px !important; }

.mgr55 { margin-right: 55px !important; }

.mgr60 { margin-right: 60px !important; }

/* padding */
.pdt0 { padding-top: 0 !important; }

.pdt1 { padding-top: 1px !important; }

.pdt2 { padding-top: 2px !important; }

.pdt3 { padding-top: 3px !important; }

.pdt4 { padding-top: 4px !important; }

.pdt5 { padding-top: 5px !important; }

.pdt6 { padding-top: 6px !important; }

.pdt7 { padding-top: 7px !important; }

.pdt8 { padding-top: 8px !important; }

.pdt9 { padding-top: 9px !important; }

.pdt10 { padding-top: 10px !important; }

.pdt15 { padding-top: 15px !important; }

.pdt20 { padding-top: 20px !important; }

.pdt25 { padding-top: 25px !important; }

.pdt30 { padding-top: 30px !important; }

.pdt35 { padding-top: 35px !important; }

.pdt40 { padding-top: 40px !important; }

.pdt45 { padding-top: 45px !important; }

.pdt50 { padding-top: 50px !important; }

.pdt55 { padding-top: 55px !important; }

.pdt60 { padding-top: 60px !important; }

.pdl0 { padding-left: 0 !important; }

.pdl5 { padding-left: 5px !important; }

.pdl10 { padding-left: 10px !important; }

.pdl15 { padding-left: 15px !important; }

.pdl20 { padding-left: 20px !important; }

.pdl25 { padding-left: 25px !important; }

.pdl30 { padding-left: 30px !important; }

.pdl35 { padding-left: 35px !important; }

.pdl40 { padding-left: 40px !important; }

.pdl45 { padding-left: 45px !important; }

.pdl50 { padding-left: 50px !important; }

.pdl55 { padding-left: 55px !important; }

.pdl60 { padding-left: 60px !important; }

.pdr0 { padding-right: 0 !important; }

.pdr5 { padding-right: 5px !important; }

.pdr10 { padding-right: 10px !important; }

.pdr15 { padding-right: 15px !important; }

.pdr20 { padding-right: 20px !important; }

.pdr25 { padding-right: 25px !important; }

.pdr30 { padding-right: 30px !important; }

.pdr35 { padding-right: 35px !important; }

.pdr40 { padding-right: 40px !important; }

.pdr45 { padding-right: 45px !important; }

.pdr50 { padding-right: 50px !important; }

.pdr55 { padding-right: 55px !important; }

.pdr60 { padding-right: 60px !important; }

.floatL { float: left; }

.floatR { float: right; }

.alL { text-align: left; }

.alC { text-align: center; }

.alR { text-align: right; }

.vaT { vertical-align: top; }

.vaM { vertical-align: middle; }

.vaB { vertical-align: bottom; }

.disnon { display: none; }

.nowrap { white-space: nowrap; }

.w100per { width: 100%; height: auto; }

/*clear*/
.clearfix { clear: both; background: transparent; height: 1px; font-size: 1px; }

/* clearfix micro */
.cf:before, .cf:after { content: ""; display: table; }

.cf:after { clear: both; }

/*IE6,7対策 （haslayout対策）*/
.cf { *zoom: 1; }

/*================================================================================

common parts

================================================================================*/
.pcOnly { display: block; }
@media screen and (max-width: 768px) { .pcOnly { display: none; } }

.-pcOnly { display: inline-block; }
@media screen and (max-width: 768px) { .-pcOnly { display: none; } }

.spOnly { display: none; }
@media screen and (max-width: 768px) { .spOnly { display: block; } }

.spOnly { display: none; }
@media screen and (max-width: 768px) { .spOnly { display: inline-block; } }

.c-title { font-size: 48px; font-weight: 300; letter-spacing: 2px; text-align: center; margin: 80px auto 100px; }
@media screen and (max-width: 768px) { .c-title { font-size: 38px; margin: 0 auto; text-align: center; padding: 30px 0 60px; } }
.c-title span { position: relative; padding-left: 60px; }
@media screen and (max-width: 768px) { .c-title span { padding-left: 10px; } }
.c-title span::before { content: ""; position: absolute; display: block; top: 0; left: 15px; width: 1px; height: 75px; background-color: #db0c15; -webkit-transform: rotate(20deg); transform: rotate(20deg); }
@media screen and (max-width: 768px) { .c-title span::before { top: -5px; left: -20px; height: 55px; } }

.c-subtitle { color: #db0c15; font-size: 28px; font-weight: 400; text-align: center; letter-spacing: 5px; margin: 0 0 40px; }
@media screen and (max-width: 768px) { .c-subtitle { font-size: 24px; margin: 0 0 30px; } }

.c-subtitle02 { font-size: 24px; font-weight: 400; text-align: center; margin: 0 0 30px; }
.c-subtitle02 span { border-bottom: 2px solid #1a1a1a; }
@media screen and (max-width: 768px) { .c-subtitle02 { font-size: 20px; margin: 0 0 20px; } }

.c-btn a { color: #fff; font-size: 16px; display: block; position: relative; background: #db0c15; width: 240px; padding: 15px; text-align: center; }
.c-btn a::before, .c-btn a::after { content: ""; position: absolute; background: #fff; }
.c-btn a::before { width: 40px; height: 1px; left: 0; top: 50%; }
.c-btn a::after { width: 10px; height: 1px; -webkit-transform: rotate(30deg); transform: rotate(30deg); left: 30px; top: 25px; }

.fDAnime { -webkit-animation-fill-mode: both; animation-fill-mode: both; -webkit-animation-duration: 1.5s; animation-duration: 1.5s; -webkit-animation-name: fDAnime; animation-name: fDAnime; visibility: visible !important; }

@-webkit-keyframes fDAnime { 0% { opacity: 0; -webkit-transform: translateY(-20px); }
  100% { opacity: 1; -webkit-transform: translateY(0); } }
@keyframes fDAnime { 0% { opacity: 0; -webkit-transform: translateY(-20px); transform: translateY(-20px); }
  100% { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); } }
/*================================================================================

container

================================================================================*/
/*    div.container
--------------------------------------------------------------------------------*/
/*    header
--------------------------------------------------------------------------------*/
.header { width: 1260px; height: 190px; background: #fff; margin: 0 auto; padding: 0 100px; }
@media screen and (max-width: 768px) { .header { position: fixed; top: 0; left: 0; z-index: 100; width: 100%; height: 100px; padding: 0; } }
.header .header_logo { width: 120px; float: left; margin: 20px 0; }
@media screen and (max-width: 768px) { .header .header_logo { float: none; width: 50px; margin: 20px 20px 20px 25px; } }
.header .header_logo a { color: #1a1a1a; display: inline-block; line-height: 1.2; }
.header .header_logo a .en { font-size: 26px; font-family: 'Marcellus', serif; letter-spacing: .8px; }
@media screen and (max-width: 768px) { .header .header_logo a .en { font-size: 16px; margin: 6px 0 2px; } }
.header .header_logo a .jp { font-size: 12px; letter-spacing: -.8px; }
@media screen and (max-width: 768px) { .header .header_logo a .jp { font-size: 10px; letter-spacing: normal; } }
.header .header_links_pc { float: right; }
@media screen and (max-width: 768px) { .header .header_links_pc { display: none; } }
.header .header_links_pc .header_items { margin-top: 130px; }
.header .header_links_pc li { display: inline-block; }
.header .header_links_pc .header_items ul li { padding: 0 30px; }
.header .header_links_pc .header_items ul li:last-child { padding-right: 0; }
.header .header_links_pc .header_items ul li a { font-size: 20px; letter-spacing: 2px; }
.header .header_links_sp { display: none; }
@media screen and (max-width: 768px) { .header .header_links_sp { display: block; position: relative; }
  .header .header_links_sp .humburger { position: absolute; width: 35px; height: 22px; top: -60px; right: 25px; }
  .header .header_links_sp .humburger .burger-lines { position: relative; }
  .header .header_links_sp .humburger .burger-lines span { position: absolute; width: 35px; height: 2px; background: #000; left: 0; -webkit-transition: .5s; transition: .5s; }
  .header .header_links_sp .humburger .burger-lines span:first-child { top: 0; }
  .header .header_links_sp .humburger .burger-lines span:nth-child(2) { top: 12px; width: 25px; }
  .header .header_links_sp .humburger .burger-lines span:nth-child(3) { top: 25px; width: 20px; }
  .header .header_links_sp .spNav { display: block; width: 0; height: 100vh; -webkit-transition: .5s; transition: .5s; position: absolute; top: 0; right: -50%; -webkit-box-sizing: border-box; box-sizing: border-box; }
  .header .header_links_sp.-active { -webkit-transition: .5s; transition: .5s; top: 5px; right: 0; }
  .header .header_links_sp.-active .burger-lines span { -webkit-transition: .5s; transition: .5s; }
  .header .header_links_sp.-active .burger-lines span:first-child { -webkit-transform: rotate(135deg); transform: rotate(135deg); top: 7px; }
  .header .header_links_sp.-active .burger-lines span:nth-child(2) { display: none; }
  .header .header_links_sp.-active .burger-lines span:last-child { -webkit-transform: rotate(-135deg); transform: rotate(-135deg); top: 7px; width: 35px; }
  .header .header_links_sp.-active .spNav { display: block; background: rgba(0, 0, 0, 0.8); width: 80%; height: 100vh; position: absolute; top: 0; right: 0; padding: 30px 40px; }
  .header .header_links_sp.-active .spNav .spNav_items li { margin-bottom: 40px; }
  .header .header_links_sp.-active .spNav .spNav_items li.top { margin-top: 60px; }
  .header .header_links_sp.-active .spNav .spNav_items li a { font-size: 20px; color: #fff; letter-spacing: 1px; }
  .header .header_links_sp.-active .spNav .search { position: relative; }
  .header .header_links_sp.-active .spNav .search .search-submit { position: absolute; width: 20px; height: 20px; top: 3px; right: 0; }
  .header .header_links_sp.-active .spNav .search .search-submit::before { position: absolute; content: ''; width: 7px; height: 7px; top: 3px; left: 3px; border-radius: 50%; -webkit-box-shadow: 0 0 0 3px #000; box-shadow: 0 0 0 3px #000; }
  .header .header_links_sp.-active .spNav .search .search-submit::after { position: absolute; content: ''; width: 8px; height: 13px; top: 10px; left: 5px; border-top: solid 3px #000; -webkit-transform: rotate(45deg); transform: rotate(45deg); }
  .header .header_links_sp.-active .spNav .searchBoxSp .gsc-control-cse { padding: 0; background: none; border: none; }
  .header .header_links_sp.-active .spNav .searchBoxSp .gsc-search-box { position: relative; }
  .header .header_links_sp.-active .spNav .searchBoxSp .gsc-input-box { border-radius: 30px; padding: 0; }
  .header .header_links_sp.-active .spNav .searchBoxSp .gsc-search-button-v2 { height: auto; width: auto; border-radius: 0; padding: 0; background: none; border: none; border-radius: 0; margin-left: 10px; top: 7px; right: 10px; }
  .header .header_links_sp.-active .spNav .searchBoxSp .gsc-search-button-v2 svg { fill: #000000; width: 20px; height: 20px; display: block; max-width: initial; }
  .header .header_links_sp.-active .spNav .searchBoxSp .gsc-results-wrapper-overlay { left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); } }

/*    div.contents
--------------------------------------------------------------------------------*/
/*    main
--------------------------------------------------------------------------------*/
@media screen and (max-width: 768px) { .contents { margin-top: 100px; } }

.sec .inner { width: 1040px; margin: 0 auto; }
@media screen and (max-width: 768px) { .sec .inner { width: 100%; padding: 0 30px; } }
.sec .inner- { width: 100%; }

/*    aside
----------------------------------------------------------------------------*/
/*    article & section
----------------------------------------------------------------------------*/
/*    footer
----------------------------------------------------------------------------*/
.footer { margin-top: 180px; overflow: hidden; background: #f1f1f1; }
@media screen and (max-width: 768px) { .footer { margin-top: 100px; } }
.footer .inner { width: 1040px; margin: 0 auto; padding: 20px 0; overflow: hidden; }
@media screen and (max-width: 768px) { .footer .inner { width: auto; padding: 30px 20px 20px; } }
.footer .footerBox-01 { float: left; }
@media screen and (max-width: 768px) { .footer .footerBox-01 { float: none; margin: 0 0 20px; } }
.footer .footerBox-01 .logo { width: 180px; margin-right: 45px; float: left; padding-top: 5px; }
@media screen and (max-width: 768px) { .footer .footerBox-01 .logo { float: none; margin: 0 auto 20px; padding-top: 0; } }
.footer .footerBox-01 .text { float: left; font-size: 14px; }
@media screen and (max-width: 768px) { .footer .footerBox-01 .text { float: none; text-align: center; } }
.footer .footerBox-02 { float: right; }
@media screen and (max-width: 768px) { .footer .footerBox-02 { float: none; } }
.footer .footerBox-02 .footerLink { overflow: hidden; padding: 0 20px; }
@media screen and (max-width: 320px) { .footer .footerBox-02 .footerLink { padding: 0; } }
.footer .footerBox-02 .footerLink .footerLink_item { float: left; position: relative; padding: 20px 0; }
@media screen and (max-width: 768px) { .footer .footerBox-02 .footerLink .footerLink_item { padding: 10px 0; } }
.footer .footerBox-02 .footerLink .footerLink_item::before { content: ""; position: absolute; display: block; top: 15px; left: -3px; width: 1px; height: 35px; background-color: #000; -webkit-transform: rotate(20deg); transform: rotate(20deg); }
@media screen and (max-width: 768px) { .footer .footerBox-02 .footerLink .footerLink_item::before { top: 12px; height: 20px; } }
.footer .footerBox-02 .footerLink .footerLink_item:last-child::after { content: ""; position: absolute; display: block; top: 15px; right: -3px; width: 1px; height: 35px; background-color: #000; -webkit-transform: rotate(20deg); transform: rotate(20deg); }
@media screen and (max-width: 768px) { .footer .footerBox-02 .footerLink .footerLink_item:last-child::after { display: none; } }
@media screen and (max-width: 768px) { .footer .footerBox-02 .footerLink .footerLink_item:last-child a { padding-right: 0; } }
@media screen and (max-width: 768px) { .footer .footerBox-02 .footerLink .footerLink_item:first-child a { padding-left: 0; }
  .footer .footerBox-02 .footerLink .footerLink_item:first-child::before { display: none; } }
.footer .footerBox-02 .footerLink .footerLink_item a { font-size: 16px; padding: 0 30px; letter-spacing: 2px; }
@media screen and (max-width: 768px) { .footer .footerBox-02 .footerLink .footerLink_item a { font-size: 14px; padding: 0 15px; letter-spacing: .5px; } }
@media screen and (max-width: 320px) { .footer .footerBox-02 .footerLink .footerLink_item a { padding: 0 10px; } }
.footer .copyArea { background: #000; }
.footer .copyArea .copyright { color: #fff; font-size: 12px; padding: 20px 0; text-align: center; }
@media screen and (max-width: 768px) { .footer .copyArea .copyright { padding: 15px 0; } }

.pageTop { position: fixed; right: 20px; bottom: 20px; z-index: 500; -webkit-transition: .3s; transition: .3s; }
.pageTop a { display: block; width: 40px; height: 40px; position: relative; font-size: 1px; border: 1px solid #000; -webkit-transition: .3s; transition: .3s; font-weight: bold; }
.pageTop a::before { content: ''; position: absolute; left: 50%; top: 22px; -webkit-transform: translate(-50%, -50%) rotate(45deg); transform: translate(-50%, -50%) rotate(45deg); width: 10px; height: 10px; border-left: 1px solid #000; border-top: 1px solid #000; -webkit-transition: .3s; transition: .3s; }
.pageTop a:hover::before { margin-top: -5px; }
.pageTop.-active { position: absolute; top: -30px; bottom: auto; -webkit-transition: .3s; transition: .3s; }

/*# sourceMappingURL=style.css.map */