@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/  v2.0 | 20110126 License: none (public domain) */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video { margin: 0; padding: 0; border: 0; font-size: 100%; font: inherit; vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section { display: block; }

body { line-height: 1; }

ol, ul { list-style: none; }

blockquote, q { quotes: none; }

blockquote:before, blockquote:after, q:before, q:after { content: ''; content: none; }

table { border-collapse: collapse; border-spacing: 0; }

/*! sanitize.css | CC0 Public Domain | github.com/jonathantneal/sanitize.css */
/* Normalization */
:root { -ms-overflow-style: -ms-autohiding-scrollbar; overflow-y: scroll; text-size-adjust: 100%; }

audio:not([controls]) { display: none; }

details { display: block; }

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; }

summary { display: block; }

pre { overflow: auto; }

progress { display: inline-block; }

small { font-size: 12px; }

template { display: none; }

textarea { overflow: auto; }

[hidden] { display: none; }

[unselectable] { -webkit-user-select: none; -ms-user-select: none; user-select: none; }

/* Universal inheritance */
*, ::before, ::after { box-sizing: inherit; }

* { font-size: inherit; line-height: inherit; }

::before, ::after { text-decoration: inherit; vertical-align: inherit; }

/* Opinionated defaults */
*, ::before, ::after { border-style: solid; border-width: 0; }

* { margin: 0; padding: 0; }

:root { box-sizing: border-box; cursor: default; font: 16px / 1.5 sans-serif; text-rendering: optimizeLegibility; }

html { background-color: #FFFFFF; }

a { text-decoration: none; color: #2c2c2c; }

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; }

::selection { background-color: #B3D4FC; text-shadow: none; }

@media screen { [hidden~="screen"] { display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) { clip: rect(0 0 0 0) !important; position: absolute !important; } }

/*
#styleguide
基本スタイル

```
<p>特に何も指定しないときの状態</p>
```
*/
body { text-size-adjust: 100%; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; font-smoothing: antialiased; text-rendering: auto; font-size: 14px; font-family: "ShinGoPro", sans-serif; color: #2c2c2c; background-color: #fff; min-width: 1200px; width: 100%; overflow: hidden; }

@media (max-width: 768px) { body { min-width: auto; } }

@media (max-width: 768px) { body { min-width: 0; } }

ol { list-style-type: decimal; padding-left: 20px; }

ol ol { list-style-type: none; }

@font-face { font-family: 'ShinGoPro'; src: url(../lib/fonts/ShinGoPro/A-OTF-ShinGoPro-Bold.otf) format("opentype"); font-weight: bold; }

@font-face { font-family: 'ShinGoPro'; src: url(../lib/fonts/ShinGoPro/A-OTF-ShinGoPro-DeBold.otf) format("opentype"); font-weight: 600; }

@font-face { font-family: 'ShinGoPro'; src: url(../lib/fonts/ShinGoPro/A-OTF-ShinGoPro-ExLight.otf) format("opentype"); font-weight: 200; }

@font-face { font-family: 'ShinGoPro'; src: url(../lib/fonts/ShinGoPro/A-OTF-ShinGoPro-Heavy.otf) format("opentype"); font-weight: 800; }

@font-face { font-family: 'ShinGoPro'; src: url(../lib/fonts/ShinGoPro/A-OTF-ShinGoPro-Light.otf) format("opentype"); font-weight: 300; }

@font-face { font-family: 'ShinGoPro'; src: url(../lib/fonts/ShinGoPro/A-OTF-ShinGoPro-Medium.otf) format("opentype"); font-weight: 500; }

@font-face { font-family: 'ShinGoPro'; src: url(../lib/fonts/ShinGoPro/A-OTF-ShinGoPro-Regular.otf) format("opentype"); font-weight: normal; }

@font-face { font-family: 'ShinGoPro'; src: url(../lib/fonts/ShinGoPro/A-OTF-ShinGoPro-Ultra.otf) format("opentype"); font-weight: 900; }

@font-face { font-family: 'AvenirNext'; src: url(../lib/fonts/AvenirNext/aviner-next.otf) format("opentype"); font-weight: 900; }

@font-face { font-family: 'Futura'; src: url(../lib/fonts/Futura/Futura-Bold-font.ttf) format("truetype"); font-weight: bold; }

@font-face { font-family: 'Futura'; src: url(../lib/fonts/Futura/Futura-Medium-bt.ttf) format("truetype"); font-weight: 500; }

@font-face { font-family: 'Futura'; src: url(../lib/fonts/Futura/Futura-Light-font.ttf) format("truetype"); font-weight: normal; }

.flex { box-sizing: border-box; -ms-flex: 1; flex: 1; display: -ms-flexbox; display: flex; }

.flex:before, .flex:after { content: none; }

.flex-wrap { -ms-flex-wrap: wrap; flex-wrap: wrap; }

.flex-fill { width: 100%; height: 100%; }

.flex-horizontal { box-orient: horizontal; box-direction: normal; -ms-flex-direction: row; flex-direction: row; }

.flex-vertical { box-orient: vertical; box-direction: normal; -ms-flex-direction: column; flex-direction: column; }

.flex-space-between { -ms-flex-pack: justify; justify-content: space-between; flex-pack: justify; box-pack: justify; }

.flex-space-around { -ms-flex-pack: distribute; justify-content: space-around; flex-pack: justify; box-pack: justify; }

.flex-start { -ms-flex-pack: start; justify-content: flex-start; flex-pack: start; box-pack: start; }

.flex-end { -ms-flex-pack: end; justify-content: flex-end; flex-pack: end; box-pack: end; }

.flex-center { -ms-flex-pack: center; justify-content: center; flex-pack: center; box-pack: center; }

.flex-align-start { -ms-flex-align: start; align-items: flex-start; flex-align: start; box-align: start; }

.flex-align-end { -ms-flex-align: end; align-items: flex-end; flex-align: end; box-align: end; }

.flex-align-center { -ms-flex-align: center; align-items: center; flex-align: center; box-align: center; }

.flex-align-baseline { -ms-flex-align: baseline; align-items: baseline; flex-align: baseline; box-align: baseline; }

.flex-align-stretch { -ms-flex-align: stretch; align-items: stretch; flex-align: stretch; box-align: stretch; }

.flex-inline { display: -ms-inline-flexbox; display: inline-flex; }

/* Slider */
.slick-slider { position: relative; display: block; box-sizing: border-box; -webkit-touch-callout: none; -webkit-user-select: none; -ms-user-select: none; user-select: none; -ms-touch-action: pan-y; touch-action: pan-y; -webkit-tap-highlight-color: transparent; }

.slick-list { position: relative; overflow: hidden; display: block; margin: 0; padding: 0; }

.slick-list:focus { outline: none; }

.slick-list.dragging { cursor: pointer; cursor: hand; }

.slick-slider .slick-track, .slick-slider .slick-list { -webkit-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }

.slick-track { position: relative; left: 0; top: 0; display: block; margin-left: auto; margin-right: auto; margin-bottom: 6px; }

.slick-track:before, .slick-track:after { content: ""; display: table; }

.slick-track:after { clear: both; }

.slick-loading .slick-track { visibility: hidden; }

.slick-slide { float: left; height: 100%; min-height: 1px; outline: none; display: none; }

[dir="rtl"] .slick-slide { float: right; }

.slick-slide img { display: block; }

.slick-slide.slick-loading img { display: none; }

.slick-slide.dragging img { pointer-events: none; }

.slick-initialized .slick-slide { display: block; }

.slick-loading .slick-slide { visibility: hidden; }

.slick-vertical .slick-slide { display: block; height: auto; border: 1px solid transparent; }

.slick-arrow.slick-hidden { display: none; }

.wp-pagenavi { text-align: center; font-family: Helvetica, sans-serif; font-size: 16px; margin-top: -10px; }

.wp-pagenavi .current { font-weight: bold; margin: 0 9px; position: relative; }

.wp-pagenavi .current:after { content: ""; height: 2px; background: #00a2e9; position: absolute; bottom: -10px; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); width: 70%; }

.wp-pagenavi .page { color: #a6adb4; margin: 0 9px; }

.wp-pagenavi .extend { content: ""; background-image: url(../images/svg/wp-pagenavi-extend.svg); display: inline-block; width: 18px; height: 4px; position: relative; top: -2px; left: -3px; margin: 0 9px; }

@media screen and (max-width: 768px) { .wp-pagenavi .extend { left: 0; } }

.sns-list { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; margin-left: 12px; }

@media screen and (max-width: 768px) { .sns-list { margin-left: 0; } }

.sns-item { margin-right: 20px; }

@media screen and (max-width: 768px) { .sns-item { -webkit-transform: scale(0.82); transform: scale(0.82); margin-right: 0; } }

.sns-item:last-of-type { margin-right: 0; }

@media screen and (max-width: 768px) { .sns-item:last-of-type { margin-right: 8px; } }

.sns-item-fb { margin-right: 18px; }

@media screen and (max-width: 768px) { .sns-item-fb { margin-right: 0; } }

.sns-link { height: 20px; line-height: 20px; border-radius: 3px; font-size: 12px; font-weight: bold; letter-spacing: -2px; display: block; color: #fff; background-repeat: no-repeat; background-size: 18px; background-position-x: 2px; padding: 0 3px 0 22px; }

.sns-link-twitter { background-color: #2794d3; background-image: url("../images/sns/sns-twitter.png"); background-size: 16px; background-position-x: 5px; background-position-y: 2px; padding-left: 23px; padding-right: 8px; margin-right: 0; letter-spacing: -1px; }

@media screen and (max-width: 768px) { .sns-link-twitter { background-size: 13px; background-position-x: 4px; background-position-y: 1px; padding: 0px 7px 8px 17px; } }

.sns-link-facebook { margin-left: -3px; }

@media screen and (max-width: 768px) { .sns-link-facebook { -webkit-transform: scale(0.7); transform: scale(0.7); margin-right: 0; margin-left: 0; } }

.sns-link-hatena { background-color: #149acf; background-image: url("../images/sns/sns-hatena.png"); background-position-x: 2px; padding: 0 3px 0 22px; }

@media screen and (max-width: 768px) { .sns-link-hatena { padding: 0 5px 0 17px; } }

.sns-link-pocket { background-color: #f2f2f2; background-image: url("../images/sns/sns-pocket.png"); color: #000; border: 1px solid #cecece; letter-spacing: .01em; font-weight: bold; font-size: 10px; background-size: 17px; background-position-x: 1px; background-position-y: 1px; padding-left: 19px; display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; }

.single-body { margin-left: 3px; text-align: left; }

.single-body h2 { font-size: 30px; line-height: 1.35; padding: 30px 15px 30px; background-color: #fafafa; margin-bottom: 12px; margin-top: 34px; letter-spacing: .025em; }

@media screen and (max-width: 768px) { .single-body h2 { font-size: 20px; margin-top: 16px; padding: 22px 15px 22px; margin-bottom: 15px; } }

.single-body h3 { font-size: 30px; line-height: 1.35; margin-bottom: 8px; letter-spacing: 0.025em; }

@media screen and (max-width: 768px) { .single-body h3 { font-size: 20px; line-height: 1.5; margin-bottom: 13px; letter-spacing: normal; } }

.single-body p { font-size: 16px; line-height: 2; margin-bottom: 19px; letter-spacing: .025em; }

@media screen and (max-width: 768px) { .single-body p { font-size: 14px; line-height: 2.5; margin-bottom: 10px; } }

.single-body a { color: #00afec; text-decoration: underline; overflow-wrap: break-word; }

.single-body strong { font-weight: bold; }

.single-body em { font-style: italic; }

.single-body img { max-width: 100%; height: auto; margin-top: 50.7px; margin-bottom: 51px; }

@media screen and (max-width: 768px) { .single-body img { margin-top: 50px; margin-bottom: 41px; } }

.single-body hr { margin: 1em 0; height: 1px; border-top: 1px solid; }

.single-body li { font-size: 16px; margin-bottom: 10px; letter-spacing: .025em; }

@media screen and (max-width: 768px) { .single-body li { font-size: 14px; line-height: 1.4; margin-bottom: 16px; } }

.single-body ul { list-style: none; margin-left: 3px; margin-bottom: 44px; }

@media screen and (max-width: 768px) { .single-body ul { margin-bottom: 52px; } }

.single-body ul li:before { content: '\2022'; font-size: 40px; position: relative; top: 5px; margin-right: 7px; }

@media screen and (max-width: 768px) { .single-body ul li:before { top: -2px; font-size: initial; margin-right: 4px; } }

.single-body iframe { max-width: 100% !important; margin: 0 auto; display: block; }

.single-body .wp-caption { width: 100% !important; }

.single-body .aligncenter { display: block; margin-left: auto; margin-right: auto; }

@media screen and (max-width: 768px) { .single-body .aligncenter { display: inline-block; } }

.single-body .alignright { float: right; }

.single-body .alignleft { float: left; }

.single-body .fieldset { border: 1px solid #707070; }

.single-body .fieldset h3 { font-size: 16px; font-weight: bold; position: relative; top: -10px; left: 42px; background-color: white; display: inline-block; padding: 0 15px; margin-bottom: 0; }

@media screen and (max-width: 768px) { .single-body .fieldset h3 { font-size: 14px; top: -11px; left: 15px; letter-spacing: .02em; padding: 0 8px; } }

.single-body .fieldset ul { margin: -8px 0 31px 33px; }

@media screen and (max-width: 768px) { .single-body .fieldset ul { margin: 0 0 0 17px; } }

.single-body table { border-top: 1px solid #707070; }

@media screen and (max-width: 768px) { .single-body table { margin-left: -36px; width: calc(100% + 68px); } }

.single-body table tr { border-bottom: 1px solid #707070; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.single-body table tr td { padding: 19px 0; font-size: 16px; line-height: 2.3; letter-spacing: .02em; }

@media screen and (max-width: 768px) { .single-body table tr td { font-size: 14px; display: block; padding: 0 35px; line-height: 2.45; } }

.single-body table tr td:first-child { width: 26%; }

@media screen and (max-width: 768px) { .single-body table tr td:first-child { font-size: 16px; width: auto; line-height: 1; padding: 14px 35px 12px; } }

.single-body table tr td:last-child { width: 74%; }

@media screen and (max-width: 768px) { .single-body table tr td:last-child { width: 100%; line-height: 1.8; padding: 0 35px 10px; } }

body.page-template-default .single-body { line-height: 2; }

body.page-template-default .single-body .date { float: right; margin-top: -80px; }

@media screen and (max-width: 768px) { body.page-template-default .single-body .date { margin-top: 0; float: none; } }

.row { box-sizing: border-box; display: -ms-flexbox; display: flex; -ms-flex: 0 1 auto; flex: 0 1 auto; -ms-flex-direction: row; flex-direction: row; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; }

.row-justify-center { -ms-flex-pack: center; justify-content: center; }

.row-align-center { -ms-flex-align: center; align-items: center; }

.col-lg-1 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 0 + calc(100% - 495px)/12); flex-basis: calc(45px * 0 + calc(100% - 495px)/12); max-width: calc(45px * 0 + calc(100% - 495px)/12); }

@media screen and (max-width: 768px) { .col-sm-1 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 0 + calc(100% - 495px)/12); flex-basis: calc(45px * 0 + calc(100% - 495px)/12); max-width: calc(45px * 0 + calc(100% - 495px)/12); } }

.col-lg-2 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 1 + calc(100% - 495px)/6); flex-basis: calc(45px * 1 + calc(100% - 495px)/6); max-width: calc(45px * 1 + calc(100% - 495px)/6); }

@media screen and (max-width: 768px) { .col-sm-2 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 1 + calc(100% - 495px)/6); flex-basis: calc(45px * 1 + calc(100% - 495px)/6); max-width: calc(45px * 1 + calc(100% - 495px)/6); } }

.col-lg-3 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 2 + calc(100% - 495px)/4); flex-basis: calc(45px * 2 + calc(100% - 495px)/4); max-width: calc(45px * 2 + calc(100% - 495px)/4); }

@media screen and (max-width: 768px) { .col-sm-3 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 2 + calc(100% - 495px)/4); flex-basis: calc(45px * 2 + calc(100% - 495px)/4); max-width: calc(45px * 2 + calc(100% - 495px)/4); } }

.col-lg-4 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 3 + calc(100% - 495px)/3); flex-basis: calc(45px * 3 + calc(100% - 495px)/3); max-width: calc(45px * 3 + calc(100% - 495px)/3); }

@media screen and (max-width: 768px) { .col-sm-4 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 3 + calc(100% - 495px)/3); flex-basis: calc(45px * 3 + calc(100% - 495px)/3); max-width: calc(45px * 3 + calc(100% - 495px)/3); } }

.col-lg-5 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 4 + calc(100% - 495px)/2.4); flex-basis: calc(45px * 4 + calc(100% - 495px)/2.4); max-width: calc(45px * 4 + calc(100% - 495px)/2.4); }

@media screen and (max-width: 768px) { .col-sm-5 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 4 + calc(100% - 495px)/2.4); flex-basis: calc(45px * 4 + calc(100% - 495px)/2.4); max-width: calc(45px * 4 + calc(100% - 495px)/2.4); } }

.col-lg-6 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 5 + calc(100% - 495px)/2); flex-basis: calc(45px * 5 + calc(100% - 495px)/2); max-width: calc(45px * 5 + calc(100% - 495px)/2); }

@media screen and (max-width: 768px) { .col-sm-6 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 5 + calc(100% - 495px)/2); flex-basis: calc(45px * 5 + calc(100% - 495px)/2); max-width: calc(45px * 5 + calc(100% - 495px)/2); } }

.col-lg-7 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 6 + calc(100% - 495px)/1.71429); flex-basis: calc(45px * 6 + calc(100% - 495px)/1.71429); max-width: calc(45px * 6 + calc(100% - 495px)/1.71429); }

@media screen and (max-width: 768px) { .col-sm-7 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 6 + calc(100% - 495px)/1.71429); flex-basis: calc(45px * 6 + calc(100% - 495px)/1.71429); max-width: calc(45px * 6 + calc(100% - 495px)/1.71429); } }

.col-lg-8 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 7 + calc(100% - 495px)/1.5); flex-basis: calc(45px * 7 + calc(100% - 495px)/1.5); max-width: calc(45px * 7 + calc(100% - 495px)/1.5); }

@media screen and (max-width: 768px) { .col-sm-8 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 7 + calc(100% - 495px)/1.5); flex-basis: calc(45px * 7 + calc(100% - 495px)/1.5); max-width: calc(45px * 7 + calc(100% - 495px)/1.5); } }

.col-lg-9 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 8 + calc(100% - 495px)/1.33333); flex-basis: calc(45px * 8 + calc(100% - 495px)/1.33333); max-width: calc(45px * 8 + calc(100% - 495px)/1.33333); }

@media screen and (max-width: 768px) { .col-sm-9 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 8 + calc(100% - 495px)/1.33333); flex-basis: calc(45px * 8 + calc(100% - 495px)/1.33333); max-width: calc(45px * 8 + calc(100% - 495px)/1.33333); } }

.col-lg-10 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 9 + calc(100% - 495px)/1.2); flex-basis: calc(45px * 9 + calc(100% - 495px)/1.2); max-width: calc(45px * 9 + calc(100% - 495px)/1.2); }

@media screen and (max-width: 768px) { .col-sm-10 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 9 + calc(100% - 495px)/1.2); flex-basis: calc(45px * 9 + calc(100% - 495px)/1.2); max-width: calc(45px * 9 + calc(100% - 495px)/1.2); } }

.col-lg-11 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 10 + calc(100% - 495px)/1.09091); flex-basis: calc(45px * 10 + calc(100% - 495px)/1.09091); max-width: calc(45px * 10 + calc(100% - 495px)/1.09091); }

@media screen and (max-width: 768px) { .col-sm-11 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 10 + calc(100% - 495px)/1.09091); flex-basis: calc(45px * 10 + calc(100% - 495px)/1.09091); max-width: calc(45px * 10 + calc(100% - 495px)/1.09091); } }

.col-lg-12 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 11 + calc(100% - 495px)/1); flex-basis: calc(45px * 11 + calc(100% - 495px)/1); max-width: calc(45px * 11 + calc(100% - 495px)/1); }

@media screen and (max-width: 768px) { .col-sm-12 { box-sizing: border-box; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-preferred-size: calc(45px * 11 + calc(100% - 495px)/1); flex-basis: calc(45px * 11 + calc(100% - 495px)/1); max-width: calc(45px * 11 + calc(100% - 495px)/1); } }

.l-container { position: relative; width: 100%; height: 100%; min-width: 1200px; }

@media screen and (min-width: 1440px) { .l-container { width: 1440px; margin: 0 auto; } }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-container { min-width: auto; } }

@media screen and (max-width: 768px) { .l-container { min-width: auto; width: 100%; } }

.l-main { padding-top: 88px; width: 100%; overflow: hidden; }

@media screen and (max-width: 768px) { .l-main { padding-top: 44px; min-width: auto; } }

