@charset "UTF-8";
audio:not([controls]) { display: none; }

button { overflow: visible; -webkit-appearance: button; }

a, button { outline: 0; }

details { display: block; }

html { -ms-overflow-style: -ms-autohiding-scrollbar; overflow-y: scroll; -webkit-text-size-adjust: 100%; }

input { -webkit-border-radius: 0; }

input[type="button"], input[type="reset"], input[type="submit"] { -webkit-appearance: button; }

input[type="number"] { width: auto; }

input[type="search"] { -webkit-appearance: textfield; }

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration { -webkit-appearance: none; }

main { display: block; }

pre { overflow: auto; }

progress { display: inline-block; }

small { font-size: 75%; }

summary { display: block; }

svg:not(:root) { overflow: hidden; }

template { display: none; }

textarea { overflow: auto; }

[hidden] { display: none; }

*, ::before, ::after { box-sizing: inherit; }

* { font-size: inherit; line-height: inherit; }

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

::before, ::after { text-decoration: inherit; vertical-align: inherit; }

*, ::before, ::after { border-style: solid; border-width: 0; }

* { background-repeat: no-repeat; margin: 0; padding: 0; }

:root { background-color: #FFFFFF; box-sizing: border-box; color: #000000; cursor: default; font: 100%/1.5 sans-serif; text-rendering: optimizeLegibility; }

a { text-decoration: none; }

audio, canvas, iframe, img, svg, video { vertical-align: middle; }

button, input, select, textarea { background-color: transparent; }

button, input, select, textarea { color: inherit; font-family: inherit; font-style: inherit; font-weight: inherit; }

button, [type="button"], [type="date"], [type="datetime"], [type="datetime-local"], [type="email"], [type="month"], [type="number"], [type="password"], [type="reset"], [type="search"], [type="submit"], [type="tel"], [type="text"], [type="time"], [type="url"], [type="week"], select, textarea { min-height: 1.5em; }

code, kbd, pre, samp { font-family: monospace, monospace; }

nav ol, nav ul { list-style: none; }

select { -moz-appearance: none; -webkit-appearance: none; }

select::-ms-expand { display: none; }

select::-ms-value { color: currentColor; }

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

textarea { resize: vertical; }

[aria-busy="true"] { cursor: progress; }

[aria-controls] { cursor: pointer; }

[aria-disabled] { cursor: default; }

[hidden][aria-hidden="false"] { clip: rect(0 0 0 0); display: inherit; position: absolute; }

[hidden][aria-hidden="false"]:focus { clip: auto; }

body { -webkit-font-smoothing: antialiased; }

ul li { list-style-type: none; }

figure { -webkit-margin-before: 0; -webkit-margin-after: 0; -webkit-margin-start: 0; -webkit-margin-end: 0; }

button { cursor: pointer; }

.full-layer, body.home #contact:before, body.home #about .company-info-area .company-info:before, body.home #service .bg, body.home #philosophy .ps-item .bg, body.home #what-we-do:before, body.home #mainvisual nav, body.home #mainvisual .image-area, body.home #mainvisual .text-area, .anime-slideleft-bg-red.anime-ready:before, .btn-black-red:before { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; }

/** ホバーエフェクトの mixin<br> 効果：中央からラインが伸びる（下）<br> 参考：http://www.nxworld.net/tips/15-text-link-hover-effect-and-design.html @param {String} color ラインのカラー　デフォルトは #888 @param {String} border_height ラインの高さ　デフォルトは 1px @param {String} transition トランジション　デフォルトは 0.3s */
/** ホバーエフェクトの mixin で「中央からラインが伸びる（下）」のホバーじと同じ効果を上書きする<br> 効果：中央からラインが伸びる（下）：ホバー<br> */
/** ボックス型のボタン ボタンのテキストにはクラスを設定したタグに data-button-text プロパティを設定して before と after にボタン名として入れられる テキストは before に設定される。 ホバー時にはテキストがせり上がるようにしながら after が表示される。 */
/** ボタンクラスの基本を作る mixin<br> @param {String} element ボタンにするエレメント　デフォルトは .btn @param {Boolean} responsive レスポンシブにする場合に true　デフォルトは false */
/** スライドスイッチのクラスを構築 mixin<br> 参考：https://proto.io/freebies/onoff/ @param {String} cl クラス名 @param {String} h 高さ @param {String} w 幅 @param {String} b ボーダーの幅 @param {String} offBgClr OFF の時のボタン背景色 @param {String} onBgClr ON の時のボタン背景色 @param {String} offBdClr OFF の時のボーダー色 @param {String} onBdClr ON の時のボーダー色 @param {String} swClr スライドするボタンの色 */
/** スライドスイッチのクラスを構築 mixin<br> 参考：https://proto.io/freebies/onoff/ こちらは ON, OFF のテキストがスイッチの右側に表示される @param {String} cl クラス名 @param {String} h 高さ @param {String} w 幅 @param {String} b ボーダーの幅 @param {String} offBgClr OFF の時のボタン背景色 @param {String} onBgClr ON の時のボタン背景色 @param {String} offBdClr OFF の時のボーダー色 @param {String} onBdClr ON の時のボーダー色 @param {String} swClr スライドするボタンの色 */
/** 指定されたプロパティに決められた基準のスペースを入れる mixin。 @param {String} property name @param {Number} 係数 */
/** フォントサイズ rem 設定用 mixin。 @param {String} 配列での設定か、Extra small の指定 @param {String} Small の指定 @param {String} Midium の指定 @param {String} Large の指定 */
/** コンテンツのプロパティ設定用 mixin。 @param {String} property margin か padding　デフォルトは padding @param {String} 配列での設定か、Large の指定 @param {String} Midium の指定 @param {String} Small の指定 @param {String} Extra small の指定 */
/** コンテンツスペース設定用 mixin。contents-space-XX にしたがって指定する。各サイズ設定に notset を入れるとそのサイズは設定されない。 @param {String} property margin か padding　デフォルトは padding @param {String} position top, bottom などの場所の指定。空の場合は全体の指定　デフォルトは空。例外的に vertical か side で左右、horizonal で上下の指定ができる。 @param {String} Large の指定 @param {String} Midium の指定 @param {String} Small の指定 @param {String} Extra small の指定 */
/** wrapper 用のサイドスペース設定 mixin。contents-space-XX にしたがって指定する @param {String} property margin か padding　デフォルトは padding @param {String} position top, bottom などの場所の指定。空の場合は全体の指定　デフォルトは空。例外的に vertical か side で左右、horizonal で上下の指定ができる。 @param {String} Large の指定 @param {String} Midium の指定 @param {String} Small の指定 @param {String} Extra small の指定 */
/** コンテンツの指定したプロパティを設定されている contents-space-XX にしたがって指定する @param {String} property margin か padding　デフォルトは padding @param {Array} position top, bottom などの場所の指定。空の場合は全体の指定　デフォルトは空 */
/** コンテンツの指定したプロパティを設定されている contents-subspace-XX にしたがって指定する @param {String} property margin か padding　デフォルトは padding @param {Array} position top, bottom などの場所の指定。空の場合は全体の指定　デフォルトは空 */
/** コンテンツの指定したプロパティを設定されている contents-space-XX にしたがって指定する @param {Map} サイズを指定　デフォルトは空 */
html { -webkit-overflow-scrolling: touch; }

body { font-family: source-han-sans-japanese, sans-serif, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif; }

body a:focus, body button:focus { outline: none; }

a:focus, button:focus { outline: none; }

small { font-size: 1em; }

span.ib-text span { display: inline-block; }

img { max-width: 100%; }

address { font-style: normal; }

.wrapper { margin-left: auto; margin-right: auto; max-width: 1200px; min-width: 320px; }

.img-circle { border-radius: 50%; overflow: hidden; }

.img-cover, .img-contain { height: 100%; background-repeat: no-repeat; background-position: center center; }

.img-cover.img-center-top, .img-contain.img-center-top { background-position: center top; }

.img-cover.img-center-bottom, .img-contain.img-center-bottom { background-position: center bottom; }

.img-cover { background-size: cover; }

.img-contain { background-size: contain; }

.txt { display: inline-block; }

.txt span { display: inline-block; }

.ib-text span { display: inline-block; }

.hidden { display: none !important; }

.eng { font-family: "Helvetica Neue", "Helvetica", "Arial", sans-serif; }

.youtube, .googlemap, .if-resp { position: relative; width: 100%; height: 0; padding-bottom: 56.25%; overflow: hidden; }

.youtube iframe, .googlemap iframe, .if-resp iframe { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.ev-click-disabled { pointer-events: none; }

.ev-click-enabled { pointer-events: auto; }

.eng { font-family: effra, sans-serif; font-weight: normal; }

@keyframes icon-loc-scale-animation { 0% { transform: scale(1, 1); }
  15% { transform: scale(1.1, 0.75); }
  50% { transform: scale(0.9, 1.25); }
  75% { transform: scale(1.2, 0.5); }
  100% { transform: scale(1, 1); } }

@keyframes icon-loc-translate-animation { 0% { transform: translateY(0); }
  50% { transform: translateY(-10px); }
  70% { transform: translateY(0); }
  100% { transform: translateY(0); } }

@keyframes explore-line-anime-pc { 0% { transform: translateY(-125px);
    height: 0; }
  50% { transform: translateY(0);
    height: 125px; }
  100% { transform: translateY(0);
    height: 0; } }

@keyframes explore-line-anime-mb { 0% { transform: translateY(-60px);
    height: 0; }
  50% { transform: translateY(0);
    height: 60px; }
  100% { transform: translateY(0);
    height: 0; } }

body.home #what-we-do .plan-list ul .list-item.anime-end .in-anime-slideleft-type2 .anime-inner, body.home #what-we-do .plan-list ul .list-item.anime-end .in-anime-slideleft-type2, body.home #what-we-do .plan-list ul .list-item.anime-end .in-anime-fadein-blur, .anime-slideleft-type2.anime-end .anime-inner, .anime-slideleft-type2.anime-end, .anime-slideleft-bg-red.anime-end > *, .anime-slideleft-bg-red.anime-end:before, .anime-fadein-blur.anime-end, .anime-inner-slideleft.anime-end .anime-inner { transition-property: all; transition-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1); transition-duration: 0.75s; }

@media (max-width: 567px) { .hidden-sp { display: none !important; } }

@media (min-width: 568px) and (max-width: 967px) { .hidden-tb { display: none !important; } }

@media (max-width: 967px) { .hidden-mb { display: none !important; } }

@media (min-width: 568px) { .hidden-no-sp { display: none !important; } }

@media (min-width: 968px) and (max-width: 1199px) { .hidden-spc { display: none !important; } }

@media (min-width: 1200px) { .hidden-lpc { display: none !important; } }

@media (min-width: 968px) { .hidden-pc { display: none !important; } }

:root { color: #3e3a39; background: white; font-size: 15px; }

@media (max-width: 967px) { :root { font-size: 12px; } }

body { position: relative; padding-top: 99px; background: white; font-family: source-han-sans-japanese, sans-serif, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif; font-weight: 300; }

@media (max-width: 967px) { body { padding-top: 79px; } }

body ::selection { background: #e0e0e0; color: black; }

section { margin: 6.65rem 0 2rem; }

@media (max-width: 967px) { section { margin: 5rem 0 2rem; } }

section header .title { display: flex; justify-content: flex-start; align-items: flex-start; font-size: 2.6667rem; font-weight: 500; }

@media (max-width: 967px) { section header .title { padding-bottom: .2em; font-size: 1.6667rem; } }

section header .title:before { border-radius: 0 .15em .15em .15em; background: linear-gradient(137deg, #fa6044 0%, #e84729 100%); box-shadow: 0.15em 0.15em 0.235em rgba(232, 71, 41, 0.25); content: ''; display: inline-block; position: relative; margin-top: .8rem; margin-right: .67em; width: .91em; height: .65em; font-size: 4rem; }

@media (max-width: 967px) { section header .title:before { border-radius: 0 .2em .2em .2em; box-shadow: 0.15em 0.15em 0.5em rgba(232, 71, 41, 0.25); } }

@media (max-width: 967px) { section header .title:before { top: .1em; margin-top: .1rem; margin-right: .5em; width: 1.1em; height: .85em; font-size: 2.5rem; } }

section header .title .text { display: inline-block; overflow: hidden; }

section header .title .text .anime, section header .title .text .anime-inner { display: inline-block; }

section header .title.eng:before { margin-top: 1.8rem; }

@media (max-width: 967px) { section header .title.eng:before { margin-top: .55rem; } }

section header .title.eng .text { font-size: 4rem; }

@media (max-width: 967px) { section header .title.eng .text { font-size: 2.5rem; } }

@media (min-width: 968px) and (max-width: 1199px) { .wrapper { padding-left: 30px; padding-right: 30px; } }

@media (max-width: 967px) { .wrapper { padding-left: 24px; padding-right: 24px; } }

.form-system { display: none; }

.btn-black-red { transition: all 0.25s ease; position: relative; overflow: hidden; padding: .7em 1em 2.2rem; width: 26.7rem; border: 1px solid white; border-radius: .25em; background: #3e3a39; line-height: 1.05; font-size: 2.5rem; font-weight: 500; }

.btn-black-red:before { content: ''; transition: 0.5s ease-in-out; right: 100%; background: #e84729; }

.btn-black-red .text { position: relative; }

@media (max-width: 967px) { .btn-black-red { padding: .65em 1em 1.6rem; width: 20.7rem; } }

.btn-black-red.eng { padding: .7em 1em 2rem; }

@media (max-width: 967px) { .btn-black-red.eng { padding: .55em 1em 1.5rem; } }

.btn-black-red:hover { border-color: #e84729; }

.btn-black-red:hover:before { right: 0; }

.form-area .img-email { margin: 6.67rem 0; text-align: center; }

@media (max-width: 967px) { .form-area .img-email { margin: 3.35rem 0; } }

.form-area .img-email img { max-width: 675px; }

@media (max-width: 967px) { .form-area .img-email img { min-width: 282px; max-width: 450px; width: 80%; } }

.anime-inner-slideleft.anime-ready .anime-inner { right: 100%; }

.anime-inner-slideleft.anime-end .anime-inner { right: 0; }

.anime-fadein-blur.anime-ready { filter: blur(20px); transform: scale(0.8); opacity: 0; }

.anime-fadein-blur.anime-end { filter: blur(0); transform: scale(1); opacity: 1; }

.anime-slideleft-bg-red.anime-ready { position: relative; }

.anime-slideleft-bg-red.anime-ready:before { transform: translateX(-100%); content: ''; display: block; background: #e84729; }

.anime-slideleft-bg-red.anime-ready > * { transform: translateX(-100%); }

.anime-slideleft-bg-red.anime-end:before { transition-delay: .2s; transition-duration: 1s; transform: translateX(0); }

.anime-slideleft-bg-red.anime-end > * { transition-delay: .5s; transition-duration: 1s; transform: translateX(0); }

.anime-slideleft-type2.anime-ready { transform: translate3d(-110.5%, 0px, 0px); overflow: hidden; }

.anime-slideleft-type2.anime-ready .anime-inner { transform: translate3d(110.5%, 0px, 0px); }

.anime-slideleft-type2.anime-end { transition-duration: 3s; transform: translate3d(0, 0, 0); }

.anime-slideleft-type2.anime-end .anime-inner { transition-duration: 3s; transform: translate3d(0, 0, 0); }

#site-header { display: flex; position: fixed; top: 0; left: 0; right: 0; z-index: 100; height: 99px; }

@media (max-width: 967px) { #site-header { height: 79px; } }

#site-header nav { display: flex; justify-content: space-between; align-items: center; padding: 0 33px 0 40px; width: 100%; }

@media (max-width: 967px) { #site-header nav { padding: 0 19px 0 24px; } }

#site-header nav a { display: block; }

#site-header nav .logo img { width: 210px; }

@media (max-width: 967px) { #site-header nav .logo img { width: 152px; } }

#site-header nav .map { transition: all 0.25s ease; width: 42px; display: flex; justify-content: center; align-items: center; }

@media (max-width: 967px) { #site-header nav .map { width: 35px; } }

#site-header nav .map .icon { transform-origin: 50% 100%; display: block; padding: 0 6px 0 7px; width: 100%; }

@media (max-width: 967px) { #site-header nav .map .icon { padding: 0 7px 0 7px; } }

#site-header nav .map .icon span { display: block; position: relative; }

#site-header nav .map .icon svg .path { transition: all 0.25s ease; fill: #e84729; }

body.home #site-header nav .map .icon svg .path { fill: white; }

body.home.pos-mv-bottom #site-header nav .map .icon svg .path { fill: #e84729; }

#site-header nav .map .icon.on .icon-map .cls-1 { fill: none; stroke: #e84729; stroke-linecap: round; stroke-linejoin: round; stroke-width: 3px; }

#site-header nav .map .icon.on .icon-map.animate { animation: icon-loc-scale-animation 1.0s ease-in-out; }

#site-header nav .map .icon.on .icon-map.animate span { animation: icon-loc-translate-animation 1.0s ease-in-out; }

#site-header nav .map:hover .icon { animation: icon-loc-scale-animation 1.0s ease-in-out; animation-iteration-count: 1; }

#site-header nav .map:hover .icon span { animation: icon-loc-translate-animation 1.0s ease-in-out; animation-iteration-count: 1; }

#site-footer { padding: 3.3rem 0; }

@media (max-width: 967px) { #site-footer { padding: 2.95rem 0; } }

#site-footer .inner { display: flex; }

@media (max-width: 967px) { #site-footer .inner { flex-direction: column; align-items: center; } }

@media (min-width: 968px) { #site-footer .inner .sns-link, #site-footer .inner .footer-nav { flex-grow: 1; width: 50%; } }

#site-footer .inner .sns-link .sns { display: inline-block; color: #3e3a39; }

#site-footer .inner .sns-link .sns .icon { border-radius: 0 .15em .15em .15em; background: linear-gradient(137deg, #fa6044 0%, #e84729 100%); box-shadow: 0.15em 0.15em 0.235em rgba(232, 71, 41, 0.25); display: inline-block; margin-right: 1.9rem; padding: .85em; width: 3.7rem; height: 3.7rem; border-radius: 0 .75em .75em .75em; box-shadow: 0.65em 0.65em 1.3em rgba(232, 71, 41, 0.25); }

@media (max-width: 967px) { #site-footer .inner .sns-link .sns .icon { border-radius: 0 .2em .2em .2em; box-shadow: 0.15em 0.15em 0.5em rgba(232, 71, 41, 0.25); } }

@media (max-width: 967px) { #site-footer .inner .sns-link .sns .icon { margin-right: 1.5rem; width: 3.35rem; height: 3.35rem; border-radius: 0 .75em .75em .75em; box-shadow: 0.45em 0.45em 1.8em rgba(232, 71, 41, 0.25); } }

#site-footer .inner .sns-link .sns .icon img { max-height: 100%; }

#site-footer .inner .sns-link .sns .text { transition: all 0.25s ease; display: inline-block; position: relative; padding: .1em 0 .25em; border-bottom: 3px solid #e84729; font-size: 1.64rem; font-weight: 500; line-height: 1.1; }

@media (max-width: 967px) { #site-footer .inner .sns-link .sns .text { top: -0.1em; white-space: nowrap; } }

#site-footer .inner .sns-link .sns:hover .text { border-color: transparent; }

@media (min-width: 968px) { #site-footer .inner .footer-nav { text-align: right; } }

@media (max-width: 967px) { #site-footer .inner .footer-nav { margin: 4.7rem 0 1.8rem; } }

@media (max-width: 967px) { #site-footer .inner .footer-nav nav { text-align: center; } }

#site-footer .inner .footer-nav nav a { display: inline-block; color: #3e3a39; text-decoration: underline; }

@media (min-width: 968px) { #site-footer .inner .footer-nav nav a { margin-left: 1.8em; } }

@media (max-width: 967px) { #site-footer .inner .footer-nav nav a { margin: 0 1.5em; } }

@media (max-width: 374px) { #site-footer .inner .footer-nav nav a { margin: 0 .85em; } }

#site-footer .inner .footer-nav nav a:hover { text-decoration: none; }

#site-footer .inner .footer-nav .copyright { margin-top: .7rem; font-family: effra, sans-serif; color: #f4a394; font-weight: normal; }

@media (max-width: 967px) { #site-footer .inner .footer-nav .copyright { margin-top: 2.7rem; text-align: center; font-size: .78rem; } }

body.home:before { content: ''; position: absolute; top: 0; right: 0; width: 50%; height: 25.4rem; background: #e84729; border-bottom-right-radius: 40px; }

@media (max-width: 967px) { body.home:before { height: 60.05vh; width: 45.6%; border-bottom-right-radius: 20px; } }

@media (max-width: 374px) { body.home:before { width: 40%; } }

body.home section .wrapper header { overflow: hidden; }

body.home section .wrapper header .anime-slideleft-type2 { overflow: hidden; }

body.home section .wrapper header .anime-slideleft-type2 .title { padding-left: 30px; padding-right: 30px; }

@media (max-width: 967px) { body.home section .wrapper header .anime-slideleft-type2 .title { padding-left: 10px; padding-right: 10px; } }

body.home #mainvisual { color: white; }

body.home #mainvisual .inner { position: relative; height: calc(100vh - 99px); min-height: 490px; padding-bottom: 30px; }

@media (max-width: 967px) { body.home #mainvisual .inner { height: calc(100vh - 79px); min-height: 370px; padding-bottom: 25px; } }

body.home #mainvisual .image-area, body.home #mainvisual .text-area { bottom: 30px; }

@media (max-width: 967px) { body.home #mainvisual .image-area, body.home #mainvisual .text-area { bottom: 25px; } }

body.home #mainvisual nav:before, body.home #mainvisual nav:after { content: ''; display: block; position: absolute; left: 155px; width: 1px; }

@media (max-width: 967px) { body.home #mainvisual nav:before, body.home #mainvisual nav:after { left: 65px; } }

body.home #mainvisual nav:before { animation-name: explore-line-anime-pc; animation-duration: 1.5s; animation-iteration-count: infinite; bottom: 30px; height: 125px; background: white; }

@media (max-width: 967px) { body.home #mainvisual nav:before { animation-name: explore-line-anime-mb; bottom: 25px; height: 60px; } }

body.home #mainvisual nav:after { bottom: 0; height: 30px; background: #3e3a39; }

@media (max-width: 967px) { body.home #mainvisual nav:after { height: 25px; } }

body.home #mainvisual nav .text { display: block; position: absolute; bottom: 155px; left: 151px; margin-bottom: 1.4rem; width: .71rem; }

@media (max-width: 967px) { body.home #mainvisual nav .text { bottom: 85px; left: 61px; margin-bottom: .8rem; } }

body.home #mainvisual .image-area { overflow: hidden; left: 30px; right: 30px; border-radius: 40px; }

@media (max-width: 967px) { body.home #mainvisual .image-area { left: 24px; right: 24px; border-radius: 30px; } }

body.home #mainvisual .text-area { display: flex; flex-direction: column; align-items: flex-start; padding: 3.05em 0 0 7.35em; }

@media (max-width: 967px) { body.home #mainvisual .text-area { padding: 5.9em 0 0 4.25em; } }

body.home #mainvisual .text-area .site-title { position: relative; padding-bottom: .1em; border-bottom: 5px solid #e84729; font-size: 7.3rem; font-weight: 500; line-height: 1.1; letter-spacing: -0.04em; }

@media (max-width: 967px) { body.home #mainvisual .text-area .site-title { padding-bottom: .09em; border-bottom-width: 3px; font-size: 5.05rem; } }

@media (max-width: 374px) { body.home #mainvisual .text-area .site-title { font-size: 4.5rem; } }

body.home #mainvisual .text-area .site-subtitle { margin-top: 1.5rem; font-size: 1.47rem; letter-spacing: -0.01em; font-weight: 500; }

@media (max-width: 967px) { body.home #mainvisual .text-area .site-subtitle { margin-top: .9rem; width: 50%; max-width: 100%; min-width: 17.15em; font-size: 1.25rem; line-height: 1.35; } }

@media (max-width: 374px) { body.home #mainvisual .text-area .site-subtitle { font-size: 1.18rem; } }




body.home #service { position: relative; padding: 0 0 5.4rem; }

@media (max-width: 967px) { body.home #service { padding: 2.4rem 0 2.9rem; } }

body.home #service .bg { display: block; overflow: hidden; margin-top: 5.3rem; }

@media (min-width: 968px) { body.home #service .bg { max-width: 800px; border-radius: 4rem; } }

@media (max-width: 967px) { body.home #service .bg { margin-top: 5.0rem; } }

body.home #service .bg .bg-inner { position: absolute; top: 0; bottom: 0; left: 0; right: 0; margin: auto; background: whitesmoke; }

@media (min-width: 968px) { body.home #service .bg .bg-inner { border-radius: 4rem; } }

@media (max-width: 967px) { body.home #service .bg .bg-inner { width: 76%; border-radius: 2.6rem; } }

body.home #service .wrapper { position: relative; }

body.home #service .description {  max-width: 800px; line-height: 1.7; }

body.home #service .title { color: #3e3a39; font-size: 1.93rem; margin: 0 0 1rem;}

@media (max-width: 967px) { body.home #service .title { font-size: 2.05rem; } }

body.home #service .text-area { box-shadow: 0 0 25px rgba(0, 0, 0, 0.07); position: relative; margin: 1.7rem 0 5.0rem; padding: 2.8em 3.2em; border-radius: 3.4rem; background: white; }
body.home #service .text-area:last-child {margin: 1.7rem 0 0;}

body.home #service .text-area table {width: 100%;}
body.home #service .text-area .price-table tr th, body.home #service .text-area .price-table tr td {padding:1rem; border-bottom: solid 1px whitesmoke;}
body.home #service .text-area .price-table tr th{background-color: whitesmoke;}
body.home #service .text-area .price-table tr td:last-child{text-align: center;}

body.home #service .text-area .compare-table tr th, body.home #service .text-area .compare-table tr td {padding:1rem; border: solid 1px whitesmoke;}
body.home #service .text-area .compare-table tr th:nth-child(2){background-color: #e84729; color:#ffffff;}
body.home #service .text-area .compare-table tr td:nth-child(1){font-weight: bold;}
body.home #service .text-area .compare-table tr td:nth-child(2){background-color:#e84729; color:#ffffff; font-weight: bold;}
body.home #service .text-area .compare-table tr td{text-align: center;}
@media (max-width: 967px) { body.home #service .text-area { margin:2rem 0 3rem; padding: 2.0em 2.25em; border-radius: 2.3rem; } }

body.home #service .guide-line .description span{margin: 1rem 0; color: #e84729; font-weight: normal; font-size: 1.25rem;}
@media (min-width: 968px) { body.home #service .guide-line .description { max-width: 100%; max-height: 525px; overflow: scroll;} }
@media (max-width: 967px) { body.home #service .guide-line .description { max-height: 323px; overflow: scroll;} }
body.home #service .description p { margin-bottom: 1.7rem; }

body.home #service .description p:last-child { margin-bottom: 0; }



body.home #what-we-do { position: relative; padding: 3.65rem 0 5.4rem; }

@media (max-width: 967px) { body.home #what-we-do { padding: 2.4rem 0 2.9rem; } }

body.home #what-we-do:before { content: ''; max-width: 800px; border-radius: 4rem; background: #fef6f4; }

@media (min-width: 968px) { body.home #what-we-do:before { left: 11%; right: 11%; } }

@media (max-width: 967px) { body.home #what-we-do:before { width: 76%; border-radius: 2.6rem; } }

body.home #what-we-do .wrapper { position: relative; }

body.home #what-we-do .plan-list { margin-top: 3.9rem; }

@media (max-width: 967px) { body.home #what-we-do .plan-list { margin-top: 2.6rem; } }

body.home #what-we-do .plan-list ul { margin-left: -30px; margin-right: -30px; display: flex; }

@media (max-width: 967px) { body.home #what-we-do .plan-list ul { margin-left: -18px; margin-right: -18px; flex-wrap: wrap; justify-content: center; } }

body.home #what-we-do .plan-list ul .list-item { padding-left: 30px; padding-right: 30px; display: flex; width: 33.3333333333%; }

@media (max-width: 967px) { body.home #what-we-do .plan-list ul .list-item { padding-left: 18px; padding-right: 18px; margin-bottom: 40px; width: 100%; max-width: 450px; } body.home #what-we-do .plan-list ul .list-item:last-child { margin-bottom: 0; } }

body.home #what-we-do .plan-list ul .list-item .inner { box-shadow: 0 0 25px rgba(0, 0, 0, 0.07); padding: 0 1rem 4rem; width: 100%; border-radius: 2.6rem; background: white; }

@media (max-width: 967px) { body.home #what-we-do .plan-list ul .list-item .inner { padding: 0 1rem 3.1rem; } }

body.home #what-we-do .plan-list ul .list-item .inner figure { position: relative; top: -27px; margin: 0 auto; padding: 0; width: 242px; }

@media (max-width: 967px) { body.home #what-we-do .plan-list ul .list-item .inner figure { top: -18px; width: 143px; } }

body.home #what-we-do .plan-list ul .list-item .inner .text-area { margin-top: 2rem; text-align: center; }

@media (max-width: 967px) { body.home #what-we-do .plan-list ul .list-item .inner .text-area { margin-top: .2rem; } }

body.home #what-we-do .plan-list ul .list-item .inner .text-area .anime, body.home #what-we-do .plan-list ul .list-item .inner .text-area .anime-inner { display: block; }

body.home #what-we-do .plan-list ul .list-item .inner .text-area .title { color: #3e3a39; font-size: 1.93rem; font-weight: 500; }

@media (max-width: 967px) { body.home #what-we-do .plan-list ul .list-item .inner .text-area .title { font-size: 2.05rem; } }

body.home #what-we-do .plan-list ul .list-item .inner .text-area .guide { margin: 1rem 0; color: #e84729; font-weight: normal; font-size: 1.25rem; }

@media (max-width: 967px) { body.home #what-we-do .plan-list ul .list-item .inner .text-area .guide { margin: .5rem 0; } }

body.home #what-we-do .plan-list ul .list-item.anime-ready .in-anime-fadein-blur { filter: blur(20px); transform: scale(0.8); opacity: 0; }

body.home #what-we-do .plan-list ul .list-item.anime-ready .in-anime-slideleft-type2 { transform: translate3d(-110.5%, 0px, 0px); overflow: hidden; }

body.home #what-we-do .plan-list ul .list-item.anime-ready .in-anime-slideleft-type2 .anime-inner { transform: translate3d(110.5%, 0px, 0px); }

body.home #what-we-do .plan-list ul .list-item.anime-end .in-anime-fadein-blur { transition-delay: .3s; transition-duration: .3s; filter: blur(0); transform: scale(1); opacity: 1; }

body.home #what-we-do .plan-list ul .list-item.anime-end .in-anime-slideleft-type2 { transition-duration: 3s; transition-delay: .3s; transform: translate3d(0, 0, 0); }

body.home #what-we-do .plan-list ul .list-item.anime-end .in-anime-slideleft-type2 .anime-inner { transition-duration: 3s; transition-delay: .3s; transform: translate3d(0, 0, 0); }

body.home #what-we-do .description { margin-top: 3.5rem; line-height: 1.7; }

@media (max-width: 967px) { body.home #what-we-do .description { margin-top: 3.0rem; } }

body.home #what-we-do .description .text-area .title { color: #3e3a39; font-size: 1.93rem; margin: 0 0 1rem;}
@media (max-width: 967px) { body.home #what-we-do .description .text-area .title { font-size: 2.05rem; } }

body.home #what-we-do .description .text-area p { margin-bottom: 1.7rem; }

body.home #what-we-do .description .text-area p:last-child { margin-bottom: 0; }

body.home #what-we-do .description .text-area p span{ margin: 1rem 0; color: #e84729; font-weight: normal; font-size: 1.25rem; }

body.home #what-we-do .description .sign-area { margin-top: 1.8rem; text-align: right; font-weight: 500; }

body.home #what-we-do .description .sign-area .company { color: #e84729; }

body.home #philosophy { margin-top: 4.8rem; }

body.home #philosophy .ps-item { position: relative; margin: 3.75rem 0 6.5rem; }

@media (max-width: 967px) { body.home #philosophy .ps-item { margin: 2.55rem 0 4.5rem; } }

body.home #philosophy .ps-item header { display: flex; flex-direction: column; position: absolute; right: 0; text-align: right; font-weight: 500; }

@media (min-width: 968px) { body.home #philosophy .ps-item header { top: 4rem; } }

@media (max-width: 967px) { body.home #philosophy .ps-item header { top: -0.2em; } }

body.home #philosophy .ps-item header .anime.anime-end { transition-delay: .5s; transition-duration: 1s; }

body.home #philosophy .ps-item header .anime.anime-end .anime-inner { transition-delay: .5s; transition-duration: 1s; }

body.home #philosophy .ps-item header .item-inner { display: flex; flex-direction: column; text-align: right; }

body.home #philosophy .ps-item header .ps-num { padding-bottom: .08em; color: #9f9d9c; font-size: 4rem; border-bottom: 3px solid #ecebeb; line-height: 1.28; }

@media (max-width: 967px) { body.home #philosophy .ps-item header .ps-num { font-size: 2rem; line-height: 1.05; border-bottom-width: 2px; } }

body.home #philosophy .ps-item header .ps-num-max { margin-top: .4rem; color: #ecebeb; font-size: 2rem; }

@media (max-width: 967px) { body.home #philosophy .ps-item header .ps-num-max { position: relative; top: -0.2em; line-height: 1.05; font-size: 1.3rem; } }

@media (max-width: 967px) { body.home #philosophy .ps-item .wrapper { padding-left: 0; padding-right: 0; } }

body.home #philosophy .ps-item .inner { position: relative; padding-bottom: 5.4rem; }

@media (max-width: 967px) { body.home #philosophy .ps-item .inner { overflow: hidden; padding-bottom: 3.4rem; } }

body.home #philosophy .ps-item .bg { display: block; overflow: hidden; margin-top: 5.3rem; }

@media (min-width: 968px) { body.home #philosophy .ps-item .bg { left: 11%; right: 11%; max-width: 800px; border-radius: 4rem; } }

@media (max-width: 967px) { body.home #philosophy .ps-item .bg { margin-top: 5.0rem; right: 6.8%; } }

body.home #philosophy .ps-item .bg .bg-inner { position: absolute; top: 0; bottom: 0; left: 0; background: whitesmoke; }

@media (min-width: 968px) { body.home #philosophy .ps-item .bg .bg-inner { border-radius: 4rem; } }

body.home #philosophy .ps-item .image-area { overflow: hidden; height: 500px; max-width: 800px; border-radius: 4rem; }

@media (max-width: 967px) { body.home #philosophy .ps-item .image-area { height: 38vw; min-height: 172px; border-radius: 2.5rem; } }

body.home #philosophy .ps-item .image-area .anime { height: 100%; }

@media (min-width: 968px) { body.home #philosophy .ps-item .image-area .anime:before, body.home #philosophy .ps-item .image-area .anime .image { border-radius: 4rem; } }

@media (max-width: 967px) { body.home #philosophy .ps-item .image-area .anime:before, body.home #philosophy .ps-item .image-area .anime .image { border-radius: 2.5rem; } }

body.home #philosophy .ps-item .image-area .image { position: relative; overflow: hidden; }

body.home #philosophy .ps-item .text-area { box-shadow: 0 0 25px rgba(0, 0, 0, 0.07); position: relative; margin: -10rem 0 0 auto; padding: 2.8em 3.2em; border-radius: 3.4rem; background: white; }

@media (min-width: 968px) { body.home #philosophy .ps-item .text-area { max-width: 650px; } }

@media (max-width: 967px) { body.home #philosophy .ps-item .text-area { margin: -3.3rem 0 0 auto; padding: 2.0em 2.25em; border-radius: 2.3rem; } }

body.home #philosophy .ps-item .text-area .anime.anime-end { transition-duration: 2s; }

body.home #philosophy .ps-item .text-area .anime.anime-end .anime-inner { transition-duration: 2s; }

body.home #philosophy .ps-item .text-area .title { margin-bottom: 1.8rem; text-align: center; font-weight: 500; font-size: 1.68rem; }

@media (max-width: 967px) { body.home #philosophy .ps-item .text-area .title { margin-bottom: 1.9rem; font-size: 1.28rem; } }

body.home #philosophy .ps-item .text-area .description { text-align: justify; line-height: 2; }

@media (max-width: 967px) { body.home #philosophy .ps-item .text-area .description { line-height: 1.7; } }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(odd) .bg { right: 0; left: 6.8%; } }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(odd) .bg .bg-inner { border-radius: 2.5rem 0 0 2.5rem; } }

body.home #philosophy .ps-item:nth-child(odd) .inner header { left: 30px; right: auto; text-align: left; }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(odd) .inner header { left: 24px; } }

body.home #philosophy .ps-item:nth-child(odd) .inner header .item-inner { text-align: left; }

body.home #philosophy .ps-item:nth-child(odd) .inner .image-area { margin-left: auto; margin-right: 0; }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(odd) .inner .image-area { margin-left: 26.8%; margin-right: 0; border-top-right-radius: 0; border-bottom-right-radius: 0; } body.home #philosophy .ps-item:nth-child(odd) .inner .image-area .anime:before, body.home #philosophy .ps-item:nth-child(odd) .inner .image-area .anime .image { border-top-right-radius: 0; border-bottom-right-radius: 0; } }

body.home #philosophy .ps-item:nth-child(odd) .inner .text-area { margin-left: 0; margin-right: auto; }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(odd) .inner .text-area { margin-left: 0; margin-right: 6.7%; border-top-left-radius: 0; border-bottom-left-radius: 0; } }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(even) .bg { right: 6.8%; left: 0; } }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(even) .bg .bg-inner { border-radius: 0 2.5rem 2.5rem 0; } }

body.home #philosophy .ps-item:nth-child(even) .inner header { right: 30px; }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(even) .inner header { right: 24px; } }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(even) .inner .image-area { margin-right: 26.8%; border-top-left-radius: 0; border-bottom-left-radius: 0; } body.home #philosophy .ps-item:nth-child(even) .inner .image-area .anime:before, body.home #philosophy .ps-item:nth-child(even) .inner .image-area .anime .image { border-top-left-radius: 0; border-bottom-left-radius: 0; } }

@media (max-width: 967px) { body.home #philosophy .ps-item:nth-child(even) .inner .text-area { margin-left: 6.7%; border-top-right-radius: 0; border-bottom-right-radius: 0; } }

body.home #philosophy .ps-item:last-child { margin-bottom: 0; }

body.home #about { position: relative; z-index: 1; margin-top: 5.1rem; }

body.home #about .company-info-area { margin-top: 3.8rem; }

@media (max-width: 967px) { body.home #about .company-info-area { margin-top: 2.7rem; } }

body.home #about .company-info-area .company-info { position: relative; padding-bottom: 5.5rem; }

body.home #about .company-info-area .company-info:before { content: ''; display: block; margin-top: 5.2rem; background: #fef6f4; }

@media (min-width: 968px) { body.home #about .company-info-area .company-info:before { left: 40px; right: 40px; border-radius: 4rem; } }

@media (max-width: 967px) { body.home #about .company-info-area .company-info:before { margin-top: 3.1rem; } }

body.home #about .company-info-area .company-info a { color: #3e3a39; text-decoration: underline; }

body.home #about .company-info-area .company-info a:hover { text-decoration: none; }

body.home #about .company-info-area .company-info .wrapper { position: relative; }

body.home #about .company-info-area .company-info .inner { box-shadow: 0 0 25px rgba(0, 0, 0, 0.07); display: flex; overflow: hidden; position: relative; z-index: 1; padding: 4em; border-radius: 3rem; background: white; }

@media (max-width: 967px) { body.home #about .company-info-area .company-info .inner { flex-direction: column-reverse; padding: 2.4em 2.5em; border-radius: 2.4rem; } }

@media (min-width: 968px) { body.home #about .company-info-area .company-info .inner .info-table, body.home #about .company-info-area .company-info .inner .founder { flex-grow: 1; width: 50%; } }

body.home #about .company-info-area .company-info .inner .info-table { display: flex; }

@media (min-width: 968px) { body.home #about .company-info-area .company-info .inner .info-table { padding-right: 2em; width: 42.7%; } }

@media (max-width: 967px) { body.home #about .company-info-area .company-info .inner .info-table { margin-top: 2.3rem; } }

@media (min-width: 968px) { body.home #about .company-info-area .company-info .inner .info-table hr, body.home #about .company-info-area .company-info .inner .info-table dl { max-width: 440px; } }

@media (min-width: 968px) { body.home #about .company-info-area .company-info .inner .info-table dl { font-size: 1.3rem; } }

@media (max-width: 967px) { body.home #about .company-info-area .company-info .inner .info-table dl { padding: 1.4em 0 1.36em; } }

body.home #about .company-info-area .company-info .inner .info-table dl dt { margin-bottom: .5em; font-weight: 500; }

@media (max-width: 967px) { body.home #about .company-info-area .company-info .inner .info-table dl dt { margin-bottom: .1em; } }

body.home #about .company-info-area .company-info .inner .info-table dl dd p { line-height: 1.8; }

body.home #about .company-info-area .company-info .inner .info-table dl:last-child { padding-bottom: .61em; }

body.home #about .company-info-area .company-info .inner .info-table hr { border-top: 1px solid #ecebeb; }

body.home #about .company-info-area .company-info .inner .info-table .anime, body.home #about .company-info-area .company-info .inner .info-table .anime-inner { display: flex; flex-direction: column; flex-grow: 1; }

body.home #about .company-info-area .company-info .inner .info-table .item-inner { flex-direction: column; justify-content: space-between; }

body.home #about .company-info-area .company-info .inner .founder .title { margin-top: -0.15em; text-align: center; font-size: 2.63rem; font-weight: 500; line-height: 1.05; }

@media (max-width: 967px) { body.home #about .company-info-area .company-info .inner .founder .title { margin-top: -0.13em; font-size: 2.1rem; } }

body.home #about .company-info-area .company-info .inner .founder .photo { display: flex; justify-content: center; align-items: center; margin-top: 3.8rem; }

@media (max-width: 967px) { body.home #about .company-info-area .company-info .inner .founder .photo { flex-direction: column; margin-top: 2.25rem; } }

body.home #about .company-info-area .company-info .inner .founder .photo figure { width: 180px; }

@media (max-width: 967px) { body.home #about .company-info-area .company-info .inner .founder .photo figure { width: 140px; } }

body.home #about .company-info-area .company-info .inner .founder .photo .name { margin-top: -0.1em; font-weight: 500; font-size: 1.68rem; }

@media (min-width: 968px) { body.home #about .company-info-area .company-info .inner .founder .photo .name { margin-left: 2.5rem; } }

@media (max-width: 967px) { body.home #about .company-info-area .company-info .inner .founder .photo .name { margin-top: 1.40em; font-size: 1.25rem; } }

body.home #about .company-info-area .company-info .inner .founder .text-area { margin-top: 2rem; line-height: 2; text-align: justify; }

@media (max-width: 967px) { body.home #about .company-info-area .company-info .inner .founder .text-area { margin-top: 1.75rem; line-height: 1.7; } }

body.home #about .company-info-area .map-area { position: relative; z-index: 0; overflow: hidden; margin: -11rem 80px 0; border-radius: 4rem; }

@media (max-width: 967px) { body.home #about .company-info-area .map-area { margin: -9rem 15px 0; border-radius: 2rem; } }

body.home #about .company-info-area .map-area .googlemap { padding-bottom: 440px; }

@media (max-width: 967px) { body.home #about .company-info-area .map-area .googlemap { padding-bottom: 404px; } }

body.home #about .company-info-area .map-area .inc-map { height: 440px; background: #ecebeb; }

@media (max-width: 967px) { body.home #about .company-info-area .map-area .inc-map { height: 404px; } }

body.home #about .company-info-area .map-area .inc-map .place-name { color: #3e3a39; }

body.home #about .company-info-area .map-area .inc-map .place-name a { color: #3e3a39; }

body.home #contact { position: relative; margin-top: -7.5rem; padding: 9.1rem 96px 0; color: white; }

@media (max-width: 967px) { body.home #contact { margin-top: -7.9rem; padding: 8.3rem 0 0; background: #3e3a39; } }

body.home #contact:before { content: ''; display: block; left: 40px; right: 40px; background: #3e3a39; border-radius: 4rem; }

@media (max-width: 967px) { body.home #contact:before { display: none; } }

body.home #contact a { color: white; text-decoration: underline; }

body.home #contact a:hover { text-decoration: none; }

body.home #contact .wrapper { position: relative; }

@media (min-width: 968px) { body.home #contact .wrapper { padding-left: 0; padding-right: 0; } }

body.home #contact header { margin-bottom: 3.3rem; color: white; }

@media (max-width: 967px) { body.home #contact header { margin-bottom: 2.2rem; } }

body.home #contact .guide { line-height: 2; }

@media (max-width: 967px) { body.home #contact .guide { line-height: 1.7; } }

body.home #contact .form-area { display: block; padding-bottom: 6.7rem; }

@media (max-width: 967px) { body.home #contact .form-area { padding-bottom: 5.0rem; } }

body.home #contact .form-area .input-area { display: flex; flex-wrap: wrap; margin: 4.8rem -30px 0; }

@media (max-width: 967px) { body.home #contact .form-area .input-area { margin: 3rem 0 0; } }

body.home #contact .form-area .input-area input, body.home #contact .form-area .input-area textarea { outline: 0; padding: 1.1em 1.4em 1.3em; width: 100%; color: #3e3a39; background: white; border-radius: .5em; font-size: 1.4rem; }

body.home #contact .form-area .input-area input::placeholder, body.home #contact .form-area .input-area textarea::placeholder { color: #d8d8d7; }

body.home #contact .form-area .input-area input:-moz-placeholder, body.home #contact .form-area .input-area textarea:-moz-placeholder { color: #d8d8d7; }

body.home #contact .form-area .input-area input::-webkit-input-placeholder, body.home #contact .form-area .input-area textarea::-webkit-input-placeholder { color: #d8d8d7; }

@media (max-width: 967px) { body.home #contact .form-area .input-area input, body.home #contact .form-area .input-area textarea { padding: .8em 1.35em .9em; font-size: 1.28rem; } }

body.home #contact .form-area .input-area textarea { height: 19em; }

@media (max-width: 967px) { body.home #contact .form-area .input-area textarea { height: 19.5em; } }

body.home #contact .form-area .input-area .input-item { margin-bottom: 4rem; }

@media (min-width: 968px) { body.home #contact .form-area .input-area .input-item { padding-left: 30px; padding-right: 30px; } }

@media (max-width: 967px) { body.home #contact .form-area .input-area .input-item { margin-bottom: 3.4rem; } }

body.home #contact .form-area .input-area .half { flex-grow: 1; }

@media (min-width: 968px) { body.home #contact .form-area .input-area .half { width: 50%; } }

@media (max-width: 967px) { body.home #contact .form-area .input-area .half { width: 100%; } }

body.home #contact .form-area .input-area .full { width: 100%; }

body.home #contact .form-area .btn-area { margin-top: 2.35rem; text-align: center; }

@media (max-width: 967px) { body.home #contact .form-area .btn-area { margin-top: 1.25rem; } }

body.home #contact .form-area .btn-area .btn { font-size: 2.62rem; }

@media (max-width: 967px) { body.home #contact .form-area .btn-area .btn { font-size: 2.1rem; } }

#privacy section { position: relative; margin-top: 4rem; }

@media (max-width: 967px) { #privacy section { margin-top: 2.66666rem; } }

#privacy section:before { position: absolute; top: 0; right: 0; bottom: 0; left: 0; margin: auto; content: ''; max-width: 800px; border-radius: 2rem; background: whitesmoke; }

@media (max-width: 967px) { #privacy section:before { max-width: 285px; } }

@media (max-width: 374px) { #privacy section:before { width: 70%; } }

#privacy section .wrapper { position: relative; }

#privacy header { margin-bottom: 5.333rem; padding-top: 5.333rem; }

@media (max-width: 967px) { #privacy header { padding-top: 0rem; margin-bottom: 2.66666rem; } #privacy header:nth-child(1) { padding-top: 2.66666rem; } }

#privacy h3 { font-size: 2rem; font-weight: 500; margin-bottom: 4rem; }

@media (max-width: 967px) { #privacy h3 { font-size: 1.25rem; margin-bottom: 2rem; } }

#privacy p { line-height: 1.6667; font-size: 1rem; padding-bottom: 6.66667rem; }

#privacy p strong { font-weight: 500; }

@media (max-width: 967px) { #privacy p { padding-bottom: 2.66667rem; } }

#privacy .btnlink { text-align: center; margin-top: 6.66667rem; margin-bottom: 5.3333rem; }

@media (max-width: 967px) { #privacy .btnlink { margin-top: 4rem; margin-bottom: 4rem; } }

#privacy .btnlink a.backlink { position: relative; padding-bottom: 1rem; display: inline-block; font-size: 2rem; color: #3e3a39; font-weight: 500; width: 100%; max-width: 20rem; transition: all .7s; letter-spacing: -0.05rem; }

@media (max-width: 967px) { #privacy .btnlink a.backlink { font-size: 1.66667rem; max-width: 10rem; padding-bottom: 1rem; } }

#privacy .btnlink a.backlink:after { position: absolute; width: 100%; height: 2px; content: ""; left: 50%; transform: translateX(-50%); bottom: 0; background: #3e3a39; display: inline-block; transition: all .7s; }

@media (max-width: 967px) { #privacy .btnlink a.backlink:after { height: 1px; } }

#privacy .btnlink a.backlink span { position: relative; width: 100%; display: block; font-weight: 500; }

#privacy .btnlink a.backlink span:after { position: absolute; top: 50%; transform: translateY(-50%); content: ""; right: .9rem; background: url(/images/arrow-left.svg) no-repeat center center; background-size: contain; width: 14px; height: 17px; transition: all .7s; }

@media (max-width: 967px) { #privacy .btnlink a.backlink span:after { right: 5px; width: 7px; height: 10px; } }

#privacy .btnlink a.backlink:hover { max-width: 22.6667rem; transition: all .7s; }

@media (max-width: 967px) { #privacy .btnlink a.backlink:hover { max-width: 10.333333rem; } }

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