.l-header-banner { min-width: 1200px; width: 100%; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-header-banner { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-header-banner { min-width: auto; min-height: auto; } }

.l-header { position: fixed; background: #fff; box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); width: 100%; z-index: 3; }

.l-header-wrapper { display: -ms-flexbox; display: flex; position: relative; padding: 24px 10px 24px; font-family: "ShinGoPro", sans-serif; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 768px) { .l-header-wrapper { padding: 13px 34px 10px 35px; } }

.l-header-logo { display: block; width: 124px; margin-right: 38px; }

@media screen and (max-width: 768px) { .l-header-logo { width: 83px; } }

.l-header-icon { width: 100%; }

.l-header-left, .l-header-right { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; }

.l-header-right .nav-item { margin-right: 18px; }

.l-header-hamburger { position: absolute; right: 35px; z-index: 30; }

.l-header-overlay { position: fixed; top: 0; width: 100%; height: 100vh; z-index: 10; opacity: 0; -webkit-transform: translateX(100%); transform: translateX(100%); transition: 0.5s ease; }

.l-header-overlay.is-active { opacity: 1; -webkit-transform: translateX(0); transform: translateX(0); }

.l-footer { min-width: 1200px; }

@media screen and (max-width: 768px) { .l-footer { min-width: auto; } }

.l-footer-bottom-wrapper { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; }

.l-footer-top { background-color: #272727; padding: 66px 0 122px; }

@media screen and (max-width: 768px) { .l-footer-top { padding: 50px 0 0; } }

.l-footer-bottom { text-align: center; background-color: #272727; padding: 20px 0 47px; font-family: "AvenirNext", sans-serif; font-size: 14px; color: #fff; color: #fff; font-weight: normal; }

@media screen and (max-width: 768px) { .l-footer-bottom { padding: 53px 0 40px; } }

.l-footer-right { max-width: 300px; }

@media screen and (max-width: 768px) { .l-index-hero { height: 770px; } }

.l-index-tip { width: 100%; -webkit-transform: translateY(-40%); transform: translateY(-40%); transition: 0.7s ease; opacity: 0; padding-top: 50px; padding-bottom: 50px; }

.l-index-tip.with-margin { margin-top: -164px; }

@media screen and (max-width: 768px) { .l-index-tip { -webkit-transform: translateY(-280px); transform: translateY(-280px); } }

.l-index-tip.is-active { -webkit-transform: translateY(0%); transform: translateY(0%); opacity: 1; }

@media screen and (max-width: 768px) { .l-index-tip.is-active { -webkit-transform: translateY(-200px); transform: translateY(-200px); } }

.l-index-emergency-news { background: #F4F4F4; padding: 12px 15px; }

@media screen and (max-width: 768px) { .l-index-emergency-news { -webkit-transform: translateY(-200px); transform: translateY(-200px); } }

.l-index-emergency-news .l-container { max-width: 1200px; margin: 0 auto; min-width: auto; }

.l-index-emergency-news a { display: -ms-flexbox; display: flex; border-radius: 4px; border: solid 1px #EAEAEA; background: #fff; text-decoration: none; position: relative; padding-top: 12px; padding-bottom: 11px; padding-left: 30px; padding-right: 30px; min-height: 56px; -ms-flex-align: center; align-items: center; transition: .3s ease; }

.l-index-emergency-news a:not(:last-child) { margin-bottom: 5px; }

.l-index-emergency-news a:before { content: ''; width: 14px; height: 14px; background: transparent url(../images/svg/top-caret-right.svg) no-repeat center center scroll; display: block; position: absolute; right: 15px; transition: .3s ease; }

.l-index-emergency-news a:hover { box-shadow: 1px 1px 5px #dedede; }

@media screen and (max-width: 768px) { .l-index-emergency-news a { -ms-flex-direction: column; flex-direction: column; -ms-flex-align: start; align-items: flex-start; }
  .l-index-emergency-news a .date { -ms-flex-order: 3; order: 3; }
  .l-index-emergency-news a .title { margin-bottom: 10px; -ms-flex-order: 1; order: 1; }
  .l-index-emergency-news a .tags { margin-bottom: 10px; -ms-flex-order: 2; order: 2; } }

.l-index-emergency-news a .date { font-size: 14px; letter-spacing: .08em; color: #2C2C2C; margin-right: 65px; }

.l-index-emergency-news a .tags { margin-right: 14px; }

.l-index-emergency-news a .tags span { color: #00AFEC; font-size: 11.5px; letter-spacing: .08em; border: solid 1px #00AFEC; font-weight: 600; display: inline-block; padding: 9px 15px; border-radius: 20px; }

.l-index-emergency-news a .title { font-size: 16.5px; letter-spacing: .08em; font-weight: 600; color: #7F7F7F; }

.l-index-feature { margin-top: 0px; }

@media screen and (max-width: 768px) { .l-index-feature { margin-top: -205px; } }

.l-index-contact { margin: 100px 0 100px; -webkit-transform: translateY(10%); transform: translateY(10%); opacity: 0; transition: 0.7s ease; }

.l-index-contact.is-active { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; }

@media screen and (max-width: 768px) { .l-index-contact { width: calc(100% - 14px); margin: 50px auto 45px; } }

.l-index-companies { margin-bottom: 100px; }

@media screen and (max-width: 768px) { .l-index-companies { margin-bottom: 50px; } }

.l-index-rest img { display: block; margin: 0 auto; }

@media screen and (max-width: 320px) { .l-index-rest img { width: 70px; } }

.l-index-document { min-width: 1200px; overflow: hidden; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-index-document { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-index-document { min-width: auto; } }

.l-index-news { margin: 100px 0; }

@media screen and (max-width: 768px) { .l-index-news { padding: 0 35px; margin: 45px 0 50px; } }

.l-index-movie { width: 300px; height: 163px; position: fixed; bottom: 0; right: 0; margin: 20px; opacity: 0; pointer-events: none; padding-top: 30px; transition: 0.7s ease; }

@media screen and (max-width: 768px) { .l-index-movie { width: 150px; height: 97px; margin: 10px; } }

.l-index-movie.is-active { opacity: 1; pointer-events: auto; }

.l-index-movie.is-disapper { opacity: 0; pointer-events: none; }

.l-main-section { margin-bottom: 55px; }

.l-main-section:last-of-type { margin-bottom: 0; }

@media screen and (max-width: 768px) { .l-main-section { margin-bottom: 40px; } }

.l-main-section-nobutton { margin-bottom: 34px; }

.l-main-section-nobutton:last-of-type { margin-bottom: 0; }

.l-wrap.is-lock { position: fixed; width: 100%; }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .l-wrap { min-width: 1200px; overflow: hidden; } }

@media screen and (max-width: 768px) { .l-blog { padding: 56px 35px 226px 35.7px; } }

.l-blog-main { padding: 63px 0 66px; }

@media screen and (max-width: 768px) { .l-blog-main { padding: 0; margin-bottom: 38.9px; } }

.l-blog-list { padding-bottom: 12px; }

.l-blog-nav { padding-bottom: 100px; }

@media screen and (max-width: 768px) { .l-blog-nav { padding-bottom: 0; } }

.l-single { padding: 100px 0 99px; }

@media screen and (max-width: 768px) { .l-single { padding: 50px 0 100px; } }

@media screen and (max-width: 768px) { .l-news { padding: 56px 35px 226px 35.7px; } }

.l-news-main { padding: 63px 0 66px; }

@media screen and (max-width: 768px) { .l-news-main { padding: 0; margin-bottom: 38.9px; } }

.l-news-list { padding-bottom: 12px; }

.l-news-nav { padding-bottom: 100px; }

@media screen and (max-width: 768px) { .l-news-nav { padding-bottom: 0; } }

.l-whitepaper { padding: 106px 0 100.3px; min-width: 1200px; width: 100%; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-whitepaper { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-whitepaper { min-width: auto; padding: 50px 38px 0 36px; } }

.l-whitepaper-nav { margin-top: 17px; margin-bottom: 9px; }

@media screen and (max-width: 768px) { .l-whitepaper-nav { margin-top: 8px; margin-bottom: 100px; } }

.l-events { padding: 80px 0 116px; }

@media screen and (max-width: 768px) { .l-events { padding: 50px 36px 117px 35px; } }

.l-case { margin-bottom: 110px; }

.l-case-content { margin: 106px auto 78px; max-width: 1196px; }

@media screen and (max-width: 1200px) { .l-case-content { padding: 0; } }

@media screen and (max-width: 768px) { .l-case-content { padding: 0; margin: 50px 0 5px; } }

@media screen and (max-width: 768px) { .l-case-nav { margin-top: 7px; } }

.l-case-single { margin-top: 100px; margin-bottom: 100px; }

@media screen and (max-width: 768px) { .l-case-single { margin-top: 50px; margin-bottom: 100px; } }

.l-inner-top { min-width: 1200px; max-height: 400px; overflow: hidden; }

@media screen and (max-width: 768px) { .l-inner-top { min-width: auto; } }

.l-inner-bottom { min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-inner-bottom { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-inner-bottom { min-width: auto; } }

.l-lower-head { overflow: hidden; min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-lower-head { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-lower-head { min-width: auto; } }

.l-lower-tip { margin: 0 auto 90px; }

@media screen and (max-width: 768px) { .l-lower-tip { margin: 0 10px 50px; } }

.l-lower-tip-wrapper { margin: 0 80px; padding: 43px 0 50px; border-radius: 0 0 10px 10px; background: #fff; box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.16); }

@media screen and (max-width: 768px) { .l-lower-tip-wrapper { padding: 23px 20px; box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); margin: 0; } }

.l-lower-tip-text { font-size: 30px; color: #2c2c2c; text-align: center; line-height: 1.3; letter-spacing: 0; padding-right: 4px; letter-spacing: -0.01em; }

@media screen and (max-width: 768px) { .l-lower-tip-text { font-size: 20px; line-height: 1.2; padding-right: 0; letter-spacing: 0; } }

.l-lower-tip-text span { letter-spacing: 0; font-size: 40px; }

@media screen and (max-width: 768px) { .l-lower-tip-text span { font-size: 20px; } }

.l-lower-tip-secondline { margin: 0 auto 60px; }

.l-lower-tip-secondline .l-lower-tip-wrapper { padding: 36px 0 32px; }

.l-lower-tip-ad { margin-top: -25px; margin-bottom: 40px; position: relative; z-index: 2; }

@media screen and (max-width: 768px) { .l-lower-tip-ad { margin-top: -15px; } }

.l-lower-tip-ad .l-lower-tip-wrapper { border-radius: 10px; padding: 37px 0 33px; }

@media screen and (max-width: 768px) { .l-lower-tip-ad .l-lower-tip-wrapper { padding: 18px 0 19px; } }

.l-lower-tip-ad .l-lower-tip-text { font-size: 28px; letter-spacing: .09em; line-height: 1.5; }

@media screen and (max-width: 768px) { .l-lower-tip-ad .l-lower-tip-text { font-size: 14px; letter-spacing: .08em; } }

.l-lower-tip-ad .l-lower-tip-text span { font-size: 30px; letter-spacing: .09em; }

@media screen and (max-width: 768px) { .l-lower-tip-ad .l-lower-tip-text span { font-size: 14px; letter-spacing: .08em; } }

.l-lower-contact { position: relative; -webkit-transform: translateY(50%); transform: translateY(50%); z-index: 2; }

@media screen and (max-width: 768px) { .l-lower-contact { padding: 0 8px; -webkit-transform: translateY(0); transform: translateY(0); margin: 50px 0 85px; } }

.l-lower-contact .l-container { max-width: 1200px; margin: 0 auto; }

.l-lower-faq { margin: 95px 0 100px; }

@media screen and (max-width: 768px) { .l-lower-faq { margin: 45px 0 50px; } }

.l-lower-faq-title { margin-bottom: 47px; }

.l-lower-faq-inner { padding: 0 123px; }

@media screen and (max-width: 768px) { .l-lower-faq-inner { padding: 0; } }

.l-lower-faq-store { margin: 90px 0 100px; }

@media screen and (max-width: 320px) { .l-lower-faq-store { margin-top: 40px; } }

.l-lower-faq-analytics { margin-top: 46px; }

.l-lower-connect { min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-lower-connect { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-lower-connect { min-width: auto; } }

.l-lower-bottom { min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-lower-bottom { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-lower-bottom { min-width: auto; } }

.l-lower-contact-ad { -webkit-transform: translateY(0); transform: translateY(0); margin-top: 122px; margin-bottom: 77px; }

@media screen and (max-width: 768px) { .l-lower-contact-ad { margin-top: 0; } }

.l-lower-bottom-ad { margin-top: 77px; }

.l-company-about { padding: 100px 0; min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-company-about { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-company-about { padding: 50px 0; min-width: auto; } }

.l-company-location { min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-company-location { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-company-location { min-width: auto; } }

.l-company-history { padding-bottom: 100px; min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .l-company-history { min-width: 100%; } }

@media screen and (max-width: 768px) { .l-company-history { padding-bottom: 50px; min-width: auto; } }

.l-business { padding-top: 100px; max-width: 1440px; margin: auto; padding-bottom: 100px; }

@media screen and (max-width: 768px) { .l-business { padding-top: 50px; padding-bottom: 20px; } }

.l-message-top { max-width: 1461px; margin: 162px auto 100px; padding: 0 15px; }

@media screen and (max-width: 768px) { .l-message-top { margin-top: 62px; margin-bottom: 50px; padding: 0; } }

.l-message-value { counter-reset: core-value-counter; background-color: #fafafa; box-shadow: 0 0 10px rgba(0, 0, 0, 0.1); padding-top: 100px; padding-bottom: 41px; }

@media screen and (max-width: 768px) { .l-message-value { box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16); padding-top: 47px; padding-bottom: 41px; } }

.l-recruit-intro { width: 100%; max-width: 1195px; margin: auto; padding-top: 57px; padding-bottom: 63px; }

.l-recruit-slider { padding-bottom: 127px; }

@media screen and (max-width: 768px) { .l-recruit-slider { padding-bottom: 91px; } }

.l-contact { padding-top: 100px; padding-bottom: 100px; min-width: 1200px; }

@media screen and (max-width: 768px) { .l-contact { min-width: auto; } }

.l-complete-order { padding-top: 93px; padding-bottom: 307px; }

@media screen and (max-width: 768px) { .l-complete-order { padding: 44px 35px 169px; } }

.l-thank-you { padding-top: 93px; padding-bottom: 307px; }

@media screen and (max-width: 768px) { .l-thank-you { padding: 44px 35px 169px; } }

.l-404 { position: relative; width: 100%; text-align: center; min-height: calc(100vh - 425px); display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; }

.l-404-inner { width: 100%; padding: 50px 0; }

.l-404-title { font-size: 30px; letter-spacing: 0.03em; color: #2c2c2c; font-weight: 600; margin-bottom: 23px; }

.l-404-subtitle { font-weight: 600; margin-bottom: 43px; font-size: 16px; letter-spacing: 0.03em; }

.l-404-text { font-size: 16px; margin-bottom: 90px; letter-spacing: 0.03em; line-height: 2.5; }

@media screen and (max-width: 768px) { .l-404-text { padding: 0 20px; line-height: 1.5; } }

.l-404-button { width: 325px; margin: 0 auto; }

@media screen and (max-width: 768px) { .l-404-button { padding: 0 20px; width: 100%; max-width: 365px; } }

.l-page { padding-top: 100px; padding-bottom: 100px; width: 950px; margin: auto; }

@media screen and (max-width: 768px) { .l-page { width: 100%; padding-left: 30px; padding-right: 30px; } }

.l-advertising { margin-top: 94px; padding-top: 84px; padding-bottom: 28px; }

@media screen and (max-width: 768px) { .l-advertising { margin-top: 25px; padding-top: 42px; } }

.hero { width: 100%; position: relative; height: 805px; background: url(../images/top-hero.jpg) no-repeat top center/cover; min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .hero { min-width: 100%; } }

@media screen and (max-width: 768px) { .hero { height: 590px; min-width: auto; background: url(../images/top-hero-sp.jpg) no-repeat 0 0/cover; } }

.hero-inner { position: absolute; top: 49%; -webkit-transform: translateY(-50%); transform: translateY(-50%); left: 78px; width: 560px; }

@media screen and (max-width: 768px) { .hero-inner { top: 43%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 100%; padding: 0 34px; } }

.hero-wrapper { position: relative; width: 100%; height: 100%; }

.hero-title { font-size: 30px; color: #fff; font-weight: 600; letter-spacing: 0.06em; line-height: 1.3; margin-bottom: 13px; }

@media screen and (max-width: 768px) { .hero-title { text-align: center; font-size: 18px; line-height: 1.4; letter-spacing: 0; margin-bottom: 5px; } }

.hero-title:after { display: block; content: ""; width: 100%; height: 2px; background: #fff; margin-top: 13px; }

@media screen and (max-width: 768px) { .hero-title:after { width: 46%; margin: 6px auto 0; } }

.hero-text { display: block; color: #fff; font-size: 16px; letter-spacing: 0; margin-bottom: 30px; font-weight: 600; line-height: 1.7; }

@media screen and (max-width: 768px) { .hero-text { font-size: 12px; line-height: 1.7; margin-bottom: 20px; font-weight: 300; }
  .hero-text br { display: none; } }

.hero-buttons { display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; }

@media screen and (max-width: 768px) { .hero-buttons { display: block; } }

.hero-contact { width: 370px; }

@media screen and (max-width: 768px) { .hero-contact { width: 100%; } }

.hero-apps { display: -ms-flexbox; display: flex; margin-left: 10px; }

@media screen and (max-width: 768px) { .hero-apps { margin-top: 20px; -ms-flex-pack: center; justify-content: center; margin-left: 0; } }

.hero-app { margin-left: 10px; width: 78px; }

@media screen and (max-width: 768px) { .hero-app { width: 58px; margin-left: 0; margin: 0 12px; } }

.main-button { display: block; color: #fff; font-weight: 600; font-size: 16px; padding: 26px 0; text-align: center; border-radius: 3345px; background: #00AEEB; transition: 0.35s ease; }

@media screen and (max-width: 768px) { .main-button { font-size: 15px; padding: 28px 0; } }

.main-button-red { background: linear-gradient(to right, #e60012, #e4007f); }

.main-button-green { background: linear-gradient(to right, #8fc31f, #27ff00); }

.main-button-hero { font-family: "ShinGoPro", sans-serif; font-size: 18px; font-weight: 600; padding: 30px 0; border-radius: 38px; box-shadow: 0px 3px 11px -2px #2c2c2c; }

@media screen and (max-width: 768px) { .main-button-hero { font-size: 14px; padding: 22px 0; } }

.main-button-contact { font-size: 26px; font-family: "ShinGoPro", sans-serif; padding: 26px 0 28px; border-radius: 40px; box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5); letter-spacing: .09em; font-weight: 600; margin-bottom: 42px; }

@media screen and (max-width: 768px) { .main-button-contact { font-size: 18px; padding: 21px 0 21px; letter-spacing: 2px; margin-bottom: 52px; } }

.main-button:hover { opacity: 0.8; }

.sub-button { display: block; position: relative; border-radius: 10px; background: #fff; border: 1px solid #707070; font-size: 16px; font-weight: 600; color: #2c2c2c; text-align: center; transition: 0.35s ease; }

.sub-button:hover { opacity: 0.7; }

.sub-button:hover .sub-button-arrow { right: 16px; }

.sub-button-text { padding: 26px 0; }

.sub-button-arrow { position: absolute; top: 50%; right: 20px; -webkit-transform: translateY(-50%); transform: translateY(-50%); transition: 0.35s ease; }

.tip { background: #fff; text-align: center; padding: 30px 0 40px; border-radius: 10px; box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.5); }

@media screen and (max-width: 768px) { .tip { padding: 37px 0 40px; border-radius: 10px; box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); } }

.tip-wrapper { padding: 0 100px; }

@media screen and (max-width: 768px) { .tip-wrapper { padding: 0 10px; } }

.tip-title { font-size: 30px; color: #2c2c2c; font-weight: normal; line-height: 1.6; }

@media screen and (max-width: 768px) { .tip-title { padding: 0 25px; font-size: 20px; font-weight: 600; line-height: 1.3; } }

.tip-title span { font-size: 40px; }

@media screen and (max-width: 768px) { .tip-title span { display: block; margin-top: 20px; font-size: 30px; } }

.tip-text { font-size: 16px; font-family: "ShinGoPro", sans-serif; color: #2c2c2c; width: 67%; padding-right: 30px; padding-left: 4px; letter-spacing: 0; line-height: 1.9; margin: 15px auto 0; }

@media screen and (max-width: 768px) { .tip-text { width: 100%; margin: 23px 0 0 0; padding: 0 25px; line-height: 1.9; text-align: left; } }

.main-section { -ms-flex-pack: justify; justify-content: space-between; transition: 0.7s ease; }

@media screen and (max-width: 768px) { .main-section { -ms-flex-direction: column-reverse; flex-direction: column-reverse; min-height: auto; } }

.main-section-mask { position: absolute; background: #00afec; }

.main-section-left { position: relative; padding-left: 78px; transition: 0.7s ease; }

@media screen and (max-width: 768px) { .main-section-left { padding-left: 0; margin-top: 20px; } }

.main-section-right { width: 100%; padding-left: 5px; }

@media screen and (max-width: 768px) { .main-section-right { padding-left: 0; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .main-section-right { width: 700px; }
  .main-section-left { width: 700px; } }

.main-section-wrapper { box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }

.main-section-wrapper-noshadow { box-shadow: none; }

.main-section-img { width: 100%; }

.main-section-img-pc { display: block; }

@media screen and (max-width: 768px) { .main-section-img-pc { display: none; } }

.main-section-img-sp { display: none; }

@media screen and (max-width: 768px) { .main-section-img-sp { display: block; } }

.main-section-title { font-size: 30px; color: #2c2c2c; display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; -webkit-transform: translateX(-65px); transform: translateX(-65px); font-weight: 600; line-height: 1.3; }

@media screen and (max-width: 1300px) { .main-section-title { font-size: 27px; } }

@media screen and (max-width: 768px) { .main-section-title { font-size: 18px; -webkit-transform: translateX(-73px); transform: translateX(-73px); width: calc(100% + 73px); }
  .main-section-title .u-hidden-pc { display: none; } }

.main-section-title:before { display: block; content: ''; z-index: -1; width: 110px; height: 90px; opacity: 0.5; background: linear-gradient(#00a2e9, #0027ff); -webkit-transform: translateX(65px); transform: translateX(65px); }

@media screen and (max-width: 768px) { .main-section-title:before { -webkit-transform: translateX(73px); transform: translateX(73px); } }

.main-section-text { font-size: 14px; letter-spacing: 0.03em; line-height: 1.9; margin-top: 23px; }

@media screen and (max-width: 768px) { .main-section-text { font-size: 14px; width: 100%; padding: 0 35px; line-height: 2.2; margin-top: 23px; } }

.main-section-button { width: 370px; margin-top: 50px; }

@media screen and (max-width: 768px) { .main-section-button { position: inherit; width: 100%; padding: 0 7px; margin-top: 37px; } }

.main-section-reverse { -ms-flex-direction: row-reverse; flex-direction: row-reverse; }

@media screen and (max-width: 768px) { .main-section-reverse { -ms-flex-direction: column-reverse; flex-direction: column-reverse; } }

.main-section-reverse .main-section-left { padding-left: 80px; padding-right: 0; }

@media screen and (max-width: 768px) { .main-section-reverse .main-section-left { padding-left: 0; } }

.main-section-reverse .main-section-right { margin-left: 4px; }

@media screen and (max-width: 768px) { .main-section-reverse .main-section-right { margin-left: 0; } }

.main-section-reverse .main-section-button { right: 80px; }

@media screen and (max-width: 768px) { .main-section-reverse .main-section-button { right: 0; } }

@media screen and (max-width: 768px) { .main-section-reverse .main-section-title { width: calc(100% + 73px); } }

.main-section-red .main-section-left { padding-left: 5px; }

.main-section-red .main-section-text { padding-right: 80px; }

@media screen and (max-width: 768px) { .main-section-red .main-section-text { padding-right: 35px; } }

.main-section-red .main-section-title:before { background: linear-gradient(#e4007f, #e60012); }

.main-section-green .main-section-title:before { background: linear-gradient(#8fc31f, #27ff00); padding-left: 110px; }

.main-section-ad .main-section-title { font-weight: normal; letter-spacing: .08em; margin-bottom: 25px; }

@media screen and (max-width: 768px) { .main-section-ad .main-section-title { font-size: 25px; letter-spacing: .06em; } }

.main-section-ad .main-section-text { letter-spacing: .08em; line-height: 1.875; margin: 0 0 10px; }

@media screen and (min-width: 1440px) { .main-section-ad .main-section-text { font-size: 16px; } }

@media screen and (min-width: 1201px) and (max-width: 1439px) { .main-section-ad .main-section-text { font-size: 1.2vw; } }

@media screen and (max-width: 768px) { .main-section-ad .main-section-text br { display: none; } }

.main-section-ad .main-section-text-ad { font-size: 12px; margin-top: 15px; }

@media screen and (max-width: 768px) { .main-section-ad .main-section-text-ad { font-size: 10px; margin-top: 12px; line-height: 1.7; } }

.main-section-ad .main-section-wrapper svg { max-width: 100%; height: auto; padding-left: 54px; }

@media screen and (max-width: 768px) { .main-section-ad .main-section-wrapper svg { padding-left: 0; } }

.main-section-ad .main-section-wrapper .svg-footer { font-size: 10px; font-family: "ShinGoPro", sans-serif; }

.main-section-animation .main-section-left { opacity: 0; -webkit-transform: translateY(10%); transform: translateY(10%); }

.main-section-animation .main-section-left.is-active { opacity: 1; -webkit-transform: translateX(0); transform: translateX(0); }

.main-section-animation .main-section-wrapper { opacity: 0; }

.main-section-animation .main-section-wrapper.is-active { opacity: 1; }

@media screen and (max-width: 768px) { .main-section-withbutton { min-height: auto; } }

.main-section-index-ad .main-section-left { padding-left: 5px; }

.main-section-index-ad .main-section-text { padding-right: 80px; }

@media screen and (max-width: 768px) { .main-section-index-ad .main-section-text { padding-right: 35px; } }

@media screen and (max-width: 768px) { .main-section-wrapper-ad-article-2 { padding: 0 23px; } }

.index-contact { width: 1185px; margin: 0 auto; }

@media screen and (max-width: 768px) { .index-contact { width: auto; } }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .lower-contact { padding: 0 7.5px; } }

@media screen and (max-width: 768px) { .lower-contact { width: auto; } }

.contact-box { display: -ms-flexbox; display: flex; -ms-flex-pack: end; justify-content: flex-end; padding: 64px 0; background: linear-gradient(#00afec, #0068e2); box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.16); border-radius: 10px; -ms-flex-align: center; align-items: center; max-width: 1185px; margin: 0 auto; }

@media screen and (max-width: 768px) { .contact-box { -ms-flex-pack: center; justify-content: center; padding: 50px 25px; display: block; } }

.contact-box-text { border-bottom: solid 2px #fff; border-top: solid 2px #fff; font-size: 29px; font-weight: 600; color: #fff; line-height: 1; padding: 28px 0; margin-right: 74px; }

@media screen and (max-width: 768px) { .contact-box-text { font-size: 18px; margin-right: 0; text-align: center; padding: 18px 0; } }

.contact-box-button { display: block; background: #fff; border-radius: 12px; padding: 28px 58px; margin-right: 128px; }

@media screen and (max-width: 768px) { .contact-box-button { padding: 18px 0; margin-top: 20px; margin-right: 0; } }

.contact-box-inner { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; height: 100%; }

@media screen and (max-width: 768px) { .contact-box-inner { -ms-flex-pack: center; justify-content: center; } }

.contact-box-icon { width: 48px; margin-right: 13px; }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .contact-box-icon { height: 31px; } }

.contact-box-subtext { display: block; font-size: 16px; font-weight: 600; color: #100e0e; }

@media screen and (max-width: 768px) { .contact-box-subtext { font-size: 16px; } }

.contact-box-subtext span { display: block; font-size: 12px; font-weight: normal; line-height: 1.4; margin-top: 3px; }

@media screen and (max-width: 768px) { .contact-box-subtext span { font-size: 10px; } }

.contact-box-secondline { padding: 64px 118px; }

@media screen and (max-width: 768px) { .contact-box-secondline { padding: 42px 25px; } }

.contact-box-secondline .contact-box-text { font-size: 25px; padding: 15px 0; line-height: 1.2; margin-right: 70px; }

@media screen and (max-width: 768px) { .contact-box-secondline .contact-box-text { font-size: 15px; padding: 18px 0; margin: 0 auto; } }

@media screen and (max-width: 320px) { .contact-box-secondline .contact-box-text { margin-right: 0; font-size: 12px; } }

.contact-box-secondline .contact-box-button { margin-right: 5px; }

.contact-box-bigtext .contact-box-text { font-size: 32px; -ms-flex: 1 1 auto; flex: 1 1 auto; max-width: 545px; text-align: center; }

@media screen and (max-width: 768px) { .contact-box-bigtext .contact-box-text { font-size: 20px; } }

.main-title { font-family: "ShinGoPro", sans-serif; font-size: 30px; font-weight: 800; color: #3c3c3c; text-align: center; line-height: 1.3; }

@media screen and (max-width: 768px) { .main-title { line-height: 1.3; } }

.main-title:after { display: block; content: ""; margin: 15px auto 0; width: 100px; height: 5px; background: #3c3c3c; }

.main-title-white { color: #fff; }

.main-title-white:after { background: #fff; }

.main-title-thin { font-family: "ShinGoPro", sans-serif; }

.main-title-news { text-align: left; }

.main-title-news:after { width: 125px; border-radius: 2px; }

@media screen and (max-width: 768px) { .main-title-news:after { width: 110px; } }

@media screen and (max-width: 768px) { .main-title-news { text-align: center; } }

.intro-companies-top { margin: 0 auto; opacity: 0; -webkit-transform: translateY(10%); transform: translateY(10%); }

@media screen and (max-width: 768px) { .intro-companies-top { padding: 0 35px; margin: 48px auto 0; } }

.intro-companies-top img { display: block; margin: 0 auto; width: 100%; }

.intro-companies-top.is-active { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }

.intro-companies-bottom { margin-top: 50px; min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .intro-companies-bottom { min-width: auto; } }

@media screen and (max-width: 768px) { .intro-companies-bottom { min-width: auto; margin-top: 30px; } }

.intro-companies-item { display: block; -webkit-text-size-adjust: 100%; padding-left: 40px; padding-right: 40px; }

@media screen and (max-width: 768px) { .intro-companies-item { width: 600px !important; max-width: 100%; padding-left: 10px; padding-right: 10px; } }

@media screen and (min-width: 568px) and (max-width: 767px) { .intro-companies-item { width: 100% !important; } }

@media screen and (max-width: 425px) { .intro-companies-item { width: 100% !important; } }

.intro-companies-link { display: block; outline: none; }

.intro-companies-card { margin: 0 auto; color: #6f7579; box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); width: 700px; }

@media screen and (max-width: 768px) { .intro-companies-card { width: auto; } }

.intro-companies-img { height: 345px; width: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; }

@media screen and (min-width: 568px) and (max-width: 767px) { .intro-companies-img { height: 194px; } }

@media screen and (max-width: 567px) { .intro-companies-img { height: 94px; } }

.intro-companies-inner { padding: 24px 23px 27px; }

@media screen and (max-width: 768px) { .intro-companies-inner { padding: 6px 5px 13px; } }

.intro-companies-title { font-size: 25px; font-weight: 300; }

@media screen and (max-width: 767px) { .intro-companies-title { font-size: 7px; } }

@media screen and (max-width: 320px) { .intro-companies-title { font-weight: bold; } }

.intro-companies-name { font-weight: bold; font-size: 35px; margin-top: 23px; }

@media screen and (max-width: 767px) { .intro-companies-name { font-size: 7px; margin-top: 10px; } }

@media screen and (max-width: 768px) { .intro-companies-name { font-weight: bold; } }

.intro-companies-position { font-family: "ShinGoPro", sans-serif; font-size: 20px; margin-top: 19px; }

@media screen and (max-width: 767px) { .intro-companies-position { font-size: 2px; margin-top: 5px; } }

@media screen and (max-width: 768px) { .intro-companies-position { display: none; } }

.intro-companies-dots { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; font-size: 0; margin-top: 30px; }

@media screen and (max-width: 768px) { .intro-companies-dots { margin-top: 15px; } }

.intro-companies-dots li { width: 21px; height: 21px; border-radius: 50%; margin: 0 12px; background: #33439b; cursor: pointer; opacity: 0.26; }

@media screen and (max-width: 768px) { .intro-companies-dots li { width: 15px; height: 15px; margin: 0 8px; } }

.intro-companies-dots li:hover { opacity: 0.5; }

.intro-companies-dots .slick-active { opacity: 1; cursor: auto; }

.intro-companies-dots .slick-active:hover { opacity: 1; }

.intro-companies-button { width: 325px; margin: 50px auto 0; }

@media screen and (max-width: 768px) { .intro-companies-button { width: 100%; padding: 0 35px; margin: 50px 0 0; } }

.strength-box { width: 100%; position: relative; padding: 95px 0; min-width: 1200px; background: url(../images/index/strength-bg.jpg) no-repeat top center/cover; min-height: 1225px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .strength-box { min-width: auto; } }

@media screen and (max-width: 768px) { .strength-box { min-width: auto; padding: 50px 0 0; } }

@media screen and (max-width: 768px) { .strength-box:before { display: block; content: ""; position: absolute; top: 0; right: 0; bottom: 0; left: 0; background: rgba(0, 0, 0, 0.6); } }

.strength-box-title { margin-bottom: 50px; position: relative; }

@media screen and (max-width: 768px) { .strength-box-title { margin-bottom: 50px; } }

.strength-box-list { position: relative; margin: 0 auto; }

@media screen and (max-width: 768px) { .strength-box-list { width: 100%; display: block; padding: 0 35px; } }

.strength-box-item { position: absolute; color: #fff; font-size: 20px; width: 500px; height: 500px; background: rgba(0, 0, 0, 0.6); border-radius: 50%; padding: 70px 130px; transition: 0.7s ease; opacity: 0; -webkit-transform: translateY(5%); transform: translateY(5%); }

@media screen and (max-width: 768px) { .strength-box-item { width: 100%; height: auto; background: transparent; font-size: 14px; margin-bottom: 50px; border-radius: 0; padding: 0; position: inherit; } }

.strength-box-item:nth-of-type(1) { top: 380px; padding: 40px 100px; }

@media screen and (max-width: 768px) { .strength-box-item:nth-of-type(1) { left: 0; top: 0; padding: 0 6px; } }

.strength-box-item:nth-of-type(2) { top: 0; left: 50%; padding: 50px 100px; -webkit-transform: translate(-50%, 5%); transform: translate(-50%, 5%); }

@media screen and (max-width: 768px) { .strength-box-item:nth-of-type(2) { left: 0; -webkit-transform: translate(0, 5%); transform: translate(0, 5%); padding: 0 6px; } }

.strength-box-item:nth-of-type(3) { right: 0; top: 378px; padding: 60px 100px; }

@media screen and (max-width: 768px) { .strength-box-item:nth-of-type(3) { left: 0; top: 0; padding: 0 6px; } }

.strength-box-item.is-active { opacity: 1; -webkit-transform: translateY(0); transform: translateY(0); }

.strength-box-item.is-active:nth-of-type(2) { -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }

@media screen and (max-width: 768px) { .strength-box-item.is-active:nth-of-type(2) { -webkit-transform: translate(0); transform: translate(0); } }

.strength-box-icon { display: block; width: 71%; margin: 0 auto; }

@media screen and (max-width: 768px) { .strength-box-icon { width: 70%; } }

.strength-box-head { font-weight: 600; text-align: center; border-bottom: solid 3px #fff; padding: 20px 0; letter-spacing: 0.07em; }

@media screen and (max-width: 768px) { .strength-box-head { font-size: 20px; padding: 18px 0; } }

.strength-box-text { margin-top: 40px; font-weight: 300; letter-spacing: 0.02em; line-height: 2.2; font-size: 16px; }

@media screen and (max-width: 768px) { .strength-box-text { font-size: 14px; margin-top: 20px; } }

.document-box { background: linear-gradient(#00afec, #0068e2); display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; opacity: 0; }

@media screen and (max-width: 768px) { .document-box { background: linear-gradient(#00bfed, #00a8e2); } }

.document-box.is-active { opacity: 1; }

.document-box-mask { position: absolute; background: #00afec; }

.document-box-img { height: 408px; overflow: hidden; }

.document-box-img img { margin-left: -170px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .document-box-img img { margin-left: -230px; } }

.document-box-right { margin-left: 45px; margin-bottom: 10px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .document-box-right { padding-right: 15px; } }

@media screen and (max-width: 768px) { .document-box-right { width: 100%; padding: 40px 15px 48px; margin: 0 auto; } }

@media screen and (max-width: 320px) { .document-box-right { margin-right: 0; } }

.document-box-text { font-weight: 600; font-size: 30px; color: #fff; text-align: center; line-height: 1.5; margin-bottom: 30px; }

@media screen and (max-width: 768px) { .document-box-text { font-size: 22px; letter-spacing: -0.01em; margin-bottom: 26px; } }

@media screen and (max-width: 768px) { .document-box-text { font-size: 18px; } }

@media screen and (max-width: 320px) { .document-box-text { margin-right: 0; } }

.document-box-icon { width: 21px; margin-right: 14px; }

@media screen and (max-width: 768px) { .document-box-icon { width: 19px; margin-right: 10px; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .document-box-icon { height: 32px; } }

.document-box-button { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: end; align-items: flex-end; font-weight: 600; font-size: 30px; color: #2c2c2c; background: #fff; padding: 32px 0; width: 570px; border-radius: 10px; box-shadow: 0px 6px 6px rgba(0, 0, 0, 0.5); }

@media screen and (max-width: 768px) { .document-box-button { width: 100%; font-size: 25px; padding: 20px 0; border-radius: 5px; } }

@media screen and (max-width: 320px) { .document-box-button p { font-size: 21px; } }

.news-section { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; padding: 0 80px; }

@media screen and (max-width: 768px) { .news-section { -ms-flex-direction: column; flex-direction: column; padding: 0; } }

.news-section-center { width: 75%; margin: auto; }

@media screen and (max-width: 768px) { .news-section-center { width: 100%; } }

.news-section-right { width: 45%; }

@media screen and (max-width: 768px) { .news-section-right { width: 100%; } }

.news-section-left { width: 45%; }

@media screen and (max-width: 768px) { .news-section-left { width: 100%; margin-bottom: 45px; } }

.news-section-title { margin-bottom: 80px; display: inline-block; }

@media screen and (max-width: 768px) { .news-section-title { margin-bottom: 48px; display: block; text-align: center; } }

.news-section-title-center { display: block; }

.news-section-list { margin: 0 auto; }

.news-section-item { margin-top: 50px; -webkit-transform: translateY(10%); transform: translateY(10%); opacity: 0; transition: 0.7s ease; }

.news-section-item:nth-of-type(1) { margin-top: 0; }

.news-section-item.is-active { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; }

.news-section-head { font-size: 16px; font-weight: 600; margin-bottom: 5px; line-height: 1.6; }

.news-section-text { font-size: 16px; line-height: 1.5; }

.news-section-date { display: -ms-flexbox; display: flex; -ms-flex-align: center; align-items: center; font-size: 13px; font-family: "Helvetica", "Arial", sans-serif; font-style: italic; color: #a6adb4; margin-top: 10px; }

.news-section-icon { margin-right: 10px; }

.news-section-button { width: 325px; margin: 50px auto 0; }

@media screen and (max-width: 768px) { .news-section-button { width: 100%; margin: 18px auto 0; } }

.contact-section { width: 100%; max-width: 1752px; padding: 0 15px; height: 100%; margin: 0 auto 76px; position: relative; overflow: hidden; }

@media screen and (max-width: 768px) { .contact-section { overflow: hidden; margin-bottom: 34px; } }

.contact-section .contact-section-bg { border-radius: 10px; background: transparent none no-repeat bottom right / cover scroll; min-height: 370px; }

@media screen and (max-width: 768px) { .contact-section .contact-section-bg { min-height: 290px; } }

.contact-section .contact-section-img { width: 100%; }

@media screen and (max-width: 768px) { .contact-section .contact-section-img { height: 100%; width: auto; -webkit-transform: translateX(-52%); transform: translateX(-52%); } }

@media screen and (min-width: 1880px) { .contact-section .contact-section-img { width: 100%; } }

.contact-section .contact-section-inner { position: absolute; top: 0; left: 15px; right: 15px; bottom: 0; display: -ms-flexbox; display: flex; -ms-flex-pack: end; justify-content: flex-end; -ms-flex-align: center; align-items: center; -ms-flex-direction: column-reverse; flex-direction: column-reverse; }

@media screen and (max-width: 768px) { .contact-section .contact-section-inner { padding: 37px 10px 0; -ms-flex-pack: end; justify-content: flex-end; } }

@media screen and (max-width: 768px) { .contact-section .contact-section-left { padding: 0 35px; margin-bottom: 30px; } }

@media screen and (max-width: 320px) { .contact-section .contact-section-left { padding: 0; } }

.contact-section .contact-section-right { width: 570px; padding-top: 81px; }

@media screen and (max-width: 768px) { .contact-section .contact-section-right { width: 100%; max-width: 290px; padding: 0 14px; } }

.contact-section .contact-section-wrapper { text-align: center; }

@media screen and (max-width: 768px) { .contact-section .contact-section-wrapper { -ms-flex-pack: center; justify-content: center; -ms-flex-align: start; align-items: flex-start; margin-bottom: 0; margin-left: 0; } }

.contact-section .contact-section-info { color: #fff; }

.contact-section .contact-section-head { font-size: 16px; font-family: "ShinGoPro", sans-serif; text-align: center; letter-spacing: 0.11em; text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5); font-weight: 600; }

@media screen and (max-width: 768px) { .contact-section .contact-section-head { font-size: 14px; } }

.contact-section .contact-section-icon { width: 63px; }

.contact-section .contact-section-icon svg { fill: #fff; width: 100%; }

@media screen and (max-width: 768px) { .contact-section .contact-section-icon { width: 53px; height: 50px; margin-left: 10px; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .contact-section .contact-section-icon { height: 66px; } }

.contact-section .contact-section-number { font-size: 28px; font-family: "AvenirNext", sans-serif; letter-spacing: 0.115em; margin-top: 9px; text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5); color: #fff; font-weight: 600; background: transparent url(../images/svg/phone-icon.svg) no-repeat 0 -3px scroll; display: inline-block; padding-left: 44px; margin-left: -20px; }

@media screen and (max-width: 768px) { .contact-section .contact-section-number { margin-bottom: 18px; letter-spacing: .09em; font-size: 24px; padding-left: 42px; margin-top: 15px; margin-left: -10px; background-position: 0px -6px; } }

.contact-section .contact-section-number a { color: #fff; }

.contact-section .contact-section-text { font-size: 12px; color: #fff; text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5); letter-spacing: .09em; margin-top: 22px; }

@media screen and (max-width: 768px) { .contact-section .contact-section-text { font-size: 10px; line-height: 1.6; margin-top: 3px; }
  .contact-section .contact-section-text .u-hidden-pc { display: none; } }

.contact-section-noneimg { width: 100%; height: 100%; position: relative; overflow: hidden; }

@media screen and (max-width: 768px) { .contact-section-noneimg { overflow: hidden; } }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-img { height: 100%; width: auto; -webkit-transform: translateX(-52%); transform: translateX(-52%); } }

@media screen and (min-width: 1880px) { .contact-section-noneimg .contact-section-img { width: 100%; } }

.contact-section-noneimg .contact-section-inner { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 1185px; display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; margin: 0 auto; }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-inner { display: block; width: 100%; padding: 0; } }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-left { padding: 0 35px; margin-bottom: 30px; } }

@media screen and (max-width: 320px) { .contact-section-noneimg .contact-section-left { padding: 0; } }

.contact-section-noneimg .contact-section-right { width: 570px; }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-right { width: 100%; padding: 0 14px; } }

.contact-section-noneimg .contact-section-wrapper { display: -ms-flexbox; display: flex; margin-left: 62px; }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-wrapper { -ms-flex-pack: center; justify-content: center; -ms-flex-align: start; align-items: flex-start; margin-bottom: 0; margin-left: 0; } }

.contact-section-noneimg .contact-section-info { margin-left: 10px; color: #fff; }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-info { margin-left: 15px; margin-top: 5px; } }

.contact-section-noneimg .contact-section-head { font-size: 16px; font-family: "ShinGoPro", sans-serif; text-align: center; letter-spacing: 0.11em; text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5); font-weight: 600; }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-head { font-size: 12px; text-align: left; } }

.contact-section-noneimg .contact-section-icon { width: 63px; }

.contact-section-noneimg .contact-section-icon svg { fill: #fff; width: 100%; }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-icon { width: 53px; height: 50px; margin-left: 10px; } }

@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) { .contact-section-noneimg .contact-section-icon { height: 66px; } }

.contact-section-noneimg .contact-section-number { font-size: 28px; font-family: "ShinGoPro", sans-serif; letter-spacing: 0.12em; margin-top: 10px; text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5); color: #fff; font-weight: bold; }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-number { font-size: 20px; margin-top: 8px; } }

.contact-section-noneimg .contact-section-number a { color: #fff; }

.contact-section-noneimg .contact-section-text { font-size: 14px; font-weight: 600; color: #fff; text-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5); letter-spacing: 0; }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-text { font-size: 12px; text-align: center; line-height: 1.6; margin-top: 3px; } }

.contact-section-noneimg .contact-section-img { display: none; }

.contact-section-noneimg .contact-section-info { color: #2c2c2c; }

.contact-section-noneimg .contact-section-text { color: #808080; }

.contact-section-noneimg .contact-section-inner { position: inherit; -webkit-transform: translate(0); transform: translate(0); top: 0; left: 0; padding: 98px 0; }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-inner { padding: 50px 0; } }

@media screen and (max-width: 768px) { .contact-section-noneimg .contact-section-icon { margin-left: 17px; } }

.contact-section-noneimg .contact-section-icon svg { fill: #000; }

.contact-section-noneimg .contact-section-head { text-shadow: none; }

.contact-section-noneimg .contact-section-number { color: #2c2c2c; text-shadow: none; }

.contact-section-noneimg .contact-section-number a { color: #2c2c2c; text-shadow: none; }

.contact-section-noneimg .contact-section-text { text-shadow: none; }

.connect-section { background: #00afec; padding: 70px 0; }

@media screen and (max-width: 768px) { .connect-section { padding: 45px 0 40px; } }

.connect-section-title { margin-bottom: 50px; }

@media screen and (max-width: 768px) { .connect-section-title { margin-bottom: 50px; padding: 0 30px; } }

.connect-section-bottom { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; padding: 0 75px; }

@media screen and (max-width: 768px) { .connect-section-bottom { padding: 0; -ms-flex-direction: column; flex-direction: column; } }

.connect-section-link { display: block; position: relative; width: 48.3%; }

@media screen and (max-width: 768px) { .connect-section-link { margin-bottom: 10px; width: 100%; } }

.connect-section-wrapper { width: 100%; height: 100%; position: absolute; padding: 29px 25px; background: rgba(0, 0, 0, 0.44); }

@media screen and (max-width: 768px) { .connect-section-wrapper { padding: 16px 15px; } }

.connect-section-wrapper:after { display: block; content: ""; width: 100%; height: 100%; border: solid 1px #fff; }

.connect-section-img { width: 100%; }

.connect-section-text { position: absolute; top: 49%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); text-align: center; }

.connect-section-en { display: inline-block; font-size: 14px; color: #fff; font-weight: 600; }

.connect-section-en:after { display: block; content: ""; width: 100px; height: 1px; background: #fff; margin: 10px auto 0; }

@media screen and (max-width: 768px) { .connect-section-en:after { width: 61px; margin: 5px auto 0; } }

@media screen and (max-width: 768px) { .connect-section-en { font-size: 8px; } }

.connect-section-jp { font-size: 25px; color: #fff; font-weight: 600; margin-top: 10px; }

@media screen and (max-width: 768px) { .connect-section-jp { font-size: 14px; margin-top: 5px; } }

.hamburger { display: block; position: relative; width: 22px; height: 17px; }

.hamburger-item { position: absolute; left: 0; width: 100%; height: 3px; background-color: #2c2c2c; border-radius: 1.5px; -webkit-transform: rotate(0deg); transform: rotate(0deg); transition: 0.5s ease; }

.hamburger-item:nth-of-type(1) { top: 0; transition: 0.5s ease; }

.hamburger-item:nth-of-type(2) { top: 8px; transition: 0.5s ease; }

.hamburger-item:last-of-type { top: 16px; transition: 0.5s ease; }

.hamburger.is-active .hamburger-item { background-color: #fff; }

.hamburger.is-active .hamburger-item:nth-child(1) { -webkit-transform: rotate(135deg); transform: rotate(135deg); top: 9px; }

.hamburger.is-active .hamburger-item:nth-child(2) { opacity: 0; left: -30px; }

.hamburger.is-active .hamburger-item:nth-child(3) { -webkit-transform: rotate(-135deg); transform: rotate(-135deg); top: 9px; }

.menu { overflow: scroll; background: #000; width: 100%; height: 100%; padding: 75px 30px 60px 35px; }

@media screen and (max-width: 320px) { .menu { padding-bottom: 120px; } }

.menu-item { margin-bottom: 20px; }

.menu-top { display: -ms-flexbox; display: flex; margin-bottom: 15px; -ms-flex-align: center; align-items: center; }

.menu-top svg { fill: #fff; }

.menu-icon { padding-right: 10px; }

.menu-line { display: block; background: #fff; width: 100%; height: 1px; -ms-flex-negative: 10000; flex-shrink: 10000; }

.menu-title { padding-right: 20px; font-size: 16px; color: #fff; font-weight: 600; }

.menu-subtitle { margin-bottom: 15px; font-size: 16px; color: #fff; font-weight: 600; }

.menu-lower { display: block; position: relative; margin-bottom: 15px; padding-left: 10px; font-size: 16px; color: #fff; }

.menu-lower:before { content: ""; display: block; position: absolute; top: 50%; left: 0; background: #fff; width: 5px; height: 1px; }

.menu-link { color: #fff; }

.menu-button { display: block; text-align: center; border-radius: 10px; background: #fff; width: 100%; margin-top: 30px; padding: 25px 0; font-size: 16px; color: #000; font-weight: 600; }

.menu-inner { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; }

.menu-inner span { width: 20px; margin-right: 10px; }

.nav-list { display: -ms-flexbox; display: flex; }

.nav-item { margin-top: 2px; margin-right: 20px; }

.nav-item:hover > .nav-sub { visibility: visible; z-index: 1; opacity: 1; -webkit-transform: translateY(0%); transform: translateY(0%); transition-delay: 0s, 0s, 0.3s; }

.nav-item:hover > .nav-link .nav-caret { -webkit-transform: rotate(90deg); transform: rotate(90deg); }

.nav-link { font-size: 14px; color: #7f7f7f; letter-spacing: 1px; transition: 0.35s ease; }

@media screen and (min-width: 768px) and (max-width: 1439px) { .nav-link { font-size: 12px; letter-spacing: 0; } }

.nav-link:hover { opacity: 0.5; }

.l-header-right .nav-link { font-size: 14px; font-weight: bold; }

@media screen and (min-width: 768px) and (max-width: 1439px) { .l-header-right .nav-link { font-size: 12px; } }

.nav-login .nav-link { display: inline-block; text-align: center; border-radius: 4px; box-shadow: 0 3px 12px rgba(0, 0, 0, 0.1); width: 120px; height: 40px; padding-top: 13px; color: #00afec; }

@media screen and (min-width: 768px) and (max-width: 1439px) { .nav-login .nav-link { font-size: 12px; } }

.nav-sub { visibility: hidden; position: absolute; margin-left: -40px; padding-top: 11px; z-index: -1; opacity: 0; -webkit-transform: translateY(-2em); transform: translateY(-2em); transition: all 0.3s ease-in-out 0s, visibility 0s linear 0.3s, z-index 0s linear 0.01s; }

.nav-sub-list { box-shadow: 0 2px 12px rgba(0, 0, 0, 0.1); }

.nav-sub-item { background-color: #fff; }

.nav-sub-item:not(:last-child) { border-bottom: 1px solid #E5E5E5; }

.nav-sub-link { display: block; text-align: center; height: 47px; padding-right: 12px; padding-left: 12px; color: #7f7f7f; letter-spacing: 1px; line-height: 48px; }

.nav-sub-link:hover { background-color: #fff; color: #00afec; }

.nav-caret { display: inline-block; float: right; background: transparent url(../images/svg/top-caret-right.svg) no-repeat center center scroll; width: 14px; height: 14px; margin-left: 6px; transition: .3s ease; }

.nav-contact { margin-left: 3px; }

.nav-button { display: block; border-radius: 4px; background: #00afec; padding: 13px 16px 13px 15px; font-size: 14px; color: #fff; font-weight: bold; letter-spacing: .9px; transition: 0.35s ease; }

@media screen and (min-width: 768px) and (max-width: 1439px) { .nav-button { font-size: 12px; letter-spacing: 0; } }

.nav-button:hover { opacity: 0.5; }

.nav-login { margin-left: 22px; }

.nav-login:hover .nav-sub { visibility: visible; z-index: 1; opacity: 1; -webkit-transform: translateY(0%); transform: translateY(0%); transition-delay: 0s, 0s, 0.3s; }

.footer-inner { width: 100%; max-width: 1440px; margin: 0 auto; padding: 0 15px; }

@media screen and (max-width: 768px) { .footer-inner { width: 100%; padding: 0 35px; } }

.footer-top-wrapper { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 768px) { .footer-top-wrapper { display: block; } }

@media screen and (max-width: 768px) { .footer-left { margin-bottom: 34px; } }

.footer-list { display: -ms-flexbox; display: flex; }

@media screen and (max-width: 768px) { .footer-list { display: block; } }

.footer-item { width: 160px; }

@media screen and (max-width: 768px) { .footer-item { width: 100%; margin-top: 37px; }
  .footer-item:nth-of-type(1) { margin-top: 0; } }

.footer-item:first-child { width: 201px; }

@media screen and (max-width: 1250px) { .footer-item:first-child { width: 170px; } }

.footer-item:first-child { width: 201px; }

@media screen and (max-width: 1340px) { .footer-item:first-child { width: 170px; } }

.footer-item-omotenashi { width: 108px; margin-left: 99px; -ms-flex: 0 0 auto; flex: 0 0 auto; }

@media screen and (max-width: 1340px) { .footer-item-omotenashi { margin-left: 0; } }

.footer-item-omotenashi img { max-width: 100%; }

.footer-nav-title { font-size: 16px; color: #fff; font-weight: 600; }

.footer-nav-description { margin-top: 12px; font-size: 12px; }

.footer-nav-description:nth-of-type(1) { margin-top: 17px; }

a.footer-link { display: block; -webkit-tap-highlight-color: transparent; color: #fff; }

a.footer-link:hover, a.footer-link:active, a.footer-link:focus { background: transparent; outline: none; }

.footer-titlelink { display: block; margin-top: 33px; color: #fff; }

@media screen and (max-width: 768px) { .footer-titlelink { margin-bottom: 20px; } }

.footer-isolatedlink { display: block; margin-top: 38px; font-size: 16px; font-weight: bold; color: #fff; }

.footer-button-link { display: block; text-align: center; border: solid 1px #fff; border-radius: 10px; width: 300px; margin-bottom: 20px; padding: 22px 0 23px; font-size: 18px; color: #fff; font-weight: bold; letter-spacing: .08em; }

@media screen and (min-width: 768px) and (max-width: 1439px) { .footer-button-link { width: 230px; } }

@media screen and (max-width: 768px) { .footer-button-link { width: 100%; } }

.footer-button-link:last-of-type { margin-bottom: 0; }

.footer-button-link svg { fill: #fff; }

.footer-button { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; }

.footer-button:before { content: ''; display: block; background: transparent url("../images/svg/mail-icon.svg") no-repeat 0 0 scroll; width: 27px; height: 16px; margin-right: 10px; }

.footer-logout-link { display: block; text-align: center; border-radius: 10px; background: #fff; width: 300px; margin-bottom: 21px; padding: 22px 0 23px; font-size: 18px; color: #000; font-weight: 600; letter-spacing: .03em; }

@media screen and (max-width: 768px) { .footer-logout-link { width: 100%; } }

.footer-logout-link:last-of-type { margin-bottom: 0; }

.footer-logout-link svg { fill: #fff; }

.footer-logout { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-align: center; align-items: center; }

.footer-logout:before { content: ''; display: block; background: transparent url("../images/svg/logout-icon.svg") no-repeat 0 0 scroll; width: 27px; height: 20px; margin-right: 10px; }

.footer-copyright a { display: block; text-align: right; margin-bottom: 10px; color: #fff; line-height: 1; }

.footer-copyright p { display: block; line-height: 1; }

@media screen and (max-width: 768px) { .footer-copyright p { letter-spacing: .04em; } }

.search { position: relative; }

.search-form { padding: 15px 20px; border: 1px solid #fff; color: #fff; font-size: 12px; width: 100%; outline: none; }

.search-form::-webkit-input-placeholder { color: #fff; }

.search-form::placeholder { color: #fff; }

.search-icon { position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); right: 12px; outline: none; }

.header-banner { position: relative; min-height: 399px; background: transparent none no-repeat center center / cover scroll; }

@media screen and (max-width: 768px) { .header-banner { min-height: 150px; } }

.header-banner-img { height: 100%; width: 100%; }

@media screen and (max-width: 768px) { .header-banner-img { width: 100%; } }

.header-banner-inner { position: absolute; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 100%; margin-top: -2px; }

@media screen and (max-width: 768px) { .header-banner-inner { margin-top: 0px; } }

.header-banner-title { font-size: 50px; font-family: "ShinGoPro", sans-serif; color: #fff; text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.5); letter-spacing: 3px; text-align: center; font-weight: bold; }

@media screen and (max-width: 768px) { .header-banner-title { font-size: 16px; margin-bottom: 0; margin-left: auto; letter-spacing: .04em; } }

.header-banner-text { font-size: 16px; line-height: 1.9; font-family: "ShinGoPro", sans-serif; color: #fff; letter-spacing: 0.03em; position: relative; top: 14px; left: 1px; text-align: center; font-weight: bold; width: 435px; margin: 0 auto; }

.inner-head { position: relative; }

.inner-head-img { width: 100%; }

.inner-head-content { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); text-align: center; }

.inner-head-title { font-size: 50px; font-family: "ShinGoPro", sans-serif; color: #fff; text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.5); letter-spacing: 0.01em; margin-bottom: 15px; margin-left: -10px; }

@media screen and (max-width: 768px) { .inner-head-title { font-size: 16px; margin-bottom: 0; } }

.inner-head-text { font-size: 16px; line-height: 1.9; font-family: "ShinGoPro", sans-serif; color: #fff; letter-spacing: 0.02em; }

.sub-nav { background-color: #2c2c2c; color: #fff; min-width: 1200px; }

.sub-nav-list { text-align: center; padding: 20px 0; }

.sub-nav-list-item { display: inline-block; font-family: "ShinGoPro", sans-serif; font-size: 18px; padding: 0 45px; }

.sub-nav-list-item:not(:last-child) { border-right: 1px solid #fff; }

.sub-nav-list-link { color: #fff; }

.blog-main { width: 1196px; margin: auto; }

@media screen and (max-width: 768px) { .blog-main { width: auto; padding: 0; } }

.blog-main-article { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; }

@media screen and (max-width: 768px) { .blog-main-article { display: block; } }

.blog-main-title { font-size: 18px; font-weight: bold; color: #2c2c2c; letter-spacing: 0.02em; line-height: 1.3; margin-bottom: 10px; }

.blog-main-thumb { width: 659px; min-height: 402px; background-repeat: no-repeat; background-size: cover; background-position: center; margin-right: -5px; }

@media screen and (max-width: 768px) { .blog-main-thumb { margin-bottom: 14.4px; width: auto; min-height: 160px; margin-right: 0; } }

.blog-main-image { max-width: 100%; }

.blog-main-content { max-width: 537px; padding: 40.5px 45px 0 42px; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); border-radius: 5px; background: #fff; }

@media screen and (max-width: 768px) { .blog-main-content { max-width: 100%; padding: 0; } }

.blog-main-meta { margin-bottom: 15px; }

@media screen and (max-width: 768px) { .blog-main-meta { padding: 0 17.7px; } }

.blog-main-date { font-size: 18px; font-weight: bold; letter-spacing: 0.05em; }

@media screen and (max-width: 768px) { .blog-main-date { font-size: 14px; } }

.blog-main-category { font-size: 14px; }

@media screen and (max-width: 768px) { .blog-main-category { font-size: 12px; } }

.blog-main-entry { line-height: 2.2; letter-spacing: .02em; }

@media screen and (max-width: 768px) { .blog-main-entry { padding: 0 16.9px 29px 17.7px; line-height: 1.7; } }

.blog-list { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 1196px; margin: auto; }

@media screen and (max-width: 768px) { .blog-list { width: auto; padding: 0; } }

.blog-list-uneven { -ms-flex-pack: start; justify-content: flex-start; }

.blog-list-item { max-width: 369px; margin-bottom: 60px; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; }

@media screen and (max-width: 768px) { .blog-list-item { max-width: 100%; min-width: 100%; margin-bottom: 38.9px; } }

.blog-list-item-uneven { margin-right: 45px; }

@media screen and (max-width: 768px) { .blog-article-image { min-width: 100%; max-width: 100%; } }

.blog-article-content { padding: 17.5px 20.5px 28.5px 21.5px; }

@media screen and (max-width: 768px) { .blog-article-content { padding: 0 17.7px 26px; } }

.blog-article-meta { margin-bottom: 17px; }

@media screen and (max-width: 768px) { .blog-article-meta { margin-bottom: 13px; } }

.blog-article-title { font-size: 18px; font-weight: bold; color: #2c2c2c; letter-spacing: 0.02em; line-height: 1.3; margin-bottom: 10px; }

.blog-article-date { font-size: 18px; font-weight: bold; letter-spacing: 0.05em; }

@media screen and (max-width: 768px) { .blog-article-date { font-size: 14px; } }

.blog-article-category { font-size: 14px; }

@media screen and (max-width: 768px) { .blog-article-category { font-size: 12px; } }

.blog-article-thumb { width: 369px; height: 194px; background-size: cover; background-position: center; background-repeat: no-repeat; }

@media screen and (max-width: 768px) { .blog-article-thumb { width: auto; height: 160px; margin-bottom: 15px; } }

.blog-article-image { max-width: 100%; min-width: 100%; }

.blog-article-entry { line-height: 1.75; letter-spacing: .02em; }

.news-first-article { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; }

.news-first-thumb { width: 659px; }

.news-list { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.news-item { width: 369px; margin-bottom: 60px; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; }

.news-item:not(:nth-child(3n)) { margin-right: 44.5px; }

.news-image { max-width: 100%; }

.news-content { padding: 17.5px 20.5px 24.5px 21.5px; }

.news-first-content { width: 537px; padding: 40.5px 45px 0 42px; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); border-radius: 5px; }

.news-meta { margin-bottom: 22px; }

.news-date { font-size: 18px; font-weight: bold; }

.news-category { font-size: 14px; }

.news-first-entry { line-height: 30px; }

.news-entry { line-height: 24px; }

.news-main { width: 1196px; margin: auto; }

@media screen and (max-width: 768px) { .news-main { width: auto; } }

.news-main-article { display: -ms-flexbox; display: flex; -ms-flex-pack: center; justify-content: center; }

@media screen and (max-width: 768px) { .news-main-article { display: block; } }

.news-main-title { font-size: 18px; font-weight: bold; color: #2c2c2c; letter-spacing: 0.02em; line-height: 1.3; margin-bottom: 10px; }

.news-main-thumb { width: 659px; min-height: 402px; background-repeat: no-repeat; background-size: cover; background-position: center; }

@media screen and (max-width: 768px) { .news-main-thumb { margin-bottom: 14.4px; width: 100%; min-height: auto; height: 460px; } }

@media screen and (max-width: 425px) { .news-main-thumb { height: 160px; } }

.news-main-image { max-width: 100%; }

.news-main-content { max-width: 537px; padding: 40.5px 45px 0 42px; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); border-radius: 5px; }

@media screen and (max-width: 768px) { .news-main-content { max-width: 100%; padding: 0; } }

.news-main-meta { margin-bottom: 15px; }

@media screen and (max-width: 768px) { .news-main-meta { margin-bottom: 19px; padding: 0 17.7px; } }

.news-main-date { font-size: 18px; font-weight: bold; letter-spacing: 0.05em; }

@media screen and (max-width: 768px) { .news-main-date { font-size: 14px; } }

.news-main-category { font-size: 18px; }

@media screen and (max-width: 768px) { .news-main-category { font-size: 12px; } }

.news-main-entry { line-height: 2.2; letter-spacing: .02em; overflow: hidden; word-wrap: break-word; }

@media screen and (max-width: 768px) { .news-main-entry { padding: 0 16.9px 29px 17.7px; } }

.news-list { display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 1196px; margin: 0 auto; }

@media screen and (max-width: 768px) { .news-list { width: auto; margin: 0; } }

.news-list-uneven { -ms-flex-pack: start; justify-content: flex-start; }

.news-list-item { max-width: 30.85%; margin-bottom: 60px; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; margin-right: 44.5px; }

.news-list-item:nth-of-type(3n) { margin-right: 0; }

@media screen and (max-width: 768px) { .news-list-item { max-width: 100%; min-width: 100%; margin-bottom: 38.9px; } }

.news-list-item-uneven { margin-right: 45px; }

@media screen and (max-width: 768px) { .news-article-image { min-width: 100%; max-width: 100%; } }

.news-article-content { padding: 17.5px 20.5px 28.5px 21.5px; }

@media screen and (max-width: 768px) { .news-article-content { padding: 0 17.7px 26px; } }

.news-article-meta { margin-bottom: 17px; }

@media screen and (max-width: 768px) { .news-article-meta { margin-bottom: 13px; } }

.news-article-title { font-size: 18px; font-weight: bold; color: #2c2c2c; letter-spacing: 0.02em; line-height: 1.3; margin-bottom: 10px; }

.news-article-date { font-size: 18px; font-weight: bold; letter-spacing: 0.05em; }

@media screen and (max-width: 768px) { .news-article-date { font-size: 14px; } }

.news-article-category { font-size: 14px; }

@media screen and (max-width: 768px) { .news-article-category { font-size: 12px; } }

.news-article-thumb { height: 194px; background-repeat: no-repeat; background-size: cover; background-position: center; }

@media screen and (max-width: 768px) { .news-article-thumb { width: 100%; height: 460px; margin-bottom: 14.4px; } }

@media screen and (max-width: 425px) { .news-article-thumb { height: 160px; } }

.news-article-image { max-width: 100%; min-width: 100%; }

.news-article-entry { line-height: 1.75; letter-spacing: .02em; }

.section-single { text-align: center; }

.section-single-meta { margin-bottom: 22px; font-size: 18px; font-weight: bold; color: #a6adb4; }

@media screen and (max-width: 768px) { .section-single-meta { margin-bottom: 21px; } }

.section-single-date { margin-left: -4px; }

.section-single-sns { margin-bottom: 61px; }

@media screen and (max-width: 768px) { .section-single-sns { margin-bottom: 58px; } }

.section-single-thumb { margin: 0 auto 45px; width: 950px; }

@media screen and (max-width: 768px) { .section-single-thumb { width: auto; margin: 0 auto 43px; padding: 0 32px 0 36px; } }

.section-single-image { width: 100%; }

@media screen and (max-width: 768px) { .section-single-image { max-width: 100%; } }

.section-single-content { width: 950px; margin: auto; }

@media screen and (max-width: 768px) { .section-single-content { width: auto; padding: 0 32px 0 36px; } }

.section-single-casetitle { font-size: 30px; font-weight: 600; width: 950px; margin: 0 auto 41px; line-height: 1.6; }

@media screen and (max-width: 768px) { .section-single-casetitle { font-size: 25px; margin-bottom: 50px; width: auto; padding: 0 32px; } }

.section-single-blogtitle { font-size: 30px; font-weight: 600; width: 950px; margin: 0 auto 41px; line-height: 1.6; }

@media screen and (max-width: 768px) { .section-single-blogtitle { font-size: 25px; margin-bottom: 50px; width: auto; padding: 0 32px; } }

.section-single-title { font-size: 30px; font-weight: bold; line-height: 1.35; text-align: left; border-bottom: 2px solid #2c2c2c; padding-bottom: 10px; margin-bottom: 12px; letter-spacing: .022em; padding-left: 16px; margin-left: 3px; }

@media screen and (max-width: 768px) { .section-single-title { font-size: 25px; line-height: 40px; padding-left: 0; padding-bottom: 13px; margin-bottom: 14px; } }

.trigger-movie { position: relative; width: 100%; cursor: pointer; border-radius: 15px; overflow: hidden; }

.trigger-movie-icon { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); width: 55px; }

@media screen and (max-width: 768px) { .trigger-movie-icon { width: 30px; } }

.trigger-movie-img { width: 100%; }

.trigger-movie-wrapper { position: absolute; top: 20px; left: -10px; cursor: pointer; background-image: url("../images/index/movie-close.png"); background-repeat: no-repeat; width: 24px; height: 24px; background-color: white; border-radius: 50%; z-index: 1; }

.modal-movie { position: fixed; width: 100%; height: 100%; left: 50%; top: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); background-color: rgba(0, 0, 0, 0.6); opacity: 0; transition: 0.35s ease; z-index: -100; cursor: pointer; }

.modal-movie-wrapper { width: 80%; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -40%); transform: translate(-50%, -40%); opacity: 0; transition: 0.7s ease; }

@media screen and (max-width: 768px) { .modal-movie-wrapper { width: 100%; } }

.modal-movie-contents { position: relative; width: 100%; padding-top: 56.25%; }

.modal-movie-contents iframe, .modal-movie-contents video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }

.modal-movie.is-active { opacity: 1; z-index: 100; }

.modal-movie.is-active .modal-movie-wrapper { opacity: 1; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

@media screen and (max-width: 768px) { .case-archive { padding: 0 35px; } }

.case-archive-list { display: -ms-flexbox; display: flex; -ms-flex-pack: start; justify-content: flex-start; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.case-archive-item { display: -ms-flexbox; display: flex; width: 31%; margin-right: 40px; margin-top: 70px; }

.case-archive-item:nth-of-type(3n) { margin-right: 0; }

.case-archive-item:nth-of-type(-n+3) { margin-top: 0; }

@media screen and (max-width: 768px) { .case-archive-item { width: 100%; margin: 0; margin-bottom: 40px; } }

.case-archive-card { border-radius: 5px; box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }

@media screen and (max-width: 768px) { .case-archive-card { width: 100%; } }

.case-archive-link { display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; height: 100%; position: relative; }

.case-archive-img { width: 100%; min-height: 194px; background-position: center; background-size: cover; }

@media screen and (max-width: 768px) { .case-archive-img { min-height: 320px; } }

@media screen and (max-width: 425px) { .case-archive-img { min-height: 160px; } }

.case-archive-inner { display: -ms-flexbox; display: flex; -ms-flex-direction: column; flex-direction: column; height: 100%; -ms-flex-pack: justify; justify-content: space-between; padding: 17px 22px 22px; }

@media screen and (max-width: 768px) { .case-archive-inner { padding: 11px 19px 17px; } }

.case-archive-title { font-size: 18px; font-weight: bold; color: #2c2c2c; letter-spacing: 0.02em; line-height: 1.3; }

@media screen and (max-width: 768px) { .case-archive-title { font-size: 14px; } }

.case-archive-text { font-size: 14px; color: #2c2c2c; letter-spacing: 0.02em; line-height: 1.7; margin-top: 18px; }

@media screen and (max-width: 768px) { .case-archive-text { margin-top: 15px; } }

.case-archive-logo { width: 61%; margin: 27px auto 0; display: block; }

@media screen and (max-width: 768px) { .case-archive-logo { margin: 15px auto 0; } }

.whitepaper-list { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 1196px; margin: auto; }

@media screen and (max-width: 768px) { .whitepaper-list { width: auto; padding: 0; } }

.whitepaper-list-item { max-width: 369px; margin-bottom: 62px; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); border-bottom-left-radius: 5px; border-bottom-right-radius: 5px; position: relative; }

@media screen and (max-width: 768px) { .whitepaper-list-item { max-width: 100%; min-width: 100%; margin-bottom: 38.9px; } }

@media screen and (max-width: 768px) { .whitepaper-list-item:not(:last-child) { margin-bottom: 55.5px; } }

@media screen and (max-width: 768px) { .whitepaper-list-item:last-child { margin-bottom: 30px; } }

.whitepaper-list-item-download { border: 1px solid #707070; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); display: block; height: 40px; line-height: 2.8; text-align: center; border-radius: 5px; background-image: url(../images/whitepaper/whitepaper-download-icon.png); background-repeat: no-repeat; background-position: 8px center; letter-spacing: .03em; width: 88%; position: absolute; left: 0; right: 0; bottom: 29px; margin: auto; }

@media screen and (max-width: 768px) { .whitepaper-list-item-download { height: 32.63px; line-height: 2.4; background-position-x: 10px; background-size: 16px; bottom: 23.7px; } }

@media screen and (max-width: 768px) { .whitepaper-article-thumb { min-width: 100%; max-width: 100%; margin-bottom: 14.4px; } }

.whitepaper-article-content { padding: 17.5px 20.5px 118.5px 21.5px; }

@media screen and (max-width: 768px) { .whitepaper-article-content { padding: 0 17.7px 89px; } }

.whitepaper-article-thumb { width: 100%; }

.whitepaper-article-title { font-size: 18px; font-weight: bold; margin-bottom: 18px; letter-spacing: .025em; }

@media screen and (max-width: 768px) { .whitepaper-article-title { font-size: 14px; margin-bottom: 14px; } }

.whitepaper-article-entry { line-height: 1.75; letter-spacing: .02em; }

.whitepaper-article-download { border: 1px solid #707070; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); display: block; height: 40px; line-height: 2.8; text-align: center; border-radius: 5px; background-image: url(../images/whitepaper/whitepaper-download-icon.png); background-repeat: no-repeat; background-position: 10px center; letter-spacing: .03em; width: 100%; margin-top: 50px; }

@media screen and (max-width: 768px) { .whitepaper-article-download { height: 32.63px; line-height: 2.4; background-position-x: 10px; background-size: 16px; margin-top: 33px; margin-bottom: 4.7px; } }

.events-list { width: 949px; margin: auto; }

@media screen and (max-width: 768px) { .events-list { width: auto; } }

.events-list-item { border: 1px solid #707070; position: relative; }

.events-list-item:not(:last-child) { margin-bottom: 48px; }

@media screen and (max-width: 768px) { .events-list-item:not(:last-child) { margin-bottom: 38px; } }

.events-article { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); -ms-flex-align: end; align-items: flex-end; }

@media screen and (max-width: 768px) { .events-article { display: block; padding: 24px 17px 27px; } }

.events-article-top { padding: 53px 77px 60px; }

@media screen and (max-width: 768px) { .events-article-top { padding: 0; } }

.events-article-bottom { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 768px) { .events-article-bottom { -ms-flex-direction: column; flex-direction: column; } }

.events-article-entry { font-size: 16px; line-height: 1.9; margin-bottom: 30px; letter-spacing: .015em; }

@media screen and (max-width: 768px) { .events-article-entry { font-size: 14px; line-height: 1.75; margin-bottom: 12px; } }

.events-article-title { font-size: 30px; font-weight: bold; letter-spacing: .018em; line-height: 1.2; -ms-flex: 2; flex: 2; margin-right: 55px; }

@media screen and (max-width: 768px) { .events-article-title { font-size: 20px; line-height: 1.5; margin-bottom: 30px; margin-right: 0; } }

.events-article-button { background-color: #00a2e9; display: block; width: 246px; height: 70px; line-height: 5em; text-align: center; color: #fff; font-size: 14px; border-radius: 10px; font-weight: bold; cursor: pointer; -ms-flex: 1; flex: 1; }

@media screen and (max-width: 768px) { .events-article-button { padding: 0; margin: 0; width: 100%; margin: auto; } }

.faq-box { box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.16); }

.faq-box-head { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; background: #51a8dd; padding: 18px 22px 18px 35px; position: relative; }

@media screen and (max-width: 768px) { .faq-box-head { padding: 13px 20px 13px 35px; } }

.faq-box-head:after { opacity: 0; transition: 0.35s ease; display: block; content: ""; position: absolute; left: 50%; bottom: 0; -webkit-transform: translateX(-50%); transform: translateX(-50%); border-top: 12px solid #51a8dd; border-right: 12px solid transparent; border-left: 12px solid transparent; }

.faq-box-question { font-size: 21px; color: #fff; font-weight: bold; }

@media screen and (max-width: 768px) { .faq-box-question { font-size: 18px; line-height: 1.4; padding-right: 25px; } }

.faq-box-button { background: #fff; position: relative; border-radius: 50%; width: 40px; height: 40px; cursor: pointer; -ms-flex-negative: 0; flex-shrink: 0; }

.faq-box-cross { position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); display: block; width: 2px; height: 16px; background: #959ea7; transition: 0.35s ease; }

.faq-box-cross:before { transition: 0.35s ease; content: ""; display: block; background: #959ea7; width: 100%; height: 100%; -webkit-transform: rotate(90deg); transform: rotate(90deg); }

.faq-box-cross-none { display: none; }

.faq-box-cross.is-open { -webkit-transform: translate(-1px, -8px) rotate(-90deg); transform: translate(-1px, -8px) rotate(-90deg); }

.faq-box-cross.is-open:before { opacity: 0; }

.faq-box-bottom { overflow: hidden; transition: 0.35s ease; }

.faq-box-inner { padding: 35px 35px 37px; }

@media screen and (max-width: 768px) { .faq-box-inner { padding: 25px 35px 37px; line-height: 1.7; } }

.faq-box-answer { font-size: 20px; color: #808080; margin-bottom: 10px; }

@media screen and (max-width: 768px) { .faq-box-answer { margin-bottom: 3px; } }

.faq-box-text { font-size: 14px; color: #808080; line-height: 1.75; }

.faq-box-text span { display: block; margin-top: 25px; }

.faq-box-text strong { color: #ff6565; }

.faq-box.is-open .faq-box-head:after { opacity: 1; bottom: -12px; }

.lower-head { width: 100%; height: 400px; position: relative; background: url(../images/product/product-bg.png) no-repeat top center/cover; }

@media screen and (max-width: 768px) { .lower-head { background: none; height: auto; } }

.lower-head-sphero { width: 100%; }

.lower-head-inner { position: absolute; top: 48%; -webkit-transform: translateY(-50%); transform: translateY(-50%); width: 78%; padding: 32px 0 40px; background: rgba(44, 44, 44, 0.6); }

@media screen and (max-width: 768px) { .lower-head-inner { background: rgba(44, 44, 44, 0.4); top: 50%; height: 100%; width: 100%; padding: 0; } }

.lower-head-title { font-size: 30px; font-weight: 600; color: #fff; padding: 0 80px; letter-spacing: 0.07em; line-height: 1.3; }

@media screen and (min-width: 1440px) { .lower-head-title { width: 1160px; margin: 0 auto; } }

@media screen and (max-width: 768px) { .lower-head-title { font-size: 16px; position: absolute; top: 50%; width: 100%; text-align: center; -webkit-transform: translateY(-50%); transform: translateY(-50%); padding: 0; line-height: 1.6; letter-spacing: 0; } }

.lower-head-img { position: absolute; -webkit-transform: translateX(28%); transform: translateX(28%); left: 50%; top: -64px; z-index: 2; }

@media screen and (min-width: 1880px) { .lower-head-img { left: auto; -webkit-transform: translateX(0); transform: translateX(0); right: -25px; width: 41%; top: -95px; } }

.lower-head-product .lower-head-img { width: 735px; }

.lower-head-store { background: url(../images/store/store-bg.png) no-repeat top center/cover; }

.lower-head-store .lower-head-img { -webkit-transform: translateX(9%); transform: translateX(9%); top: 0; }

@media screen and (min-width: 1880px) { .lower-head-store .lower-head-img { width: 34%; -webkit-transform: translateX(9%); transform: translateX(9%); right: auto; left: 50%; top: 0; } }

.lower-head-analytics { background: url(../images/analytics/analytics-bg.jpg) no-repeat top center/cover; }

.lower-head-analytics .lower-head-inner { width: 55%; }

@media screen and (max-width: 768px) { .lower-head-analytics .lower-head-inner { width: 100%; } }

.lower-head-analytics .lower-head-img { -webkit-transform: translateX(-29%); transform: translateX(-29%); top: 33px; }

@media screen and (min-width: 1880px) { .lower-head-analytics .lower-head-img { -webkit-transform: translateX(-29%); transform: translateX(-29%); top: 33px; width: auto; left: 50%; } }

.lower-head-ad { background: url(../images/phase-4/ad-bg.jpg) no-repeat top center/cover; }

.lower-head-ad .lower-head-inner { padding: 33px 0 34px; padding-left: 0; -webkit-transform: none; transform: none; top: 116px; }

@media screen and (min-width: 1440px) { .lower-head-ad .lower-head-inner { padding-left: calc((100% - 1440px) / 2); } }

@media screen and (max-width: 768px) { .lower-head-ad .lower-head-inner { top: 0; } }

.lower-head-ad .lower-head-title { font-weight: 400; letter-spacing: .08em; line-height: 1.4033; padding-left: 76px; padding-right: 0; margin-left: 0; margin-right: 0; }

@media screen and (min-width: 1201px) and (max-width: 1439px) { .lower-head-ad .lower-head-title { font-size: 2vw; } }

@media screen and (max-width: 1200px) { .lower-head-ad .lower-head-title { font-size: 24px; } }

@media screen and (max-width: 768px) { .lower-head-ad .lower-head-title { font-size: 16px; letter-spacing: .06em; line-height: 1.4375; max-width: 250px; margin: 0 auto; padding-left: 0; position: relative; } }

.lower-head-ad .lower-head-img { right: 5px; left: auto; top: auto; bottom: 0; width: auto; max-width: 540px; -webkit-transform: translateX(20px); transform: translateX(20px); }

@media screen and (min-width: 1440px) { .lower-head-ad .lower-head-img { right: calc((100% - 1440px) / 2); } }

.product-feature { background-image: url("../images/product/feature-bg.jpg"); background-repeat: no-repeat; background-size: cover; display: block; position: relative; overflow: hidden; width: 100%; height: auto; padding-bottom: 70px; }

@media screen and (min-width: 1880px) { .product-feature-img { width: 100%; } }

@media screen and (max-width: 768px) { .product-feature-img { width: 100%; } }

.product-feature-title { display: block; position: relative; margin: 180px 0 50px; width: 100%; }

@media screen and (max-width: 768px) { .product-feature-title { margin: 45px 0; } }

.product-feature-inner { display: block; position: relative; width: 100%; padding: 0 35px; }

@media screen and (max-width: 374px) { .product-feature-inner { padding: 0 25px; } }

.product-feature-content { background: #fff; max-width: 1286px; width: 100%; margin: 0 auto; padding: 105px 45px 80px; box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.16); border-radius: 10px; }

@media screen and (max-width: 1200px) { .product-feature-content { padding: 105px 30px 80px; } }

@media screen and (max-width: 768px) { .product-feature-content { padding: 50px 10px; } }

.product-feature-icon { width: 100%; }

.product-feature-list { display: -ms-flexbox; display: flex; position: relative; width: 100%; }

@media screen and (max-width: 768px) { .product-feature-list { -ms-flex-direction: column; flex-direction: column; } }

.product-feature-item { display: block; position: relative; }

@media screen and (max-width: 768px) { .product-feature-item:not(:last-child) { margin-bottom: 30px; padding-bottom: 30px; } }

.product-feature-item:not(:last-child):after { content: ''; display: block; height: 80%; position: absolute; }

@media screen and (min-width: 769px) { .product-feature-item:not(:last-child):after { top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); right: 0; border-right: 1px solid #B1B1B1; } }

@media screen and (max-width: 768px) { .product-feature-item:not(:last-child):after { border-bottom: 2px solid #B1B1B1; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); bottom: 0; width: 40%; } }

.product-feature-item:nth-child(1) { width: calc((100% / 4) - 4%); }

@media screen and (max-width: 768px) { .product-feature-item:nth-child(1) { width: 100%; } }

.product-feature-item:nth-child(2) { width: calc((100% / 4) + 4%); }

@media screen and (max-width: 768px) { .product-feature-item:nth-child(2) { width: 100%; } }

.product-feature-item:nth-child(3) { width: calc((100% / 4) + 2%); }

@media screen and (max-width: 768px) { .product-feature-item:nth-child(3) { width: 100%; } }

.product-feature-item:nth-child(4) { width: calc((100% / 4) - 2%); }

@media screen and (max-width: 768px) { .product-feature-item:nth-child(4) { width: 100%; } }

.product-feature-item span { text-align: center; position: relative; font-family: "ShinGoPro", sans-serif; }

.product-feature-text { display: block; font-size: 23px; font-weight: 900; }

@media screen and (max-width: 1200px) { .product-feature-text { font-size: 22px; } }

.product-feature-number { display: block; margin-top: 10px; position: relative; text-align: center; }

.product-feature-number-text { font-size: 52px; font-weight: 900; }

@media screen and (max-width: 1200px) { .product-feature-number-text { font-size: 47px; } }

@media screen and (max-width: 374px) { .product-feature-number-text { font-size: 35px; } }

.product-feature-number-text-small { font-size: 40px; font-weight: 600; }

@media screen and (max-width: 1200px) { .product-feature-number-text-small { font-size: 37px; } }

@media screen and (max-width: 375px) { .product-feature-number-text-small { font-size: 30px; } }

@media screen and (max-width: 350px) { .product-feature-number-text-small { font-size: 25px; } }

.product-feature-number-sub-small { display: inline-block; font-size: 10px; font-weight: normal; }

.product-feature-number-sub-large { display: inline-block; font-size: 35px; font-weight: 600; }

@media screen and (max-width: 1200px) { .product-feature-number-sub-large { font-size: 30px; } }

@media screen and (max-width: 375px) { .product-feature-number-sub-large { font-size: 27px; } }

@media screen and (max-width: 350px) { .product-feature-number-sub-large { font-size: 22px; } }

.product-feature-number-sub-medium { display: inline-block; font-size: 21px; font-weight: 600; }

@media screen and (max-width: 1200px) { .product-feature-number-sub-medium { font-size: 19px; } }

@media screen and (max-width: 350px) { .product-feature-number-sub-medium { font-size: 176x; } }

.product-feature-number-sub { display: inline-block; font-size: 16px; font-weight: normal; }

@media screen and (max-width: 1200px) { .product-feature-number-sub { font-size: 14px; } }

.product-feature-ico { background-size: contain; background-repeat: no-repeat; display: block; position: relative; margin: 0 auto 10px; }

.product-feature-ico-1 { background-image: url("../images/product/manufacturer-1.png"); width: 80px; height: 45px; }

.product-feature-ico-2 { background-image: url("../images/product/manufacturer-2.png"); width: 91px; height: 38px; }

.product-feature-ico-3 { background-image: url("../images/product/manufacturer-3.png"); width: 120px; height: 42px; }

.product-feature-ico-4 { background-image: url("../images/product/manufacturer-4.png"); width: 122px; height: 43px; }

.definition-list { display: -ms-flexbox; display: flex; border-bottom: 1px solid #707070; }

@media screen and (max-width: 768px) { .definition-list { display: block; } }

.definition-list-top { border-top: 1px solid #707070; }

.definition-list-term { -ms-flex-preferred-size: 26.2%; flex-basis: 26.2%; padding: 18px 0; font-size: 16px; font-weight: bold; line-height: 39px; letter-spacing: .025em; }

@media screen and (max-width: 768px) { .definition-list-term { padding: 0 35px; position: relative; top: 4px; } }

.definition-list-description { -ms-flex-preferred-size: 73.8%; flex-basis: 73.8%; padding: 19px 0 17px; letter-spacing: .03em; font-size: 16px; line-height: 37px; }

@media screen and (max-width: 768px) { .definition-list-description { padding: 0 35px; font-size: 14px; position: relative; top: -3px; } }

@media screen and (max-width: 768px) { .definition-list-description br { display: none; } }

.company-about { max-width: 949px; margin: auto; }

@media screen and (max-width: 768px) { .company-about { max-width: 100%; } }

.company-about-heading { font-size: 30px; font-weight: bold; color: #3c3c3c; display: inline-block; position: relative; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); margin-bottom: 49px; }

.company-about-heading:after { content: ''; height: 5px; background-color: #3c3c3c; width: 100px; display: block; margin-top: 18px; position: relative; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); }

.company-location { max-width: 1196px; margin: auto; }

@media screen and (max-width: 768px) { .company-location { max-width: 100%; } }

.company-location-heading { font-size: 30px; font-weight: bold; color: #3c3c3c; display: inline-block; position: relative; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); margin-bottom: 49.5px; letter-spacing: .025em; margin-left: 5px; }

@media screen and (max-width: 768px) { .company-location-heading { margin-left: 0; } }

.company-location-heading:after { content: ''; height: 5px; background-color: #3c3c3c; width: 100px; position: relative; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); display: block; margin-top: 19px; }

.company-location-list { display: -ms-flexbox; display: flex; }

@media screen and (max-width: 768px) { .company-location-list { display: block; } }

.company-location-list-term { -ms-flex-preferred-size: 21%; flex-basis: 21%; font-size: 16px; font-weight: bold; margin-bottom: 24px; letter-spacing: .07em; }

@media screen and (max-width: 768px) { .company-location-list-term { margin: -2px 36px 10px 35px; letter-spacing: 0; } }

.company-location-list-description { -ms-flex-preferred-size: 79%; flex-basis: 79%; font-size: 16px; margin-bottom: 24px; letter-spacing: .07em; }

@media screen and (max-width: 768px) { .company-location-list-description { font-size: 14px; margin: 0 36px 12px 35px; letter-spacing: 0; line-height: 1.75; } }

.company-location-list-description-okinawa { position: relative; top: 4px; left: -3px; }

@media screen and (max-width: 768px) { .company-location-list-description-okinawa { top: 0; left: 0; } }

.company-location-list-description-tokyo { margin-left: -1px; }

@media screen and (max-width: 768px) { .company-location-list-description-tokyo { margin-left: 35px; } }

.company-location-list-description-tokyo-direction { margin-top: 3px; }

.company-location-list-description-osaka { margin-left: -2px; }

@media screen and (max-width: 768px) { .company-location-list-description-osaka { margin-left: 35px; } }

.company-location-list-description-osaka-direction { margin-top: 5px; margin-left: -3px; }

@media screen and (max-width: 768px) { .company-location-list-description-osaka-direction { margin-left: 35px; } }

.company-location-list-phone { margin-left: 38px; position: relative; top: 2px; }

@media screen and (max-width: 768px) { .company-location-list-phone { margin-left: 0; display: block; margin-top: 7px; font-size: 16px; letter-spacing: .06em; } }

.company-location-list-phone-tokyo { margin-left: 36px; top: 0; }

@media screen and (max-width: 768px) { .company-location-list-phone-tokyo { margin-left: 0; } }

.company-location-list-icon { position: relative; top: -4px; left: 2px; }

@media screen and (max-width: 768px) { .company-location-list-icon { left: 1px; } }

.company-location-list-icon-tokyo { left: 0; }

.company-location-office { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; margin-top: 14px; margin-bottom: 89px; }

@media screen and (max-width: 768px) { .company-location-office { margin-bottom: 58px; } }

.company-location-office-tokyo { margin-top: 9px; }

.company-location-office-osaka { margin-top: 10px; margin-bottom: 109px; }

@media screen and (max-width: 768px) { .company-location-office-osaka { margin-bottom: 56px; } }

@media screen and (max-width: 768px) { .company-location-map { width: 100%; } }

.js-company-location-map { width: 570px; height: 440px; }

@media screen and (max-width: 768px) { .js-company-location-map { width: auto; height: 150px; } }

.company-location-map-image { margin-bottom: 25px; }

@media screen and (max-width: 768px) { .company-location-map-image { margin-bottom: 5px; } }

.company-location-map-link { font-size: 16px; letter-spacing: .06em; position: relative; top: 30px; letter-spacing: .07em; }

@media screen and (max-width: 768px) { .company-location-map-link { position: relative; left: 35px; top: 6px; font-size: 14px; } }

.company-location-building { width: 48%; height: 440px; background-position: center; background-size: cover; background-repeat: no-repeat; }

.company-location-building > img { width: 100%; }

.company-history { max-width: 949px; margin: auto; }

.company-history-heading { font-size: 30px; font-weight: bold; color: #3c3c3c; display: inline-block; position: relative; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); margin-bottom: 46px; text-align: center; }

.company-history-heading:after { content: ''; height: 5px; background-color: #3c3c3c; width: 100px; position: relative; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); display: block; margin-top: 19px; margin-left: 5px; }

@media screen and (max-width: 768px) { .company-history-heading:after { margin-left: 0; } }

@media screen and (max-width: 768px) { .company-history-heading { margin-bottom: 35px; } }

@media screen and (max-width: 768px) { .company-history-heading-osaka { margin-left: 4px; margin-bottom: 32px; } }

.store-feature { position: relative; overflow: hidden; min-width: 1200px; }

@media screen and (min-width: 1200px) and (max-width: 1439px) { .store-feature { min-width: 100%; } }

@media screen and (max-width: 768px) { .store-feature { min-width: auto; } }

.store-feature-bg { max-height: 907px; overflow: hidden; }

@media screen and (max-width: 768px) { .store-feature-bg { max-height: unset; } }

@media screen and (min-width: 1880px) { .store-feature-img { width: 100%; } }

@media screen and (max-width: 768px) { .store-feature-img { width: 100%; max-height: calc(400px + 250vw); } }

@media screen and (max-width: 500px) { .store-feature-img { max-height: 1950px; } }

.store-feature-title { position: absolute; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); top: 205px; width: 100%; }

@media screen and (max-width: 768px) { .store-feature-title { top: 15px; padding: 0 25px; } }

.store-feature-inner { position: absolute; top: 22%; left: 50%; -webkit-transform: translate(-50%, -4%); transform: translate(-50%, -4%); width: 100%; }

@media screen and (max-width: 768px) { .store-feature-inner { top: 10%; width: 80%; margin: 0 auto; } }

@media screen and (max-width: 500px) { .store-feature-inner { -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); width: 100%; } }

.store-feature-list { display: -ms-flexbox; display: flex; -ms-flex: auto; flex: auto; }

@media screen and (max-width: 768px) { .store-feature-list { -ms-flex-direction: column; flex-direction: column; } }

.store-feature-item { width: 22%; margin-right: 30px; }

@media screen and (max-width: 768px) { .store-feature-item { width: 100%; padding: 0 35px; margin-bottom: 25px; margin-right: 0; } }

.store-feature-item:nth-of-type(1) .store-feature-text { padding-left: 20px; }

@media screen and (max-width: 768px) { .store-feature-item:nth-of-type(1) { width: 100%; } }

.store-feature-item:nth-of-type(2) { width: 20%; margin-right: 43px; }

@media screen and (max-width: 768px) { .store-feature-item:nth-of-type(2) { width: 100%; margin-right: 0; } }

.store-feature-item:nth-of-type(3) { margin-right: 40px; }

.store-feature-item:nth-of-type(3) .store-feature-text { padding-right: 23px; }

@media screen and (max-width: 768px) { .store-feature-item:nth-of-type(3) .store-feature-text { padding-right: 0; } }

@media screen and (max-width: 768px) { .store-feature-item:nth-of-type(3) { width: 100%; margin-right: 0; } }

.store-feature-item:last-of-type { width: 27%; margin-right: 0; }

@media screen and (max-width: 768px) { .store-feature-item:last-of-type { width: 100%; margin-bottom: 0; } }

.store-feature-text { font-family: "ShinGoPro", sans-serif; font-size: 16px; font-weight: bold; line-height: 1.5; text-align: center; margin-bottom: 7px; }

.store-feature-text-big { font-size: 50px; line-height: 1; text-align: left; margin-left: 30px; margin-bottom: 5px; }

@media screen and (max-width: 768px) { .store-feature-text-big { margin-left: 0; text-align: center; } }

.store-feature-icon { width: 100%; }

.store-feature-bottom { margin: -225px auto 0; display: block; padding-bottom: 5px; width: 945px; }

@media screen and (max-width: 768px) { .store-feature-bottom { width: 100%; padding: 0 36px 6px; } }

@media screen and (max-width: 768px) { .store-feature-bottom { margin-top: -145px; } }

.store-element { background: #fff; padding: 20px 118px 40px; }

@media screen and (max-width: 768px) { .store-element { border-radius: 0 0 2px 2px / 0 0 15px 15px; padding: 20px 5px 15px; } }

.store-element-wrapper { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; }

@media screen and (max-width: 768px) { .store-element-wrapper { display: block; } }

.store-element-top { width: 327px; }

@media screen and (max-width: 768px) { .store-element-top { width: 100%; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: distribute; justify-content: space-around; -ms-flex-align: center; align-items: center; } }

.store-element-middle { width: 327px; margin-top: 40px; }

@media screen and (max-width: 768px) { .store-element-middle { width: 100%; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: distribute; justify-content: space-around; margin-top: 0; -ms-flex-align: center; align-items: center; padding: 0 10px; } }

@media screen and (max-width: 768px) { .store-element-middle { -ms-flex-wrap: initial; flex-wrap: initial; } }

@media screen and (max-width: 768px) { .store-element-bottom { margin-top: 12px; } }

.store-element-icon { width: 122px; }

@media screen and (max-width: 768px) { .store-element-icon { display: block; margin-bottom: 10px; } }

.store-element-title { font-family: "ShinGoPro", sans-serif; font-size: 16px; letter-spacing: 0.02em; margin: 15px 0 20px; font-weight: 600; }

@media screen and (max-width: 768px) { .store-element-title { -ms-flex-preferred-size: 43%; flex-basis: 43%; font-size: 14px; margin: 0; line-height: 1.4; margin-bottom: 10px; } }

@media screen and (max-width: 768px) { .store-element-img { width: 100%; } }

.store-element-toptext { font-size: 16px; margin-bottom: 55px; line-height: 1.9; padding-left: 23px; padding-right: 5px; }

@media screen and (max-width: 768px) { .store-element-toptext { font-size: 11px; padding: 0; margin: 0; -ms-flex-preferred-size: 55%; flex-basis: 55%; } }

.store-element-result { font-family: "ShinGoPro", sans-serif; font-size: 210px; line-height: 0.6; text-align: center; font-weight: 600; }

@media screen and (max-width: 768px) { .store-element-result { font-size: 36px; } }

.store-element-result span { font-size: 100px; }

@media screen and (max-width: 768px) { .store-element-result span { font-size: 18px; } }

.store-element-adress { font-size: 14px; text-align: center; margin: 15px 0px 25px; }

@media screen and (max-width: 768px) { .store-element-adress { font-size: 9px; margin: 10px 0px 25px; } }

.store-element-text { font-size: 16px; text-align: center; line-height: 1.9; letter-spacing: 0.01em; margin-bottom: 30px; }

@media screen and (max-width: 768px) { .store-element-text { font-size: 12px; text-align: left; line-height: 1.7; padding: 0 9px; margin-bottom: 3px; } }

.store-element-info { font-size: 14px; text-align: center; line-height: 2.2; letter-spacing: 0.02em; }

@media screen and (max-width: 768px) { .store-element-info { font-size: 12px; line-height: 1.6; text-align: left; letter-spacing: 0; padding: 0 10px; } }

.analytics-feature { position: relative; overflow: hidden; min-width: 1200px; max-height: 845px; }

@media screen and (max-width: 768px) { .analytics-feature { min-width: auto; max-height: unset; } }

@media screen and (min-width: 1880px) { .analytics-feature-img { width: 100%; } }

@media screen and (max-width: 768px) { .analytics-feature-img { width: 100%; } }

.analytics-feature-inner { position: absolute; top: 56%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }

@media screen and (max-width: 768px) { .analytics-feature-inner { position: inherit; top: 0; left: 0; -webkit-transform: translate(0, 0); transform: translate(0, 0); } }

.analytics-feature-wrapper { padding: 0 80px; }

@media screen and (max-width: 768px) { .analytics-feature-wrapper { padding: 0 35px; } }

.analytics-element { background: #fff; padding: 80px 55px 45px; border-radius: 0 0 10px 10px; }

@media screen and (max-width: 768px) { .analytics-element { border-radius: 0 0 2px 2px / 0 0 15px 15px; padding: 65px 15px 10px; } }

.analytics-element-list { display: -ms-flexbox; display: flex; -ms-flex-pack: distribute; justify-content: space-around; -ms-flex-align: center; align-items: center; }

@media screen and (max-width: 768px) { .analytics-element-list { -ms-flex-direction: column; flex-direction: column; } }

@media screen and (max-width: 768px) { .analytics-element-between { margin: 65px 0; } }

.analytics-element-text { font-size: 14px; text-align: center; line-height: 1.4; margin-bottom: 10px; }

@media screen and (max-width: 768px) { .analytics-element-text { margin-bottom: 17px; } }

.analytics-element-img { display: block; margin: 0 auto; }

.analytics-element-arrow { position: relative; display: block; background: #2c2c2c; width: 45px; height: 6px; top: 45%; }

@media screen and (max-width: 768px) { .analytics-element-arrow { -webkit-transform: rotate(90deg); transform: rotate(90deg); } }

.analytics-element-arrow:after { display: block; content: ""; position: absolute; right: 2px; top: -15px; width: 37px; height: 37px; border-top: 6px solid #2c2c2c; border-right: 6px solid #2c2c2c; -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.analytics-element-bottom { font-size: 25px; font-weight: bold; text-align: center; margin-top: 50px; padding: 0 110px; letter-spacing: -0.01em; line-height: 1.4; }

@media screen and (max-width: 768px) { .analytics-element-bottom { padding: 0; font-size: 18px; text-align: left; line-height: 2; } }

.feature-box { border: solid 5px #8fc31f; border-radius: 15px; box-shadow: 0px 3px 6px rgba(0, 0, 0, 0.5); z-index: 2; position: relative; overflow: hidden; }

@media screen and (max-width: 768px) { .feature-box { border-radius: 4px 4px 4px 4px / 15px 15px 15px 15px; border: solid 4px #8fc31f; } }

.feature-box-title { font-size: 30px; font-weight: bold; text-align: center; background: #8fc31f; color: #fff; padding: 31px 0 35px; line-height: 1; margin-top: -1px; }

@media screen and (max-width: 768px) { .feature-box-title { font-size: 16px; padding: 15px 0 20px; } }

.feature-box-contents { background: #8fc31f; }

.feature-box-store { border: solid 5px #e3007f; border-radius: 50%; }

@media screen and (max-width: 768px) { .feature-box-store { border-radius: 4px 4px 4px 4px / 15px 15px 15px 15px; border: solid 4px #e3007f; } }

.feature-box-store .feature-box-title { background: #e3007f; padding: 70px 0 43px; font-family: "ShinGoPro", sans-serif; letter-spacing: 0.1em; }

@media screen and (max-width: 768px) { .feature-box-store .feature-box-title { font-size: 16px; padding: 10px 0 15px; } }

.feature-box-store .feature-box-contents { background: #e3007f; }

.business-heading { font-family: "ShinGoPro", sans-serif; font-size: 30px; font-weight: bold; text-align: center; margin-bottom: 12px; letter-spacing: .025em; }

.business-subheading { font-size: 16px; text-align: center; margin-bottom: 42px; letter-spacing: .025em; }

.business-subheading:after { content: ''; height: 5px; width: 100px; display: block; background-color: #3c3c3c; position: relative; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); margin-top: 24px; }

.business-tagline { font-family: "ShinGoPro", sans-serif; font-size: 30px; font-weight: bold; line-height: 40px; text-align: center; margin-bottom: 46px; letter-spacing: -.004em; margin-left: -10px; }

@media screen and (max-width: 768px) { .business-tagline { font-size: 16px; line-height: 1.250em; } }

.business-list-item { position: relative; min-height: 444px; }

@media screen and (max-width: 768px) { .business-list-item { min-height: auto; margin-bottom: 30.4px; } }

@media screen and (max-width: 768px) { .business-list-item-foreigners { display: -ms-flexbox; display: flex; -ms-flex-direction: column-reverse; flex-direction: column-reverse; } }

@media screen and (max-width: 768px) { .business-list-item-retailers { display: -ms-flexbox; display: flex; -ms-flex-direction: column-reverse; flex-direction: column-reverse; } }

.business-list-item-image { width: 693px; height: 398px; box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); background-size: cover; background-position: center; position: absolute; z-index: 1; }

@media screen and (max-width: 768px) { .business-list-item-image { width: 100%; height: auto; position: initial; } }

.business-list-item-image-left { left: 0; }

.business-list-item-image-right { right: 0; }

.business-article { padding-top: 45px; width: 813px; position: absolute; }

@media screen and (max-width: 768px) { .business-article { position: initial; padding-top: initial; width: initial; } }

.business-article-foreigners { top: 36px; padding-right: 175px; }

@media screen and (max-width: 768px) { .business-article-foreigners { top: 0; padding-right: initial; } }

.business-article-manufacturers { top: 36px; padding-left: 188px; }

@media screen and (max-width: 768px) { .business-article-manufacturers { top: initial; padding-left: initial; } }

.business-article-retailers { padding-right: 174px; padding-bottom: 45px; top: 29px; }

@media screen and (max-width: 768px) { .business-article-retailers { padding-right: initial; padding-bottom: initial; top: initial; } }

.business-article-analytics { padding-left: 188px; top: 39px; }

@media screen and (max-width: 768px) { .business-article-analytics { padding-left: initial; top: initial; } }

.business-article-left { background-image: linear-gradient(to left, transparent, #fafafa); padding-left: 78px; left: 0; }

@media screen and (max-width: 768px) { .business-article-left { padding-left: initial; background-image: none; } }

.business-article-right { background-image: linear-gradient(to right, transparent, #fafafa); right: 0; padding-bottom: 45px; padding-right: 68px; }

@media screen and (max-width: 768px) { .business-article-right { padding-bottom: initial; padding-right: initial; background-image: none; } }

.business-article-heading { font-size: 30px; font-weight: bold; line-height: 40px; }

@media screen and (max-width: 768px) { .business-article-heading { font-size: 25px; line-height: 35px; margin: 20px 40px 25px 35px; } }

.business-article-heading-foreigners { position: relative; }

@media screen and (max-width: 768px) { .business-article-heading-foreigners:before { content: ""; background-image: linear-gradient(#00A2E9, #0027FF); opacity: .5; width: 108px; height: 90px; display: block; position: absolute; top: 8px; left: -35px; z-index: -1; } }

.business-article-heading-manufacturers { position: relative; }

@media screen and (max-width: 768px) { .business-article-heading-manufacturers:before { content: ""; background-image: linear-gradient(#E4007F, #E60012); opacity: .5; width: 108px; height: 90px; display: block; position: absolute; left: -35px; z-index: -1; } }

.business-article-heading-retailers { position: relative; }

@media screen and (max-width: 768px) { .business-article-heading-retailers:before { content: ""; background-image: linear-gradient(#8FC31F, #27FF00); opacity: .5; width: 108px; height: 90px; display: block; position: absolute; left: -35px; z-index: -1; } }

.business-article-text { font-size: 16px; line-height: 30px; }

@media screen and (max-width: 768px) { .business-article-text { font-size: 14px; margin: 0 40px 30px 35px; } }

.business-article-text-foreigners { padding-right: 38px; padding-bottom: 154px; }

@media screen and (max-width: 768px) { .business-article-text-foreigners { padding-right: initial; padding-bottom: initial; } }

.business-article-text-manufacturers { padding-right: 38px; }

@media screen and (max-width: 768px) { .business-article-text-manufacturers { padding-right: initial; } }

.business-article-text-retailers { padding-right: 38px; }

@media screen and (max-width: 768px) { .business-article-text-retailers { padding-right: initial; } }

.business-article-button { width: 369px; margin-top: 80px; }

@media screen and (max-width: 768px) { .business-article-button { width: initial; margin: 0 7px 0 8px; } }

.business-article-button-analytics { margin-top: 22px; }

@media screen and (max-width: 768px) { .page-template-page-business { background-color: transparent; } }

.greetings-img { width: 100%; padding: 0 50px; }

.greetings-content { display: -ms-flexbox; display: flex; max-width: 1305px; margin: 0 auto; padding: 0 15px; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-align: start; align-items: flex-start; }

@media screen and (max-width: 768px) { .greetings-content { padding: 0; } }

.greetings-content-left { box-shadow: 0 0 20px rgba(0, 0, 0, 0.16); width: 42.274509%; max-width: 539px; margin: 80.5px 0 0; padding: 46px 47px 45px; font-size: 16px; letter-spacing: .06em; line-height: 2.1875em; }

@media screen and (max-width: 768px) { .greetings-content-left { box-shadow: none; width: 100%; margin-top: 0; padding: 15px 27px 32px 35px; font-size: 12px; line-height: 2.083; } }

.greetings-position { font-weight: 600; }

@media screen and (max-width: 768px) { .greetings-position { font-size: 14px; letter-spacing: .06em; } }

.greetings-content-right { background: rgba(0, 0, 0, 0.7); width: 51.7647058%; max-width: 660px; margin-top: -305px; padding: 43px 49px 28px 45px; font-size: 16px; color: #fff; letter-spacing: .06em; line-height: 2.1875em; }

@media screen and (max-width: 768px) { .greetings-content-right { background-color: #000; width: calc(100% - 30px); max-width: 100%; margin: 0 auto; padding: 17px 20px 14px; font-size: 12px; } }

.greetings-content-right-heading { margin: 0 0 12px; font-size: 30px; font-weight: 600; }

@media screen and (max-width: 768px) { .greetings-content-right-heading { margin-bottom: 14px; font-size: 25px; letter-spacing: .05em; } }

.greetings-content-right-text { margin: 0 0 7px; }

@media screen and (max-width: 768px) { .greetings-content-right-text { margin-bottom: 18px; } }

.greetings-content-highlight { font-size: 30px; font-weight: 600; }

@media screen and (max-width: 768px) { .greetings-content-highlight { display: block; margin-top: -2px; margin-bottom: -12px; font-size: 25px; letter-spacing: .05em; line-height: 1; } }

@media screen and (max-width: 768px) { .greetings-mobile-highlight { font-size: 20px; font-weight: 600; } }

.outro-message { display: -ms-flexbox; display: flex; max-width: 922px; margin: 110px auto 132px; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 768px) { .outro-message { -ms-flex-direction: column; flex-direction: column; margin-top: 60px; margin-bottom: 94px; padding: 0 35px; } }

.outro-message-logo { padding-right: 49px; }

@media screen and (max-width: 768px) { .outro-message-logo { text-align: center; margin-bottom: 50px; padding-right: initial; }
  .outro-message-logo img.outro-message-logo-image { width: 146.74px; } }

.outro-message-content-heading { margin-top: -26px; margin-bottom: 5px; font-size: 30px; font-weight: 600; letter-spacing: .05em; line-height: 51px; }

@media screen and (max-width: 768px) { .outro-message-content-heading { margin-bottom: 11px; font-size: 25px; line-height: 43px; } }

.outro-message-content-text { font-size: 16px; letter-spacing: .05em; line-height: 2; }

@media screen and (max-width: 768px) { .outro-message-content-text { font-size: 14px; line-height: 30px; } }

.recruit-intro { text-align: center; }

.recruit-intro-heading { margin-bottom: 28px; font-size: 45px; letter-spacing: .088em; line-height: 1.377778; }

@media screen and (max-width: 768px) { .recruit-intro-heading { margin-bottom: 10px; font-size: 25px; letter-spacing: .05em; line-height: 1.4; } }

.recruit-intro-heading-text { display: block; }

.recruit-intro-heading-second { -webkit-transform: translateX(25px); transform: translateX(25px); }

@media screen and (max-width: 768px) { .recruit-intro-heading-second { -webkit-transform: translateX(10px); transform: translateX(10px); } }

.recruit-intro-text { margin-bottom: 39px; font-size: 16px; letter-spacing: .08em; line-height: 1.9; }

@media screen and (max-width: 768px) { .recruit-intro-text { max-width: 334px; margin: 0 auto 26px; padding: 0 15px; font-size: 12px; letter-spacing: .06em; line-height: 1.8333; } }

@media screen and (max-width: 768px) { .recruit-intro-text-spacer { display: block; margin-top: 13px; } }

.recruit-intro-button { display: inline-block; position: relative; border: 1px solid #707070; border-radius: 10px; width: 100%; max-width: 324px; padding: 27px 35px 25px 35px; font-size: 16px; font-weight: 600; letter-spacing: .04em; }

.recruit-intro-button:after { content: ''; position: absolute; right: 20px; background-image: url("../images/recruit/recruit-intro-button-icon.png"); background-repeat: no-repeat; background-position: center; width: 15px; height: 15.79px; }

.recruit-intro-button-mission { margin-left: 35px; letter-spacing: 0; }

@media screen and (max-width: 768px) { .recruit-intro-button-mission { margin: 24px 0 0; } }

.recruit-slider { position: relative; margin: 0 0 32px; }

@media screen and (max-width: 768px) { .recruit-slider { margin-bottom: 20px; } }

.recruit-slider img { max-width: 100%; }

.recruit-slider-item { background: transparent none no-repeat center center / cover scroll; width: 100%; min-height: 200px; max-height: 383px; padding-top: 26.5%; }

.recruit-slider-nav { overflow: hidden; max-width: 1197px; margin: 0 auto; }

.recruit-slider-nav .slick-current .recruit-slider-nav-item-bg { opacity: 1; }

.recruit-slider-nav .slick-current img { opacity: 1; }

.recruit-slider-nav-item { display: inline-block; padding: 0 16px; }

@media screen and (max-width: 768px) { .recruit-slider-nav-item { padding: 0 7px; } }

.recruit-slider-nav-item-bg { background: transparent none no-repeat center center / cover scroll; width: 173px; height: 96px; opacity: .7; }

@media screen and (max-width: 768px) { .recruit-slider-nav-item-bg { width: 73.79px; height: 40.95px; } }

.recruit-slider-nav img { max-width: 173px; opacity: .7; }

@media screen and (max-width: 768px) { .recruit-slider-nav img { max-width: 74px; } }

.recruit-slider-nav .slick-slide:first-of-type .recruit-slider-nav-item { padding-left: 0; }

.recruit-slider-nav .slick-slide:last-of-type .recruit-slider-nav-item { padding-right: 0; }

.recruit-slider-tracker { overflow-x: scroll; overflow-y: hidden; margin-bottom: -20px; padding-bottom: 20px; white-space: nowrap; will-change: transform; -webkit-user-select: none; -ms-user-select: none; user-select: none; }

.recruit-slider-tracker.active { cursor: grabbing; cursor: -webkit-grabbing; }

.recruit-slider .slick-arrow { display: block; position: absolute; top: 50%; border: none; outline: none; background: transparent none no-repeat center center / 100% 100% scroll; width: 43.6px; height: 82.92px; z-index: 1; cursor: pointer; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 768px) { .recruit-slider .slick-arrow { width: 15.06px; height: 30.12px; }
  .recruit-slider .slick-arrow.prev { left: 15px; }
  .recruit-slider .slick-arrow.next { right: 15px; } }

.recruit-slider .slick-arrow.prev { left: 70px; background-image: url(../images/svg/recruit-slider-arrow-left.svg); }

.recruit-slider .slick-arrow.next { right: 70px; background-image: url(../images/svg/recruit-slider-arrow-right.svg); }

.recruit-slider .slick-arrow.slick-disabled { opacity: .3; cursor: auto; }

.recruit-employee-heading { text-align: center; font-size: 30px; font-weight: 600; letter-spacing: .07em; }

@media screen and (max-width: 768px) { .recruit-employee-heading { font-size: 20px; letter-spacing: .05em; } }

.recruit-employee-heading:after { content: ''; display: block; position: relative; left: 50%; background-color: #3c3c3c; width: 100px; height: 5px; margin-top: 18.5px; -webkit-transform: translateX(-50%); transform: translateX(-50%); }

@media screen and (max-width: 768px) { .recruit-employee-heading:after { width: 63.77px; margin-top: 17px; } }

.recruit-employee-list { display: -ms-flexbox; display: flex; max-width: 1175px; margin: 0 auto; padding-top: 54px; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 768px) { .recruit-employee-list { padding-top: 40px; } }

.recruit-employee-list-item { max-width: 490px; margin-bottom: 77px; -ms-flex: 1 1 auto; flex: 1 1 auto; }

@media screen and (max-width: 768px) { .recruit-employee-list-item { max-width: 292px; margin: 0 auto 34px; } }

.recruit-type { padding-top: 58px; padding-bottom: 115px; }

@media screen and (max-width: 768px) { .recruit-type { padding-bottom: 93px; } }

.recruit-type-heading { text-align: center; margin: 0 0 48px; font-size: 30px; font-weight: 600; letter-spacing: .07em; }

@media screen and (max-width: 768px) { .recruit-type-heading { margin-bottom: 23px; font-size: 20px; letter-spacing: .05em; } }

.recruit-type-heading:after { content: ''; display: block; position: relative; left: 50%; background-color: #3c3c3c; width: 100px; height: 5px; margin-top: 18.5px; -webkit-transform: translateX(-50%); transform: translateX(-50%); }

@media screen and (max-width: 768px) { .recruit-type-heading:after { width: 63.77px; margin-top: 17px; } }

.recruit-type-list { width: 100%; max-width: 1313px; margin: 0 auto; padding: 0 15px; }

@media screen and (max-width: 768px) { .recruit-type-list { padding: 0 25px; } }

.recruit-type-item { margin: 0 0 -3px; }

@media screen and (max-width: 768px) { .recruit-type-item { margin-bottom: 0; } }

.recruit-type-item.is-active .recruit-type-item-heading:after { -webkit-transform: rotate(45deg); transform: rotate(45deg); }

.recruit-type-item.is-active .recruit-type-item-wrapper { margin-bottom: 48px; }

.recruit-type-item-heading { position: relative; border-bottom: solid 2px #CBCBCB; margin: 0 0 26px; padding-top: 15px; padding-bottom: 15px; padding-left: 35px; font-size: 21px; color: #00AFEC; font-weight: 600; letter-spacing: .05em; line-height: 2.1904; cursor: pointer; }

@media screen and (max-width: 768px) { .recruit-type-item-heading { min-height: 66px; margin-bottom: 8px; padding-right: 50px; padding-bottom: 5px; padding-left: 0; font-size: 16px; line-height: 1.375; } }

.recruit-type-item-heading:after { content: ''; position: absolute; top: 19px; right: 20px; border-radius: 100%; background: #fff url("../images/svg/plus-icon.svg") no-repeat center center scroll; box-shadow: 0 3px 12px rgba(0, 0, 0, 0.16); width: 40px; height: 40px; transition: .3s ease; }

@media screen and (max-width: 768px) { .recruit-type-item-heading:after { top: 16px; right: 0; } }

.recruit-type-item-wrapper { display: none; overflow: hidden; box-shadow: 0 3px 18px rgba(0, 0, 0, 0.08); height: auto; }

.recruit-type-item-content { background-color: #fff; padding: 25px 34px 7px; }

@media screen and (max-width: 768px) { .recruit-type-item-content { padding-right: 15px; padding-left: 15px; } }

.recruit-type-item-content-block { display: -ms-flexbox; display: flex; -ms-flex-align: start; align-items: flex-start; }

@media screen and (max-width: 768px) { .recruit-type-item-content-block { -ms-flex-direction: column; flex-direction: column; border-bottom: dashed 1px #dedede; margin-bottom: 20px; } }

.recruit-type-item-content-label { width: 135px; margin-top: 4px; font-size: 16px; color: #808080; font-weight: 600; letter-spacing: .05em; line-height: 1.5625; -ms-flex: 0 0 auto; flex: 0 0 auto; }

@media screen and (max-width: 768px) { .recruit-type-item-content-label { font-size: 12px; } }

.recruit-type-item-content-value { font-size: 20px; color: #808080; letter-spacing: .05em; line-height: 1.7em; }

@media screen and (max-width: 768px) { .recruit-type-item-content-value { font-size: 14px; } }

.recruit-type-item-content-value p, .recruit-type-item-content-value ul { margin: 0 0 22px; }

.recruit-type-item-content-value li { list-style-type: none; }

.employee { display: -ms-flexbox; display: flex; }

.employee-photo { margin-right: 26px; -ms-flex: 0 0 auto; flex: 0 0 auto; -ms-flex-item-align: start; align-self: flex-start; }

@media screen and (max-width: 768px) { .employee-photo { max-width: 109.35px; margin-right: 17px; } }

.employee-info { -ms-flex-item-align: center; -ms-grid-row-align: center; align-self: center; }

.employee-position { display: block; margin-bottom: 12px; font-size: 17px; color: #757575; letter-spacing: .07em; line-height: 1.4117; }

@media screen and (max-width: 768px) { .employee-position { margin-bottom: 9px; font-size: 12px; letter-spacing: .06em; } }

.employee-name { margin-bottom: 46px; font-size: 30px; font-weight: 600; letter-spacing: .07em; }

@media screen and (max-width: 768px) { .employee-name { margin-bottom: 25px; font-size: 22px; } }

.employee-link-coming-soon { display: inline-block; padding-right: 28px; font-size: 18px; color: #757575; letter-spacing: .08em; text-decoration: none; }

@media screen and (max-width: 768px) { .employee-link-coming-soon { font-size: 14px; } }

.employee-link { display: none; background: transparent url("../images/svg/angle-right-icon.svg") no-repeat right 0 scroll; padding-right: 28px; font-size: 18px; font-weight: 600; letter-spacing: .08em; text-decoration: none; }

@media screen and (max-width: 768px) { .employee-link { font-size: 14px; } }

.core-value-inner { min-width: 0; max-width: 1346px; margin: 0 auto; padding: 0 15px; }

.core-value-heading { text-align: center; margin: 0 0 99px; font-size: 30px; color: #3c3c3c; font-weight: 600; letter-spacing: .06em; }

@media screen and (max-width: 768px) { .core-value-heading { margin: 0 0 41px; } }

.core-value-heading:after { content: ''; display: block; border-bottom: solid 5px #3c3c3c; width: 100%; max-width: 94.45px; margin: 19px auto 0; }

.core-value-list { display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: distribute; justify-content: space-around; }

@media screen and (max-width: 768px) { .core-value-list { max-width: 307px; margin: 0 auto; } }

.core-value-list-item { position: relative; width: 100%; max-width: 394px; min-height: 80px; margin: 0 0 61px; padding-top: 2px; padding-left: 143px; }

@media screen and (min-width: 768px) and (max-width: 1250px) { .core-value-list-item { max-width: 380px; } }

@media screen and (max-width: 768px) { .core-value-list-item { margin-bottom: 50px; padding-top: 1px; padding-left: 95px; }
  .core-value-list-item:first-child { margin-bottom: 26px; } }

.core-value-list-item:before { content: "0" counter(core-value-counter); counter-increment: core-value-counter +1; position: absolute; top: 0; left: 0; font-family: "Hiragino Kaku Gothic Std", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, sans-serif; font-size: 80px; color: #D3D3D3; font-weight: 900; line-height: 1; }

@media screen and (max-width: 768px) { .core-value-list-item:before { font-size: 50px; } }

.core-value-list-item-heading { margin: -2px 0 8px; font-size: 27px; font-weight: bold; letter-spacing: .05em; }

@media screen and (min-width: 768px) and (max-width: 1250px) { .core-value-list-item-heading { font-size: 24px; } }

@media screen and (max-width: 768px) { .core-value-list-item-heading { font-size: 25px; } }

.core-value-list-item-text { font-size: 16px; letter-spacing: .05em; line-height: 1.625; }

@media screen and (min-width: 768px) and (max-width: 1250px) { .core-value-list-item-text { letter-spacing: 0; } }

@media screen and (max-width: 768px) { .contact { padding-left: 40px; padding-right: 40px; } }

.contact-intro { text-align: center; }

.l-complete-order .contact-intro, .l-thank-you .contact-intro { margin-bottom: 14px; }

.contact-intro-text { font-size: 16px; line-height: 30px; letter-spacing: .03em; }

@media screen and (max-width: 768px) { .contact-intro-text { font-size: 15px; display: inline; } }

.contact-intro-link { margin-top: 63px; font-size: 20px; line-height: 30px; letter-spacing: .03em; }

@media screen and (max-width: 768px) { .contact-intro-link { margin-top: 1em; } }

.contact-intro-link-button { background-color: #00afec; color: #fff; font-weight: 500; padding: 25px 48px; border-radius: 10px; text-decoration: underline; }

@media screen and (max-width: 768px) { .contact-intro-link-button { display: block; padding: 1em; } }

.contact-intro-button { font-size: 16px; font-weight: bold; text-decoration: none; text-align: center; border: solid 1px #707070; max-width: 324px; display: block; margin: 0 auto; padding-top: 26px; padding-bottom: 26px; border-radius: 10px; transition: 0.35s ease; }

.contact-intro-button:hover { opacity: 0.5; }

.contact-outro { text-align: center; margin-left: 5px; }

.l-complete-order .contact-outro, .l-thank-you .contact-outro { margin-top: 0; margin-bottom: 21px; margin-left: 0; }

@media screen and (max-width: 768px) { .l-complete-order .contact-outro, .l-thank-you .contact-outro { margin-bottom: 23px; } }

.contact-outro-text { font-size: 12px; line-height: 30px; }

.l-complete-order .contact-outro-text, .l-thank-you .contact-outro-text { letter-spacing: 0.02em; }

@media screen and (max-width: 768px) { .l-complete-order .contact-outro-text, .l-thank-you .contact-outro-text { display: inline; } }

.mktoForm { margin: 62px auto 20px; width: 669px !important; }

@media screen and (max-width: 768px) { .mktoForm { width: 100% !important; } }

.mktoForm input[type=text], .mktoForm input[type=url], .mktoForm input[type=email], .mktoForm input[type=tel], .mktoForm input[type=number], .mktoForm input[type=date], .mktoForm textarea.mktoField, .mktoForm select.mktoField { border: 1px solid #707070; }

@media screen and (max-width: 768px) { .mktoForm input[type=text], .mktoForm input[type=url], .mktoForm input[type=email], .mktoForm input[type=tel], .mktoForm input[type=number], .mktoForm input[type=date], .mktoForm textarea.mktoField, .mktoForm select.mktoField { width: 100% !important; } }

.mktoForm input[type=text], .mktoForm input[type=url], .mktoForm input[type=email], .mktoForm input[type=tel], .mktoForm input[type=number], .mktoForm input[type=date], .mktoForm select.mktoField { height: 30px; line-height: 30px; }

.mktoForm div, .mktoForm span, .mktoForm label, .mktoForm p { font-size: 16px; }

.mktoForm span { font-size: 14px !important; line-height: 30px; margin-left: initial !important; width: 100%; display: block; }

.mktoForm .mktoButtonWrap.mktoSimple .mktoButton { border: 1px solid #707070 !important; background-color: transparent !important; background-image: none !important; color: #2c2c2c !important; position: relative; left: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); padding: 27px 0 !important; border-radius: 10px; width: 50%; }

@media screen and (max-width: 768px) { .mktoForm .mktoButtonWrap.mktoSimple .mktoButton { padding: 20px 0 !important; width: 100%; line-height: normal; font-size: 16px !important; } }

.mktoButtonRow { width: 100%; }

@media screen and (max-width: 768px) { .mktoForm .mktoFieldWrap { width: 100%; } }

@media screen and (max-width: 768px) { .mktoForm .mktoFormCol { width: 100%; } }

.mktoForm .mktoRequiredField label.mktoLabel { text-align: right; }

@media screen and (max-width: 768px) { .mktoForm .mktoRequiredField label.mktoLabel { text-align: left; width: auto !important; } }

@media screen and (max-width: 768px) { .mktoForm .mktoLabel { width: auto !important; } }

@media screen and (max-width: 768px) { .mktoForm .mktoFormRow .mktoRequiredField .mktoAsterix { float: right !important; } }

.page-title { font-size: 30px; font-weight: bold; line-height: 40px; }

.featured-cases { margin-top: 148px; }

.featured-cases-list > .slick-list { margin-bottom: 50px; }

.featured-cases-list > .slick-dots { text-align: center; }

.featured-cases-list > .slick-dots > li { display: inline-block; margin: 0 11.63px; }

.featured-cases-list > .slick-dots > li > button { color: transparent; background-color: #33439B; opacity: .26; border-radius: 50%; width: 21.28px; height: 21.28px; cursor: pointer; }

.featured-cases-list > .slick-dots > li.slick-active > button { opacity: 1; }

.featured-cases-list-item { padding: 0 25px; }

.featured-case { box-shadow: 0 3px 6px 1px rgba(0, 0, 0, 0.16); }

.featured-case-thumb { height: 245px; background-size: cover; background-position: center; background-repeat: no-repeat; }

.featured-case-heading { font-size: 25px; font-weight: 300; margin-top: 17px; padding: 0 21.5px 23px; color: #6F7579; }

.featured-case-subheading { font-weight: bold; font-size: 35px; padding: 0 21.5px 20px; color: #6F7579; }

.service { display: block; position: relative; width: 100%; }

.service:before { content: ''; display: block; position: absolute; top: 0; right: 0; background: url("../images/service/highlight.png") no-repeat; background-position: top right; background-size: contain; width: 70%; padding-bottom: 40%; }

@media screen and (max-width: 768px) { .service:before { top: -5%; background: url("../images/service/highlight-1.png") no-repeat; background-size: contain; width: 100%; padding-bottom: 85%; } }

@media screen and (max-width: 700px) { .service:before { top: -4%; } }

@media screen and (max-width: 600px) { .service:before { top: -3%; } }

@media screen and (max-width: 555px) { .service:before { top: -2%; } }

@media screen and (max-width: 505px) { .service:before { top: -1%; } }

@media screen and (max-width: 430px) { .service:before { top: 0; } }

.service-heading { display: block; position: relative; width: 100%; }

@media screen and (max-width: 768px) { .service-heading { padding: 0 20px; } }

.service-heading-title { display: block; position: relative; text-align: center; margin-bottom: 18px; font-family: "ShinGoPro", sans-serif; font-size: 35px; letter-spacing: .088em; line-height: 1.4; }

@media screen and (min-width: 768px) { .service-heading-title { font-size: 35px; } }

@media screen and (min-width: 1350px) { .service-heading-title { font-size: 45px; } }

@media screen and (max-width: 768px) { .service-heading-title { margin-bottom: 20px; font-size: 22px; } }

@media screen and (max-width: 374px) { .service-heading-title { font-size: 18px; } }

.service-heading-sub { display: block; position: relative; text-align: center; margin-bottom: 30px; font-family: "ShinGoPro", sans-serif; font-size: 16px; letter-spacing: .08em; line-height: 2; }

@media screen and (max-width: 768px) { .service-heading-sub { font-size: 12px; } }

.service-highlight, .service-highlight-inner { display: block; position: relative; width: 100%; }

.service-highlight { max-width: 1500px; margin: 0 auto 35px; }

.service-highlight-inner { left: 20px; width: 100%; max-width: 1241px; padding: 38px 0; }

@media screen and (max-width: 768px) { .service-highlight-inner { display: -ms-flexbox; display: flex; left: 0; -ms-flex-direction: column; flex-direction: column; -ms-flex-wrap: nowrap; flex-wrap: nowrap; } }

.service-payke-logo { display: block; position: relative; background: url("../images/service/payke.png") no-repeat; background-position: top; background-size: contain; width: 100%; min-width: 400px; height: 104px; }

@media screen and (max-width: 768px) { .service-payke-logo { width: 100%; min-width: auto; height: 57px; } }

.service-download, .service-phone { display: inline-block; vertical-align: middle; }

@media screen and (max-width: 768px) { .service-download, .service-phone { display: block; } }

.service-phone { position: relative; width: 377px; height: 715px; padding: 33px 0px 35px; }

@media screen and (max-width: 768px) { .service-phone { width: 212px; height: 0; height: 400px; margin: 0 auto 20px; padding: 15px 0px 25px; -ms-flex-order: 1; order: 1; } }

.service-phone:before { content: ''; display: block; position: absolute; top: 0; left: 0; background: url("../images/service/phone-border.png") no-repeat; background-position: center; background-size: contain; width: 100%; height: 100%; z-index: 2; pointer-events: none; }

.service-phone-inner { display: block; overflow: hidden; border-radius: 20px; background: #fff; width: 79%; height: 100%; margin: 0 auto; }

.service-phone-slider { display: block; position: relative; width: 100%; height: 100%; }

.service-phone-slider-item { display: block; position: relative; width: 100%; }

.service-phone-slider-item img { display: block; width: 295px; margin: 0 auto; }

@media screen and (max-width: 768px) { .service-phone-slider-item img { width: 167px; } }

.service-download { margin-right: 180px; }

@media screen and (min-width: 1250px) { .service-download { margin-right: 241px; } }

@media screen and (max-width: 768px) { .service-download { margin-right: 0; padding: 0 30px; -ms-flex-order: 2; order: 2; } }

.service-download-desc { display: block; text-align: center; margin-top: 37px; font-family: "ShinGoPro", sans-serif; font-size: 28px; letter-spacing: .088em; line-height: 1.5em; }

@media screen and (max-width: 768px) { .service-download-desc { margin-top: 16px; font-size: 14px; } }

.service-download-button { display: block; position: relative; width: 100%; max-width: 490px; margin: 65px auto 0; }

@media screen and (max-width: 768px) { .service-download-button { width: 84%; max-width: 280px; margin: 30px auto 0; } }

.service-btn-download { display: inline-block; text-align: center; width: calc((100% - 50px) / 2); height: 65px; }

@media screen and (max-width: 768px) { .service-btn-download { width: calc((100% - 30px) / 2); height: 36px; } }

.service-btn-download .service-btn-download-link { display: block; position: relative; outline: 0; width: 100%; height: 100%; cursor: pointer; transition: all .5s ease; }

.service-btn-download .service-btn-download-link:hover { opacity: 0.8; }

.service-btn-download-apple .service-btn-download-link { background: url("../images/service/download-apple.png") no-repeat; background-size: contain; }

.service-btn-download-android { margin-left: 45px; }

@media screen and (max-width: 768px) { .service-btn-download-android { margin-left: 25px; } }

.service-btn-download-android .service-btn-download-link { background: url("../images/service/download-android.png") no-repeat; background-size: contain; }

.service-process { display: block; position: relative; width: 100%; max-width: 1752px; margin: 0 auto; padding: 0 30px 100px; }

@media screen and (max-width: 768px) { .service-process { padding: 0 30px 50px; } }

.service-process-item { display: block; position: relative; width: 100%; margin-top: 90px; }

@media screen and (max-width: 768px) { .service-process-item { margin-top: 60px; } }

@media screen and (min-width: 1440px) { .service-process-item:nth-child(1) { width: 1350px; margin: 50px auto 0; } }

@media screen and (max-width: 768px) { .service-process-item:nth-child(1) { margin-top: 10px; } }

.service-process-item:nth-child(1) img { margin-left: auto; }

@media screen and (max-width: 768px) { .service-process-item:nth-child(1) .service-process-desc { display: none; } }

.service-process-item:nth-child(1) .service-process-desc img { display: block; position: relative; top: -25px; left: 30px; width: 70%; margin: 0 auto; }

@media screen and (min-width: 1550px) { .service-process-item:nth-child(2) { width: 1519px; margin-left: auto; } }

.service-process-item:nth-child(2) img { display: block; margin-left: auto; }

@media screen and (min-width: 769px) { .service-process-item:nth-child(2) .service-process-desc { top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); } }

@media screen and (min-width: 1440px) { .service-process-item:nth-child(3) { width: 1350px; margin: 0 auto 0; } }

.service-process-item:nth-child(3) img { display: block; }

@media screen and (min-width: 769px) { .service-process-item:nth-child(3) .service-process-desc { top: 50%; left: 52%; -webkit-transform: translateY(-50%); transform: translateY(-50%); } }

.service-process-img-sp { display: block; width: 100%; }

@media screen and (min-width: 769px) { .service-process-img-sp { display: none; } }

.service-process-img-pc { display: none; width: 56%; }

@media screen and (min-width: 769px) { .service-process-img-pc { display: block; } }

.service-process-inner { display: block; position: relative; width: 100%; }

.service-process-inner img { position: relative; width: 50%; max-width: 732px; }

@media screen and (max-width: 768px) { .service-process-inner img { width: 100%; max-width: 100%; } }

.service-process-desc { display: block; position: absolute; width: 45%; max-width: 747px; min-width: 590px; }

@media screen and (max-width: 768px) { .service-process-desc { position: relative; width: 100%; min-width: 0; margin-bottom: 30px; } }

.service-process-desc-title { display: block; text-align: center; margin-bottom: 19px; font-family: "ShinGoPro", sans-serif; font-size: 35px; letter-spacing: .088em; line-height: 1.4; }

@media screen and (min-width: 1200px) { .service-process-desc-title { font-size: 35px; } }

@media screen and (min-width: 1350px) { .service-process-desc-title { font-size: 45px; } }

@media screen and (max-width: 768px) { .service-process-desc-title { margin-bottom: 20px; font-size: 22px; } }

@media screen and (max-width: 374px) { .service-process-desc-title { font-size: 18px; } }

.service-process-desc-text { display: block; text-align: center; font-family: "ShinGoPro", sans-serif; font-size: 15px; letter-spacing: .08em; line-height: 1.9; }

@media screen and (min-width: 1300px) { .service-process-desc-text { font-size: 16px; } }

@media screen and (max-width: 768px) { .service-process-desc-text { font-size: 12px; line-height: 1.7; } }

.service-stats { background: #F8F8F8; padding: 84px 0; }

@media screen and (max-width: 768px) { .service-stats { padding: 40px 20px; } }

.service-stats:before { content: ''; display: block; position: relative; background: url("../images/service/stats-icon.png") no-repeat; background-size: contain; width: 50px; height: 58px; margin: 0 auto 38px; }

.service-stats-heading { display: block; position: relative; text-align: center; margin-bottom: 80px; font-family: "ShinGoPro", sans-serif; font-size: 28px; color: #707070; letter-spacing: .088em; }

@media screen and (max-width: 768px) { .service-stats-heading { font-size: 18px; line-height: 1.5; } }

.service-stats-heading:before { content: ''; display: block; position: absolute; bottom: -22px; left: 50%; background-color: #707070; width: 100px; height: 5px; -webkit-transform: translateX(-50%); transform: translateX(-50%); }

.service-stats-list { display: -ms-flexbox; display: flex; position: relative; width: 100%; max-width: 1416px; margin: 0 auto; padding: 0 30px; -ms-flex-pack: distribute; justify-content: space-around; -ms-flex-wrap: wrap; flex-wrap: wrap; }

@media screen and (min-width: 1450px) { .service-stats-list { padding: 0; } }

@media screen and (max-width: 768px) { .service-stats-list { -ms-flex-direction: column; flex-direction: column; -ms-flex-align: center; align-items: center; } }

.service-stats-item { display: block; position: relative; border-radius: 50%; background-color: #fff; box-shadow: 0px 0px 24px 3px rgba(112, 112, 112, 0.08); width: 260px; height: 260px; }

@media screen and (max-width: 768px) { .service-stats-item { width: 220px; height: 220px; } }

@media screen and (min-width: 1400px) { .service-stats-item { width: 303px; height: 303px; } }

@media screen and (max-width: 768px) { .service-stats-item:not(:last-child) { margin-bottom: 30px; } }

.service-stats-label { display: block; text-align: center; font-family: "ShinGoPro", sans-serif; font-size: 24px; letter-spacing: .088em; line-height: 1.4; }

@media screen and (max-width: 768px) { .service-stats-label { font-size: 17px; } }

.service-stats-item-inner { display: block; position: relative; top: 50%; width: 100%; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.service-stats-location { display: block; text-align: center; margin: 20px 0 10px; font-family: "ShinGoPro", sans-serif; font-size: 20px; }

@media screen and (min-width: 1440px) { .service-stats-location { margin: 31px 0 10px; } }

@media screen and (max-width: 768px) { .service-stats-location { font-size: 13px; } }

.service-stats-number { display: inline-block; position: relative; text-align: center; width: 100%; }

.service-stats-number-text { display: inline-block; text-align: center; margin-right: -4px; font-family: "Futura", sans-serif; font-size: 85px; color: #00AFEC; font-weight: 500; }

@media screen and (min-width: 1200px) { .service-stats-number-text { font-size: 97px; } }

@media screen and (max-width: 768px) { .service-stats-number-text { font-size: 64px; } }

.service-stats-number-desc { display: inline-block; font-family: "ShinGoPro", sans-serif; font-size: 28px; color: #707070; }

@media screen and (max-width: 768px) { .service-stats-number-desc { font-size: 20px; } }

.service-flag { display: -ms-flexbox; display: flex; position: relative; width: 100%; margin-top: 75px; -ms-flex-pack: center; justify-content: center; }

@media screen and (max-width: 768px) { .service-flag { width: 250px; margin: 30px auto 0; -ms-flex-wrap: wrap; flex-wrap: wrap; -ms-flex-pack: justify; justify-content: space-between; } }

.service-flag-item { display: block; position: relative; }

.service-flag-item:not(:last-child) { margin-right: 10px; }

@media screen and (max-width: 768px) { .service-flag-item:not(:last-child) { width: 45%; } }

.service-flag-icon { display: inline-block; position: relative; vertical-align: middle; background-size: contain; width: 45px; height: 45px; }

.service-flag-lang { display: inline-block; vertical-align: middle; }

.service-flag-icon-japan { background-image: url("../images/svg/flag/japan.svg"); }

.service-flag-icon-china { background-image: url("../images/svg/flag/china.svg"); }

.service-flag-icon-rep-china { background-image: url("../images/svg/flag/republic-china.svg"); }

.service-flag-icon-america { background-image: url("../images/svg/flag/america.svg"); }

.service-flag-icon-korea { background-image: url("../images/svg/flag/korea.svg"); }

.service-flag-icon-thai { background-image: url("../images/svg/flag/thailand.svg"); }

.service-flag-icon-vietnam { background-image: url("../images/svg/flag/vietnam.svg"); }

.service-download-bottom { display: block; width: 100%; max-width: 932px; margin: 0 auto; padding: 80px 0; }

@media screen and (max-width: 768px) { .service-download-bottom { padding: 45px 0; } }

.service-download-bottom .service-payke-logo { border-radius: 20px; background: #fff; box-shadow: 0px 6px 12px 0px rgba(112, 112, 112, 0.1); width: 108px; min-width: auto; height: 111px; margin: 0 auto; }

@media screen and (max-width: 768px) { .service-download-bottom .service-payke-logo { border-radius: 15px; width: 89px; height: 90px; } }

.service-download-bottom .service-payke-logo:before { content: ''; display: block; position: relative; top: 50%; background-image: url("../images/service/payke-logo.png"); background-repeat: no-repeat; background-size: contain; width: 65px; height: 80px; margin: 0 auto; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

@media screen and (max-width: 768px) { .service-download-bottom .service-payke-logo:before { width: 50px; height: 60px; } }

.service-download-bottom .service-download-bottom-desc { margin-top: 20px; font-size: 28px; letter-spacing: .088em; line-height: 1.4285; text-align: center; color: #3e3e3e; }

@media screen and (max-width: 768px) { .service-download-bottom .service-download-bottom-desc { font-size: 18px; } }

.service-download-bottom .service-download-button { max-width: 100%; }

@media screen and (max-width: 768px) { .service-download-bottom .service-download-button { max-width: 246px; } }

.service-download-bottom .service-download-button .service-btn-download-link { display: inline-block; vertical-align: top; width: 300px; }

@media screen and (max-width: 768px) { .service-download-bottom .service-download-button .service-btn-download-link { width: 100%; } }

.service-download-bottom .service-download-button img { display: inline-block; vertical-align: top; height: 90px; margin-left: 35px; }

@media screen and (max-width: 768px) { .service-download-bottom .service-download-button img { display: none; } }

.service-download-bottom .service-btn-download { height: 90px; }

@media screen and (max-width: 768px) { .service-download-bottom .service-btn-download { width: 100%; height: 72px; margin-bottom: 20px; margin-left: 0; } }

.advertising { background-color: #F8F8F8; overflow: hidden; }

.advertising-heading { font-size: 30px; text-align: center; letter-spacing: .08em; color: #3c3c3c; margin: 0 0 43px; }

.advertising-heading:after { content: ''; display: block; border-bottom: solid 5px #3c3c3c; width: 100px; margin: 20px auto 0; }

@media screen and (max-width: 768px) { .advertising-heading { font-size: 24px; margin-bottom: 48px; }
  .advertising-heading:after { width: 70px; } }

.advertising-desc { font-size: 16px; text-align: center; letter-spacing: .08em; color: #2c2c2c; margin: 0 0 70px; }

@media screen and (max-width: 768px) { .advertising-desc { display: none; } }

.advertising-phones { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-wrap: wrap; flex-wrap: wrap; width: 100%; max-width: 1393px; margin: 0 auto; padding: 0 15px; }

@media screen and (max-width: 768px) { .advertising-phones { -ms-flex-direction: column; flex-direction: column; -ms-flex-align: center; align-items: center; } }

.advertising-phone-item { position: relative; max-width: 250px; }

.advertising-phone-item img { max-width: 100%; }

@media screen and (max-width: 768px) { .advertising-phone-item { max-width: 160px; margin: 0 0 50px; } }

.advertising-phone-item:nth-child(2) { max-width: 312px; }

@media screen and (max-width: 768px) { .advertising-phone-item:nth-child(2) { max-width: 200px; } }

.advertising-phone-item img { max-width: 100%; }

.advertising-phone-item-title { font-size: 22px; font-weight: bold; text-align: center; letter-spacing: .08em; margin: 0 0 27px; }

@media screen and (max-width: 768px) { .advertising-phone-item-title { font-size: 20px; font-weight: 600; margin-bottom: 22px; } }

.advertising-articles { max-width: 1244px; margin: 0 auto; padding-top: 126px; padding: 126px 5px 0; }

@media screen and (max-width: 768px) { .advertising-articles { margin-top: 21px; padding-top: 0; } }

.advertising-article { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; -ms-flex-align: center; align-items: center; margin: 0 0 101px; }

@media screen and (max-width: 768px) { .advertising-article { -ms-flex-direction: column-reverse; flex-direction: column-reverse; margin: 0 0 61px; } }

.advertising-article-image { -ms-flex: 0 0 auto; flex: 0 0 auto; text-align: center; width: 454px; }

.advertising-article-image img { max-width: 100%; }

@media screen and (max-width: 768px) { .advertising-article-image { max-width: 304px; } }

.advertising-article-text { -ms-flex: 1 1 auto; flex: 1 1 auto; max-width: 733px; }

@media screen and (max-width: 768px) { .advertising-article-text { max-width: 304px; margin: 0 0 18px; } }

.advertising-article-text-title { font-size: 26px; letter-spacing: .08em; color: #00afec; margin: 0 0 26px; }

@media screen and (max-width: 768px) { .advertising-article-text-title { font-size: 20px; text-align: center; margin: 0 0 19px; } }

.advertising-article-text-list { font-size: 16px; letter-spacing: .08em; line-height: 1.875; }

@media screen and (max-width: 768px) { .advertising-article-text-list { font-size: 14px; letter-spacing: .06em; } }

.advertising-article-text-list li { display: block; position: relative; }

.advertising-article-text-list li:before { content: ''; background-color: #00afec; float: left; margin-right: 12px; position: relative; top: 11px; left: 2px; display: inline-block; width: 9px; height: 9px; }

@media screen and (max-width: 768px) { .advertising-article-text-list li { padding-left: 0; margin: 0 0 10px; }
  .advertising-article-text-list li:before { position: relative; top: 8px; left: 1px; display: inline-block; width: 8px; height: 8px; float: left; margin-right: 10px; } }

.advertising-flow { padding-top: 85px; padding-left: 15px; padding-right: 15px; }

@media screen and (max-width: 768px) { .advertising-flow { padding-top: 41px; } }

.advertising-flow-heading { font-size: 30px; text-align: center; letter-spacing: .08em; color: #3c3c3c; margin: 0 0 95px; }

.advertising-flow-heading:after { content: ''; display: block; border-bottom: solid 5px #3c3c3c; width: 100px; margin: 20px auto 0; }

@media screen and (max-width: 768px) { .advertising-flow-heading { font-size: 24px; margin: 0 0 49px; }
  .advertising-flow-heading:after { width: 70px; } }

.advertising-flow-heading-pc { display: block; }

@media screen and (max-width: 768px) { .advertising-flow-heading-pc { display: none; } }

.advertising-flow-heading-sp { display: none; }

@media screen and (max-width: 768px) { .advertising-flow-heading-sp { display: block; } }

.advertising-flow-list { display: -ms-flexbox; display: flex; -ms-flex-pack: justify; justify-content: space-between; }

@media screen and (max-width: 768px) { .advertising-flow-list { -ms-flex-direction: column; flex-direction: column; -ms-flex-align: center; align-items: center; } }

.advertising-flow-list-item { text-align: center; position: relative; width: 25%; }

@media screen and (max-width: 768px) { .advertising-flow-list-item { width: auto; margin-bottom: 57px; } }

.advertising-flow-list-item:first-child:after { display: none; }

.advertising-flow-list-item:after { content: ''; -ms-flex: 0 0 auto; flex: 0 0 auto; display: block; background-image: url("../images/svg/ad-flow-arrow.svg"); position: absolute; top: 58px; left: -8.5px; width: 17px; height: 32px; }

@media screen and (max-width: 768px) { .advertising-flow-list-item:after { display: none; } }

.advertising-flow-list-item-wrap { max-width: 323px; margin: 0 auto; }

.advertising-flow-list-item img { max-width: 150px; }

.advertising-flow-list-item-title { font-size: 26px; font-weight: normal; letter-spacing: .08em; color: #00afec; margin-top: 29px; margin-bottom: 14px; }

@media screen and (max-width: 768px) { .advertising-flow-list-item-title { font-size: 20px; margin-bottom: 19px; } }

.advertising-flow-list-item-text { font-size: 17px; font-weight: normal; text-align: left; letter-spacing: .07em; line-height: 1.6471; color: #2c2c2c; max-width: 257px; margin: 0 auto; }

@media screen and (max-width: 768px) { .advertising-flow-list-item-text { font-size: 14px; line-height: 1.8571; max-width: 316px; }
  .advertising-flow-list-item-text br { display: none; } }

.advertising-phone-item-4 .svg:after { content: ''; background: transparent url("../images/phase-4/ad-phone-4-bubble@2x.png") no-repeat center center/100% 100% scroll; position: absolute; top: 23px; right: -84px; display: block; width: 175px; height: 175px; }

@media screen and (max-width: 1500px) { .advertising-phone-item-4 .svg:after { top: 23px; right: -49px; width: 138px; height: 138px; } }

@media screen and (max-width: 1439px) { .advertising-phone-item-4 .svg:after { top: 15px; right: -28px; } }

@media screen and (max-width: 768px) { .advertising-phone-item-4 .svg:after { top: unset; right: -85px; width: 175px; height: 175px; bottom: -28px; } }

.advertising-article-1 { display: none; }

.advertising-article-1 .advertising-article-text { -webkit-transform: translate(9px, 16px); transform: translate(9px, 16px); }

@media screen and (max-width: 768px) { .advertising-article-1 .advertising-article-text { -webkit-transform: translate(0); transform: translate(0); } }

@media screen and (max-width: 768px) { .advertising-article-2 { margin-bottom: 13px; } }

.advertising-article-2 .advertising-article-text { -webkit-transform: translate(9px, -5px); transform: translate(9px, -5px); }

@media screen and (max-width: 768px) { .advertising-article-2 .advertising-article-text { -webkit-transform: translate(0); transform: translate(0); margin-bottom: 13px; } }

@media screen and (max-width: 768px) { .advertising-article-2 .advertising-article-image { max-width: 304px; } }

.u-clearfix:after { content: " "; display: block; clear: both; }

@media screen and (min-width: 769px) { .u-hidden-pc { display: none; } }

@media screen and (max-width: 768px) { .u-hidden-sp { display: none; } }
/*# sourceMappingURL=maps/style.css.map */