@charset "UTF-8";
@import url(animate.css);
@import url(css/hamburgers/hamburgers.css);
@import url(css/flickity.css);

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: inherit;
    font-size: 100%;
    vertical-align: baseline;
}

html {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

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

caption,
th,
td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}

q,
blockquote {
    quotes: none;
}

q:before,
q:after,
blockquote:before,
blockquote:after {
    content: "";
    content: none;
}

a img {
    border: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
}

/* FONT PATH
 * -------------------------- */

@font-face {
    font-family: 'FontAwesome';
    src: url("fonts/fontawesome-webfont.eot?v=4.1.0");
    src: url("fonts/fontawesome-webfont.eot?#iefix&v=4.1.0") format("embedded-opentype"), url("fonts/fontawesome-webfont.woff?v=4.1.0") format("woff"), url("fonts/fontawesome-webfont.ttf?v=4.1.0") format("truetype"), url("fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular") format("svg");
    font-weight: normal;
    font-style: normal;
}

.fa {
    display: inline-block;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
   readers do not read off random characters that represent icons */

.fa-glass:before {
    content: "";
}

.fa-music:before {
    content: "";
}

.fa-search:before {
    content: "";
}

.fa-envelope-o:before {
    content: "";
}

.fa-heart:before {
    content: "";
}

.fa-star:before {
    content: "";
}

.fa-star-o:before {
    content: "";
}

.fa-user:before {
    content: "";
}

.fa-film:before {
    content: "";
}

.fa-th-large:before {
    content: "";
}

.fa-th:before {
    content: "";
}

.fa-th-list:before {
    content: "";
}

.fa-check:before {
    content: "";
}

.fa-times:before {
    content: "";
}

.fa-search-plus:before {
    content: "";
}

.fa-search-minus:before {
    content: "";
}

.fa-power-off:before {
    content: "";
}

.fa-signal:before {
    content: "";
}

.fa-gear:before,
.fa-cog:before {
    content: "";
}

.fa-trash-o:before {
    content: "";
}

.fa-home:before {
    content: "";
}

.fa-file-o:before {
    content: "";
}

.fa-clock-o:before {
    content: "";
}

.fa-road:before {
    content: "";
}

.fa-download:before {
    content: "";
}

.fa-arrow-circle-o-down:before {
    content: "";
}

.fa-arrow-circle-o-up:before {
    content: "";
}

.fa-inbox:before {
    content: "";
}

.fa-play-circle-o:before {
    content: "";
}

.fa-rotate-right:before,
.fa-repeat:before {
    content: "";
}

.fa-refresh:before {
    content: "";
}

.fa-list-alt:before {
    content: "";
}

.fa-lock:before {
    content: "";
}

.fa-flag:before {
    content: "";
}

.fa-headphones:before {
    content: "";
}

.fa-volume-off:before {
    content: "";
}

.fa-volume-down:before {
    content: "";
}

.fa-volume-up:before {
    content: "";
}

.fa-qrcode:before {
    content: "";
}

.fa-barcode:before {
    content: "";
}

.fa-tag:before {
    content: "";
}

.fa-tags:before {
    content: "";
}

.fa-book:before {
    content: "";
}

.fa-bookmark:before {
    content: "";
}

.fa-print:before {
    content: "";
}

.fa-camera:before {
    content: "";
}

.fa-font:before {
    content: "";
}

.fa-bold:before {
    content: "";
}

.fa-italic:before {
    content: "";
}

.fa-text-height:before {
    content: "";
}

.fa-text-width:before {
    content: "";
}

.fa-align-left:before {
    content: "";
}

.fa-align-center:before {
    content: "";
}

.fa-align-right:before {
    content: "";
}

.fa-align-justify:before {
    content: "";
}

.fa-list:before {
    content: "";
}

.fa-dedent:before,
.fa-outdent:before {
    content: "";
}

.fa-indent:before {
    content: "";
}

.fa-video-camera:before {
    content: "";
}

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
    content: "";
}

.fa-pencil:before {
    content: "";
}

.fa-map-marker:before {
    content: "";
}

.fa-adjust:before {
    content: "";
}

.fa-tint:before {
    content: "";
}

.fa-edit:before,
.fa-pencil-square-o:before {
    content: "";
}

.fa-share-square-o:before {
    content: "";
}

.fa-check-square-o:before {
    content: "";
}

.fa-arrows:before {
    content: "";
}

.fa-step-backward:before {
    content: "";
}

.fa-fast-backward:before {
    content: "";
}

.fa-backward:before {
    content: "";
}

.fa-play:before {
    content: "";
}

.fa-pause:before {
    content: "";
}

.fa-stop:before {
    content: "";
}

.fa-forward:before {
    content: "";
}

.fa-fast-forward:before {
    content: "";
}

.fa-step-forward:before {
    content: "";
}

.fa-eject:before {
    content: "";
}

.fa-chevron-left:before {
    content: "";
}

.fa-chevron-right:before {
    content: "";
}

.fa-plus-circle:before {
    content: "";
}

.fa-minus-circle:before {
    content: "";
}

.fa-times-circle:before {
    content: "";
}

.fa-check-circle:before {
    content: "";
}

.fa-question-circle:before {
    content: "";
}

.fa-info-circle:before {
    content: "";
}

.fa-crosshairs:before {
    content: "";
}

.fa-times-circle-o:before {
    content: "";
}

.fa-check-circle-o:before {
    content: "";
}

.fa-ban:before {
    content: "";
}

.fa-arrow-left:before {
    content: "";
}

.fa-arrow-right:before {
    content: "";
}

.fa-arrow-up:before {
    content: "";
}

.fa-arrow-down:before {
    content: "";
}

.fa-mail-forward:before,
.fa-share:before {
    content: "";
}

.fa-expand:before {
    content: "";
}

.fa-compress:before {
    content: "";
}

.fa-plus:before {
    content: "";
}

.fa-minus:before {
    content: "";
}

.fa-asterisk:before {
    content: "";
}

.fa-exclamation-circle:before {
    content: "";
}

.fa-gift:before {
    content: "";
}

.fa-leaf:before {
    content: "";
}

.fa-fire:before {
    content: "";
}

.fa-eye:before {
    content: "";
}

.fa-eye-slash:before {
    content: "";
}

.fa-warning:before,
.fa-exclamation-triangle:before {
    content: "";
}

.fa-plane:before {
    content: "";
}

.fa-calendar:before {
    content: "";
}

.fa-random:before {
    content: "";
}

.fa-comment:before {
    content: "";
}

.fa-magnet:before {
    content: "";
}

.fa-chevron-up:before {
    content: "";
}

.fa-chevron-down:before {
    content: "";
}

.fa-retweet:before {
    content: "";
}

.fa-shopping-cart:before {
    content: "";
}

.fa-folder:before {
    content: "";
}

.fa-folder-open:before {
    content: "";
}

.fa-arrows-v:before {
    content: "";
}

.fa-arrows-h:before {
    content: "";
}

.fa-bar-chart-o:before {
    content: "";
}

.fa-twitter-square:before {
    content: "";
}

.fa-facebook-square:before {
    content: "";
}

.fa-camera-retro:before {
    content: "";
}

.fa-key:before {
    content: "";
}

.fa-gears:before,
.fa-cogs:before {
    content: "";
}

.fa-comments:before {
    content: "";
}

.fa-thumbs-o-up:before {
    content: "";
}

.fa-thumbs-o-down:before {
    content: "";
}

.fa-star-half:before {
    content: "";
}

.fa-heart-o:before {
    content: "";
}

.fa-sign-out:before {
    content: "";
}

.fa-linkedin-square:before {
    content: "";
}

.fa-thumb-tack:before {
    content: "";
}

.fa-external-link:before {
    content: "";
}

.fa-sign-in:before {
    content: "";
}

.fa-trophy:before {
    content: "";
}

.fa-github-square:before {
    content: "";
}

.fa-upload:before {
    content: "";
}

.fa-lemon-o:before {
    content: "";
}

.fa-phone:before {
    content: "";
}

.fa-square-o:before {
    content: "";
}

.fa-bookmark-o:before {
    content: "";
}

.fa-phone-square:before {
    content: "";
}

.fa-twitter:before {
    content: "";
}

.fa-facebook:before {
    content: "";
}

.fa-github:before {
    content: "";
}

.fa-unlock:before {
    content: "";
}

.fa-credit-card:before {
    content: "";
}

.fa-rss:before {
    content: "";
}

.fa-hdd-o:before {
    content: "";
}

.fa-bullhorn:before {
    content: "";
}

.fa-bell:before {
    content: "";
}

.fa-certificate:before {
    content: "";
}

.fa-hand-o-right:before {
    content: "";
}

.fa-hand-o-left:before {
    content: "";
}

.fa-hand-o-up:before {
    content: "";
}

.fa-hand-o-down:before {
    content: "";
}

.fa-arrow-circle-left:before {
    content: "";
}

.fa-arrow-circle-right:before {
    content: "";
}

.fa-arrow-circle-up:before {
    content: "";
}

.fa-arrow-circle-down:before {
    content: "";
}

.fa-globe:before {
    content: "";
}

.fa-wrench:before {
    content: "";
}

.fa-tasks:before {
    content: "";
}

.fa-filter:before {
    content: "";
}

.fa-briefcase:before {
    content: "";
}

.fa-arrows-alt:before {
    content: "";
}

.fa-group:before,
.fa-users:before {
    content: "";
}

.fa-chain:before,
.fa-link:before {
    content: "";
}

.fa-cloud:before {
    content: "";
}

.fa-flask:before {
    content: "";
}

.fa-cut:before,
.fa-scissors:before {
    content: "";
}

.fa-copy:before,
.fa-files-o:before {
    content: "";
}

.fa-paperclip:before {
    content: "";
}

.fa-save:before,
.fa-floppy-o:before {
    content: "";
}

.fa-square:before {
    content: "";
}

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
    content: "";
}

.fa-list-ul:before {
    content: "";
}

.fa-list-ol:before {
    content: "";
}

.fa-strikethrough:before {
    content: "";
}

.fa-underline:before {
    content: "";
}

.fa-table:before {
    content: "";
}

.fa-magic:before {
    content: "";
}

.fa-truck:before {
    content: "";
}

.fa-pinterest:before {
    content: "";
}

.fa-pinterest-square:before {
    content: "";
}

.fa-google-plus-square:before {
    content: "";
}

.fa-google-plus:before {
    content: "";
}

.fa-money:before {
    content: "";
}

.fa-caret-down:before {
    content: "";
}

.fa-caret-up:before {
    content: "";
}

.fa-caret-left:before {
    content: "";
}

.fa-caret-right:before {
    content: "";
}

.fa-columns:before {
    content: "";
}

.fa-unsorted:before,
.fa-sort:before {
    content: "";
}

.fa-sort-down:before,
.fa-sort-desc:before {
    content: "";
}

.fa-sort-up:before,
.fa-sort-asc:before {
    content: "";
}

.fa-envelope:before {
    content: "";
}

.fa-linkedin:before {
    content: "";
}

.fa-rotate-left:before,
.fa-undo:before {
    content: "";
}

.fa-legal:before,
.fa-gavel:before {
    content: "";
}

.fa-dashboard:before,
.fa-tachometer:before {
    content: "";
}

.fa-comment-o:before {
    content: "";
}

.fa-comments-o:before {
    content: "";
}

.fa-flash:before,
.fa-bolt:before {
    content: "";
}

.fa-sitemap:before {
    content: "";
}

.fa-umbrella:before {
    content: "";
}

.fa-paste:before,
.fa-clipboard:before {
    content: "";
}

.fa-lightbulb-o:before {
    content: "";
}

.fa-exchange:before {
    content: "";
}

.fa-cloud-download:before {
    content: "";
}

.fa-cloud-upload:before {
    content: "";
}

.fa-user-md:before {
    content: "";
}

.fa-stethoscope:before {
    content: "";
}

.fa-suitcase:before {
    content: "";
}

.fa-bell-o:before {
    content: "";
}

.fa-coffee:before {
    content: "";
}

.fa-cutlery:before {
    content: "";
}

.fa-file-text-o:before {
    content: "";
}

.fa-building-o:before {
    content: "";
}

.fa-hospital-o:before {
    content: "";
}

.fa-ambulance:before {
    content: "";
}

.fa-medkit:before {
    content: "";
}

.fa-fighter-jet:before {
    content: "";
}

.fa-beer:before {
    content: "";
}

.fa-h-square:before {
    content: "";
}

.fa-plus-square:before {
    content: "";
}

.fa-angle-double-left:before {
    content: "";
}

.fa-angle-double-right:before {
    content: "";
}

.fa-angle-double-up:before {
    content: "";
}

.fa-angle-double-down:before {
    content: "";
}

.fa-angle-left:before {
    content: "";
}

.fa-angle-right:before {
    content: "";
}

.fa-angle-up:before {
    content: "";
}

.fa-angle-down:before {
    content: "";
}

.fa-desktop:before {
    content: "";
}

.fa-laptop:before {
    content: "";
}

.fa-tablet:before {
    content: "";
}

.fa-mobile-phone:before,
.fa-mobile:before {
    content: "";
}

.fa-circle-o:before {
    content: "";
}

.fa-quote-left:before {
    content: "";
}

.fa-quote-right:before {
    content: "";
}

.fa-spinner:before {
    content: "";
}

.fa-circle:before {
    content: "";
}

.fa-mail-reply:before,
.fa-reply:before {
    content: "";
}

.fa-github-alt:before {
    content: "";
}

.fa-folder-o:before {
    content: "";
}

.fa-folder-open-o:before {
    content: "";
}

.fa-smile-o:before {
    content: "";
}

.fa-frown-o:before {
    content: "";
}

.fa-meh-o:before {
    content: "";
}

.fa-gamepad:before {
    content: "";
}

.fa-keyboard-o:before {
    content: "";
}

.fa-flag-o:before {
    content: "";
}

.fa-flag-checkered:before {
    content: "";
}

.fa-terminal:before {
    content: "";
}

.fa-code:before {
    content: "";
}

.fa-mail-reply-all:before,
.fa-reply-all:before {
    content: "";
}

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
    content: "";
}

.fa-location-arrow:before {
    content: "";
}

.fa-crop:before {
    content: "";
}

.fa-code-fork:before {
    content: "";
}

.fa-unlink:before,
.fa-chain-broken:before {
    content: "";
}

.fa-question:before {
    content: "";
}

.fa-info:before {
    content: "";
}

.fa-exclamation:before {
    content: "";
}

.fa-superscript:before {
    content: "";
}

.fa-subscript:before {
    content: "";
}

.fa-eraser:before {
    content: "";
}

.fa-puzzle-piece:before {
    content: "";
}

.fa-microphone:before {
    content: "";
}

.fa-microphone-slash:before {
    content: "";
}

.fa-shield:before {
    content: "";
}

.fa-calendar-o:before {
    content: "";
}

.fa-fire-extinguisher:before {
    content: "";
}

.fa-rocket:before {
    content: "";
}

.fa-maxcdn:before {
    content: "";
}

.fa-chevron-circle-left:before {
    content: "";
}

.fa-chevron-circle-right:before {
    content: "";
}

.fa-chevron-circle-up:before {
    content: "";
}

.fa-chevron-circle-down:before {
    content: "";
}

.fa-html5:before {
    content: "";
}

.fa-css3:before {
    content: "";
}

.fa-anchor:before {
    content: "";
}

.fa-unlock-alt:before {
    content: "";
}

.fa-bullseye:before {
    content: "";
}

.fa-ellipsis-h:before {
    content: "";
}

.fa-ellipsis-v:before {
    content: "";
}

.fa-rss-square:before {
    content: "";
}

.fa-play-circle:before {
    content: "";
}

.fa-ticket:before {
    content: "";
}

.fa-minus-square:before {
    content: "";
}

.fa-minus-square-o:before {
    content: "";
}

.fa-level-up:before {
    content: "";
}

.fa-level-down:before {
    content: "";
}

.fa-check-square:before {
    content: "";
}

.fa-pencil-square:before {
    content: "";
}

.fa-external-link-square:before {
    content: "";
}

.fa-share-square:before {
    content: "";
}

.fa-compass:before {
    content: "";
}

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
    content: "";
}

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
    content: "";
}

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
    content: "";
}

.fa-euro:before,
.fa-eur:before {
    content: "";
}

.fa-gbp:before {
    content: "";
}

.fa-dollar:before,
.fa-usd:before {
    content: "";
}

.fa-rupee:before,
.fa-inr:before {
    content: "";
}

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
    content: "";
}

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
    content: "";
}

.fa-won:before,
.fa-krw:before {
    content: "";
}

.fa-bitcoin:before,
.fa-btc:before {
    content: "";
}

.fa-file:before {
    content: "";
}

.fa-file-text:before {
    content: "";
}

.fa-sort-alpha-asc:before {
    content: "";
}

.fa-sort-alpha-desc:before {
    content: "";
}

.fa-sort-amount-asc:before {
    content: "";
}

.fa-sort-amount-desc:before {
    content: "";
}

.fa-sort-numeric-asc:before {
    content: "";
}

.fa-sort-numeric-desc:before {
    content: "";
}

.fa-thumbs-up:before {
    content: "";
}

.fa-thumbs-down:before {
    content: "";
}

.fa-youtube-square:before {
    content: "";
}

.fa-youtube:before {
    content: "";
}

.fa-xing:before {
    content: "";
}

.fa-xing-square:before {
    content: "";
}

.fa-youtube-play:before {
    content: "";
}

.fa-dropbox:before {
    content: "";
}

.fa-stack-overflow:before {
    content: "";
}

.fa-instagram:before {
    content: "";
}

.fa-flickr:before {
    content: "";
}

.fa-adn:before {
    content: "";
}

.fa-bitbucket:before {
    content: "";
}

.fa-bitbucket-square:before {
    content: "";
}

.fa-tumblr:before {
    content: "";
}

.fa-tumblr-square:before {
    content: "";
}

.fa-long-arrow-down:before {
    content: "";
}

.fa-long-arrow-up:before {
    content: "";
}

.fa-long-arrow-left:before {
    content: "";
}

.fa-long-arrow-right:before {
    content: "";
}

.fa-apple:before {
    content: "";
}

.fa-windows:before {
    content: "";
}

.fa-android:before {
    content: "";
}

.fa-linux:before {
    content: "";
}

.fa-dribbble:before {
    content: "";
}

.fa-skype:before {
    content: "";
}

.fa-foursquare:before {
    content: "";
}

.fa-trello:before {
    content: "";
}

.fa-female:before {
    content: "";
}

.fa-male:before {
    content: "";
}

.fa-gittip:before {
    content: "";
}

.fa-sun-o:before {
    content: "";
}

.fa-moon-o:before {
    content: "";
}

.fa-archive:before {
    content: "";
}

.fa-bug:before {
    content: "";
}

.fa-vk:before {
    content: "";
}

.fa-weibo:before {
    content: "";
}

.fa-renren:before {
    content: "";
}

.fa-pagelines:before {
    content: "";
}

.fa-stack-exchange:before {
    content: "";
}

.fa-arrow-circle-o-right:before {
    content: "";
}

.fa-arrow-circle-o-left:before {
    content: "";
}

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
    content: "";
}

.fa-dot-circle-o:before {
    content: "";
}

.fa-wheelchair:before {
    content: "";
}

.fa-vimeo-square:before {
    content: "";
}

.fa-turkish-lira:before,
.fa-try:before {
    content: "";
}

.fa-plus-square-o:before {
    content: "";
}

.fa-space-shuttle:before {
    content: "";
}

.fa-slack:before {
    content: "";
}

.fa-envelope-square:before {
    content: "";
}

.fa-wordpress:before {
    content: "";
}

.fa-openid:before {
    content: "";
}

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
    content: "";
}

.fa-mortar-board:before,
.fa-graduation-cap:before {
    content: "";
}

.fa-yahoo:before {
    content: "";
}

.fa-google:before {
    content: "";
}

.fa-reddit:before {
    content: "";
}

.fa-reddit-square:before {
    content: "";
}

.fa-stumbleupon-circle:before {
    content: "";
}

.fa-stumbleupon:before {
    content: "";
}

.fa-delicious:before {
    content: "";
}

.fa-digg:before {
    content: "";
}

.fa-pied-piper-square:before,
.fa-pied-piper:before {
    content: "";
}

.fa-pied-piper-alt:before {
    content: "";
}

.fa-drupal:before {
    content: "";
}

.fa-joomla:before {
    content: "";
}

.fa-language:before {
    content: "";
}

.fa-fax:before {
    content: "";
}

.fa-building:before {
    content: "";
}

.fa-child:before {
    content: "";
}

.fa-paw:before {
    content: "";
}

.fa-spoon:before {
    content: "";
}

.fa-cube:before {
    content: "";
}

.fa-cubes:before {
    content: "";
}

.fa-behance:before {
    content: "";
}

.fa-behance-square:before {
    content: "";
}

.fa-steam:before {
    content: "";
}

.fa-steam-square:before {
    content: "";
}

.fa-recycle:before {
    content: "";
}

.fa-automobile:before,
.fa-car:before {
    content: "";
}

.fa-cab:before,
.fa-taxi:before {
    content: "";
}

.fa-tree:before {
    content: "";
}

.fa-spotify:before {
    content: "";
}

.fa-deviantart:before {
    content: "";
}

.fa-soundcloud:before {
    content: "";
}

.fa-database:before {
    content: "";
}

.fa-file-pdf-o:before {
    content: "";
}

.fa-file-word-o:before {
    content: "";
}

.fa-file-excel-o:before {
    content: "";
}

.fa-file-powerpoint-o:before {
    content: "";
}

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
    content: "";
}

.fa-file-zip-o:before,
.fa-file-archive-o:before {
    content: "";
}

.fa-file-sound-o:before,
.fa-file-audio-o:before {
    content: "";
}

.fa-file-movie-o:before,
.fa-file-video-o:before {
    content: "";
}

.fa-file-code-o:before {
    content: "";
}

.fa-vine:before {
    content: "";
}

.fa-codepen:before {
    content: "";
}

.fa-jsfiddle:before {
    content: "";
}

.fa-life-bouy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
    content: "";
}

.fa-circle-o-notch:before {
    content: "";
}

.fa-ra:before,
.fa-rebel:before {
    content: "";
}

.fa-ge:before,
.fa-empire:before {
    content: "";
}

.fa-git-square:before {
    content: "";
}

.fa-git:before {
    content: "";
}

.fa-hacker-news:before {
    content: "";
}

.fa-tencent-weibo:before {
    content: "";
}

.fa-qq:before {
    content: "";
}

.fa-wechat:before,
.fa-weixin:before {
    content: "";
}

.fa-send:before,
.fa-paper-plane:before {
    content: "";
}

.fa-send-o:before,
.fa-paper-plane-o:before {
    content: "";
}

.fa-history:before {
    content: "";
}

.fa-circle-thin:before {
    content: "";
}

.fa-header:before {
    content: "";
}

.fa-paragraph:before {
    content: "";
}

.fa-sliders:before {
    content: "";
}

.fa-share-alt:before {
    content: "";
}

.fa-share-alt-square:before {
    content: "";
}

.fa-bomb:before {
    content: "";
}

@font-face {
    font-family: "Hiragino Sans";
    src: local(HiraginoSans-W0);
    font-weight: 100;
}

@font-face {
    font-family: "Hiragino Sans";
    src: local(HiraginoSans-W1);
    font-weight: 200;
}

@font-face {
    font-family: "Hiragino Sans";
    src: local(HiraginoSans-W2);
    font-weight: 300;
}

@font-face {
    font-family: "Hiragino Sans";
    src: local(HiraginoSans-W3);
    font-weight: 400;
}

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

body {
    background: #f8f8f8;
    font-style: normal;
    color: #031a31;
    font-family: "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Meryo, "メイリオ", Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
    letter-spacing: 0.01em;
    line-height: 200%;
    font-size: 16px;
    font-size: 1rem;
}

body a {
    color: #292E31;
    text-decoration: none;
}

body a:visited {
    color: #292E31;
}

body a:focus {
    color: #292E31;
}

body a:hover {
    color: #333333;
}

body a:active {
    color: #292E31;
}

sub {
    height: 0;
    line-height: 1;
    vertical-align: baseline;
    _vertical-align: bottom;
    position: relative;
    top: .5ex;
}

.blue_button {
    background: #058CDD;
    width: 380px;
    padding: 20px 0;
    text-align: center;
    font-size: 20px;
    font-size: 1.25rem;
    position: relative;
    display: block;
    margin: 0 auto;
    color: #FFF;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    border-bottom: solid 5px #0072B7;
}

.blue_button:visited {
    color: #FFF;
}

.blue_button:focus {
    color: #FFF;
}

.blue_button:hover {
    color: #fafafa;
}

.blue_button:active {
    color: #FFF;
}

@media (max-width: 667px) {
    .blue_button {
        width: 90%;
        font-size: 18px;
        font-size: 1.125rem;
    }
}

.blue_button span:after {
    right: 20px;
    top: 33px;
    width: 7px;
    height: 7px;
    content: '';
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    z-index: 3;
}

.blue_button:hover {
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    background: #058CDD;
}

.blue_button:hover span:after {
    border-top: 2px solid #FFFFFF;
    border-right: 2px solid #FFFFFF;
}

.blue_button_left {
    background: #058CDD;
    width: 320px;
    padding: 10px 0;
    text-align: center;
    font-size: 20px;
    font-size: 1.25rem;
    position: relative;
    display: block;
    color: #FFF;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    border-bottom: solid 5px #0072B7;
}

.blue_button_left:visited {
    color: #FFF;
}

.blue_button_left:focus {
    color: #FFF;
}

.blue_button_left:hover {
    color: #fafafa;
}

.blue_button_left:active {
    color: #FFF;
}

@media (max-width: 667px) {
    .blue_button_left {
        width: 100%;
        font-size: 18px;
        font-size: 1.125rem;
    }
}

.blue_button_left span:after {
    right: 20px;
    top: 23px;
    width: 7px;
    height: 7px;
    content: '';
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    z-index: 3;
}

.blue_button_left:hover {
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    background: #058CDD;
}

.blue_button_left:hover span:after {
    border-top: 2px solid #FFFFFF;
    border-right: 2px solid #FFFFFF;
}

.more {
    display: block;
    background: #058CDD;
}

.more:hover {
    background: #009FFF;
}

.more a {
    background: url(images/icon_arrow_right.png) no-repeat right center;
    background-size: 33px 33px;
    background-position: right 20px bottom 19px;
    display: block;
    color: #FFF;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    padding: 20px;
}

.more a:visited {
    color: #FFF;
}

.more a:focus {
    color: #FFF;
}

.more a:hover {
    color: #fafafa;
}

.more a:active {
    color: #FFF;
}

@media (max-width: 667px) {
    .more a {
        font-size: 15px;
        font-size: 0.9375rem;
        text-align: left;
    }
}

.more a img {
    vertical-align: middle;
    margin-left: 15px;
}

.more a:hover {
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    background-position: right 17px bottom 19px;
}

.boxLink,
.thumb {
    cursor: pointer;
}

strong {
    font-weight: bold;
}

b {
    font-weight: bold;
}

._56zz {
    right: 0px;
}

#main_header {
    background: #FFF;
    width: 100%;
    position: fixed;
    z-index: 9999;

}

#main_header .gnav_wrapper {
    width: 100%;
    margin: 0 auto;
    /* padding: 0 30px; */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#main_header .gnav_wrapper .logo {
    background: #FFF;
    padding: 0px;
    line-height: 1;
    font-size: 0;
    padding-left: 30px;
}

#main_header .gnav_wrapper .logo a {
    display: block;
}

#main_header .gnav_wrapper .gnav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

#main_header .gnav_wrapper .gnav ul li {
    text-align: center;
    margin-left: 5%;
}

#main_header .gnav_wrapper .gnav ul li:nth-child(7) {
    margin-right: 15px;
}

#main_header .gnav_wrapper .gnav ul li a {
    text-decoration: none;
    letter-spacing: 0.1em;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 600;
    display: block;
    height: auto;
    position: relative;
    z-index: 9999;
    padding: 40px 0;
}

#main_header .gnav_wrapper .gnav ul li a:after {
    background: #058CDD;
    left: 50%;
    bottom: 0px;
    margin-left: -50%;
    width: 100%;
    height: 3px;
    content: '';
    position: absolute;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: -1;
}

#main_header .gnav_wrapper .gnav ul li a:hover::after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
}

#main_header .gnav_wrapper .gnav ul li a.active:after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
}

#main_header .gnav_wrapper .gnav ul li a.facebook:after,
#main_header .gnav_wrapper .gnav ul li a.twitter:after,
#main_header .gnav_wrapper .gnav ul li .gnav__second-level li a:after {
    display: none;
}

#main_header .gnav_wrapper .gnav ul li i {
    margin-left: 5px;
}

.hamburger {
    display: none;
    padding: 0;
    position: absolute;
    top: -5px;
    left: 10px;
}

#navigation.gnav {
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.contents_title {
    padding: 40px 0 0 0;
    text-align: center;
    letter-spacing: 1px;
    line-height: 1.8;
}

@media (max-width: 667px) {
    .contents_title {
        padding: 30px 0;
        width: 90%;
        margin: 0 auto;
    }
}

.contents_title h2 {
    padding: 30px 0;
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    .contents_title h2 {
        font-size: 22px;
        font-size: 1.375rem;
    }
}

.contents_title p {
    width: 480px;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
    text-align: center;
    margin: 0px auto 20px auto;
}

@media (max-width: 667px) {
    .contents_title p {
        width: 100%;
        font-size: 14px;
        font-size: 0.875rem;
    }
}

.contents_title .left {
    text-align: left;
    margin: 0;
}

.contents_title h3 {
    font-size: 16px;
    font-size: 1rem;
}

#top_main_visual {
    width: 100%;
    position: relative;
}

@media (max-width: 667px) {
    #top_main_visual {
        padding-top: 54px;
    }
}

#top_main_visual .top_main_visual_wrapper {
    background: url(https://techgardenschool.com/wp-content/uploads/2021/11/160209b97d90c8a32175242e79c01fbe.jpg) no-repeat center center;
    background-size: cover;
    width: 100%;
    height: 821px;
    margin: 0 auto;
    position: relative;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper {
        height: 350px;
        background: url(https://techgardenschool.com/wp-content/uploads/2021/11/3ea3b1a31525ab5c2bfb08257c6b8d20.jpg) no-repeat center center;
    }
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .pc {
        display: none;
    }
}

#top_main_visual .top_main_visual_wrapper .sp {
    display: none;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .sp {
        display: block;
    }
}

#top_main_visual .top_main_visual_wrapper .message {
    width: 1080px;
    margin: 0 auto;
    position: absolute;
    top: 270px;
    left: 50%;
    margin-left: -580px;
    z-index: 2;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .message {
        width: 100%;
        position: static;
        margin-left: 0px;
        padding: 20px;
        font-size: 20px;
        font-size: 1.25rem;
        text-align: center;
    }
}

#top_main_visual .top_main_visual_wrapper .message h1 {
    letter-spacing: 0.1em;
    font-weight: 600;
    font-size: 30px;
    font-size: 1.875rem;
    color: #058CDD;
    margin-bottom: 37px;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .message h1 {
        font-size: 18px;
        font-size: 1.125rem;
        margin-bottom: 15px;
        font-weight: 800;
        line-height: 160%;
    }
}

#top_main_visual .top_main_visual_wrapper .message p {
    letter-spacing: 0.1em;
    font-weight: 200;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.8;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .message p {
        background: rgba(255, 255, 255, 0.81);
        padding: 20px;
        font-size: 13px;
        font-size: 0.8125rem;
    }

    #top_main_visual .top_main_visual_wrapper .message p br {
        display: none;
    }
}

#top_main_visual .top_main_visual_wrapper .more {
    margin-top: 54px;
    width: 35%;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .more {
        width: 100%;
        margin-top: 20px;
    }
}

/* 20201209 start*/

@media (max-width: 667px) {
    #top_under {
        height: 100px;
    }
}

/* 20201209 end*/

/* 20210219 start グローバルメニューの子要素動作追加*/

#main_header .gnav_wrapper .gnav ul li {
    position: relative;
}

#main_header .gnav_wrapper .gnav ul li .gnav__second-level {
    position: absolute;
    top: 90px;
    width: 140px;
    visibility: hidden;
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

#main_header .gnav_wrapper .gnav ul li .gnav__second-level li {
    width: 100%;
    margin: 0;
    padding: 0;
}

#main_header .gnav_wrapper .gnav ul li .gnav__second-level li a {
    margin: 0;
    padding: 15px;
    color: #292e31;
}

#main_header .gnav_wrapper .gnav ul li:hover .gnav__second-level {
    top: 112px;
    z-index: 10000;
    visibility: visible;
    opacity: 1;
    background-color: #ffffff;
    border-radius: 3px;
}

#main_header .gnav_wrapper .gnav ul li .gnav__second-level li:hover a {
    color: #ffffff;
    background-color: #058CDD;
    -webkit-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
    border-radius: 3px;
}

#main_header .gnav_wrapper .gnav .havechild:after {
    width: 140px;
}

@media(max-width: 667px) {
    #main_header .gnav_wrapper .gnav ul li {
        position: relative;
        display: block;
    }

    #main_header .gnav_wrapper .gnav ul li:hover .gnav__second-level {
        top: 0px;
        position: relative;
        -webkit-transition: all .4s ease;
        -o-transition: all .4s ease;
        transition: all .4s ease;
    }

    #main_header .gnav_wrapper .gnav ul li .gnav__second-level {
        top: 0px;
        display: block;
        width: 100%;
        opacity: 1;
        background-color: #ffffff;
        border-radius: 3px;
    }

    #main_header .gnav_wrapper .gnav ul li:hover .gnav__second-level {
        visibility: visible;
        opacity: 1;
        background-color: #ffffff;
        border-radius: 3px;
    }

    #main_header .gnav_wrapper .gnav ul li .gnav__second-level li a {
        font-size: 0.3em;
        color: #058CDD;
    }

    #main_header .gnav_wrapper .gnav ul .havechild:before {
        content: "+";
        margin-right: 0.5em;
        font-weight: bold;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .gnav ul {
        width: 100%;
    }
}

@media (max-width: 667px) {
    #main_header {
        background: #FFF;
        height: auto;
        -webkit-box-shadow: none;
        box-shadow: none;
        min-width: 100%;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper {
        width: 100%;
        display: block;
        padding: 10px;
        position: relative;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .logo {
        width: 200px;
        text-align: center;
        padding: 0px;
        margin: 0 auto;
        border: none;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .logo img {
        width: 200px;
        height: auto;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .gnav {
        position: absolute;
        top: 0px;
        z-index: 4;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .gnav ul li {
        margin-left: 0px;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .gnav ul li a {
        padding: 20px 0;
    }
}

@media (max-width: 1080px) {
    #navigation.gnav {
        width: 100% !important;
        position: absolute;
        left: 0;
        margin-top: 53px !important;
        margin-left: 0px !important;
        display: none;
    }

    #navigation.gnav ul li {
        background: #FFF;
        width: 100%;
        margin-right: 0px !important;
        display: block;
    }

    #navigation.gnav ul li a {
        display: block;
        padding: 20px 0;
    }
}

/* 20210219 end*/

#achievements {
    background: #c9d9df;
    width: 100%;
    padding: 20px 0 56px;
    letter-spacing: 1px;
}

.achievements_inner {
    width: 1080px;
    max-width: 92%;
    margin: 0 auto;
    position: relative;
}

.achievements_title {
    text-align: center;
    font-size: 36px;
    font-size: 2.25rem;
    font-weight: 600;
    padding: 30px 0 20px;
    line-height: 1.5;
    color: #222;
}

.achievements_separator {
    width: 65%;
    max-width: 720px;
    margin: 0 auto 42px;
    border: 0;
    border-top: 2px dotted #8aa1aa;
}

.achievements_illustration {
    position: absolute;
    z-index: 1;
}

.achievements_illustration img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

.achievements_illustration--left {
    width: 170px;
    left: -16px;
    bottom: 8px;
}

.achievements_illustration--right {
    width: 180px;
    right: -10px;
    bottom: 4px;
}

.achievements_grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 26px 26px;
    justify-items: center;
}

.achievement_card {
    width: 100%;
    max-width: 335px;
    position: relative;
    padding-top: 58px;
}

.achievement_card:nth-child(4) {
    grid-column: 1 / 2;
    justify-self: end;
    transform: translateX(50%);
}

.achievement_card:nth-child(5) {
    grid-column: 3 / 4;
    justify-self: start;
    transform: translateX(-50%);
}

.achievement_card:nth-child(4),
.achievement_card:nth-child(5) {
    display: flex;
    flex-direction: column;
}

.achievement_card:nth-child(4) .achievement_body,
.achievement_card:nth-child(5) .achievement_body {
    height: 100%;
}

.achievement_badge {
    width: 120px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 3;
}

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

.achievement_body {
    width: 100%;
    min-height: 360px;
    border-radius: 28px;
    background: #f5f7f8;
    border: 1px solid #d2dde2;
    text-align: center;
    padding: 62px 30px 34px;
    box-sizing: border-box;
}

.achievement_heading {
    margin: 0;
    padding-bottom: 10px;
    border-bottom: 1px solid #8e9aa1;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.5;
    font-weight: 600;
    color: #222;
}

.achievement_text {
    margin: 16px 0 0;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.8;
    color: #222;
    text-align: left;
}

.achievement_author {
    margin: 12px 0 0;
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.6;
    color: #222;
    text-align: center;
}

@media (max-width: 960px) {
    .achievements_grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 30px 20px;
    }

    .achievement_card:nth-child(4),
    .achievement_card:nth-child(5) {
        grid-column: auto;
        justify-self: center;
        transform: none;
    }

    .achievements_illustration--left,
    .achievements_illustration--right {
        display: none;
    }
}

@media (max-width: 667px) {
    #achievements {
        padding: 10px 0 40px;
    }

    .achievements_title {
        font-size: 26px;
        font-size: 1.625rem;
        padding: 24px 0 16px;
    }

    .achievements_separator {
        width: 80%;
        margin-bottom: 28px;
    }

    .achievements_grid {
        grid-template-columns: 1fr;
        gap: 34px;
    }

    .achievement_card {
        max-width: 360px;
        padding-top: 54px;
    }

    .achievement_badge {
        width: 112px;
    }

    .achievement_body {
        min-height: 0;
        border-radius: 28px;
        padding: 62px 20px 28px;
    }

    .achievement_heading {
        font-size: 18px;
        font-size: 1.125rem;
    }

    .achievement_text {
        font-size: 13px;
        font-size: 0.8125rem;
        line-height: 1.75;
    }
}

#reasons_why {
    background: #fff;
    width: 100%;
    padding: 20px 0 50px;
    letter-spacing: 1px;
}

.reasons_why_inner {
    width: 1080px;
    max-width: 92%;
    margin: 0 auto;
}

.reasons_why_title {
    text-align: center;
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 600;
    padding: 30px 0 20px;
    line-height: 1.6;
}

.reasons_why_separator {
    width: 65%;
    max-width: 720px;
    margin: 0 auto 36px;
    border: 0;
    border-top: 2px dotted #bbb;
}

.reasons_why_lead {
    text-align: left;
    border-left: 6px solid #058CDD;
    padding: 4px 0 4px 16px;
    margin: 0 0 40px;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.7;
    color: #333;
}

.reasons_why_grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 24px 16px;
}

.reasons_why_item {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 280px;
    flex: 1 1 280px;
    max-width: 320px;
    margin: 0 auto;
    text-align: center;
}

.reasons_why_imgwrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 200px;
    margin-bottom: 16px;
}

.reasons_why_imgwrap img {
    max-width: 100%;
    max-height: 220px;
    width: auto;
    height: auto;
    -o-object-fit: contain;
    object-fit: contain;
    vertical-align: bottom;
}

.reasons_why_caption {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.6;
    margin: 0;
    color: #333;
}

.reasons_why_lead--step2 {
    margin-top: 48px;
    margin-bottom: 28px;
}

.reasons_why_flow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 8px 4px;
    margin-bottom: 10px;
}

.reasons_why_card {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 260px;
    flex: 1 1 260px;
    max-width: 340px;
    margin: 0 auto;
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: hidden;
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.reasons_why_card_head {
    background: #0088da;
    color: #fff;
    font-size: 15px;
    font-size: 0.9375rem;
    font-weight: 600;
    text-align: center;
    padding: 12px 10px;
    line-height: 1.5;
}

.reasons_why_card_body {
    padding: 16px 14px;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.65;
    color: #333;
    text-align: center;
    min-height: 160px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.reasons_why_card_body--center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 160px;
}

.reasons_why_card_body ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    gap: 6px;
}

.reasons_why_card_body li {
    margin: 0;
    font-size: 18px;
    font-size: 1.125rem;
}

.reasons_why_card_body li:last-child {
    margin-bottom: 0;
}

.reasons_why_card_figure {
    text-align: center;
}

.reasons_why_card_figure img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

.reasons_why_arrow {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -ms-flex-item-align: center;
    align-self: center;
    color: #666;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    padding: 0 2px;
}

.reasons_why_arrow::before {
    content: '>';
}

.reasons_why_parallel {
    margin-bottom: 24px;
}

.reasons_why_parallel_row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin-bottom: 12px;
    gap: 10px;
}

.reasons_why_parallel_row:last-child {
    margin-bottom: 0;
}

.reasons_why_parallel_label {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 44px;
    flex: 0 0 44px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: mixed;
    text-orientation: mixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    font-size: 0.875rem;
    letter-spacing: 0.08em;
    padding: 8px 4px;
}

.reasons_why_parallel_row--earn .reasons_why_parallel_label {
    background: #e91e8c;
}

.reasons_why_parallel_row--learn .reasons_why_parallel_label {
    background: #058CDD;
}

.reasons_why_parallel_steps {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.reasons_why_parallel_box {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 140px;
    flex: 1 1 140px;
    padding: 14px 12px;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.6;
    border-radius: 4px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.reasons_why_parallel_row--earn .reasons_why_parallel_box {
    background: #fde7f0;
}

.reasons_why_parallel_row--learn .reasons_why_parallel_box {
    background: #e7f4fd;
}

.reasons_why_progress {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 32px 0 8px;
}

.reasons_why_progress img {
    max-width: 22%;
    height: auto;
    vertical-align: bottom;
}

.reasons_why_split {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 32px 24px;
    margin-bottom: 8px;
}

.reasons_why_split_text {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 320px;
    flex: 1 1 320px;
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 1.85;
    color: #333;
    text-align: left;
}

.reasons_why_split_text p {
    margin: 0 0 12px;
}

.reasons_why_split_text p:last-child {
    margin-bottom: 0;
}

.reasons_why_split_text-main {
    font-size: 18px;
    font-size: 1.125rem;
}

.reasons_why_split_text-main {
    font-size: 18px;
    font-size: 1.125rem;
}

.reasons_why_split_link {
    margin-top: 16px !important;
}

.reasons_why_split_link a {
    color: #058CDD;
    font-weight: 600;
    text-decoration: none;
}

.reasons_why_split_link a:hover {
    text-decoration: underline;
}

.reasons_why_split_media {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 280px;
    flex: 1 1 280px;
    max-width: 480px;
    margin: 0 auto;
}

.reasons_why_split_media img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
    border-radius: 4px;
}

@media (max-width: 667px) {
    #reasons_why {
        padding: 10px 0 40px;
    }

    .reasons_why_title {
        font-size: 22px;
        font-size: 1.375rem;
        padding: 24px 0 16px;
    }

    .reasons_why_separator {
        width: 80%;
        margin-bottom: 28px;
    }

    .reasons_why_lead {
        font-size: 15px;
        font-size: 0.9375rem;
        margin-bottom: 32px;
        padding-left: 12px;
        border-left-width: 5px;
    }

    .reasons_why_lead--step2 {
        margin-top: 36px;
        margin-bottom: 24px;
    }

    .reasons_why_grid {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 32px;
    }

    .reasons_why_item {
        max-width: 100%;
    }

    .reasons_why_imgwrap {
        min-height: 160px;
    }

    .reasons_why_flow {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        gap: 6px;
    }

    .reasons_why_card {
        width: 100%;
        max-width: 100%;
        margin: 0;
    }

    .reasons_why_card_body {
        width: 100%;
        box-sizing: border-box;
    }

    .reasons_why_parallel_row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .reasons_why_parallel_label {
        -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
        writing-mode: horizontal-tb;
        -webkit-box-flex: 0;
        -ms-flex: none;
        flex: none;
        width: 100%;
        padding: 10px 12px;
    }

    .reasons_why_parallel_steps {
        width: 100%;
    }

    .reasons_why_split {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16px;
    }

    .reasons_why_split_media {
        max-width: 100%;
    }

    .reasons_why_split_text p {
        margin: 0 0 8px;
    }

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

    /* flex column時の上下隙間が大きくなる場合に備えて上書き */
    .reasons_why_split {
        gap: 10px !important;
    }

    .reasons_why_split_text {
        margin-bottom: 8px !important;
    }

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

    .reasons_why_arrow {
        -ms-flex-item-align: center;
        align-self: center;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        padding: 6px 0;
    }
}

#about {
    background: #fafafa;
    width: 100%;
}

#about .more {
    margin-top: 54px;
    width: 380px;
    margin: 0 auto;
    margin-bottom: 60px;
}

@media (max-width: 667px) {
    #about .more {
        width: 90%;
    }
}

#about .column_box {
    padding-bottom: 0px;
}

#about_teacher {
    background: url(images/bg_people.jpg) center top;
    background-size: cover;
    padding: 50px 0;
}

@media (max-width: 667px) {
    #about_teacher {
        padding: 0px;
        background: url(images/bg_people.png) right top;
    }
}

#about_teacher .contents_title {
    width: 1080px;
    margin: 0 auto;
    text-align: left;
}

@media (max-width: 667px) {
    #about_teacher .contents_title {
        width: 100%;
        padding: 20px;
    }
}

#about_teacher .contents_title h2 {
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    #about_teacher .contents_title h2 {
        font-size: 18px;
        font-size: 1.125rem;
    }
}

#about_teacher .contents_title p {
    width: 480px;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
}

@media (max-width: 667px) {
    #about_teacher .contents_title p {
        width: 100%;
        font-size: 14px;
        font-size: 0.875rem;
    }
}

#about_special {
    width: 100%;
    background: #FFF;
}

@media (max-width: 667px) {
    #about_special .flickity-prev-next-button {
        top: 20%;
    }
}

#about_special .main-carousel {
    width: 100%;
}

#about_special .main-carousel .carousel-cell {
    width: 1080px;
    margin: 0 auto;
    padding: 100px 0;
    margin: 0 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell {
        padding: 30px 0;
        width: 90%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

#about_special .main-carousel .carousel-cell .text {
    width: 70%;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell .text {
        width: 100%;
    }
}

#about_special .main-carousel .carousel-cell .text h2 {
    font-size: 29px;
    font-size: 1.8125rem;
    font-weight: 600;
    margin-bottom: 33px;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell .text h2 {
        font-size: 18px;
        font-size: 1.125rem;
        text-align: center;
        margin-top: 20px;
        margin-bottom: 20px;
    }
}

#about_special .main-carousel .carousel-cell .text ul li {
    width: 100%;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    background: url(images/icon_checked.png) no-repeat left center;
    padding-left: 35px;
    margin-bottom: 15px;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell .text ul li {
        font-size: 14px;
        font-size: 0.875rem;
        margin-bottom: 10px;
    }
}

#about_special .main-carousel .carousel-cell .eyecatch {
    width: 30%;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell .eyecatch {
        width: 40%;
        margin: 0 auto;
    }
}

#about_special .main-carousel .carousel-cell .eyecatch img {
    width: 100%;
    height: auto;
}

#security {
    background: #058CDD;
}

#security .inner {
    width: 1080px;
    margin: 0 auto;
    padding: 10px 0;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 667px) {
    #security .inner {
        width: 100%;
        padding: 20px;
        display: block;
    }
}

#security .inner h2 {
    width: 50%;
}

@media (max-width: 667px) {
    #security .inner h2 {
        width: 100%;
    }

    #security .inner h2 img {
        width: 100%;
        height: auto;
    }
}

#security .inner p {
    width: 50%;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
}

@media (max-width: 667px) {
    #security .inner p {
        width: 100%;
    }
}

#about_service {
    background: #FFF;
    padding: 30px 0;
}

#about_service .inner {
    width: 1080px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
}

@media (max-width: 667px) {
    #about_service .inner {
        width: 100%;
        padding: 20px;
        display: block;
    }
}

#about_service .inner .contents_title {
    width: 50%;
    text-align: left;
    padding: 70px 0;
}

@media (max-width: 667px) {
    #about_service .inner .contents_title {
        width: 100%;
        padding: 0px;
    }
}

#about_service .inner .contents_title h2 {
    padding: 30px 0;
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    #about_service .inner .contents_title h2 {
        font-size: 18px;
        font-size: 1.125rem;
        padding: 0 0 20px 0;
        text-align: center;
    }
}

#about_service .inner .contents_title p {
    width: 480px;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
}

@media (max-width: 667px) {
    #about_service .inner .contents_title p {
        width: 100%;
        font-size: 14px;
        font-size: 0.875rem;
    }
}

#about_service .inner .eyecatch {
    width: 50%;
    text-align: right;
    padding: 70px 0;
}

@media (max-width: 667px) {
    #about_service .inner .eyecatch {
        width: 100%;
        padding: 0px;
        margin-top: 30px;
        display: block;
    }

    #about_service .inner .eyecatch img {
        width: 100%;
        height: auto;
    }
}

@media (max-width: 667px) {
    #customer {
        padding-bottom: 20px;
    }
}

#customer .contents_title {
    margin-bottom: 40px;
}

#customer .quotation {
    width: 700px;
    margin: 0 auto;
    position: relative;
}

@media (max-width: 667px) {
    #customer .quotation {
        width: 100%;
    }

    #customer .quotation br {
        display: none;
    }
}

#customer .quotation:before {
    content: "“";
    position: absolute;
    left: 0px;
    top: 0px;
    font-size: 85px;
    font-size: 5.3125rem;
    font-weight: 400;
}

#customer .quotation:after {
    content: "”";
    position: absolute;
    right: 0px;
    bottom: -40px;
    font-size: 85px;
    font-size: 5.3125rem;
    font-weight: 400;
}

#customer .customer_voice {
    margin-bottom: 120px;
}

#customer .customer_voice .eyecatch {
    margin-top: -80px;
    height: 200px;
}

#customer .customer_voice h3 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0px;
    margin-top: 20px;
}

#customer .customer_voice p {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.8;
}

#customer .customer_voice .name {
    text-align: center;
}

#system {
    background: #FFF;
    padding: 0 0 90px 0;
}

@media (max-width: 667px) {
    #system {
        padding: 0 0 30px 0;
    }
}

#system .itbusiness {
    background: url(images/bg_it.jpg) no-repeat center bottom;
    background-size: 33%;
}

@media (max-width: 667px) {
    #system .itbusiness {
        background: #FFF;
    }
}

#system .programming {
    background: url(images/bg_program.jpg) no-repeat center bottom;
    background-size: 33%;
}

@media (max-width: 667px) {
    #system .programming {
        background: #FFF;
    }
}

#system .consulting {
    background: url(images/bg_dx.jpg) no-repeat center bottom;
    background-size: 33%;
}

#system .remote {
    background: url(images/bg_remote.jpg) no-repeat center bottom;
    background-size: 33%;

}

@media (max-width: 667px) {
    #system .consulting {
        background: #FFF;
    }
}

#system .inner h2 {
    padding: 30px 0 10px 0;
}

@media (max-width: 667px) {
    #system .inner h2 {
        padding: 20px 0 0 0;
    }
}

#system .inner p {
    font-size: 17px;
    font-size: 1.0625rem;
    font-weight: 300;
    text-align: left;
    margin-bottom: 30px;
}

@media (max-width: 667px) {
    #system .inner p {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

#system .inner ul {
    list-style: disc;
    list-style-position: inside;
}

#system .inner ul li {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    margin-top: 10px;
}

@media (max-width: 667px) {
    #system .inner ul li {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

#system .inner .column_box {
    padding: 0px;
}

#blog {
    background: #FFF;
    padding-bottom: 0px;
}

@media (max-width: 667px) {
    #blog {
        padding: 0 0 30px 0;
    }
}

#blog .blog_title h3 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0px;
    margin-top: 20px;
}

#blog .blog_title p {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.8;
}

#blog .blog_title .name {
    text-align: center;
}

#blog .column_box .su-posts {
    width: 1080px;
    margin: 0 auto;
    padding: 60px 0 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

#blog .column_box .su-posts .su-post {
    background: #FFF;
    width: 500px;
    padding: 25px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
}

@media (max-width: 667px) {
    #blog .column_box .su-posts .su-post {
        width: 90%;
        letter-spacing: 0em;
    }
}

#blog .column_box .su-posts .su-post .customer_eyecatch {
    text-align: center;
    padding: 20px 0;
    margin-top: -120px;
}

#blog .column_box .su-posts .su-post .su-post-thumbnail {
    width: 100%;
    height: auto;
}

#blog .column_box .su-posts .su-post .su-post-thumbnail img {
    width: 100%;
    height: auto;
}

#blog .column_box .su-posts .su-post p {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 200;
}

#book {
    width: 1080px;
    margin: 0 auto;
    padding: 90px 0;
}

@media (max-width: 667px) {
    #book {
        display: block;
        width: 90%;
        padding: 30px 0;
    }
}

#book .book_image {
    width: 100%;
    margin-top: 30px;
}

@media (max-width: 667px) {
    #book .book_image {
        width: 100%;
        margin: 0 auto;
        margin-top: 30px;
        margin-bottom: 20px;
    }
}

#book .book_image img {
    margin-right: 20px;
    width: 30%;
    height: auto;
}

@media (max-width: 667px) {
    #book .book_image img {
        width: 40%;
        margin: 10px;
    }
}

#book .book_text {
    width: 100%;
}

@media (max-width: 667px) {
    #book .book_text {
        width: 90%;
        margin: 0 auto;
    }
}

#book .book_text h2 {
    font-size: 22px;
    font-size: 1.375rem;
    margin-bottom: 15px;
}

@media (max-width: 667px) {
    #book .book_text h2 {
        font-size: 16px;
        font-size: 1rem;
        text-align: center;
    }
}

#book .book_text p {
    font-size: 13px;
    font-size: 0.8125rem;
}

#book .book_text strong {
    display: block;
    margin-top: 20px;
}

#book .book_text table {
    font-size: 13px;
    font-size: 0.8125rem;
}

#book .book_text table th {
    width: 14%;
    font-weight: bold;
    vertical-align: text-top;
}

#book .book_text table th,
#book .book_text table td {
    padding: 10px 0;
}

#contact {
    background: #FFF;
}

.column_box {
    width: 1080px;
    margin: 0 auto;
    padding: 60px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

@media (max-width: 667px) {
    .column_box {
        display: block;
        width: 100%;
        padding: 30px 0 0px 0;
    }
}

.column_box section {
    background: #FFF;
    margin-bottom: 80px;
    margin-right: 40px;
}

.column_box section:nth-child(3n) {
    margin-right: 0px;
}

@media (max-width: 667px) {
    .column_box section {
        margin-bottom: 30px;
        margin-right: 0px;
        background: none;
    }

    .column_box section:nth-child(3n) {
        margin-right: auto;
    }
}

.column_box .column3 {
    background: #FFF;
    width: 320px;
    padding: 25px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
}

@media (max-width: 667px) {
    .column_box .column3 {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 20px;
        letter-spacing: 0em;
    }
}

.column_box .column3 .customer_eyecatch {
    text-align: center;
    padding: 20px 0;
    height: 120px;
}

.column_box .column3 .eyecatch {
    text-align: center;
    padding: 20px 0;
}

.column_box .column3 h2 {
    font-size: 25px;
    font-size: 1.5625rem;
    font-weight: 600;
    color: #058CDD;
    text-align: center;
    margin-bottom: 20px;
    line-height: 1.6;
}

.column_box .column3 h3 {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    margin-bottom: 20px;
}

.column_box .column3 p {
    font-size: 16px;
    font-size: 1.25rem;
    font-weight: 200;
}

.column_box .column3.plus {
    position: relative;
}

.column_box .column3.plus:after {
    content: "+";
    position: absolute;
    right: -43px;
    top: 76px;
    font-size: 34px;
    font-size: 2.125rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    .column_box .column3.plus:after {
        display: none;
    }
}

.column_box .column2 {
    background: #FFF;
    width: 500px;
    padding: 25px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
}

@media (max-width: 667px) {
    .column_box .column2 {
        width: 90%;
        letter-spacing: 0em;
        margin: 0 auto;
        margin-bottom: 20px;
    }
}

.column_box .column2 .customer_eyecatch {
    text-align: center;
    padding: 20px 0;
    margin-top: -120px;
}

@media (max-width: 667px) {
    .column_box .column2 .customer_eyecatch {
        margin-top: -30px;
    }
}

.column_box .column2 .eyecatch {
    text-align: center;
    padding: 20px 0;
}

.column_box .column2 .eyecatch img {
    width: 100%;
    height: auto;
}

.column_box .column2 h2 {
    font-size: 25px;
    font-size: 1.5625rem;
    font-weight: 600;
    color: #058CDD;
    text-align: center;
    margin-bottom: 20px;
}

.column_box .column2 h3 {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    margin-bottom: 20px;
}

.column_box .column2 p {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 200;
}

.column_box .column2.plus {
    position: relative;
}

.column_box .column2.plus:after {
    content: "+";
    position: absolute;
    right: -32px;
    top: 55px;
    font-size: 34px;
    font-size: 2.125rem;
    font-weight: 600;
}

.column_box .column1 {
    background: #FFF;
    width: 1080px;
    padding: 25px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
}

@media (max-width: 667px) {
    .column_box .column1 {
        width: 90%;
        letter-spacing: 0em;
        margin: 0 auto;
    }
}

.column_box .column1 .eyecatch {
    text-align: center;
    padding: 20px 0;
    height: 120px;
}

.column_box .column1 h2 {
    font-size: 25px;
    font-size: 1.5625rem;
    font-weight: 600;
    color: #058CDD;
    text-align: center;
}

@media (max-width: 667px) {
    .column_box .column1 h2 {
        font-size: 22px;
        font-size: 1.375rem;
    }
}

.column_box .column1 h3 {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    text-align: center;
    margin-bottom: 20px;
    color: #058CDD;
}

.column_box .column1 p {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 200;
}

#container {
    width: 100%;
    border-top: 1px solid #EEE;
    overflow: hidden;
    *zoom: 1;
    padding-top: 110px;
    background-color: white;
}

@media (max-width: 667px) {
    #container {
        padding-top: 54px;
    }
}

#container .lead {
    background: #008cdd;
}

#container .lead .inner {
    width: 1080px;
    margin: 0 auto;
    padding: 40px 0 60px 0;
    color: #FFF;
}

@media (max-width: 667px) {
    #container .lead .inner {
        width: 100%;
    }
}

#container .lead .inner h2 {
    font-family: "proxima-nova-alt";
    font-style: italic;
    text-decoration: underline;
    font-size: 50px;
    font-size: 3.125rem;
    line-height: normal;
}

#container .lead .inner p {
    font-size: 16px;
    font-size: 1rem;
    font-family: 'AXIS Font Japanese W55';
    margin-top: 25px;
    line-height: 200%;
    clear: both;
}

#container .lead .inner .button {
    line-height: normal;
}

#container .lead .inner .button a {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    background: #FFF;
    padding: 10px 45px;
    border: 1px solid #FFF;
    color: #008cdd;
    display: inline-block;
    -webkit-transition: all .3s;
}

#container .lead .inner .button a:hover {
    background: #008cdd;
    color: #FFF;
}

.titleArea {
    overflow: hidden;
    *zoom: 1;
    margin: 48px 0 40px 0;
}

@media (max-width: 667px) {
    .titleArea {
        padding: 0 20px;
    }
}

.titleArea h1 {
    border-bottom: 3px solid #dddddd;
    padding-bottom: 5px;
    float: left;
    font-size: 17px;
    font-size: 1.0625rem;
}

.titleArea h1 span {
    font-size: 13px;
    font-size: 0.8125rem;
    margin-left: 20px;
}

.titleArea .all {
    font-size: 12px;
    font-size: 0.75rem;
    text-align: right;
    float: right;
}

.titleArea .all i {
    margin-left: 5px;
}

.tgsclass,
.tgsblog {
    width: 1080px;
    margin: 40px auto;
}

@media (max-width: 667px) {

    .tgsclass,
    .tgsblog {
        width: 100%;
    }
}

.tgsclass .classList .classroom,
.tgsblog .classList .classroom {
    width: 240px;
    float: left;
    margin-right: 40px;
    margin-bottom: 20px;
    position: relative;
}

@media (max-width: 667px) {

    .tgsclass .classList .classroom,
    .tgsblog .classList .classroom {
        width: 90%;
        margin: 10px auto;
        float: none;
        margin-bottom: 20px;
    }
}

.tgsclass .classList .classroom .data,
.tgsblog .classList .classroom .data {
    color: #FFF;
    width: 60px;
    height: 60px;
    position: absolute;
    top: -20px;
    left: -20px;
    z-index: 99999;
    text-align: center;
}

.tgsclass .classList .classroom .data i,
.tgsblog .classList .classroom .data i {
    width: 50px;
    height: 50px;
    color: #008cdd;
    position: absolute;
    font-size: 50px;
    font-size: 3.125rem;
    top: 0px;
    left: 0px;
    z-index: 1;
}

.tgsclass .classList .classroom .data .text,
.tgsblog .classList .classroom .data .text {
    font-family: "din-condensed-web", sans-serif;
    width: 50px;
    height: 50px;
    position: absolute;
    top: 5px;
    left: 0px;
    z-index: 2;
    font-size: 25px;
    font-size: 1.5625rem;
    line-height: 70%;
}

.tgsclass .classList .classroom .data .text span,
.tgsblog .classList .classroom .data .text span {
    font-size: 14px;
    font-size: 0.875rem;
    display: block;
}

.tgsclass .classList .classroom .thumb,
.tgsblog .classList .classroom .thumb {
    width: 240px;
    height: 160px;
}

@media (max-width: 667px) {

    .tgsclass .classList .classroom .thumb,
    .tgsblog .classList .classroom .thumb {
        width: 100%;
        height: auto;
    }

    .tgsclass .classList .classroom .thumb img,
    .tgsblog .classList .classroom .thumb img {
        width: 100%;
        height: auto;
    }
}

.tgsclass .classList .classroom figure,
.tgsblog .classList .classroom figure {
    position: relative;
    overflow: hidden;
    width: 240px;
    height: 160px;
}

.tgsclass .classList .classroom figcaption,
.tgsblog .classList .classroom figcaption {
    position: absolute;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgba(99, 154, 255, 0.8);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    opacity: 0;
    color: #FFF;
    text-align: center;
    vertical-align: middle;
    display: block;
}

.tgsclass .classList .classroom figcaption .time,
.tgsblog .classList .classroom figcaption .time {
    margin-top: 75px;
    font-size: 35px;
    font-size: 2.1875rem;
    text-shadow: 1px 1px 0px rgba(20, 24, 156, 0.4);
    font-family: "din-condensed-web", sans-serif;
}

.tgsclass .classList .classroom figcaption .time a,
.tgsblog .classList .classroom figcaption .time a {
    color: #FFF;
}

.tgsclass .classList .classroom figure:hover figcaption,
.tgsblog .classList .classroom figure:hover figcaption {
    opacity: 1;
}

.tgsclass .classList .classroom .thumb img,
.tgsblog .classList .classroom .thumb img {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    width: 240px;
    height: 160px;
}

@media (max-width: 667px) {

    .tgsclass .classList .classroom .thumb img,
    .tgsblog .classList .classroom .thumb img {
        width: 100%;
        height: auto;
    }
}

.tgsclass .classList .classroom h2,
.tgsblog .classList .classroom h2 {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: bold;
    margin: 10px 0;
}

.tgsclass .classList .classroom .teacher,
.tgsblog .classList .classroom .teacher {
    width: 240px;
    overflow: hidden;
    *zoom: 1;
}

.tgsclass .classList .classroom .teacher .thumb_t,
.tgsblog .classList .classroom .teacher .thumb_t {
    float: left;
    margin-right: 10px;
}

.tgsclass .classList .classroom .teacher h3,
.tgsblog .classList .classroom .teacher h3 {
    font-weight: bold;
}

.tgsclass .classList .classroom:nth-child(4n),
.tgsblog .classList .classroom:nth-child(4n) {
    margin-right: 0px;
}

@media (max-width: 667px) {

    .tgsclass .classList .classroom:nth-child(4n),
    .tgsblog .classList .classroom:nth-child(4n) {
        margin-right: auto;
    }
}

#price_system {
    background: #fafafa;
    padding: 0 0 90px 0;
}

@media (max-width: 667px) {
    #price_system {
        padding-bottom: 30px;
    }
}

#price_system .discount {
    background: #FFD800;
    padding: 40px 30px;
    text-align: center;
    vertical-align: middle;
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    #price_system .discount {
        width: 90%;
        margin: 0 auto;
        font-size: 18px;
        font-size: 1.125rem;
    }
}

#price_system .discount strong {
    font-size: 38px;
    font-size: 2.375rem;
    margin-left: 10px;
}

@media (max-width: 667px) {
    #price_system .discount strong {
        font-size: 22px;
        font-size: 1.375rem;
    }
}

#price_system .column_box {
    padding-bottom: 10px;
}

#price_system .column_box section {
    margin-bottom: 20px;
}

#price_system .column_box h3 {
    font-size: 34px;
    font-size: 2.125rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.6;
}

#price_system .column_box p {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: center;
}

#price_system .column_box h2 sup {
    margin-right: 5px;
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 200;
}

#price_system .credit {
    width: 1080px;
    margin: 0 auto;
    margin-bottom: 30px;
}

@media (max-width: 667px) {
    #price_system .credit {
        width: 90%;
        margin: 0 auto;
        font-size: 12px;
        font-size: 0.75rem;
        margin-bottom: 20px;
    }
}

.price_system {
    background: #fafafa;
    padding: 0 0 90px 0;
}

.price_system.wh {
    background: #fff;
}

.price_system .column_box {
    padding-bottom: 10px;
    padding-top: 0px;
}

.price_system .column_box section {
    margin-bottom: 20px;
}

.price_system .column_box h3 {
    font-size: 34px;
    font-size: 2.125rem;
    font-weight: 600;
    text-align: center;
}

.price_system .column_box p {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: center;
}

.price_system .column_box h2 sup {
    margin-right: 5px;
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 200;
}

.price_system .system_box {
    width: 1080px;
    margin: 0 auto;
    line-height: 1.8;
}

@media (max-width: 667px) {
    .price_system .system_box {
        width: 90%;
    }
}

.price_system .system_box h4 {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 600;
    margin: 30px 0;
    text-decoration: underline;
}

@media (max-width: 667px) {
    .price_system .system_box h4 {
        font-size: 18px;
        font-size: 1.125rem;
        text-align: center;
    }
}

.price_system .system_box p {
    font-size: 18px;
    font-size: 1.125rem;
}

.price_system .system_box p span {
    font-size: 16px;
    font-size: 1rem;
}

.price_system .system_box ul {
    list-style: disc;
    list-style-position: inside;
    font-size: 16px;
    font-size: 1rem;
}

.price_system .credit {
    width: 1080px;
    margin: 0 auto;
    margin-top: 30px;
}

@media (max-width: 667px) {
    .price_system .credit {
        width: 90%;
    }
}

.whats {
    background: #f5f7f9;
    width: 100%;
    height: 500px;
    border-top: #e9edf1 solid 1px;
    border-bottom: #e9edf1 solid 1px;
    font-size: 13px;
    font-size: 0.8125rem;
    overflow: hidden;
    *zoom: 1;
}

.whats .inner {
    width: 1080px;
    height: 500px;
    margin: 0 auto;
    position: relative;
}

.whats h1 {
    width: 100%;
    height: 30px;
    position: absolute;
    top: 30px;
    left: 0px;
    font-family: "proxima-nova-alt";
    font-size: 20px;
    font-size: 1.25rem;
    text-align: center;
}

.whats .lesson1,
.whats .lesson2,
.whats .lesson3,
.whats .lesson4,
.whats .lesson5,
.whats .lesson6 {
    width: 540px;
    height: 120px;
    position: absolute;
    line-height: 200%;
}

.whats .lesson1 h2,
.whats .lesson2 h2,
.whats .lesson3 h2,
.whats .lesson4 h2,
.whats .lesson5 h2,
.whats .lesson6 h2 {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 15px;
}

.whats .lesson1 h2 a,
.whats .lesson2 h2 a,
.whats .lesson3 h2 a,
.whats .lesson4 h2 a,
.whats .lesson5 h2 a,
.whats .lesson6 h2 a {
    color: #008cdd;
}

.whats .lesson1 h2 a:visited,
.whats .lesson2 h2 a:visited,
.whats .lesson3 h2 a:visited,
.whats .lesson4 h2 a:visited,
.whats .lesson5 h2 a:visited,
.whats .lesson6 h2 a:visited {
    color: #008cdd;
}

.whats .lesson1 h2 a:focus,
.whats .lesson2 h2 a:focus,
.whats .lesson3 h2 a:focus,
.whats .lesson4 h2 a:focus,
.whats .lesson5 h2 a:focus,
.whats .lesson6 h2 a:focus {
    color: #008cdd;
}

.whats .lesson1 h2 a:hover,
.whats .lesson2 h2 a:hover,
.whats .lesson3 h2 a:hover,
.whats .lesson4 h2 a:hover,
.whats .lesson5 h2 a:hover,
.whats .lesson6 h2 a:hover {
    color: #292e31;
}

.whats .lesson1 h2 a:active,
.whats .lesson2 h2 a:active,
.whats .lesson3 h2 a:active,
.whats .lesson4 h2 a:active,
.whats .lesson5 h2 a:active,
.whats .lesson6 h2 a:active {
    color: #008cdd;
}

.whats .lesson1 {
    top: 69px;
    left: 0px;
    text-align: center;
    border-right: 1px solid #e9edf1;
    border-bottom: 1px solid #e9edf1;
}

.whats .lesson2 {
    top: 69px;
    right: 0px;
    border-bottom: 1px solid #e9edf1;
    text-align: center;
}

.whats .lesson3 {
    bottom: 165px;
    left: 0px;
    text-align: center;
    border-right: 1px solid #e9edf1;
    border-bottom: 1px solid #e9edf1;
    padding-top: 25px;
}

.whats .lesson4 {
    bottom: 165px;
    right: 0px;
    text-align: center;
    border-bottom: 1px solid #e9edf1;
    padding-top: 25px;
}

.whats .lesson5 {
    bottom: 20px;
    left: 0px;
    text-align: center;
    border-right: 1px solid #e9edf1;
    padding-top: 25px;
}

.whats .lesson6 {
    bottom: 20px;
    right: 0px;
    text-align: center;
    padding-top: 25px;
}

.tag {
    font-size: 11px;
    font-size: 0.6875rem;
    text-transform: uppercase;
    margin: 3px 0;
}

.tag span {
    word-break: break-all;
    margin-right: 7px;
    border-bottom: 1px solid #bbbbbb;
}

.tag a {
    color: #bbbbbb;
}

.tag a:visited {
    color: #292e31;
}

.tag a:focus {
    color: #292e31;
}

.tag a:hover {
    color: #CCCCCC;
}

.tag a:active {
    color: #6f7c82;
}

.tag i {
    font-size: 13px;
    font-size: 0.8125rem;
    vertical-align: middle;
    color: #bbbbbb;
}

.tgsteacher {
    margin-bottom: 40px;
    overflow: hidden;
    *zoom: 1;
}

.tgsteacher .titleArea {
    width: 1080px;
    margin: 48px auto 40px auto;
}

.tgsteacher .sliderTeacher .teacher.slide {
    width: 160px !important;
}

.tgsteacher .sliderTeacher .teacher.slide h3 {
    font-weight: bold;
}

.tgsteacher .sliderTeacher .teacher.slide img {
    -webkit-transition: all .2s ease;
    -ms-transition: all .2s ease;
    -webkit-filter: grayscale(100%);
    filter: gray;
    width: 160px !important;
    height: 160px;
}

.tgsteacher .sliderTeacher .teacher.slide img:hover {
    -webkit-filter: grayscale(0%);
    filter: none;
}

.tgsteacher .sliderTeacher .teacher.slide .tag {
    font-size: 10px;
    font-size: 0.625rem;
}

.tgsteacher .sliderTeacher .teacher.slide .description {
    color: #6f7c82;
    font-size: 10px;
    font-size: 0.625rem;
    padding: 5px 0;
}

.author {
    overflow: hidden;
    *zoom: 1;
    width: 1080px;
    margin: 40px auto;
    padding-bottom: 40px;
    border-bottom: 1px solid #dddddd;
}

.author .photo {
    width: 240px;
    height: 240px;
    float: left;
}

.author .description {
    width: 800px;
    float: right;
}

.author .description h1 {
    font-size: 17px;
    font-size: 1.0625rem;
    color: #292e31;
    font-weight: bold;
    display: inline;
}

.author .description h2 {
    font-size: 15px;
    font-size: 0.9375rem;
    margin: 5px 0 0 0;
}

.author .description .meta span {
    margin-right: 20px;
}

.author .description .meta i {
    margin-right: 5px;
}

.author .description .meta a {
    text-decoration: underline;
}

.author .description p {
    font-size: 14px;
    font-size: 0.875rem;
    color: #6f7c82;
    padding-top: 20px;
    line-height: 200%;
}

.author-link {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 15px;
    display: block;
}

.author-link a {
    text-decoration: underline;
}

.authorList {
    margin-top: 25px;
    overflow: hidden;
    *zoom: 1;
}

.authorList .authorPhoto {
    width: 240px;
    height: 250px;
    float: left;
    margin-right: 40px;
    margin-bottom: 40px;
    display: block;
}

.authorList .authorPhoto:nth-child(4n) {
    margin-right: 0px;
}

.authorList .thumbPhoto {
    text-align: center;
}

.authorList .thumbPhoto img {
    height: auto;
}

.authorList h1 {
    margin: 0 20px;
    font-size: 14px;
    font-size: 0.875rem;
}

.authorList p {
    margin: 0 20px;
}

/* ------------------------------------------------------------
	WP PAGENAVI SETTING CSS
   ------------------------------------------------------------ */

.wp-pagenavi {
    margin: 40px auto;
    text-align: center;
    border-top: 1px solid #EEE;
    clear: both;
    font-size: 13px;
    font-size: 0.8125rem;
}

.wp-pagenavi .extend {
    display: none;
}

.wp-pagenavi .pages {
    display: none;
}

.wp-pagenavi a,
.wp-pagenavi span.current {
    color: #666;
    display: inline-block;
    line-height: 3.48em;
    height: 3.4em;
    margin: 0 .3em 12px;
    padding: 0 1em;
    cursor: default;
    margin-top: -1px;
}

.wp-pagenavi a {
    color: #CCC;
}

.wp-pagenavi span.current,
.wp-pagenavi a:hover {
    color: #464e54;
    cursor: pointer;
    border-top: 1px solid #464e54;
}

.wp-pagenavi span.current {
    border-top: 1px solid #464e54;
}

.pagenav {
    margin: 40px auto;
    height: 60px;
    clear: both;
    font-size: 13px;
    font-size: 0.8125rem;
}

.pagenav a {
    color: #666;
    display: inline-block;
    line-height: 3.48em;
    height: 3.4em;
    margin: 0 .3em 12px;
    padding: 0 1em;
    cursor: default;
}

.pagenav a:hover {
    color: #464e54;
    cursor: pointer;
    border-top: 1px solid #464e54;
    margin-top: -1px;
}

.pagenav .prev {
    float: left;
}

.pagenav .prev i {
    margin-right: 15px;
}

.pagenav .next {
    float: right;
}

.pagenav .next i {
    margin-left: 15px;
}

/* Infinite Scroll loader */

#infscr-loading {
    text-align: center;
    z-index: 100;
    position: fixed;
    left: 45%;
    bottom: 40px;
    width: 250px;
    padding: 10px;
    background: #000;
    opacity: 0.8;
    color: #FFF;
    border-radius: 10px;
}

/* ------------------------------------------------------------
	User SETTING CSS
   ------------------------------------------------------------ */

.pageSingle .users {
    width: 1080px;
    margin: 0 auto;
}

@media (max-width: 667px) {
    .pageSingle .users {
        width: 100%;
    }
}

.pageSingle .users .author-info {
    overflow: hidden;
    *zoom: 1;
    margin-bottom: 25px;
}

.pageSingle .users .author-info .author-avatar {
    width: 200px;
    float: left;
}

/* ------------------------------------------------------------
	CONTACT SETTING CSS
   ------------------------------------------------------------ */

.wpcf7 {
    margin: 40px auto 0 auto !important;
}

.wpcf7 aside {
    font-size: 10px;
    text-align: right;
}

.wpcf7 h1 {
    text-align: left;
}

.wpcf7 h2 {
    font-size: 18px !important;
}

.wpcf7 p {
    font-size: 16px !important;
    font-weight: bold;
    margin-bottom: 20px;
}

.wpcf7 {
    background: #f5f7f9;
    border: 1px solid #e4e9ec;
    padding: 20px !important;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}

.wpcf7 table {
    width: 100%;
}

.wpcf7 .title {
    font-weight: bold;
    font-size: 18px;
    font-size: 1.125rem;
}

.wpcf7 .title span {
    font-size: 10px;
    font-size: 0.625rem;
    color: red;
    margin-left: 5px;
}

.wpcf7 tr {
    display: block;
    margin-bottom: 20px;
}

.wpcf7 td {
    width: 100%;
    display: block;
    padding-bottom: 10px;
    vertical-align: top;
}

.wpcf7 .ajax-loader {
    display: none;
}

.wpcf7 select {
    font-size: 16px;
    font-size: 1rem;
}

.wpcf7 .wpcf7-text,
.wpcf7 .wpcf7-textarea {
    width: 100%;
    background-color: #fff;
    /* 背景色 */
    border-width: 1px 1px 1px 1px;
    /* 枠線の太さ 上右下左 */
    border-color: #f1f3f3;
    /* 枠色 */
    border-style: solid solid solid solid;
    /* 枠線の種類 上右下左 */
    margin-top: 5px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    padding: 8px 12px;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}

.wpcf7 .wpcf7-textarea {
    height: 260px;
}

.wpcf7 .wpcf7-submit {
    margin: 0 auto;
    text-align: center;
    padding: 8px 30px !important;
    width: 200px;
    font-weight: normal;
}

.wpcf7 input.wpcf7-submit[type=button],
.wpcf7 input.wpcf7-submit[type=reset],
.wpcf7 input.wpcf7-submit[type=submit] {
    background: #ff6a63;
    color: #FFF;
    display: block;
    padding: 15px;
    margin-bottom: 15px;
    font-size: 18px;
    font-size: 1.125rem;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    cursor: pointer;
    border: none;
}

.wpcf7 input.wpcf7-submit[type=button]:hover,
.wpcf7 input.wpcf7-submit[type=reset]:hover,
.wpcf7 input.wpcf7-submit[type=submit]:hover {
    background: #ff746c;
}

/* ------------------------------------------------------------
	About SETTING CSS
   ------------------------------------------------------------ */

.about {
    width: 952px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

.about p,
.about h2 {
    color: #6f7c82;
}

@media (max-width: 667px) {
    .about {
        width: 100%;
    }
}

.about .title {
    text-align: center;
    border-bottom: 1px solid #EEE;
    padding: 60px 0;
}

@media (max-width: 667px) {
    .about .title {
        width: 90%;
        margin: 0 auto;
    }

    .about .title img {
        width: 100%;
        height: auto;
    }
}

.about .title h1 {
    margin-bottom: 30px;
}

.about .aboutBox {
    overflow: hidden;
    *zoom: 1;
    margin: 60px 0;
    padding-bottom: 60px;
    border-bottom: 1px solid #EEE;
}

@media (max-width: 667px) {
    .about .aboutBox {
        margin: 20px 0;
    }
}

.about .aboutBox h1 {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 40px;
}

@media (max-width: 667px) {
    .about .aboutBox h1 {
        margin-bottom: 20px;
        text-align: center;
    }
}

.about .aboutBox h2 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 40px;
    line-height: 200%;
}

.about .aboutBox .link {
    margin-top: 10px;
}

.about .aboutBox .link a:hover {
    text-decoration: underline;
}

.about .aboutBox .link a:before {
    content: "\f0a9";
    margin: 10px;
    position: relative;
    top: 0px;
    font-family: FontAwesome;
    font-size: 15px;
    font-size: 0.9375rem;
}

.about .aboutBox.end {
    overflow: hidden;
    *zoom: 1;
    margin: 60px 0 0px 0;
    border-bottom: none;
}

.about .icon {
    text-align: center;
    margin-top: 50px;
}

.about .icon .fa {
    font-size: 300px;
}

@media (max-width: 667px) {
    .about .icon .fa {
        display: none;
    }
}

/* .about .photoBox {
    width: 460px;
    height: 400px;
    position: relative;
} */

@media (max-width: 667px) {
    .about .photoBox {
        width: 100%;
        height: auto;
        margin: 0 auto;
        margin-bottom: 20px;
    }

    .about .photoBox img {
        width: 100%;
        height: auto;
    }
}

.about .photoBox .photo2 {
    text-align: right;
}

.about .photoBox .photo5_1,
.about .photoBox .photo5_2 {
    position: absolute;
}

@media (max-width: 667px) {

    .about .photoBox .photo5_1,
    .about .photoBox .photo5_2 {
        position: static;
    }
}

.about .photoBox .photo5_1 {
    top: 0px;
    left: 0px;
    z-index: 2;
    display: block;
}

@media (max-width: 667px) {
    .about .photoBox .photo5_1 {
        width: 50%;
        margin: 0 auto;
    }
}

.about .photoBox .photo5_2 {
    top: 5px;
    left: 160px;
    z-index: 1;
}

@media (max-width: 667px) {
    .about .photoBox .photo5_2 {
        display: none;
    }
}

.about .left {
    width: 450px;
    float: left;
}

@media (max-width: 667px) {
    .about .left {
        width: 90%;
        margin: 0 auto;
        float: none;
    }
}

.about .right {
    width: 470px;
    float: right;
}

@media (max-width: 667px) {
    .about .right {
        width: 90%;
        margin: 0 auto;
        float: none;
    }

    .about .right img {
        display: block;
    }
}

.title_system {
    border-bottom: 1px solid #EEE;
    padding: 60px 0 30px 0;
    background: #058CDD;
    line-height: 200%;
    margin-bottom: 0px;
}

.title_system h1 {
    width: 952px;
    margin: 0 auto;
    color: #FFF;
    font-size: 50px;
    font-size: 3.125rem;
    margin-bottom: 30px;
    font-weight: normal;
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
}

@media (max-width: 667px) {
    .title_system h1 {
        width: 100%;
        font-size: 30px;
        font-size: 1.875rem;
        text-align: center;
    }
}

.title_system h1 span {
    font-size: 24px;
    font-size: 1.5rem;
    margin-left: 10px;
}

.system,
.faq,
.session {
    width: 952px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

.thank_img img {
    width: 100%;
    height: auto;
}

@media (max-width: 667px) {

    .system,
    .faq,
    .session {
        width: 100%;
        margin: 0 auto;
    }
}

.system p,
.system h2,
.system h3,
.faq p,
.faq h2,
.faq h3,
.session p,
.session h2,
.session h3 {
    color: #031a31;
}

.system .systemBox,
.faq .systemBox {
    overflow: hidden;
    *zoom: 1;
    padding: 60px 0;
    border-bottom: 1px solid #EEE;
}

.system .systemBox h1,
.faq .systemBox h1 {
    margin-bottom: 40px;
    line-height: 180%;
    font-size: 18px;
    font-size: 1.125rem;
}

@media (max-width: 667px) {

    .system .systemBox h1,
    .faq .systemBox h1 {
        font-size: 14px;
        font-size: 0.875rem;
        text-align: center;
    }
}

.system .systemBox .title,
.faq .systemBox .title {
    border-bottom: none;
    padding: 0 0 30px 0;
}

.system .systemBox .title h1,
.faq .systemBox .title h1 {
    font-size: 40px;
    font-size: 2.5rem;
    margin-bottom: 30px;
    font-weight: normal;
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
}

@media (max-width: 667px) {

    .system .systemBox .title h1,
    .faq .systemBox .title h1 {
        font-size: 20px;
        font-size: 1.25rem;
        font-weight: bold;
        text-align: center;
    }
}

.system .systemBox .title h1 span,
.faq .systemBox .title h1 span {
    font-size: 20px;
    font-size: 1.25rem;
    margin-left: 10px;
}

.system .systemBox h2,
.faq .systemBox h2 {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 40px;
    line-height: 200%;
}

.system .systemBox .point,
.faq .systemBox .point {
    overflow: hidden;
    *zoom: 1;
}

.system .systemBox .point h3,
.faq .systemBox .point h3 {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 10px;
}

.system .systemBox .point i,
.faq .systemBox .point i {
    font-size: 70px;
    font-size: 4.375rem;
    float: left;
    margin-right: 20px;
    padding-top: 10px;
    color: #e5e5e5;
}

.system .systemBox .point p,
.faq .systemBox .point p {
    font-size: 16px;
    font-size: 1rem;
}

.system .systemBox .methods,
.faq .systemBox .methods {
    border-radius: 3px;
    background-image: -ms-linear-gradient(90deg, #e6ebed 0%, #fdfdfe 100%);
    -webkit-box-shadow: 0px 0px 3px rgba(33, 23, 20, 0.42);
    box-shadow: 0px 0px 3px rgba(33, 23, 20, 0.42);
    padding: 30px 20px;
    margin-right: 10px;
}

.system .systemBox .methods h1,
.faq .systemBox .methods h1 {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 20px;
}

.system .systemBox .methods h2,
.faq .systemBox .methods h2 {
    font-size: 16px;
    font-size: 1rem;
    color: #646c6f;
}

.system .left,
.faq .left {
    width: 469px;
    float: left;
}

@media (max-width: 667px) {

    .system .left,
    .faq .left {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 20px;
        float: none;
    }
}

.system .right,
.faq .right {
    width: 470px;
    float: right;
}

@media (max-width: 667px) {

    .system .right,
    .faq .right {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 20px;
        float: none;
    }
}

/* ------------------------------------------------------------
	Faq SETTING CSS
   ------------------------------------------------------------ */

.faq {
    overflow: hidden;
    *zoom: 1;
    padding-top: 40px;
}

.faq .title {
    border-bottom: none;
}

.faq nav {
    overflow: hidden;
    *zoom: 1;
    margin-bottom: 40px;
}

@media (max-width: 667px) {
    .faq nav {
        padding: 0 20px;
    }
}

.faq nav ul li {
    float: left;
    margin-right: 8px;
}

@media (max-width: 667px) {
    .faq nav ul li {
        margin-bottom: 8px;
    }
}

.faq nav ul li a {
    background: #f1f1f1;
    display: block;
    width: 150px;
    padding: 3px 0;
    border: 1px solid #EEE;
    border-radius: 50px;
    text-align: center;
}

.faq nav ul li:last-child {
    margin-right: 0px;
}

.faq nav ul li a:hover {
    background: #FFF;
}

.faq .faqBox {
    border: 1px solid #EEE;
    border-radius: 3px;
    padding: 0px;
    margin-bottom: 40px;
}

.faq .faqBox .title {
    margin: 0px;
    padding: 0px;
}

.faq .faqBox h2 {
    border-bottom: 1px solid #EEE;
    padding: 20px 20px 20px 30px;
    font-weight: bold;
    font-size: 22px;
    font-size: 1.375rem;
}

.faq .faqBox ul {
    padding: 30px 30px;
}

.faq .faqBox ul h3 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 20px;
    display: list-item;
    list-style: circle inside;
}

.faq .faqBox ul li {
    margin-bottom: 40px;
    padding-bottom: 20px;
    line-height: 200%;
    font-size: 16px;
    font-size: 1rem;
    border-bottom: 1px solid #EEE;
}

.faq .faqBox ul li p {
    margin: 20px 0;
}

.faq .faqBox ul li:last-child {
    margin-bottom: 0px;
    border-bottom: none;
}

/* ------------------------------------------------------------
	ClassDetail SETTING CSS
   ------------------------------------------------------------ */

.classDetail {
    width: 1080px;
    margin: 0 auto;
}

.classDetail header {
    border: 1px solid #EEE;
    border-radius: 3px;
    padding: 20px 30px;
    margin: 40px 0;
}

.classDetail header h1 {
    font-size: 23px;
    font-size: 1.4375rem;
    width: 680px;
    padding-top: 25px;
    float: left;
}

.classDetail header .sub {
    width: 300px;
    float: right;
    text-align: right;
}

.classDetail header .sub .sns {
    width: 300px;
    padding-top: 20px;
}

.classDetail header .sub .sns li {
    width: 90px;
    display: inline-block;
    padding: 0 10px;
    zoom: 1;
    line-height: 1;
    z-index: 9999;
}

.classDetail header .sub .sns li .fb_iframe_widget>span {
    vertical-align: baseline !important;
}

.classDetail aside {
    width: 200px;
    float: left;
}

.classDetail aside section {
    margin-bottom: 30px;
}

.classDetail aside section div,
.classDetail aside .reservation,
.classDetail aside .join {
    background: #f8f8f8;
}

.classDetail aside section.data h3,
.classDetail aside section.teacher h3,
.classDetail aside section.place h3 {
    overflow: hidden;
    *zoom: 1;
    font-size: 18px;
    font-size: 1.125rem;
    font-family: "din-condensed-web", sans-serif;
    color: #555555;
    margin-bottom: 15px;
}

.classDetail aside section.data h3 span,
.classDetail aside section.teacher h3 span,
.classDetail aside section.place h3 span {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: normal;
    float: right;
}

.classDetail aside section.data div,
.classDetail aside section.place div {
    font-family: "din-condensed-web", sans-serif;
    font-size: 20px;
    font-size: 1.25rem;
    padding: 20px;
}

.classDetail aside section.data div .day,
.classDetail aside section.place div .day {
    margin-bottom: 10px;
}

.classDetail aside section.data div .time,
.classDetail aside section.place div .time {
    color: #555555;
}

.classDetail aside section.data div .spot i,
.classDetail aside section.place div .spot i {
    font-size: 12px;
    vertical-align: middle;
}

.classDetail aside section.teacher div {
    padding: 20px;
    font-size: 10px;
    font-size: 0.625rem;
}

.classDetail aside section.teacher div .thumb {
    text-align: center;
}

.classDetail aside section.teacher div h2 {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: bold;
}

.classDetail aside section.teacher div h2 span a {
    background: #f46bb3;
    color: #FFF;
    margin-left: 10px;
    padding: 2px 5px;
    font-weight: normal;
    font-size: 10px;
    font-size: 0.625rem;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}

.classDetail aside section.teacher div h2 span a:hover {
    background: #f29eca;
}

.classDetail aside section.reservation,
.classDetail aside section.join {
    text-align: center;
    padding: 20px;
}

.classDetail aside section.reservation i,
.classDetail aside section.join i {
    font-size: 80px;
    font-size: 5rem;
    color: #008cdd;
}

.classDetail aside section.reservation p span,
.classDetail aside section.join p span {
    display: block;
    font-size: 10px;
    font-size: 0.625rem;
    line-height: 160%;
}

.classDetail aside section.reservation .button,
.classDetail aside section.join .button {
    background: #ff6a63;
    color: #FFF;
    display: block;
    padding: 10px;
    margin-bottom: 15px;
    font-size: 13px;
    font-size: 0.8125rem;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}

.classDetail aside section.reservation .button:hover,
.classDetail aside section.join .button:hover {
    background: #ff746c;
}

.classDetail .detail {
    width: 800px;
    float: right;
    color: #6f7c82;
    line-height: 200%;
    font-size: 14px;
    font-size: 0.875rem;
}

.classDetail .detail .attachment-large_thumbnail {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    margin-bottom: 20px;
}

.classDetail .detail strong,
.classDetail .detail b {
    font-weight: bold;
}

.classDetail .detail p {
    margin-bottom: 40px;
}

/* ------------------------------------------------------------
	BlogDetail SETTING CSS
   ------------------------------------------------------------ */

.blogwarp {
    width: 1160px;
    margin: 40px auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media (max-width: 667px) {
    .blogwarp {
        width: 100%;
        margin-top: 0px;
    }
}

.blogwarp aside {
    width: 180px;
}

@media (max-width: 667px) {
    .blogwarp aside {
        display: none;
    }
}

.blogwarp aside h3 {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    margin-bottom: 20px;
    border-bottom: 1px solid #CCC;
}

.blogwarp aside ul {
    list-style: disc;
    list-style-position: inside;
}

.blogwarp aside ul li {
    font-size: 13px;
    font-size: 0.8125rem;
    margin-top: 10px;
}

.blogwarp aside ul li a:hover {
    text-decoration: underline;
}

.blogDetail {
    overflow: hidden;
    *zoom: 1;
    width: 960px;
    margin: 40px auto;
    padding: 40px;
    background: #FFF;
}

@media (max-width: 667px) {
    .blogDetail {
        width: 100%;
        padding: 20px;
        margin-top: 0px;
    }
}

.blogDetail header {
    overflow: hidden;
    *zoom: 1;
}

.blogDetail header h1 {
    overflow: hidden;
    *zoom: 1;
    font-size: 32px;
    font-size: 2rem;
    width: 100%;
    line-height: 180%;
    padding: 0px;
}

.blogDetail header .sub {
    overflow: hidden;
    *zoom: 1;
    margin-bottom: 20px;
}

.blogDetail header .sub .sns {
    float: right;
    width: 340px;
    text-align: right;
}

.blogDetail header .sub .sns li {
    display: inline-block;
    padding-left: 10px;
    zoom: 1;
    line-height: 1;
}

.blogDetail header .sub .sns li .fb_iframe_widget>span {
    vertical-align: baseline !important;
}

.blogDetail header .sub .meta {
    overflow: hidden;
    *zoom: 1;
    font-size: 10px;
    font-size: 0.625rem;
    width: 340px;
    float: left;
    line-height: 1.6;
}

@media (max-width: 667px) {
    .blogDetail header .sub .meta {
        width: 100%;
        float: none;
    }
}

.blogDetail header .sub .meta li {
    display: inline-block;
    padding: 0 10px 0 0px;
    zoom: 1;
    line-height: 1.6;
}

.blogDetail aside {
    width: 240px;
    float: right;
}

.blogDetail aside section {
    margin-bottom: 30px;
}

.blogDetail aside section h3 {
    overflow: hidden;
    *zoom: 1;
    font-size: 18px;
    font-size: 1.125rem;
    font-family: "din-condensed-web", sans-serif;
    color: #555555;
    margin-bottom: 15px;
}

.blogDetail aside section h3 span {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: normal;
    float: right;
}

.blogDetail aside section.data div {
    font-family: "din-condensed-web", sans-serif;
    font-size: 20px;
    font-size: 1.25rem;
    padding: 20px;
}

.blogDetail aside section.data div .day {
    margin-bottom: 10px;
}

.blogDetail aside section.data div .time {
    color: #555555;
}

.blogDetail aside section.data div .spot i {
    font-size: 12px;
    vertical-align: middle;
}

.blogDetail .sameclass h3 {
    margin-bottom: 20px;
}

.blogDetail .sameclass .classList .classroom {
    width: 240px;
    float: left;
    margin-right: 40px;
    margin-bottom: 40px;
    position: relative;
}

.blogDetail .sameclass .classList .classroom .data {
    color: #FFF;
    width: 60px;
    height: 60px;
    position: absolute;
    top: -20px;
    left: -20px;
    z-index: 99999;
    text-align: center;
}

.blogDetail .sameclass .classList .classroom .data i {
    width: 50px;
    height: 50px;
    color: #008cdd;
    position: absolute;
    font-size: 50px;
    font-size: 3.125rem;
    top: 0px;
    left: 0px;
    z-index: 1;
}

.blogDetail .sameclass .classList .classroom .data .text {
    font-family: "din-condensed-web", sans-serif;
    width: 50px;
    height: 50px;
    position: absolute;
    top: 5px;
    left: 0px;
    z-index: 2;
    font-size: 25px;
    font-size: 1.5625rem;
    line-height: 70%;
}

.blogDetail .sameclass .classList .classroom .data .text span {
    font-size: 14px;
    font-size: 0.875rem;
    display: block;
}

.blogDetail .sameclass .classList .classroom .thumb {
    width: 240px;
    height: 160px;
}

.blogDetail .sameclass .classList .classroom figure {
    position: relative;
    overflow: hidden;
    width: 240px;
    height: 160px;
}

.blogDetail .sameclass .classList .classroom figcaption {
    position: absolute;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgba(99, 154, 255, 0.8);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    opacity: 0;
    color: #FFF;
    text-align: center;
    vertical-align: middle;
    display: block;
}

.blogDetail .sameclass .classList .classroom figcaption .time {
    margin-top: 75px;
    font-size: 35px;
    font-size: 2.1875rem;
    text-shadow: 1px 1px 0px rgba(20, 24, 156, 0.4);
    font-family: "din-condensed-web", sans-serif;
}

.blogDetail .sameclass .classList .classroom figcaption .time a {
    color: #FFF;
}

.blogDetail .sameclass .classList .classroom figure:hover figcaption {
    opacity: 1;
}

.blogDetail .sameclass .classList .classroom .thumb img {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    width: 240px;
    height: 160px;
}

.blogDetail .sameclass .classList .classroom h2 {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: bold;
    margin: 10px 0;
}

.blogDetail .sameclass .classList .classroom .teacher {
    width: 240px;
    overflow: hidden;
    *zoom: 1;
}

.blogDetail .sameclass .classList .classroom .teacher .thumb_t {
    float: left;
    margin-right: 10px;
}

.blogDetail .sameclass .classList .classroom:nth-child(4n) {
    margin-right: 0px;
}

.blogDetail .post {
    margin: 0 auto;
    line-height: 1.8;
    word-break: break-all;
    font-size: 16px;
    font-size: 1rem;
}

@media (max-width: 667px) {
    .blogDetail .post {
        width: 100%;
        padding: 0px;
        font-size: 13px;
        font-size: 0.8125rem;
    }
}

.blogDetail .post a {
    color: #333;
    text-decoration: underline;
}

@media (max-width: 667px) {
    .blogDetail .post h1 {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.blogDetail .post h3 {
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: bold;
    margin: 50px 0 30px 0;
    line-height: 1.8;
}

@media (max-width: 667px) {
    .blogDetail .post h3 {
        font-size: 14px;
        font-size: 0.875rem;
        margin: 30px 0 20px 0;
    }
}

.blogDetail .post h4 {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    border-bottom: 2px solid #e2041b;
    margin-bottom: 20px;
}

@media (max-width: 667px) {
    .blogDetail .post h4 {
        font-size: 16px;
        font-size: 1rem;
    }
}

.blogDetail .post h4 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    border-bottom: 2px solid #e2041b;
    margin-bottom: 20px;
}

@media (max-width: 667px) {
    .blogDetail .post h4 {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

.blogDetail .post p {
    margin-bottom: 30px;
    letter-spacing: 1px;
    line-height: 2;
    font-size: 17px;
    font-size: 1.0625rem;
}

.blogDetail .post p small {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.7;
    display: block;
}

.blogDetail .post figure {
    padding: 20px 0;
}

.blogDetail .post figure figcaption {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    border-bottom: 2px solid #e2041b;
    padding-bottom: 5px;
}

@media (max-width: 667px) {
    .blogDetail .post figure figcaption {
        font-size: 16px;
        font-size: 1rem;
    }
}

.blogDetail .post figure ul {
    list-style: none;
}

.blogDetail .post figure ul li {
    font-size: 18px;
    font-size: 1.125rem;
    position: relative;
    margin-left: 30px;
}

@media (max-width: 667px) {
    .blogDetail .post figure ul li {
        font-size: 16px;
        font-size: 1rem;
    }
}

.blogDetail .post figure ul li:before {
    position: absolute;
    top: 0px;
    left: -40px;
    display: block;
    width: 10px;
    height: 10px;
    content: '\f00c';
    font-family: FontAwesome;
    color: #e2041b;
    font-size: 25px;
    font-size: 1.5625rem;
}

.blogDetail .post figure ul li strong {
    font-weight: bold;
}

.blogDetail .post figure.task figcaption {
    border-bottom: 2px solid #666;
}

.blogDetail .post figure.task ul li:before {
    color: #666;
}

.blogDetail .post ul {
    list-style: disc;
    list-style-position: inside;
    padding: 0 0 30px 0px;
}

.blogDetail .post ul li {
    margin-top: 20px;
}

@media (max-width: 667px) {
    .blogDetail .post iframe {
        width: 100%;
    }
}

.blogDetail .post blockquote {
    padding: 20px 100px 20px 20px;
    border-left: 8px solid #efefef;
    margin-left: 100px;
    margin-bottom: 50px;
    margin-top: 50px;
    position: relative;
}

@media (max-width: 667px) {
    .blogDetail .post blockquote {
        padding: 20px 20px 20px 20px;
        border-left: 3px solid #efefef;
        margin-left: 50px;
    }
}

.blogDetail .post blockquote:before {
    content: '“';
    position: absolute;
    font-size: 170px;
    font-size: 10.625rem;
    left: -100px;
    top: 60px;
    font-family: Georgia;
    color: #efefef;
}

.blogDetail .post blockquote p {
    margin-bottom: 0;
    letter-spacing: 0.1em;
}

.blogDetail .post img {
    margin-bottom: 40px;
    height: auto;
}

.blogDetail .post img.alignright {
    display: block;
    margin: 0 0 0 auto;
    padding: 30px 0;
}

.blogDetail .post img.alignleft {
    display: block;
    margin: 0 auto 0 0;
    padding: 30px 0;
}

.blogDetail .post img.aligncenter {
    display: block;
    margin: 0 auto;
    padding: 30px 0;
}

@media (max-width: 667px) {

    .blogDetail .post img.alignright,
    .blogDetail .post img.alignleft,
    .blogDetail .post img.aligncenter,
    .blogDetail .post img.alignnone {
        width: 100%;
        height: auto;
        margin: 0 auto;
    }
}

.blogDetail .post .su-posts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 40px;
}

.blogDetail .post .su-posts .su-post {
    width: 30%;
}

@media (max-width: 667px) {
    .blogDetail .post .su-posts .su-post {
        width: 45%;
        margin-bottom: 20px;
    }
}

.blogDetail .post .su-posts .su-post h2 {
    font-size: 18px;
    font-size: 1.125rem;
    margin: 0;
    padding: 15px 0;
}

@media (max-width: 667px) {
    .blogDetail .post .su-posts .su-post h2 {
        font-size: 16px;
        font-size: 1rem;
    }
}

.blogDetail .post .su-posts .su-post .su-post-thumbnail {
    width: 100%;
    height: auto;
    margin-bottom: 0px;
}

.blogDetail .post .su-posts .su-post .su-post-thumbnail img {
    width: 100%;
    height: auto;
    margin-bottom: 0px;
}

.blogDetail .post .su-posts .su-post .su-post-excerpt {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.6;
}

@media (max-width: 667px) {
    .blogDetail .post .su-posts .su-post .su-post-excerpt {
        display: none;
    }
}

.blogDetail .post .su-posts .su-post .su-post-excerpt p {
    font-size: 14px;
    font-size: 0.875rem;
}

.blogDetail .post .su-post-excerpt {
    display: none;
}

.blogSingle {
    margin: 0;
}

@media (max-width: 667px) {
    .blogSingle {
        width: 100%;
        padding: 20px;
        margin-top: 0px;
    }
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.mailmagazine {
    border: 1px solid #CCC;
}

.yudo {
    overflow: hidden;
    *zoom: 1;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    background: #008cdd;
    color: #FFF;
    padding: 30px 40px;
    margin: 40px 0 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 667px) {
    .yudo {
        width: 100%;
        padding: 20px;
    }
}

.yudo p {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 200%;
    margin-bottom: 0px !important;
}

.yudo .text {
    width: 60%;
    float: left;
}

@media (max-width: 667px) {
    .yudo .text {
        width: 100%;
        float: none;
    }
}

.yudo .button {
    line-height: normal;
    float: right;
    padding: 15px 0;
}

@media (max-width: 667px) {
    .yudo .button {
        float: none;
        text-align: center;
    }
}



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: inherit;
    font-size: 100%;
    vertical-align: baseline;
}

html {
    line-height: 1;
}

ol,
ul {
    list-style: none;
}

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

caption,
th,
td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle;
}

q,
blockquote {
    quotes: none;
}

q:before,
q:after,
blockquote:before,
blockquote:after {
    content: "";
    content: none;
}

a img {
    border: none;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block;
}

/* FONT PATH
   * -------------------------- */
@font-face {
    font-family: 'FontAwesome';
    src: url("fonts/fontawesome-webfont.eot?v=4.1.0");
    src: url("fonts/fontawesome-webfont.eot?#iefix&v=4.1.0") format("embedded-opentype"), url("fonts/fontawesome-webfont.woff?v=4.1.0") format("woff"), url("fonts/fontawesome-webfont.ttf?v=4.1.0") format("truetype"), url("fonts/fontawesome-webfont.svg?v=4.1.0#fontawesomeregular") format("svg");
    font-weight: normal;
    font-style: normal;
}

.fa {
    display: inline-block;
    font-family: FontAwesome;
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Font Awesome uses the Unicode Private Use Area (PUA) to ensure screen
     readers do not read off random characters that represent icons */
.fa-glass:before {
    content: "";
}

.fa-music:before {
    content: "";
}

.fa-search:before {
    content: "";
}

.fa-envelope-o:before {
    content: "";
}

.fa-heart:before {
    content: "";
}

.fa-star:before {
    content: "";
}

.fa-star-o:before {
    content: "";
}

.fa-user:before {
    content: "";
}

.fa-film:before {
    content: "";
}

.fa-th-large:before {
    content: "";
}

.fa-th:before {
    content: "";
}

.fa-th-list:before {
    content: "";
}

.fa-check:before {
    content: "";
}

.fa-times:before {
    content: "";
}

.fa-search-plus:before {
    content: "";
}

.fa-search-minus:before {
    content: "";
}

.fa-power-off:before {
    content: "";
}

.fa-signal:before {
    content: "";
}

.fa-gear:before,
.fa-cog:before {
    content: "";
}

.fa-trash-o:before {
    content: "";
}

.fa-home:before {
    content: "";
}

.fa-file-o:before {
    content: "";
}

.fa-clock-o:before {
    content: "";
}

.fa-road:before {
    content: "";
}

.fa-download:before {
    content: "";
}

.fa-arrow-circle-o-down:before {
    content: "";
}

.fa-arrow-circle-o-up:before {
    content: "";
}

.fa-inbox:before {
    content: "";
}

.fa-play-circle-o:before {
    content: "";
}

.fa-rotate-right:before,
.fa-repeat:before {
    content: "";
}

.fa-refresh:before {
    content: "";
}

.fa-list-alt:before {
    content: "";
}

.fa-lock:before {
    content: "";
}

.fa-flag:before {
    content: "";
}

.fa-headphones:before {
    content: "";
}

.fa-volume-off:before {
    content: "";
}

.fa-volume-down:before {
    content: "";
}

.fa-volume-up:before {
    content: "";
}

.fa-qrcode:before {
    content: "";
}

.fa-barcode:before {
    content: "";
}

.fa-tag:before {
    content: "";
}

.fa-tags:before {
    content: "";
}

.fa-book:before {
    content: "";
}

.fa-bookmark:before {
    content: "";
}

.fa-print:before {
    content: "";
}

.fa-camera:before {
    content: "";
}

.fa-font:before {
    content: "";
}

.fa-bold:before {
    content: "";
}

.fa-italic:before {
    content: "";
}

.fa-text-height:before {
    content: "";
}

.fa-text-width:before {
    content: "";
}

.fa-align-left:before {
    content: "";
}

.fa-align-center:before {
    content: "";
}

.fa-align-right:before {
    content: "";
}

.fa-align-justify:before {
    content: "";
}

.fa-list:before {
    content: "";
}

.fa-dedent:before,
.fa-outdent:before {
    content: "";
}

.fa-indent:before {
    content: "";
}

.fa-video-camera:before {
    content: "";
}

.fa-photo:before,
.fa-image:before,
.fa-picture-o:before {
    content: "";
}

.fa-pencil:before {
    content: "";
}

.fa-map-marker:before {
    content: "";
}

.fa-adjust:before {
    content: "";
}

.fa-tint:before {
    content: "";
}

.fa-edit:before,
.fa-pencil-square-o:before {
    content: "";
}

.fa-share-square-o:before {
    content: "";
}

.fa-check-square-o:before {
    content: "";
}

.fa-arrows:before {
    content: "";
}

.fa-step-backward:before {
    content: "";
}

.fa-fast-backward:before {
    content: "";
}

.fa-backward:before {
    content: "";
}

.fa-play:before {
    content: "";
}

.fa-pause:before {
    content: "";
}

.fa-stop:before {
    content: "";
}

.fa-forward:before {
    content: "";
}

.fa-fast-forward:before {
    content: "";
}

.fa-step-forward:before {
    content: "";
}

.fa-eject:before {
    content: "";
}

.fa-chevron-left:before {
    content: "";
}

.fa-chevron-right:before {
    content: "";
}

.fa-plus-circle:before {
    content: "";
}

.fa-minus-circle:before {
    content: "";
}

.fa-times-circle:before {
    content: "";
}

.fa-check-circle:before {
    content: "";
}

.fa-question-circle:before {
    content: "";
}

.fa-info-circle:before {
    content: "";
}

.fa-crosshairs:before {
    content: "";
}

.fa-times-circle-o:before {
    content: "";
}

.fa-check-circle-o:before {
    content: "";
}

.fa-ban:before {
    content: "";
}

.fa-arrow-left:before {
    content: "";
}

.fa-arrow-right:before {
    content: "";
}

.fa-arrow-up:before {
    content: "";
}

.fa-arrow-down:before {
    content: "";
}

.fa-mail-forward:before,
.fa-share:before {
    content: "";
}

.fa-expand:before {
    content: "";
}

.fa-compress:before {
    content: "";
}

.fa-plus:before {
    content: "";
}

.fa-minus:before {
    content: "";
}

.fa-asterisk:before {
    content: "";
}

.fa-exclamation-circle:before {
    content: "";
}

.fa-gift:before {
    content: "";
}

.fa-leaf:before {
    content: "";
}

.fa-fire:before {
    content: "";
}

.fa-eye:before {
    content: "";
}

.fa-eye-slash:before {
    content: "";
}

.fa-warning:before,
.fa-exclamation-triangle:before {
    content: "";
}

.fa-plane:before {
    content: "";
}

.fa-calendar:before {
    content: "";
}

.fa-random:before {
    content: "";
}

.fa-comment:before {
    content: "";
}

.fa-magnet:before {
    content: "";
}

.fa-chevron-up:before {
    content: "";
}

.fa-chevron-down:before {
    content: "";
}

.fa-retweet:before {
    content: "";
}

.fa-shopping-cart:before {
    content: "";
}

.fa-folder:before {
    content: "";
}

.fa-folder-open:before {
    content: "";
}

.fa-arrows-v:before {
    content: "";
}

.fa-arrows-h:before {
    content: "";
}

.fa-bar-chart-o:before {
    content: "";
}

.fa-twitter-square:before {
    content: "";
}

.fa-facebook-square:before {
    content: "";
}

.fa-camera-retro:before {
    content: "";
}

.fa-key:before {
    content: "";
}

.fa-gears:before,
.fa-cogs:before {
    content: "";
}

.fa-comments:before {
    content: "";
}

.fa-thumbs-o-up:before {
    content: "";
}

.fa-thumbs-o-down:before {
    content: "";
}

.fa-star-half:before {
    content: "";
}

.fa-heart-o:before {
    content: "";
}

.fa-sign-out:before {
    content: "";
}

.fa-linkedin-square:before {
    content: "";
}

.fa-thumb-tack:before {
    content: "";
}

.fa-external-link:before {
    content: "";
}

.fa-sign-in:before {
    content: "";
}

.fa-trophy:before {
    content: "";
}

.fa-github-square:before {
    content: "";
}

.fa-upload:before {
    content: "";
}

.fa-lemon-o:before {
    content: "";
}

.fa-phone:before {
    content: "";
}

.fa-square-o:before {
    content: "";
}

.fa-bookmark-o:before {
    content: "";
}

.fa-phone-square:before {
    content: "";
}

.fa-twitter:before {
    content: "";
}

.fa-facebook:before {
    content: "";
}

.fa-github:before {
    content: "";
}

.fa-unlock:before {
    content: "";
}

.fa-credit-card:before {
    content: "";
}

.fa-rss:before {
    content: "";
}

.fa-hdd-o:before {
    content: "";
}

.fa-bullhorn:before {
    content: "";
}

.fa-bell:before {
    content: "";
}

.fa-certificate:before {
    content: "";
}

.fa-hand-o-right:before {
    content: "";
}

.fa-hand-o-left:before {
    content: "";
}

.fa-hand-o-up:before {
    content: "";
}

.fa-hand-o-down:before {
    content: "";
}

.fa-arrow-circle-left:before {
    content: "";
}

.fa-arrow-circle-right:before {
    content: "";
}

.fa-arrow-circle-up:before {
    content: "";
}

.fa-arrow-circle-down:before {
    content: "";
}

.fa-globe:before {
    content: "";
}

.fa-wrench:before {
    content: "";
}

.fa-tasks:before {
    content: "";
}

.fa-filter:before {
    content: "";
}

.fa-briefcase:before {
    content: "";
}

.fa-arrows-alt:before {
    content: "";
}

.fa-group:before,
.fa-users:before {
    content: "";
}

.fa-chain:before,
.fa-link:before {
    content: "";
}

.fa-cloud:before {
    content: "";
}

.fa-flask:before {
    content: "";
}

.fa-cut:before,
.fa-scissors:before {
    content: "";
}

.fa-copy:before,
.fa-files-o:before {
    content: "";
}

.fa-paperclip:before {
    content: "";
}

.fa-save:before,
.fa-floppy-o:before {
    content: "";
}

.fa-square:before {
    content: "";
}

.fa-navicon:before,
.fa-reorder:before,
.fa-bars:before {
    content: "";
}

.fa-list-ul:before {
    content: "";
}

.fa-list-ol:before {
    content: "";
}

.fa-strikethrough:before {
    content: "";
}

.fa-underline:before {
    content: "";
}

.fa-table:before {
    content: "";
}

.fa-magic:before {
    content: "";
}

.fa-truck:before {
    content: "";
}

.fa-pinterest:before {
    content: "";
}

.fa-pinterest-square:before {
    content: "";
}

.fa-google-plus-square:before {
    content: "";
}

.fa-google-plus:before {
    content: "";
}

.fa-money:before {
    content: "";
}

.fa-caret-down:before {
    content: "";
}

.fa-caret-up:before {
    content: "";
}

.fa-caret-left:before {
    content: "";
}

.fa-caret-right:before {
    content: "";
}

.fa-columns:before {
    content: "";
}

.fa-unsorted:before,
.fa-sort:before {
    content: "";
}

.fa-sort-down:before,
.fa-sort-desc:before {
    content: "";
}

.fa-sort-up:before,
.fa-sort-asc:before {
    content: "";
}

.fa-envelope:before {
    content: "";
}

.fa-linkedin:before {
    content: "";
}

.fa-rotate-left:before,
.fa-undo:before {
    content: "";
}

.fa-legal:before,
.fa-gavel:before {
    content: "";
}

.fa-dashboard:before,
.fa-tachometer:before {
    content: "";
}

.fa-comment-o:before {
    content: "";
}

.fa-comments-o:before {
    content: "";
}

.fa-flash:before,
.fa-bolt:before {
    content: "";
}

.fa-sitemap:before {
    content: "";
}

.fa-umbrella:before {
    content: "";
}

.fa-paste:before,
.fa-clipboard:before {
    content: "";
}

.fa-lightbulb-o:before {
    content: "";
}

.fa-exchange:before {
    content: "";
}

.fa-cloud-download:before {
    content: "";
}

.fa-cloud-upload:before {
    content: "";
}

.fa-user-md:before {
    content: "";
}

.fa-stethoscope:before {
    content: "";
}

.fa-suitcase:before {
    content: "";
}

.fa-bell-o:before {
    content: "";
}

.fa-coffee:before {
    content: "";
}

.fa-cutlery:before {
    content: "";
}

.fa-file-text-o:before {
    content: "";
}

.fa-building-o:before {
    content: "";
}

.fa-hospital-o:before {
    content: "";
}

.fa-ambulance:before {
    content: "";
}

.fa-medkit:before {
    content: "";
}

.fa-fighter-jet:before {
    content: "";
}

.fa-beer:before {
    content: "";
}

.fa-h-square:before {
    content: "";
}

.fa-plus-square:before {
    content: "";
}

.fa-angle-double-left:before {
    content: "";
}

.fa-angle-double-right:before {
    content: "";
}

.fa-angle-double-up:before {
    content: "";
}

.fa-angle-double-down:before {
    content: "";
}

.fa-angle-left:before {
    content: "";
}

.fa-angle-right:before {
    content: "";
}

.fa-angle-up:before {
    content: "";
}

.fa-angle-down:before {
    content: "";
}

.fa-desktop:before {
    content: "";
}

.fa-laptop:before {
    content: "";
}

.fa-tablet:before {
    content: "";
}

.fa-mobile-phone:before,
.fa-mobile:before {
    content: "";
}

.fa-circle-o:before {
    content: "";
}

.fa-quote-left:before {
    content: "";
}

.fa-quote-right:before {
    content: "";
}

.fa-spinner:before {
    content: "";
}

.fa-circle:before {
    content: "";
}

.fa-mail-reply:before,
.fa-reply:before {
    content: "";
}

.fa-github-alt:before {
    content: "";
}

.fa-folder-o:before {
    content: "";
}

.fa-folder-open-o:before {
    content: "";
}

.fa-smile-o:before {
    content: "";
}

.fa-frown-o:before {
    content: "";
}

.fa-meh-o:before {
    content: "";
}

.fa-gamepad:before {
    content: "";
}

.fa-keyboard-o:before {
    content: "";
}

.fa-flag-o:before {
    content: "";
}

.fa-flag-checkered:before {
    content: "";
}

.fa-terminal:before {
    content: "";
}

.fa-code:before {
    content: "";
}

.fa-mail-reply-all:before,
.fa-reply-all:before {
    content: "";
}

.fa-star-half-empty:before,
.fa-star-half-full:before,
.fa-star-half-o:before {
    content: "";
}

.fa-location-arrow:before {
    content: "";
}

.fa-crop:before {
    content: "";
}

.fa-code-fork:before {
    content: "";
}

.fa-unlink:before,
.fa-chain-broken:before {
    content: "";
}

.fa-question:before {
    content: "";
}

.fa-info:before {
    content: "";
}

.fa-exclamation:before {
    content: "";
}

.fa-superscript:before {
    content: "";
}

.fa-subscript:before {
    content: "";
}

.fa-eraser:before {
    content: "";
}

.fa-puzzle-piece:before {
    content: "";
}

.fa-microphone:before {
    content: "";
}

.fa-microphone-slash:before {
    content: "";
}

.fa-shield:before {
    content: "";
}

.fa-calendar-o:before {
    content: "";
}

.fa-fire-extinguisher:before {
    content: "";
}

.fa-rocket:before {
    content: "";
}

.fa-maxcdn:before {
    content: "";
}

.fa-chevron-circle-left:before {
    content: "";
}

.fa-chevron-circle-right:before {
    content: "";
}

.fa-chevron-circle-up:before {
    content: "";
}

.fa-chevron-circle-down:before {
    content: "";
}

.fa-html5:before {
    content: "";
}

.fa-css3:before {
    content: "";
}

.fa-anchor:before {
    content: "";
}

.fa-unlock-alt:before {
    content: "";
}

.fa-bullseye:before {
    content: "";
}

.fa-ellipsis-h:before {
    content: "";
}

.fa-ellipsis-v:before {
    content: "";
}

.fa-rss-square:before {
    content: "";
}

.fa-play-circle:before {
    content: "";
}

.fa-ticket:before {
    content: "";
}

.fa-minus-square:before {
    content: "";
}

.fa-minus-square-o:before {
    content: "";
}

.fa-level-up:before {
    content: "";
}

.fa-level-down:before {
    content: "";
}

.fa-check-square:before {
    content: "";
}

.fa-pencil-square:before {
    content: "";
}

.fa-external-link-square:before {
    content: "";
}

.fa-share-square:before {
    content: "";
}

.fa-compass:before {
    content: "";
}

.fa-toggle-down:before,
.fa-caret-square-o-down:before {
    content: "";
}

.fa-toggle-up:before,
.fa-caret-square-o-up:before {
    content: "";
}

.fa-toggle-right:before,
.fa-caret-square-o-right:before {
    content: "";
}

.fa-euro:before,
.fa-eur:before {
    content: "";
}

.fa-gbp:before {
    content: "";
}

.fa-dollar:before,
.fa-usd:before {
    content: "";
}

.fa-rupee:before,
.fa-inr:before {
    content: "";
}

.fa-cny:before,
.fa-rmb:before,
.fa-yen:before,
.fa-jpy:before {
    content: "";
}

.fa-ruble:before,
.fa-rouble:before,
.fa-rub:before {
    content: "";
}

.fa-won:before,
.fa-krw:before {
    content: "";
}

.fa-bitcoin:before,
.fa-btc:before {
    content: "";
}

.fa-file:before {
    content: "";
}

.fa-file-text:before {
    content: "";
}

.fa-sort-alpha-asc:before {
    content: "";
}

.fa-sort-alpha-desc:before {
    content: "";
}

.fa-sort-amount-asc:before {
    content: "";
}

.fa-sort-amount-desc:before {
    content: "";
}

.fa-sort-numeric-asc:before {
    content: "";
}

.fa-sort-numeric-desc:before {
    content: "";
}

.fa-thumbs-up:before {
    content: "";
}

.fa-thumbs-down:before {
    content: "";
}

.fa-youtube-square:before {
    content: "";
}

.fa-youtube:before {
    content: "";
}

.fa-xing:before {
    content: "";
}

.fa-xing-square:before {
    content: "";
}

.fa-youtube-play:before {
    content: "";
}

.fa-dropbox:before {
    content: "";
}

.fa-stack-overflow:before {
    content: "";
}

.fa-instagram:before {
    content: "";
}

.fa-flickr:before {
    content: "";
}

.fa-adn:before {
    content: "";
}

.fa-bitbucket:before {
    content: "";
}

.fa-bitbucket-square:before {
    content: "";
}

.fa-tumblr:before {
    content: "";
}

.fa-tumblr-square:before {
    content: "";
}

.fa-long-arrow-down:before {
    content: "";
}

.fa-long-arrow-up:before {
    content: "";
}

.fa-long-arrow-left:before {
    content: "";
}

.fa-long-arrow-right:before {
    content: "";
}

.fa-apple:before {
    content: "";
}

.fa-windows:before {
    content: "";
}

.fa-android:before {
    content: "";
}

.fa-linux:before {
    content: "";
}

.fa-dribbble:before {
    content: "";
}

.fa-skype:before {
    content: "";
}

.fa-foursquare:before {
    content: "";
}

.fa-trello:before {
    content: "";
}

.fa-female:before {
    content: "";
}

.fa-male:before {
    content: "";
}

.fa-gittip:before {
    content: "";
}

.fa-sun-o:before {
    content: "";
}

.fa-moon-o:before {
    content: "";
}

.fa-archive:before {
    content: "";
}

.fa-bug:before {
    content: "";
}

.fa-vk:before {
    content: "";
}

.fa-weibo:before {
    content: "";
}

.fa-renren:before {
    content: "";
}

.fa-pagelines:before {
    content: "";
}

.fa-stack-exchange:before {
    content: "";
}

.fa-arrow-circle-o-right:before {
    content: "";
}

.fa-arrow-circle-o-left:before {
    content: "";
}

.fa-toggle-left:before,
.fa-caret-square-o-left:before {
    content: "";
}

.fa-dot-circle-o:before {
    content: "";
}

.fa-wheelchair:before {
    content: "";
}

.fa-vimeo-square:before {
    content: "";
}

.fa-turkish-lira:before,
.fa-try:before {
    content: "";
}

.fa-plus-square-o:before {
    content: "";
}

.fa-space-shuttle:before {
    content: "";
}

.fa-slack:before {
    content: "";
}

.fa-envelope-square:before {
    content: "";
}

.fa-wordpress:before {
    content: "";
}

.fa-openid:before {
    content: "";
}

.fa-institution:before,
.fa-bank:before,
.fa-university:before {
    content: "";
}

.fa-mortar-board:before,
.fa-graduation-cap:before {
    content: "";
}

.fa-yahoo:before {
    content: "";
}

.fa-google:before {
    content: "";
}

.fa-reddit:before {
    content: "";
}

.fa-reddit-square:before {
    content: "";
}

.fa-stumbleupon-circle:before {
    content: "";
}

.fa-stumbleupon:before {
    content: "";
}

.fa-delicious:before {
    content: "";
}

.fa-digg:before {
    content: "";
}

.fa-pied-piper-square:before,
.fa-pied-piper:before {
    content: "";
}

.fa-pied-piper-alt:before {
    content: "";
}

.fa-drupal:before {
    content: "";
}

.fa-joomla:before {
    content: "";
}

.fa-language:before {
    content: "";
}

.fa-fax:before {
    content: "";
}

.fa-building:before {
    content: "";
}

.fa-child:before {
    content: "";
}

.fa-paw:before {
    content: "";
}

.fa-spoon:before {
    content: "";
}

.fa-cube:before {
    content: "";
}

.fa-cubes:before {
    content: "";
}

.fa-behance:before {
    content: "";
}

.fa-behance-square:before {
    content: "";
}

.fa-steam:before {
    content: "";
}

.fa-steam-square:before {
    content: "";
}

.fa-recycle:before {
    content: "";
}

.fa-automobile:before,
.fa-car:before {
    content: "";
}

.fa-cab:before,
.fa-taxi:before {
    content: "";
}

.fa-tree:before {
    content: "";
}

.fa-spotify:before {
    content: "";
}

.fa-deviantart:before {
    content: "";
}

.fa-soundcloud:before {
    content: "";
}

.fa-database:before {
    content: "";
}

.fa-file-pdf-o:before {
    content: "";
}

.fa-file-word-o:before {
    content: "";
}

.fa-file-excel-o:before {
    content: "";
}

.fa-file-powerpoint-o:before {
    content: "";
}

.fa-file-photo-o:before,
.fa-file-picture-o:before,
.fa-file-image-o:before {
    content: "";
}

.fa-file-zip-o:before,
.fa-file-archive-o:before {
    content: "";
}

.fa-file-sound-o:before,
.fa-file-audio-o:before {
    content: "";
}

.fa-file-movie-o:before,
.fa-file-video-o:before {
    content: "";
}

.fa-file-code-o:before {
    content: "";
}

.fa-vine:before {
    content: "";
}

.fa-codepen:before {
    content: "";
}

.fa-jsfiddle:before {
    content: "";
}

.fa-life-bouy:before,
.fa-life-saver:before,
.fa-support:before,
.fa-life-ring:before {
    content: "";
}

.fa-circle-o-notch:before {
    content: "";
}

.fa-ra:before,
.fa-rebel:before {
    content: "";
}

.fa-ge:before,
.fa-empire:before {
    content: "";
}

.fa-git-square:before {
    content: "";
}

.fa-git:before {
    content: "";
}

.fa-hacker-news:before {
    content: "";
}

.fa-tencent-weibo:before {
    content: "";
}

.fa-qq:before {
    content: "";
}

.fa-wechat:before,
.fa-weixin:before {
    content: "";
}

.fa-send:before,
.fa-paper-plane:before {
    content: "";
}

.fa-send-o:before,
.fa-paper-plane-o:before {
    content: "";
}

.fa-history:before {
    content: "";
}

.fa-circle-thin:before {
    content: "";
}

.fa-header:before {
    content: "";
}

.fa-paragraph:before {
    content: "";
}

.fa-sliders:before {
    content: "";
}

.fa-share-alt:before {
    content: "";
}

.fa-share-alt-square:before {
    content: "";
}

.fa-bomb:before {
    content: "";
}

@font-face {
    font-family: "Hiragino Sans";
    src: local(HiraginoSans-W0);
    font-weight: 100;
}

@font-face {
    font-family: "Hiragino Sans";
    src: local(HiraginoSans-W1);
    font-weight: 200;
}

@font-face {
    font-family: "Hiragino Sans";
    src: local(HiraginoSans-W2);
    font-weight: 300;
}

@font-face {
    font-family: "Hiragino Sans";
    src: local(HiraginoSans-W3);
    font-weight: 400;
}

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

body {
    background: #f8f8f8;
    font-style: normal;
    color: #031a31;
    font-family: "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Meryo, "メイリオ", Osaka, "ＭＳ Ｐゴシック", "MS P Gothic", sans-serif;
    letter-spacing: 0.01em;
    line-height: 200%;
    font-size: 16px;
    font-size: 1rem;
}

body a {
    color: #292E31;
    text-decoration: none;
}

body a:visited {
    color: #292E31;
}

body a:focus {
    color: #292E31;
}

body a:hover {
    color: #333333;
}

body a:active {
    color: #292E31;
}

sub {
    height: 0;
    line-height: 1;
    vertical-align: baseline;
    _vertical-align: bottom;
    position: relative;
    top: .5ex;
}

.blue_button {
    background: #058CDD;
    width: 380px;
    padding: 20px 0;
    text-align: center;
    font-size: 20px;
    font-size: 1.25rem;
    position: relative;
    display: block;
    margin: 0 auto;
    color: #FFF;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    border-bottom: solid 5px #0072B7;
}

.blue_button:visited {
    color: #FFF;
}

.blue_button:focus {
    color: #FFF;
}

.blue_button:hover {
    color: #fafafa;
}

.blue_button:active {
    color: #FFF;
}

@media (max-width: 667px) {
    .blue_button {
        width: 90%;
        font-size: 18px;
        font-size: 1.125rem;
    }
}

.blue_button span:after {
    right: 20px;
    top: 33px;
    width: 7px;
    height: 7px;
    content: '';
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    z-index: 3;
}

.blue_button:hover {
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    background: #058CDD;
}

.blue_button:hover span:after {
    border-top: 2px solid #FFFFFF;
    border-right: 2px solid #FFFFFF;
}

.blue_button_left {
    background: #058CDD;
    width: 320px;
    padding: 10px 0;
    text-align: center;
    font-size: 20px;
    font-size: 1.25rem;
    position: relative;
    display: block;
    color: #FFF;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px;
    border-top-left-radius: 4px;
    border-bottom-left-radius: 4px;
    border-top-right-radius: 4px;
    border-bottom-right-radius: 4px;
    border-bottom: solid 5px #0072B7;
}

.blue_button_left:visited {
    color: #FFF;
}

.blue_button_left:focus {
    color: #FFF;
}

.blue_button_left:hover {
    color: #fafafa;
}

.blue_button_left:active {
    color: #FFF;
}

@media (max-width: 667px) {
    .blue_button_left {
        width: 100%;
        font-size: 18px;
        font-size: 1.125rem;
    }
}

.blue_button_left span:after {
    right: 20px;
    top: 23px;
    width: 7px;
    height: 7px;
    content: '';
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    z-index: 3;
}

.blue_button_left:hover {
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    background: #058CDD;
}

.blue_button_left:hover span:after {
    border-top: 2px solid #FFFFFF;
    border-right: 2px solid #FFFFFF;
}

.more {
    display: block;
    background: #058CDD;
}

.more:hover {
    background: #009FFF;
}

.more a {
    background: url(images/icon_arrow_right.png) no-repeat right center;
    background-size: 33px 33px;
    background-position: right 20px bottom 19px;
    display: block;
    color: #FFF;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    padding: 20px;
}

.more a:visited {
    color: #FFF;
}

.more a:focus {
    color: #FFF;
}

.more a:hover {
    color: #fafafa;
}

.more a:active {
    color: #FFF;
}

@media (max-width: 667px) {
    .more a {
        font-size: 15px;
        font-size: 0.9375rem;
        text-align: left;
    }
}

.more a img {
    vertical-align: middle;
    margin-left: 15px;
}

.more a:hover {
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
    background-position: right 17px bottom 19px;
}

.boxLink,
.thumb {
    cursor: pointer;
}

strong {
    font-weight: bold;
}

b {
    font-weight: bold;
}

._56zz {
    right: 0px;
}

#main_header {
    background: #FFF;
    width: 100%;
    position: fixed;
    z-index: 9999;

}

#main_header .gnav_wrapper {
    width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}

#main_header .gnav_wrapper .logo {
    background: #FFF;
    padding: 0px;
    line-height: 1;
    font-size: 0;
    margin-left: 2%;
    width: 15%;
}

#main_header .gnav_wrapper .logo a {
    display: block;
    height: 100%;
}

#main_header .gnav_wrapper .gnav ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-content: flex-start;
    -webkit-justify-content: flex-start;

}

#main_header .gnav_wrapper .gnav ul li {
    text-align: center;
}

#main_header .gnav_wrapper .gnav ul li a {
    text-decoration: none;
    letter-spacing: 0.1em;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: 600;
    display: block;
    height: auto;
    position: relative;
    z-index: 9999;
    padding: 40px 0;
}

#main_header .gnav_wrapper .gnav ul li a:after {
    background: #058CDD;
    left: 50%;
    bottom: 0px;
    margin-left: -50%;
    width: 100%;
    height: 3px;
    content: '';
    position: absolute;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    z-index: -1;
}

#main_header .gnav_wrapper .gnav ul li a:hover::after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
}

#main_header .gnav_wrapper .gnav ul li a.active:after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
}

#main_header .gnav_wrapper .gnav ul li a.facebook:after,
#main_header .gnav_wrapper .gnav ul li a.twitter:after,
#main_header .gnav_wrapper .gnav ul li .gnav__second-level li a:after {
    display: none;
}

#main_header .gnav_wrapper .gnav ul li i {
    margin-left: 5px;
}

.hamburger {
    display: none;
    padding: 0;
    position: absolute;
    top: -5px;
    left: 10px;
}

@media (max-width: 1080px) {
    .hamburger {
        display: block;
    }
}

#navigation.gnav {
    width: 80%;
    max-width: 1000px;
    -webkit-transition: all 300ms ease-in-out;
    -o-transition: all 300ms ease-in-out;
    transition: all 300ms ease-in-out;
}

.contents_title {
    padding: 40px 0 0 0;
    text-align: center;
    letter-spacing: 1px;
    line-height: 1.8;
}

@media (max-width: 667px) {
    .contents_title {
        padding: 30px 0;
        width: 90%;
        margin: 0 auto;
    }
}

.contents_title h2 {
    padding: 30px 0;
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    .contents_title h2 {
        font-size: 22px;
        font-size: 1.375rem;
    }
}

.contents_title p {
    width: 480px;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
    text-align: center;
    margin: 0px auto 20px auto;
}

@media (max-width: 667px) {
    .contents_title p {
        width: 100%;
        font-size: 14px;
        font-size: 0.875rem;
    }
}

.contents_title .left {
    text-align: left;
    margin: 0;
}

.contents_title h3 {
    font-size: 16px;
    font-size: 1rem;
}

#top_main_visual {
    width: 100%;
    position: relative;
}

@media (max-width: 667px) {
    #top_main_visual {
        padding-top: 54px;
    }
}

#top_main_visual .top_main_visual_wrapper {
    background: url(images/bg_topimage.jpg) no-repeat center center;
    background-size: cover;
    width: 100%;
    height: 821px;
    margin: 0 auto;
    position: relative;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper {
        height: 350px;
        background: url(images/bg_topimage_sp.png) no-repeat center center;
    }
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .pc {
        display: none;
    }
}

#top_main_visual .top_main_visual_wrapper .sp {
    display: none;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .sp {
        display: block;
    }
}

#top_main_visual .top_main_visual_wrapper .message {
    width: 1080px;
    margin: 0 auto;
    position: absolute;
    top: 270px;
    left: 50%;
    margin-left: -580px;
    z-index: 2;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .message {
        width: 100%;
        position: static;
        margin-left: 0px;
        padding: 20px;
        font-size: 20px;
        font-size: 1.25rem;
        text-align: center;
    }
}

#top_main_visual .top_main_visual_wrapper .message h1 {
    letter-spacing: 0.1em;
    font-weight: 600;
    font-size: 30px;
    font-size: 1.875rem;
    color: #058CDD;
    margin-bottom: 37px;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .message h1 {
        font-size: 18px;
        font-size: 1.125rem;
        margin-bottom: 15px;
        font-weight: 800;
        line-height: 160%;
    }
}

#top_main_visual .top_main_visual_wrapper .message p {
    letter-spacing: 0.1em;
    font-weight: 200;
    font-size: 20px;
    font-size: 1.25rem;
    line-height: 1.8;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .message p {
        background: rgba(255, 255, 255, 0.81);
        padding: 20px;
        font-size: 13px;
        font-size: 0.8125rem;
    }

    #top_main_visual .top_main_visual_wrapper .message p br {
        display: none;
    }
}

#top_main_visual .top_main_visual_wrapper .more {
    margin-top: 54px;
    width: 35%;
}

@media (max-width: 667px) {
    #top_main_visual .top_main_visual_wrapper .more {
        width: 100%;
        margin-top: 20px;
    }
}

/* 20201209 start*/
@media (max-width: 667px) {
    #top_under {
        height: 100px;
    }
}

/* 20201209 end*/
/* 20210219 start グローバルメニューの子要素動作追加*/
#main_header .gnav_wrapper .gnav ul li {
    position: relative;
}

#main_header .gnav_wrapper .gnav ul li .gnav__second-level {
    position: absolute;
    top: 90px;
    width: 140px;
    visibility: hidden;
    -webkit-transition: all .2s ease;
    -o-transition: all .2s ease;
    transition: all .2s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

#main_header .gnav_wrapper .gnav ul li .gnav__second-level li {
    width: 100%;
    margin: 0;
    padding: 0;
}

#main_header .gnav_wrapper .gnav ul li .gnav__second-level li a {
    margin: 0;
    padding: 15px;
    color: #292e31;
}

#main_header .gnav_wrapper .gnav ul li:hover .gnav__second-level {
    top: 112px;
    visibility: visible;
    opacity: 1;
    background-color: #ffffff;
    border-radius: 3px;
}

#main_header .gnav_wrapper .gnav ul li .gnav__second-level li:hover a {
    color: #ffffff;
    background-color: #058CDD;
    -webkit-transition: all .4s ease;
    -o-transition: all .4s ease;
    transition: all .4s ease;
    border-radius: 3px;
}

#main_header .gnav_wrapper .gnav .havechild:after {
    width: 140px;
}

@media(max-width: 667px) {
    #main_header .gnav_wrapper .gnav ul li {
        position: relative;
        display: block;
    }

    #main_header .gnav_wrapper .gnav ul li:hover .gnav__second-level {
        top: 0px;
        position: relative;
        -webkit-transition: all .4s ease;
        -o-transition: all .4s ease;
        transition: all .4s ease;
    }

    #main_header .gnav_wrapper .gnav ul li .gnav__second-level {
        top: 0px;
        display: block;
        width: 100%;
        opacity: 1;
        background-color: #ffffff;
        border-radius: 3px;
        position: relative;
        visibility: visible;
    }

    #main_header .gnav_wrapper .gnav ul li:hover .gnav__second-level {
        visibility: visible;
        opacity: 1;
        background-color: #ffffff;
        border-radius: 3px;
    }

    #main_header .gnav_wrapper .gnav ul li .gnav__second-level li a {
        font-size: 1em;
    }

    #main_header .gnav_wrapper .gnav ul .havechild:before {
        content: "+";
        margin-right: 0.5em;
        font-weight: bold;
    }

    #main_header .gnav_wrapper .gnav ul .havechild {
        display: none;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .gnav ul {
        width: 100%;
    }
}

@media (max-width: 667px) {
    #main_header {
        background: #FFF;
        height: auto;
        -webkit-box-shadow: none;
        box-shadow: none;
        min-width: 100%;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper {
        width: 100%;
        display: block;
        padding: 10px;
        position: relative;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .logo {
        width: 200px;
        text-align: center;
        padding: 0px;
        margin: 0 auto;
        border: none;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .logo img {
        width: 200px;
        height: auto;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .gnav {
        position: absolute;
        top: 0px;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .gnav ul li {
        margin-left: 0px;
    }
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .gnav ul li a {
        padding: 20px 0;
    }
}

@media (max-width: 667px) {
    #navigation.gnav {
        width: 100% !important;
        position: absolute;
        left: 0;
        margin-top: 53px !important;
        margin-left: 0px !important;
        display: none;
    }

    #navigation.gnav ul li {
        background: #FFF;
        width: 100%;
        margin-right: 0px !important;
        display: block;
    }

    #navigation.gnav ul li a {
        display: block;
        padding: 20px 0;
    }
}

/* 20210219 end*/

#reasons_why {
    background: #fff;
    width: 100%;
    padding: 20px 0 50px;
    letter-spacing: 1px;
}

.reasons_why_inner {
    width: 1080px;
    max-width: 92%;
    margin: 0 auto;
}

.reasons_why_title {
    text-align: center;
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 600;
    padding: 30px 0 20px;
    line-height: 1.6;
}

.reasons_why_separator {
    width: 65%;
    max-width: 720px;
    margin: 0 auto 36px;
    border: 0;
    border-top: 2px dotted #bbb;
}

.reasons_why_lead {
    text-align: left;
    border-left: 6px solid #058CDD;
    padding: 4px 0 4px 16px;
    margin: 0 0 40px;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    line-height: 1.7;
    color: #333;
}

.reasons_why_grid {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 24px 16px;
}

.reasons_why_item {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 280px;
    flex: 1 1 280px;
    max-width: 320px;
    margin: 0 auto;
    text-align: center;
}

.reasons_why_imgwrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 200px;
    margin-bottom: 16px;
}

.reasons_why_imgwrap img {
    max-width: 100%;
    max-height: 220px;
    width: auto;
    height: auto;
    -o-object-fit: contain;
    object-fit: contain;
    vertical-align: bottom;
}

.reasons_why_caption {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.6;
    margin: 0;
    color: #333;
}

.reasons_why_lead--step2 {
    margin-top: 48px;
    margin-bottom: 28px;
}

.reasons_why_flow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 8px 4px;
    margin-bottom: 10px;
}

.reasons_why_card {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 260px;
    flex: 1 1 260px;
    max-width: 340px;
    margin: 0 auto;
    border: 1px solid #ccc;
    border-radius: 4px;
    overflow: hidden;
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

.reasons_why_card_head {
    background: #0088da;
    color: #fff;
    font-size: 15px;
    font-size: 0.9375rem;
    font-weight: 600;
    text-align: center;
    padding: 12px 10px;
    line-height: 1.5;
}

.reasons_why_card_body {
    padding: 16px 14px;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.65;
    color: #333;
    text-align: center;
    min-height: 160px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.reasons_why_card_body--center {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    min-height: 160px;
}

.reasons_why_card_body ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 100%;
    gap: 6px;
}

.reasons_why_card_body li {
    margin: 0;
    font-size: 18px;
    font-size: 1.125rem;
}

.reasons_why_card_body li:last-child {
    margin-bottom: 0;
}

.reasons_why_card_figure {
    text-align: center;
}

.reasons_why_card_figure img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

.reasons_why_arrow {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    -ms-flex-item-align: center;
    align-self: center;
    color: #666;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
    padding: 0 2px;
}

.reasons_why_arrow::before {
    content: '>';
}

.reasons_why_parallel {
    margin-bottom: 24px;
}

.reasons_why_parallel_row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
    margin-bottom: 12px;
    gap: 10px;
}

.reasons_why_parallel_row:last-child {
    margin-bottom: 0;
}

.reasons_why_parallel_label {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 44px;
    flex: 0 0 44px;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: mixed;
    text-orientation: mixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #fff;
    font-weight: 600;
    font-size: 14px;
    font-size: 0.875rem;
    letter-spacing: 0.08em;
    padding: 8px 4px;
}

.reasons_why_parallel_row--earn .reasons_why_parallel_label {
    background: #e91e8c;
}

.reasons_why_parallel_row--learn .reasons_why_parallel_label {
    background: #058CDD;
}

.reasons_why_parallel_steps {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    gap: 10px;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

.reasons_why_parallel_box {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 140px;
    flex: 1 1 140px;
    padding: 14px 12px;
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.6;
    border-radius: 4px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    text-align: center;
}

.reasons_why_parallel_row--earn .reasons_why_parallel_box {
    background: #fde7f0;
}

.reasons_why_parallel_row--learn .reasons_why_parallel_box {
    background: #e7f4fd;
}

.reasons_why_progress {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 32px 0 8px;
}

.reasons_why_progress img {
    max-width: 22%;
    height: auto;
    vertical-align: bottom;
}

.reasons_why_split {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 32px 24px;
    margin-bottom: 8px;
}

.reasons_why_split_text {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 320px;
    flex: 1 1 320px;
    font-size: 17px;
    font-size: 1.0625rem;
    line-height: 1.85;
    color: #333;
    text-align: left;
}

.reasons_why_split_text p {
    margin: 0 0 12px;
}

.reasons_why_split_text p:last-child {
    margin-bottom: 0;
}

.reasons_why_split_link {
    margin-top: 16px !important;
}

.reasons_why_split_link a {
    color: #058CDD;
    font-weight: 600;
    text-decoration: none;
}

.reasons_why_split_link a:hover {
    text-decoration: underline;
}

.reasons_why_split_media {
    -webkit-box-flex: 1;
    -ms-flex: 1 1 280px;
    flex: 1 1 280px;
    max-width: 480px;
    margin: 0 auto;
}

.reasons_why_split_media img {
    width: 100%;
    height: auto;
    vertical-align: bottom;
    border-radius: 4px;
}

@media (max-width: 667px) {
    #reasons_why {
        padding: 10px 0 40px;
    }

    .reasons_why_title {
        font-size: 22px;
        font-size: 1.375rem;
        padding: 24px 0 16px;
    }

    .reasons_why_separator {
        width: 80%;
        margin-bottom: 28px;
    }

    .reasons_why_lead {
        font-size: 15px;
        font-size: 0.9375rem;
        margin-bottom: 32px;
        padding-left: 12px;
        border-left-width: 5px;
    }

    .reasons_why_lead--step2 {
        margin-top: 36px;
        margin-bottom: 24px;
    }

    .reasons_why_grid {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        gap: 32px;
    }

    .reasons_why_item {
        max-width: 100%;
    }

    .reasons_why_imgwrap {
        min-height: 160px;
    }

    .reasons_why_flow {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        gap: 6px;
    }

    .reasons_why_card {
        width: 100%;
        max-width: 100%;
        margin: 0;
    }

    .reasons_why_card_body {
        width: 100%;
        box-sizing: border-box;
    }

    .reasons_why_parallel_row {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .reasons_why_parallel_label {
        -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
        writing-mode: horizontal-tb;
        -webkit-box-flex: 0;
        -ms-flex: none;
        flex: none;
        width: 100%;
        padding: 10px 12px;
    }

    .reasons_why_parallel_steps {
        width: 100%;
    }

    .reasons_why_split {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        gap: 16px;
    }

    .reasons_why_split_media {
        max-width: 100%;
    }

    .reasons_why_split_text p {
        margin: 0 0 8px;
    }

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

    /* flex column時の上下隙間が大きくなる場合に備えて上書き */
    .reasons_why_split {
        gap: 10px !important;
    }

    .reasons_why_split_text {
        margin-bottom: 8px !important;
    }

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

    .reasons_why_arrow {
        -ms-flex-item-align: center;
        align-self: center;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        padding: 6px 0;
    }
}

#about {
    background: #fafafa;
    width: 100%;
}

#about .more {
    margin-top: 54px;
    width: 380px;
    margin: 0 auto;
    margin-bottom: 60px;
}

@media (max-width: 667px) {
    #about .more {
        width: 90%;
    }
}

#about .column_box {
    padding-bottom: 0px;
}

#about_teacher {
    background: url(images/bg_people.jpg) center top;
    background-size: cover;
    padding: 50px 0;
}

@media (max-width: 667px) {
    #about_teacher {
        padding: 0px;
        background: url(images/bg_people.png) right top;
    }
}

#about_teacher .contents_title {
    width: 1080px;
    margin: 0 auto;
    text-align: left;
}

@media (max-width: 667px) {
    #about_teacher .contents_title {
        width: 100%;
        padding: 20px;
    }
}

#about_teacher .contents_title h2 {
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    #about_teacher .contents_title h2 {
        font-size: 18px;
        font-size: 1.125rem;
        padding: 15px 15px;
        background: rgba(255, 255, 255, .85);
    }
}

#about_teacher .contents_title p {
    width: 480px;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
}

@media (max-width: 667px) {
    #about_teacher .contents_title p {
        width: 100%;
        font-size: 14px;
        font-size: 0.875rem;
        padding: 15px 15px;
        background: rgba(255, 255, 255, .85);
    }
}

#about_special {
    width: 100%;
    background: #FFF;
}

@media (max-width: 667px) {
    #about_special .flickity-prev-next-button {
        top: 20%;
    }
}

#about_special .main-carousel {
    width: 100%;
}

#about_special .main-carousel .carousel-cell {
    width: 1080px;
    margin: 0 auto;
    padding: 100px 0;
    margin: 0 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell {
        padding: 30px 0;
        width: 90%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }
}

#about_special .main-carousel .carousel-cell .text {
    width: 70%;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell .text {
        width: 100%;
    }
}

#about_special .main-carousel .carousel-cell .text h2 {
    font-size: 29px;
    font-size: 1.8125rem;
    font-weight: 600;
    margin-bottom: 33px;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell .text h2 {
        font-size: 18px;
        font-size: 1.125rem;
        text-align: center;
        margin-top: 20px;
        margin-bottom: 20px;
    }
}

#about_special .main-carousel .carousel-cell .text ul li {
    width: 100%;
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    background: url(images/icon_checked.png) no-repeat left center;
    padding-left: 35px;
    margin-bottom: 15px;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell .text ul li {
        font-size: 14px;
        font-size: 0.875rem;
        margin-bottom: 10px;
    }
}

#about_special .main-carousel .carousel-cell .eyecatch {
    width: 30%;
}

@media (max-width: 667px) {
    #about_special .main-carousel .carousel-cell .eyecatch {
        width: 40%;
        margin: 0 auto;
    }
}

#about_special .main-carousel .carousel-cell .eyecatch img {
    width: 100%;
    height: auto;
}

#security {
    background: #058CDD;
}

#security .inner {
    width: 1080px;
    margin: 0 auto;
    padding: 10px 0;
    color: #fff;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

@media (max-width: 667px) {
    #security .inner {
        width: 100%;
        padding: 20px;
        display: block;
    }
}

#security .inner h2 {
    width: 50%;
}

@media (max-width: 667px) {
    #security .inner h2 {
        width: 100%;
    }

    #security .inner h2 img {
        width: 100%;
        height: auto;
    }
}

#security .inner p {
    width: 50%;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
}

@media (max-width: 667px) {
    #security .inner p {
        width: 100%;
    }
}

#about_service {
    background: #FFF;
    padding: 30px 0;
}

#about_service .inner {
    width: 1080px;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
}

@media (max-width: 667px) {
    #about_service .inner {
        width: 100%;
        padding: 20px;
        display: block;
    }
}

#about_service .inner .contents_title {
    width: 50%;
    text-align: left;
    padding: 70px 0;
}

@media (max-width: 667px) {
    #about_service .inner .contents_title {
        width: 100%;
        padding: 0px;
    }
}

#about_service .inner .contents_title h2 {
    padding: 30px 0;
    font-size: 28px;
    font-size: 1.75rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    #about_service .inner .contents_title h2 {
        font-size: 18px;
        font-size: 1.125rem;
        padding: 0 0 20px 0;
        text-align: center;
    }
}

#about_service .inner .contents_title p {
    width: 480px;
    font-size: 16px;
    font-size: 1rem;
    font-weight: 300;
}

@media (max-width: 667px) {
    #about_service .inner .contents_title p {
        width: 100%;
        font-size: 14px;
        font-size: 0.875rem;
    }
}

#about_service .inner .eyecatch {
    width: 50%;
    text-align: right;
    padding: 70px 0;
}

@media (max-width: 667px) {
    #about_service .inner .eyecatch {
        width: 100%;
        padding: 0px;
        margin-top: 30px;
        display: block;
    }

    #about_service .inner .eyecatch img {
        width: 100%;
        height: auto;
    }
}

@media (max-width: 667px) {
    #customer {
        padding-bottom: 20px;
    }
}

#customer .contents_title {
    margin-bottom: 40px;
}

#customer .quotation {
    width: 700px;
    margin: 0 auto;
    position: relative;
}

@media (max-width: 667px) {
    #customer .quotation {
        width: 100%;
    }

    #customer .quotation br {
        display: none;
    }
}

#customer .quotation:before {
    content: "“";
    position: absolute;
    left: 0px;
    top: 0px;
    font-size: 85px;
    font-size: 5.3125rem;
    font-weight: 400;
}

#customer .quotation:after {
    content: "”";
    position: absolute;
    right: 0px;
    bottom: -40px;
    font-size: 85px;
    font-size: 5.3125rem;
    font-weight: 400;
}

#customer .customer_voice {
    margin-bottom: 120px;
}

#customer .customer_voice .eyecatch {
    margin-top: -80px;
    height: 200px;
}

#customer .customer_voice h3 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0px;
    margin-top: 20px;
}

#customer .customer_voice p {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.8;
}

#customer .customer_voice .name {
    text-align: center;
}

#system {
    background: #FFF;
    padding: 0 0 90px 0;
}

@media (max-width: 667px) {
    #system {
        padding: 0 0 30px 0;
    }
}

#system .itbusiness {
    background: url(images/bg_it.png) no-repeat center bottom;
    background-size: 33%;
}

@media (max-width: 667px) {
    #system .itbusiness {
        background: #FFF;
    }
}

#system .programming {
    background: url(images/bg_program.png) no-repeat center bottom;
    background-size: 33%;
}

@media (max-width: 667px) {
    #system .programming {
        background: #FFF;
    }
}

#system .consulting {
    background: url(images/bg_consul.png) no-repeat center bottom;
    background-size: 33%;
}

@media (max-width: 667px) {
    #system .consulting {
        background: #FFF;
    }
}

#system .inner h2 {
    padding: 30px 0 10px 0;
}

@media (max-width: 667px) {
    #system .inner h2 {
        padding: 20px 0 0 0;
    }
}

#system .inner p {
    font-size: 17px;
    font-size: 1.0625rem;
    font-weight: 300;
    text-align: left;
    margin-bottom: 30px;
}

@media (max-width: 667px) {
    #system .inner p {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

#system .inner ul {
    list-style: disc;
    list-style-position: inside;
}

#system .inner ul li {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    margin-top: 10px;
}

@media (max-width: 667px) {
    #system .inner ul li {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

#system .inner .column_box {
    padding: 0px;
}

#blog {
    background: #FFF;
    padding-bottom: 0px;
}

@media (max-width: 667px) {
    #system .inner .column_box .column1 {
        margin-bottom: 20px;
    }

    #blog {
        padding: 0 0 30px 0;
    }
}

#blog .blog_title h3 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0px;
    margin-top: 20px;
}

#blog .blog_title p {
    font-size: 16px;
    font-size: 1rem;
    line-height: 1.8;
}

#blog .blog_title .name {
    text-align: center;
}

#blog .column_box .su-posts {
    width: 1080px;
    margin: 0 auto;
    padding: 60px 0 0 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

#blog .column_box .su-posts .su-post {
    background: #FFF;
    width: 500px;
    padding: 25px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
}

@media (max-width: 667px) {
    #blog .column_box .su-posts .su-post {
        width: 90%;
        letter-spacing: 0em;
    }
}

#blog .column_box .su-posts .su-post .customer_eyecatch {
    text-align: center;
    padding: 20px 0;
    margin-top: -120px;
}

#blog .column_box .su-posts .su-post .su-post-thumbnail {
    width: 100%;
    height: auto;
}

#blog .column_box .su-posts .su-post .su-post-thumbnail img {
    width: 100%;
    height: auto;
}

#blog .column_box .su-posts .su-post p {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 200;
}

#book {
    width: 1080px;
    margin: 0 auto;
    padding: 90px 0;
}

@media (max-width: 667px) {
    #book {
        display: block;
        width: 90%;
        padding: 30px 0;
    }
}

#book .book_image {
    width: 100%;
    margin-top: 30px;
}

@media (max-width: 667px) {
    #book .book_image {
        width: 100%;
        margin: 0 auto;
        margin-top: 30px;
        margin-bottom: 20px;
    }
}

#book .book_image img {
    margin-right: 20px;
    width: 30%;
    height: auto;
}

@media (max-width: 667px) {
    #book .book_image img {
        width: 40%;
        margin: 10px;
    }
}

#book .book_text {
    width: 100%;
}

@media (max-width: 667px) {
    #book .book_text {
        width: 90%;
        margin: 0 auto;
    }
}

#book .book_text h2 {
    font-size: 22px;
    font-size: 1.375rem;
    margin-bottom: 15px;
}

@media (max-width: 667px) {
    #book .book_text h2 {
        font-size: 16px;
        font-size: 1rem;
        text-align: center;
    }
}

#book .book_text p {
    font-size: 13px;
    font-size: 0.8125rem;
}

#book .book_text strong {
    display: block;
    margin-top: 20px;
}

#book .book_text table {
    font-size: 13px;
    font-size: 0.8125rem;
}

#book .book_text table th {
    width: 14%;
    font-weight: bold;
    vertical-align: text-top;
}

#book .book_text table th,
#book .book_text table td {
    padding: 10px 0;
}

#contact {
    background: #FFF;
}

.column_box {
    width: 1080px;
    margin: 0 auto;
    padding: 60px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-line-pack: center;
    align-content: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
}

@media (max-width: 667px) {
    .column_box {
        display: block;
        width: 100%;
        padding: 30px 0 0px 0;
    }
}

.column_box section {
    background: #FFF;
    margin-bottom: 80px;
    margin-right: 40px;
}

.column_box section:nth-child(3n) {
    margin-right: 0px;
}

@media (max-width: 667px) {
    .column_box section {
        margin-bottom: 30px;
        margin-right: 0px;
        background: none;
    }

    .column_box section:nth-child(3n) {
        margin-right: auto;
    }
}

.column_box .column3 {
    background: #FFF;
    width: 320px;
    padding: 25px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
}

@media (max-width: 667px) {
    .column_box .column3 {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 20px;
        letter-spacing: 0em;
    }
}

.column_box .column3 .customer_eyecatch {
    text-align: center;
    padding: 20px 0;
    height: 120px;
}

.column_box .column3 .eyecatch {
    text-align: center;
    padding: 20px 0;
}

.column_box .column3 h2 {
    font-size: 25px;
    font-size: 1.5625rem;
    font-weight: 600;
    color: #058CDD;
    text-align: center;
    margin-bottom: 20px;
    line-height: 1.6;
}

.column_box .column3 h3 {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    margin-bottom: 20px;
}

.column_box .column3 p {
    font-size: 16px;
    font-size: 1.25rem;
    font-weight: 200;
}

.column_box .column3.plus {
    position: relative;
}

.column_box .column3.plus:after {
    content: "+";
    position: absolute;
    right: -43px;
    top: 76px;
    font-size: 34px;
    font-size: 2.125rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    .column_box .column3.plus:after {
        display: none;
    }
}

.column_box .column2 {
    background: #FFF;
    width: 500px;
    padding: 25px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
}

@media (max-width: 667px) {
    .column_box .column2 {
        width: 90%;
        letter-spacing: 0em;
        margin: 0 auto;
        margin-bottom: 20px;
    }
}

.column_box .column2 .customer_eyecatch {
    text-align: center;
    padding: 20px 0;
    margin-top: -120px;
}

@media (max-width: 667px) {
    .column_box .column2 .customer_eyecatch {
        margin-top: -30px;
    }
}

.column_box .column2 .eyecatch {
    text-align: center;
    padding: 20px 0;
}

.column_box .column2 .eyecatch img {
    width: 100%;
    height: auto;
}

.column_box .column2 h2 {
    font-size: 25px;
    font-size: 1.5625rem;
    font-weight: 600;
    color: #058CDD;
    text-align: center;
    margin-bottom: 20px;
}

.column_box .column2 h3 {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    margin-bottom: 20px;
}

.column_box .column2 p {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 200;
}

.column_box .column2.plus {
    position: relative;
}

.column_box .column2.plus:after {
    content: "+";
    position: absolute;
    right: -32px;
    top: 55px;
    font-size: 34px;
    font-size: 2.125rem;
    font-weight: 600;
}

.column_box .column1 {
    background: #FFF;
    width: 1080px;
    padding: 25px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
}

@media (max-width: 667px) {
    .column_box .column1 {
        width: 90%;
        letter-spacing: 0em;
        margin: 0 auto;
    }
}

.column_box .column1 .eyecatch {
    text-align: center;
    padding: 20px 0;
    height: 120px;
}

.column_box .column1 h2 {
    font-size: 25px;
    font-size: 1.5625rem;
    font-weight: 600;
    color: #058CDD;
    text-align: center;
}

@media (max-width: 667px) {
    .column_box .column1 h2 {
        font-size: 22px;
        font-size: 1.375rem;
    }
}

.column_box .column1 h3 {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
    text-align: center;
    margin-bottom: 20px;
    color: #058CDD;
}

.column_box .column1 p {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 200;
}

#container {
    width: 100%;
    border-top: 1px solid #EEE;
    overflow: hidden;
    *zoom: 1;
    padding-top: 110px;
    background-color: white;
}

@media (max-width: 667px) {
    #container {
        padding-top: 54px;
    }
}

#container .lead {
    background: #008cdd;
}

#container .lead .inner {
    width: 1080px;
    margin: 0 auto;
    padding: 40px 0 60px 0;
    color: #FFF;
}

@media (max-width: 667px) {
    #container .lead .inner {
        width: 100%;
    }
}

#container .lead .inner h2 {
    font-family: "proxima-nova-alt";
    font-style: italic;
    text-decoration: underline;
    font-size: 50px;
    font-size: 3.125rem;
    line-height: normal;
}

#container .lead .inner p {
    font-size: 16px;
    font-size: 1rem;
    font-family: 'AXIS Font Japanese W55';
    margin-top: 25px;
    line-height: 200%;
    clear: both;
}

#container .lead .inner .button {
    line-height: normal;
}

#container .lead .inner .button a {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    background: #FFF;
    padding: 10px 45px;
    border: 1px solid #FFF;
    color: #008cdd;
    display: inline-block;
    -webkit-transition: all .3s;
}

#container .lead .inner .button a:hover {
    background: #008cdd;
    color: #FFF;
}

.titleArea {
    overflow: hidden;
    *zoom: 1;
    margin: 48px 0 40px 0;
}

@media (max-width: 667px) {
    .titleArea {
        padding: 0 20px;
    }
}

.titleArea h1 {
    border-bottom: 3px solid #dddddd;
    padding-bottom: 5px;
    float: left;
    font-size: 17px;
    font-size: 1.0625rem;
}

.titleArea h1 span {
    font-size: 13px;
    font-size: 0.8125rem;
    margin-left: 20px;
}

.titleArea .all {
    font-size: 12px;
    font-size: 0.75rem;
    text-align: right;
    float: right;
}

.titleArea .all i {
    margin-left: 5px;
}

.tgsclass,
.tgsblog {
    width: 1080px;
    margin: 40px auto;
}

@media (max-width: 667px) {

    .tgsclass,
    .tgsblog {
        width: 100%;
    }
}

.tgsclass .classList .classroom,
.tgsblog .classList .classroom {
    width: 240px;
    float: left;
    margin-right: 40px;
    margin-bottom: 20px;
    position: relative;
}

@media (max-width: 667px) {

    .tgsclass .classList .classroom,
    .tgsblog .classList .classroom {
        width: 90%;
        margin: 10px auto;
        float: none;
        margin-bottom: 20px;
    }
}

.tgsclass .classList .classroom .data,
.tgsblog .classList .classroom .data {
    color: #FFF;
    width: 60px;
    height: 60px;
    position: absolute;
    top: -20px;
    left: -20px;
    z-index: 99999;
    text-align: center;
}

.tgsclass .classList .classroom .data i,
.tgsblog .classList .classroom .data i {
    width: 50px;
    height: 50px;
    color: #008cdd;
    position: absolute;
    font-size: 50px;
    font-size: 3.125rem;
    top: 0px;
    left: 0px;
    z-index: 1;
}

.tgsclass .classList .classroom .data .text,
.tgsblog .classList .classroom .data .text {
    font-family: "din-condensed-web", sans-serif;
    width: 50px;
    height: 50px;
    position: absolute;
    top: 5px;
    left: 0px;
    z-index: 2;
    font-size: 25px;
    font-size: 1.5625rem;
    line-height: 70%;
}

.tgsclass .classList .classroom .data .text span,
.tgsblog .classList .classroom .data .text span {
    font-size: 14px;
    font-size: 0.875rem;
    display: block;
}

.tgsclass .classList .classroom .thumb,
.tgsblog .classList .classroom .thumb {
    width: 240px;
    height: 160px;
}

@media (max-width: 667px) {

    .tgsclass .classList .classroom .thumb,
    .tgsblog .classList .classroom .thumb {
        width: 100%;
        height: auto;
    }

    .tgsclass .classList .classroom .thumb img,
    .tgsblog .classList .classroom .thumb img {
        width: 100%;
        height: auto;
    }
}

.tgsclass .classList .classroom figure,
.tgsblog .classList .classroom figure {
    position: relative;
    overflow: hidden;
    width: 240px;
    height: 160px;
}

.tgsclass .classList .classroom figcaption,
.tgsblog .classList .classroom figcaption {
    position: absolute;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgba(99, 154, 255, 0.8);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    opacity: 0;
    color: #FFF;
    text-align: center;
    vertical-align: middle;
    display: block;
}

.tgsclass .classList .classroom figcaption .time,
.tgsblog .classList .classroom figcaption .time {
    margin-top: 75px;
    font-size: 35px;
    font-size: 2.1875rem;
    text-shadow: 1px 1px 0px rgba(20, 24, 156, 0.4);
    font-family: "din-condensed-web", sans-serif;
}

.tgsclass .classList .classroom figcaption .time a,
.tgsblog .classList .classroom figcaption .time a {
    color: #FFF;
}

.tgsclass .classList .classroom figure:hover figcaption,
.tgsblog .classList .classroom figure:hover figcaption {
    opacity: 1;
}

.tgsclass .classList .classroom .thumb img,
.tgsblog .classList .classroom .thumb img {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    width: 240px;
    height: 160px;
}

@media (max-width: 667px) {

    .tgsclass .classList .classroom .thumb img,
    .tgsblog .classList .classroom .thumb img {
        width: 100%;
        height: auto;
    }
}

.tgsclass .classList .classroom h2,
.tgsblog .classList .classroom h2 {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: bold;
    margin: 10px 0;
}

.tgsclass .classList .classroom .teacher,
.tgsblog .classList .classroom .teacher {
    width: 240px;
    overflow: hidden;
    *zoom: 1;
}

.tgsclass .classList .classroom .teacher .thumb_t,
.tgsblog .classList .classroom .teacher .thumb_t {
    float: left;
    margin-right: 10px;
}

.tgsclass .classList .classroom .teacher h3,
.tgsblog .classList .classroom .teacher h3 {
    font-weight: bold;
}

.tgsclass .classList .classroom:nth-child(4n),
.tgsblog .classList .classroom:nth-child(4n) {
    margin-right: 0px;
}

@media (max-width: 667px) {

    .tgsclass .classList .classroom:nth-child(4n),
    .tgsblog .classList .classroom:nth-child(4n) {
        margin-right: auto;
    }
}

#price_system {
    background: #fafafa;
    padding: 0 0 90px 0;
}

@media (max-width: 667px) {
    #price_system {
        padding-bottom: 30px;
    }
}

#price_system .discount {
    background: #FFD800;
    padding: 40px 30px;
    text-align: center;
    vertical-align: middle;
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 600;
}

@media (max-width: 667px) {
    #price_system .discount {
        width: 90%;
        margin: 0 auto;
        font-size: 18px;
        font-size: 1.125rem;
    }
}

#price_system .discount strong {
    font-size: 38px;
    font-size: 2.375rem;
    margin-left: 10px;
}

@media (max-width: 667px) {
    #price_system .discount strong {
        font-size: 22px;
        font-size: 1.375rem;
    }
}

#price_system .column_box {
    padding-bottom: 10px;
}

#price_system .column_box section {
    margin-bottom: 20px;
}

#price_system .column_box h3 {
    font-size: 34px;
    font-size: 2.125rem;
    font-weight: 600;
    text-align: center;
    line-height: 1.6;
}

#price_system .column_box p {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: center;
}

#price_system .column_box h2 sup {
    margin-right: 5px;
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 200;
}

#price_system .credit {
    width: 1080px;
    margin: 0 auto;
    margin-bottom: 30px;
}

@media (max-width: 667px) {
    #price_system .credit {
        width: 90%;
        margin: 0 auto;
        font-size: 12px;
        font-size: 0.75rem;
        margin-bottom: 20px;
    }
}

.price_system {
    background: #fafafa;
    padding: 0 0 90px 0;
}

.price_system.wh {
    background: #fff;
}

.price_system .column_box {
    padding-bottom: 10px;
    padding-top: 0px;
}

.price_system .column_box section {
    margin-bottom: 20px;
}

.price_system .column_box h3 {
    font-size: 34px;
    font-size: 2.125rem;
    font-weight: 600;
    text-align: center;
}

.price_system .column_box p {
    font-size: 20px;
    font-size: 1.25rem;
    text-align: center;
}

.price_system .column_box h2 sup {
    margin-right: 5px;
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: 200;
}

.price_system .system_box {
    width: 1080px;
    margin: 0 auto;
    line-height: 1.8;
}

@media (max-width: 667px) {
    .price_system .system_box {
        width: 90%;
    }
}

.price_system .system_box h4 {
    font-size: 22px;
    font-size: 1.375rem;
    font-weight: 600;
    margin: 30px 0;
    text-decoration: underline;
}

@media (max-width: 667px) {
    .price_system .system_box h4 {
        font-size: 18px;
        font-size: 1.125rem;
        text-align: center;
    }
}

.price_system .system_box p {
    font-size: 18px;
    font-size: 1.125rem;
}

.price_system .system_box p span {
    font-size: 16px;
    font-size: 1rem;
}

.price_system .system_box ul {
    list-style: disc;
    list-style-position: inside;
    font-size: 16px;
    font-size: 1rem;
}

.price_system .credit {
    width: 1080px;
    margin: 0 auto;
    margin-top: 30px;
}

@media (max-width: 667px) {
    .price_system .credit {
        width: 90%;
    }
}

.whats {
    background: #f5f7f9;
    width: 100%;
    height: 500px;
    border-top: #e9edf1 solid 1px;
    border-bottom: #e9edf1 solid 1px;
    font-size: 13px;
    font-size: 0.8125rem;
    overflow: hidden;
    *zoom: 1;
}

.whats .inner {
    width: 1080px;
    height: 500px;
    margin: 0 auto;
    position: relative;
}

.whats h1 {
    width: 100%;
    height: 30px;
    position: absolute;
    top: 30px;
    left: 0px;
    font-family: "proxima-nova-alt";
    font-size: 20px;
    font-size: 1.25rem;
    text-align: center;
}

.whats .lesson1,
.whats .lesson2,
.whats .lesson3,
.whats .lesson4,
.whats .lesson5,
.whats .lesson6 {
    width: 540px;
    height: 120px;
    position: absolute;
    line-height: 200%;
}

.whats .lesson1 h2,
.whats .lesson2 h2,
.whats .lesson3 h2,
.whats .lesson4 h2,
.whats .lesson5 h2,
.whats .lesson6 h2 {
    font-size: 14px;
    font-size: 0.875rem;
    margin-bottom: 15px;
}

.whats .lesson1 h2 a,
.whats .lesson2 h2 a,
.whats .lesson3 h2 a,
.whats .lesson4 h2 a,
.whats .lesson5 h2 a,
.whats .lesson6 h2 a {
    color: #008cdd;
}

.whats .lesson1 h2 a:visited,
.whats .lesson2 h2 a:visited,
.whats .lesson3 h2 a:visited,
.whats .lesson4 h2 a:visited,
.whats .lesson5 h2 a:visited,
.whats .lesson6 h2 a:visited {
    color: #008cdd;
}

.whats .lesson1 h2 a:focus,
.whats .lesson2 h2 a:focus,
.whats .lesson3 h2 a:focus,
.whats .lesson4 h2 a:focus,
.whats .lesson5 h2 a:focus,
.whats .lesson6 h2 a:focus {
    color: #008cdd;
}

.whats .lesson1 h2 a:hover,
.whats .lesson2 h2 a:hover,
.whats .lesson3 h2 a:hover,
.whats .lesson4 h2 a:hover,
.whats .lesson5 h2 a:hover,
.whats .lesson6 h2 a:hover {
    color: #292e31;
}

.whats .lesson1 h2 a:active,
.whats .lesson2 h2 a:active,
.whats .lesson3 h2 a:active,
.whats .lesson4 h2 a:active,
.whats .lesson5 h2 a:active,
.whats .lesson6 h2 a:active {
    color: #008cdd;
}

.whats .lesson1 {
    top: 69px;
    left: 0px;
    text-align: center;
    border-right: 1px solid #e9edf1;
    border-bottom: 1px solid #e9edf1;
}

.whats .lesson2 {
    top: 69px;
    right: 0px;
    border-bottom: 1px solid #e9edf1;
    text-align: center;
}

.whats .lesson3 {
    bottom: 165px;
    left: 0px;
    text-align: center;
    border-right: 1px solid #e9edf1;
    border-bottom: 1px solid #e9edf1;
    padding-top: 25px;
}

.whats .lesson4 {
    bottom: 165px;
    right: 0px;
    text-align: center;
    border-bottom: 1px solid #e9edf1;
    padding-top: 25px;
}

.whats .lesson5 {
    bottom: 20px;
    left: 0px;
    text-align: center;
    border-right: 1px solid #e9edf1;
    padding-top: 25px;
}

.whats .lesson6 {
    bottom: 20px;
    right: 0px;
    text-align: center;
    padding-top: 25px;
}

.tag {
    font-size: 11px;
    font-size: 0.6875rem;
    text-transform: uppercase;
    margin: 3px 0;
}

.tag span {
    word-break: break-all;
    margin-right: 7px;
    border-bottom: 1px solid #bbbbbb;
}

.tag a {
    color: #bbbbbb;
}

.tag a:visited {
    color: #292e31;
}

.tag a:focus {
    color: #292e31;
}

.tag a:hover {
    color: #CCCCCC;
}

.tag a:active {
    color: #6f7c82;
}

.tag i {
    font-size: 13px;
    font-size: 0.8125rem;
    vertical-align: middle;
    color: #bbbbbb;
}

.tgsteacher {
    margin-bottom: 40px;
    overflow: hidden;
    *zoom: 1;
}

.tgsteacher .titleArea {
    width: 1080px;
    margin: 48px auto 40px auto;
}

.tgsteacher .sliderTeacher .teacher.slide {
    width: 160px !important;
}

.tgsteacher .sliderTeacher .teacher.slide h3 {
    font-weight: bold;
}

.tgsteacher .sliderTeacher .teacher.slide img {
    -webkit-transition: all .2s ease;
    -ms-transition: all .2s ease;
    -webkit-filter: grayscale(100%);
    filter: gray;
    width: 160px !important;
    height: 160px;
}

.tgsteacher .sliderTeacher .teacher.slide img:hover {
    -webkit-filter: grayscale(0%);
    filter: none;
}

.tgsteacher .sliderTeacher .teacher.slide .tag {
    font-size: 10px;
    font-size: 0.625rem;
}

.tgsteacher .sliderTeacher .teacher.slide .description {
    color: #6f7c82;
    font-size: 10px;
    font-size: 0.625rem;
    padding: 5px 0;
}

.author {
    overflow: hidden;
    *zoom: 1;
    width: 1080px;
    margin: 40px auto;
    padding-bottom: 40px;
    border-bottom: 1px solid #dddddd;
}

.author .photo {
    width: 240px;
    height: 240px;
    float: left;
}

.author .description {
    width: 800px;
    float: right;
}

.author .description h1 {
    font-size: 17px;
    font-size: 1.0625rem;
    color: #292e31;
    font-weight: bold;
    display: inline;
}

.author .description h2 {
    font-size: 15px;
    font-size: 0.9375rem;
    margin: 5px 0 0 0;
}

.author .description .meta span {
    margin-right: 20px;
}

.author .description .meta i {
    margin-right: 5px;
}

.author .description .meta a {
    text-decoration: underline;
}

.author .description p {
    font-size: 14px;
    font-size: 0.875rem;
    color: #6f7c82;
    padding-top: 20px;
    line-height: 200%;
}

.author-link {
    font-size: 14px;
    font-size: 0.875rem;
    margin-top: 15px;
    display: block;
}

.author-link a {
    text-decoration: underline;
}

.authorList {
    margin-top: 25px;
    overflow: hidden;
    *zoom: 1;
}

.authorList .authorPhoto {
    width: 240px;
    height: 250px;
    float: left;
    margin-right: 40px;
    margin-bottom: 40px;
    display: block;
}

.authorList .authorPhoto:nth-child(4n) {
    margin-right: 0px;
}

.authorList .thumbPhoto {
    text-align: center;
}

.authorList .thumbPhoto img {
    height: auto;
}

.authorList h1 {
    margin: 0 20px;
    font-size: 14px;
    font-size: 0.875rem;
}

.authorList p {
    margin: 0 20px;
}

/* ------------------------------------------------------------
      WP PAGENAVI SETTING CSS
     ------------------------------------------------------------ */
.wp-pagenavi {
    margin: 40px auto;
    text-align: center;
    border-top: 1px solid #EEE;
    clear: both;
    font-size: 13px;
    font-size: 0.8125rem;
}

.wp-pagenavi .extend {
    display: none;
}

.wp-pagenavi .pages {
    display: none;
}

.wp-pagenavi a,
.wp-pagenavi span.current {
    color: #666;
    display: inline-block;
    line-height: 3.48em;
    height: 3.4em;
    margin: 0 .3em 12px;
    padding: 0 1em;
    cursor: default;
    margin-top: -1px;
}

.wp-pagenavi a {
    color: #CCC;
}

.wp-pagenavi span.current,
.wp-pagenavi a:hover {
    color: #464e54;
    cursor: pointer;
    border-top: 1px solid #464e54;
}

.wp-pagenavi span.current {
    border-top: 1px solid #464e54;
}

.pagenav {
    margin: 40px auto;
    height: 60px;
    clear: both;
    font-size: 13px;
    font-size: 0.8125rem;
}

.pagenav a {
    color: #666;
    display: inline-block;
    line-height: 3.48em;
    height: 3.4em;
    margin: 0 .3em 12px;
    padding: 0 1em;
    cursor: default;
}

.pagenav a:hover {
    color: #464e54;
    cursor: pointer;
    border-top: 1px solid #464e54;
    margin-top: -1px;
}

.pagenav .prev {
    float: left;
}

.pagenav .prev i {
    margin-right: 15px;
}

.pagenav .next {
    float: right;
}

.pagenav .next i {
    margin-left: 15px;
}

/* Infinite Scroll loader */
#infscr-loading {
    text-align: center;
    z-index: 100;
    position: fixed;
    left: 45%;
    bottom: 40px;
    width: 250px;
    padding: 10px;
    background: #000;
    opacity: 0.8;
    color: #FFF;
    border-radius: 10px;
}

/* ------------------------------------------------------------
    User SETTING CSS
     ------------------------------------------------------------ */
.pageSingle .users {
    width: 1080px;
    margin: 0 auto;
}

@media (max-width: 667px) {
    .pageSingle .users {
        width: 100%;
    }
}

.pageSingle .users .author-info {
    overflow: hidden;
    *zoom: 1;
    margin-bottom: 25px;
}

.pageSingle .users .author-info .author-avatar {
    width: 200px;
    float: left;
}

/* ------------------------------------------------------------
    CONTACT SETTING CSS
     ------------------------------------------------------------ */
.wpcf7 {
    margin: 40px auto 0 auto !important;
}

.wpcf7 aside {
    font-size: 10px;
    text-align: right;
}

.wpcf7 h1 {
    text-align: left;
}

.wpcf7 h2 {
    font-size: 18px !important;
}

.wpcf7 p {
    font-size: 16px !important;
    font-weight: bold;
    margin-bottom: 20px;
}

.wpcf7 {
    background: #f5f7f9;
    border: 1px solid #e4e9ec;
    padding: 20px !important;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}

.wpcf7 table {
    width: 100%;
}

.wpcf7 .title {
    font-weight: bold;
    font-size: 18px;
    font-size: 1.125rem;
}

.wpcf7 .title span {
    font-size: 10px;
    font-size: 0.625rem;
    color: red;
    margin-left: 5px;
}

.wpcf7 tr {
    display: block;
    margin-bottom: 20px;
}

.wpcf7 td {
    width: 100%;
    display: block;
    padding-bottom: 10px;
    vertical-align: top;
}

.wpcf7 .ajax-loader {
    display: none;
}

.wpcf7 select {
    font-size: 16px;
    font-size: 1rem;
}

.wpcf7 .wpcf7-text,
.wpcf7 .wpcf7-textarea {
    width: 100%;
    background-color: #fff;
    /* 背景色 */
    border-width: 1px 1px 1px 1px;
    /* 枠線の太さ 上右下左 */
    border-color: #f1f3f3;
    /* 枠色 */
    border-style: solid solid solid solid;
    /* 枠線の種類 上右下左 */
    margin-top: 5px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    padding: 8px 12px;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}

.wpcf7 .wpcf7-textarea {
    height: 260px;
}

.wpcf7 .wpcf7-submit {
    margin: 0 auto;
    text-align: center;
    padding: 8px 30px !important;
    width: 200px;
    font-weight: normal;
}

.wpcf7 input.wpcf7-submit[type=button],
.wpcf7 input.wpcf7-submit[type=reset],
.wpcf7 input.wpcf7-submit[type=submit] {
    background: #ff6a63;
    color: #FFF;
    display: block;
    padding: 15px;
    margin-bottom: 15px;
    font-size: 18px;
    font-size: 1.125rem;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    cursor: pointer;
    border: none;
}

.wpcf7 input.wpcf7-submit[type=button]:hover,
.wpcf7 input.wpcf7-submit[type=reset]:hover,
.wpcf7 input.wpcf7-submit[type=submit]:hover {
    background: #ff746c;
}

/* ------------------------------------------------------------
      About SETTING CSS
     ------------------------------------------------------------ */
.about {
    width: 952px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

.about p,
.about h2 {
    color: #6f7c82;
}

@media (max-width: 667px) {
    .about {
        width: 100%;
    }
}

.about .title {
    text-align: center;
    border-bottom: 1px solid #EEE;
    padding: 60px 0;
}

@media (max-width: 667px) {
    .about .title {
        width: 90%;
        margin: 0 auto;
    }

    .about .title img {
        width: 100%;
        height: auto;
    }
}

.about .title h1 {
    margin-bottom: 30px;
}

.about .aboutBox {
    overflow: hidden;
    *zoom: 1;
    margin: 60px 0;
    padding-bottom: 60px;
    border-bottom: 1px solid #EEE;
}

.aboutBox_desc {
    display: flex;
    justify-content: space-between;
}

.aboutBox_desc.reverce {
    flex-direction: row-reverse;
}

@media (max-width: 667px) {
    .about .aboutBox {
        margin: 20px 0;
    }

    .aboutBox_desc {
        display: block;
    }
}

.about .aboutBox h1 {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 40px;
}

@media (max-width: 667px) {
    .about .aboutBox h1 {
        margin-bottom: 20px;
        text-align: center;
    }
}

.about .aboutBox h2 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 40px;
    line-height: 200%;
}

.about .aboutBox .link {
    margin-top: 10px;
}

.about .aboutBox .link a:hover {
    text-decoration: underline;
}

.about .aboutBox .link a:before {
    content: "\f0a9";
    margin: 10px;
    position: relative;
    top: 0px;
    font-family: FontAwesome;
    font-size: 15px;
    font-size: 0.9375rem;
}

.about .aboutBox.end {
    overflow: hidden;
    *zoom: 1;
    margin: 60px 0 0px 0;
    border-bottom: none;
}

.about .icon {
    text-align: center;
    margin-top: 50px;
}

.about .icon .fa {
    font-size: 300px;
}

@media (max-width: 667px) {
    .about .icon .fa {
        display: none;
    }
}

/* .about .photoBox {
    width: 460px;
    height: 400px;
    position: relative;
} */
.about .photoBox img {
    width: 100%;
}

@media (max-width: 667px) {
    .about .photoBox {
        width: 100%;
        height: auto;
        margin: 0 auto;
        margin-bottom: 20px;
    }

    .about .photoBox img {
        width: 100%;
        height: auto;
    }
}

.about .photoBox .photo2 {
    text-align: right;
}

.about .photoBox .photo5_1,
.about .photoBox .photo5_2 {
    position: absolute;
}

@media (max-width: 667px) {

    .about .photoBox .photo5_1,
    .about .photoBox .photo5_2 {
        position: static;
    }
}

.about .photoBox .photo5_1 {
    top: 0px;
    left: 0px;
    z-index: 2;
    display: block;
}

@media (max-width: 667px) {
    .about .photoBox .photo5_1 {
        width: 50%;
        margin: 0 auto;
    }
}

.about .photoBox .photo5_2 {
    top: 5px;
    left: 160px;
    z-index: 1;
}

@media (max-width: 667px) {
    .about .photoBox .photo5_2 {
        display: none;
    }
}

.about .left {
    width: 45%;
    /* float: left; */
}

@media (max-width: 667px) {
    .about .left {
        width: 90%;
        margin: 0 auto;
        float: none;
    }
}

.about .right {
    width: 50%;
    /* float: right; */
}

@media (max-width: 667px) {
    .about .right {
        width: 90%;
        margin: 0 auto;
        float: none;
    }

    .about .right img {
        display: block;
    }
}

.title_system {
    border-bottom: 1px solid #EEE;
    padding: 60px 0 30px 0;
    background: #058CDD;
    line-height: 200%;
    margin-bottom: 0px;
}

.title_system h1 {
    width: 952px;
    margin: 0 auto;
    color: #FFF;
    font-size: 50px;
    font-size: 3.125rem;
    margin-bottom: 30px;
    font-weight: normal;
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
}

@media (max-width: 667px) {
    .title_system h1 {
        width: 100%;
        font-size: 30px;
        font-size: 1.875rem;
        text-align: center;
    }
}

.title_system h1 span {
    font-size: 24px;
    font-size: 1.5rem;
    margin-left: 10px;
}

.system,
.faq,
.session {
    width: 952px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

@media (max-width: 667px) {

    .system,
    .faq,
    .session {
        width: 100%;
        margin: 0 auto;
    }
}

.system p,
.system h2,
.system h3,
.faq p,
.faq h2,
.faq h3,
.session p,
.session h2,
.session h3 {
    color: #031a31;
}

.system .systemBox,
.faq .systemBox {
    overflow: hidden;
    *zoom: 1;
    padding: 60px 0;
    border-bottom: 1px solid #EEE;
}

.system .systemBox h1,
.faq .systemBox h1 {
    margin-bottom: 40px;
    line-height: 180%;
    font-size: 18px;
    font-size: 1.125rem;
}

@media (max-width: 667px) {

    .system .systemBox h1,
    .faq .systemBox h1 {
        font-size: 14px;
        font-size: 0.875rem;
        text-align: center;
    }
}

.system .systemBox .title,
.faq .systemBox .title {
    border-bottom: none;
    padding: 0 0 30px 0;
}

.system .systemBox .title h1,
.faq .systemBox .title h1 {
    font-size: 40px;
    font-size: 2.5rem;
    margin-bottom: 30px;
    font-weight: normal;
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
}

@media (max-width: 667px) {

    .system .systemBox .title h1,
    .faq .systemBox .title h1 {
        font-size: 20px;
        font-size: 1.25rem;
        font-weight: bold;
        text-align: center;
    }
}

.system .systemBox .title h1 span,
.faq .systemBox .title h1 span {
    font-size: 20px;
    font-size: 1.25rem;
    margin-left: 10px;
}

.system .systemBox h2,
.faq .systemBox h2 {
    font-size: 16px;
    font-size: 1rem;
    margin-bottom: 40px;
    line-height: 200%;
}

.system .systemBox .point,
.faq .systemBox .point {
    overflow: hidden;
    *zoom: 1;
}

.system .systemBox .point h3,
.faq .systemBox .point h3 {
    font-size: 18px;
    font-size: 1.125rem;
    margin-bottom: 10px;
}

.system .systemBox .point i,
.faq .systemBox .point i {
    font-size: 70px;
    font-size: 4.375rem;
    float: left;
    margin-right: 20px;
    padding-top: 10px;
    color: #e5e5e5;
}

.system .systemBox .point p,
.faq .systemBox .point p {
    font-size: 16px;
    font-size: 1rem;
}

.system .systemBox .methods,
.faq .systemBox .methods {
    border-radius: 3px;
    background-image: -ms-linear-gradient(90deg, #e6ebed 0%, #fdfdfe 100%);
    -webkit-box-shadow: 0px 0px 3px rgba(33, 23, 20, 0.42);
    box-shadow: 0px 0px 3px rgba(33, 23, 20, 0.42);
    padding: 30px 20px;
    margin-right: 10px;
}

.system .systemBox .methods h1,
.faq .systemBox .methods h1 {
    font-size: 20px;
    font-size: 1.25rem;
    margin-bottom: 20px;
}

.system .systemBox .methods h2,
.faq .systemBox .methods h2 {
    font-size: 16px;
    font-size: 1rem;
    color: #646c6f;
}

.system .left,
.faq .left {
    width: 469px;
    float: left;
}

@media (max-width: 667px) {

    .system .left,
    .faq .left {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 20px;
        float: none;
    }
}

.system .right,
.faq .right {
    width: 470px;
    float: right;
}

@media (max-width: 667px) {

    .system .right,
    .faq .right {
        width: 90%;
        margin: 0 auto;
        margin-bottom: 20px;
        float: none;
    }
}

/* ------------------------------------------------------------
      Faq SETTING CSS
     ------------------------------------------------------------ */
.faq {
    overflow: hidden;
    *zoom: 1;
    padding-top: 40px;
}

.faq .title {
    border-bottom: none;
}

.faq nav {
    overflow: hidden;
    *zoom: 1;
    margin-bottom: 40px;
}

@media (max-width: 667px) {
    .faq nav {
        padding: 0 20px;
    }
}

.faq nav ul li {
    float: left;
    margin-right: 8px;
}

@media (max-width: 667px) {
    .faq nav ul li {
        margin-bottom: 8px;
    }
}

.faq nav ul li a {
    background: #f1f1f1;
    display: block;
    width: 150px;
    padding: 3px 0;
    border: 1px solid #EEE;
    border-radius: 50px;
    text-align: center;
}

.faq nav ul li:last-child {
    margin-right: 0px;
}

.faq nav ul li a:hover {
    background: #FFF;
}

.faq .faqBox {
    border: 1px solid #EEE;
    border-radius: 3px;
    padding: 0px;
    margin-bottom: 40px;
}

.faq .faqBox .title {
    margin: 0px;
    padding: 0px;
}

.faq .faqBox h2 {
    border-bottom: 1px solid #EEE;
    padding: 20px 20px 20px 30px;
    font-weight: bold;
    font-size: 22px;
    font-size: 1.375rem;
}

.faq .faqBox ul {
    padding: 30px 30px;
}

.faq .faqBox ul h3 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 20px;
    display: list-item;
    list-style: circle inside;
}

.faq .faqBox ul li {
    margin-bottom: 40px;
    padding-bottom: 20px;
    line-height: 200%;
    font-size: 16px;
    font-size: 1rem;
    border-bottom: 1px solid #EEE;
}

.faq .faqBox ul li p {
    margin: 20px 0;
}

.faq .faqBox ul li:last-child {
    margin-bottom: 0px;
    border-bottom: none;
}

/* ------------------------------------------------------------
      ClassDetail SETTING CSS
     ------------------------------------------------------------ */
.classDetail {
    width: 1080px;
    margin: 0 auto;
}

.classDetail header {
    border: 1px solid #EEE;
    border-radius: 3px;
    padding: 20px 30px;
    margin: 40px 0;
}

.classDetail header h1 {
    font-size: 23px;
    font-size: 1.4375rem;
    width: 680px;
    padding-top: 25px;
    float: left;
}

.classDetail header .sub {
    width: 300px;
    float: right;
    text-align: right;
}

.classDetail header .sub .sns {
    width: 300px;
    padding-top: 20px;
}

.classDetail header .sub .sns li {
    width: 90px;
    display: inline-block;
    padding: 0 10px;
    zoom: 1;
    line-height: 1;
    z-index: 9999;
}

.classDetail header .sub .sns li .fb_iframe_widget>span {
    vertical-align: baseline !important;
}

.classDetail aside {
    width: 200px;
    float: left;
}

.classDetail aside section {
    margin-bottom: 30px;
}

.classDetail aside section div,
.classDetail aside .reservation,
.classDetail aside .join {
    background: #f8f8f8;
}

.classDetail aside section.data h3,
.classDetail aside section.teacher h3,
.classDetail aside section.place h3 {
    overflow: hidden;
    *zoom: 1;
    font-size: 18px;
    font-size: 1.125rem;
    font-family: "din-condensed-web", sans-serif;
    color: #555555;
    margin-bottom: 15px;
}

.classDetail aside section.data h3 span,
.classDetail aside section.teacher h3 span,
.classDetail aside section.place h3 span {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: normal;
    float: right;
}

.classDetail aside section.data div,
.classDetail aside section.place div {
    font-family: "din-condensed-web", sans-serif;
    font-size: 20px;
    font-size: 1.25rem;
    padding: 20px;
}

.classDetail aside section.data div .day,
.classDetail aside section.place div .day {
    margin-bottom: 10px;
}

.classDetail aside section.data div .time,
.classDetail aside section.place div .time {
    color: #555555;
}

.classDetail aside section.data div .spot i,
.classDetail aside section.place div .spot i {
    font-size: 12px;
    vertical-align: middle;
}

.classDetail aside section.teacher div {
    padding: 20px;
    font-size: 10px;
    font-size: 0.625rem;
}

.classDetail aside section.teacher div .thumb {
    text-align: center;
}

.classDetail aside section.teacher div h2 {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: bold;
}

.classDetail aside section.teacher div h2 span a {
    background: #f46bb3;
    color: #FFF;
    margin-left: 10px;
    padding: 2px 5px;
    font-weight: normal;
    font-size: 10px;
    font-size: 0.625rem;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}

.classDetail aside section.teacher div h2 span a:hover {
    background: #f29eca;
}

.classDetail aside section.reservation,
.classDetail aside section.join {
    text-align: center;
    padding: 20px;
}

.classDetail aside section.reservation i,
.classDetail aside section.join i {
    font-size: 80px;
    font-size: 5rem;
    color: #008cdd;
}

.classDetail aside section.reservation p span,
.classDetail aside section.join p span {
    display: block;
    font-size: 10px;
    font-size: 0.625rem;
    line-height: 160%;
}

.classDetail aside section.reservation .button,
.classDetail aside section.join .button {
    background: #ff6a63;
    color: #FFF;
    display: block;
    padding: 10px;
    margin-bottom: 15px;
    font-size: 13px;
    font-size: 0.8125rem;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
}

.classDetail aside section.reservation .button:hover,
.classDetail aside section.join .button:hover {
    background: #ff746c;
}

.classDetail .detail {
    width: 800px;
    float: right;
    color: #6f7c82;
    line-height: 200%;
    font-size: 14px;
    font-size: 0.875rem;
}

.classDetail .detail .attachment-large_thumbnail {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    margin-bottom: 20px;
}

.classDetail .detail strong,
.classDetail .detail b {
    font-weight: bold;
}

.classDetail .detail p {
    margin-bottom: 40px;
}

/* ------------------------------------------------------------
      BlogDetail SETTING CSS
     ------------------------------------------------------------ */
.blogwarp {
    width: 1160px;
    margin: 40px auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media (max-width: 667px) {
    .blogwarp {
        width: 100%;
        margin-top: 0px;
    }
}

.blogwarp aside {
    width: 180px;
}

@media (max-width: 667px) {
    .blogwarp aside {
        display: none;
    }
}

.blogwarp aside h3 {
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    margin-bottom: 20px;
    border-bottom: 1px solid #CCC;
}

.blogwarp aside ul {
    list-style: disc;
    list-style-position: inside;
}

.blogwarp aside ul li {
    font-size: 13px;
    font-size: 0.8125rem;
    margin-top: 10px;
}

.blogwarp aside ul li a:hover {
    text-decoration: underline;
}

.blogDetail {
    overflow: hidden;
    *zoom: 1;
    width: 960px;
    margin: 40px auto;
    padding: 40px;
    background: #FFF;
}

@media (max-width: 667px) {
    .blogDetail {
        width: 100%;
        padding: 20px;
        margin-top: 0px;
    }
}

.blogDetail header {
    overflow: hidden;
    *zoom: 1;
}

.blogDetail header h1 {
    overflow: hidden;
    *zoom: 1;
    font-size: 32px;
    font-size: 2rem;
    width: 100%;
    line-height: 180%;
    padding: 0px;
}

.blogDetail header .sub {
    overflow: hidden;
    *zoom: 1;
    margin-bottom: 20px;
}

.blogDetail header .sub .sns {
    float: right;
    width: 340px;
    text-align: right;
}

.blogDetail header .sub .sns li {
    display: inline-block;
    padding-left: 10px;
    zoom: 1;
    line-height: 1;
}

.blogDetail header .sub .sns li .fb_iframe_widget>span {
    vertical-align: baseline !important;
}

.blogDetail header .sub .meta {
    overflow: hidden;
    *zoom: 1;
    font-size: 10px;
    font-size: 0.625rem;
    width: 340px;
    float: left;
    line-height: 1.6;
}

@media (max-width: 667px) {
    .blogDetail header .sub .meta {
        width: 100%;
        float: none;
    }
}

.blogDetail header .sub .meta li {
    display: inline-block;
    padding: 0 10px 0 0px;
    zoom: 1;
    line-height: 1.6;
}

.blogDetail aside {
    width: 240px;
    float: right;
}

.blogDetail aside section {
    margin-bottom: 30px;
}

.blogDetail aside section h3 {
    overflow: hidden;
    *zoom: 1;
    font-size: 18px;
    font-size: 1.125rem;
    font-family: "din-condensed-web", sans-serif;
    color: #555555;
    margin-bottom: 15px;
}

.blogDetail aside section h3 span {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: normal;
    float: right;
}

.blogDetail aside section.data div {
    font-family: "din-condensed-web", sans-serif;
    font-size: 20px;
    font-size: 1.25rem;
    padding: 20px;
}

.blogDetail aside section.data div .day {
    margin-bottom: 10px;
}

.blogDetail aside section.data div .time {
    color: #555555;
}

.blogDetail aside section.data div .spot i {
    font-size: 12px;
    vertical-align: middle;
}

.blogDetail .sameclass h3 {
    margin-bottom: 20px;
}

.blogDetail .sameclass .classList .classroom {
    width: 240px;
    float: left;
    margin-right: 40px;
    margin-bottom: 40px;
    position: relative;
}

.blogDetail .sameclass .classList .classroom .data {
    color: #FFF;
    width: 60px;
    height: 60px;
    position: absolute;
    top: -20px;
    left: -20px;
    z-index: 99999;
    text-align: center;
}

.blogDetail .sameclass .classList .classroom .data i {
    width: 50px;
    height: 50px;
    color: #008cdd;
    position: absolute;
    font-size: 50px;
    font-size: 3.125rem;
    top: 0px;
    left: 0px;
    z-index: 1;
}

.blogDetail .sameclass .classList .classroom .data .text {
    font-family: "din-condensed-web", sans-serif;
    width: 50px;
    height: 50px;
    position: absolute;
    top: 5px;
    left: 0px;
    z-index: 2;
    font-size: 25px;
    font-size: 1.5625rem;
    line-height: 70%;
}

.blogDetail .sameclass .classList .classroom .data .text span {
    font-size: 14px;
    font-size: 0.875rem;
    display: block;
}

.blogDetail .sameclass .classList .classroom .thumb {
    width: 240px;
    height: 160px;
}

.blogDetail .sameclass .classList .classroom figure {
    position: relative;
    overflow: hidden;
    width: 240px;
    height: 160px;
}

.blogDetail .sameclass .classList .classroom figcaption {
    position: absolute;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background: rgba(99, 154, 255, 0.8);
    -webkit-transition: .3s;
    -o-transition: .3s;
    transition: .3s;
    opacity: 0;
    color: #FFF;
    text-align: center;
    vertical-align: middle;
    display: block;
}

.blogDetail .sameclass .classList .classroom figcaption .time {
    margin-top: 75px;
    font-size: 35px;
    font-size: 2.1875rem;
    text-shadow: 1px 1px 0px rgba(20, 24, 156, 0.4);
    font-family: "din-condensed-web", sans-serif;
}

.blogDetail .sameclass .classList .classroom figcaption .time a {
    color: #FFF;
}

.blogDetail .sameclass .classList .classroom figure:hover figcaption {
    opacity: 1;
}

.blogDetail .sameclass .classList .classroom .thumb img {
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    width: 240px;
    height: 160px;
}

.blogDetail .sameclass .classList .classroom h2 {
    font-size: 13px;
    font-size: 0.8125rem;
    font-weight: bold;
    margin: 10px 0;
}

.blogDetail .sameclass .classList .classroom .teacher {
    width: 240px;
    overflow: hidden;
    *zoom: 1;
}

.blogDetail .sameclass .classList .classroom .teacher .thumb_t {
    float: left;
    margin-right: 10px;
}

.blogDetail .sameclass .classList .classroom:nth-child(4n) {
    margin-right: 0px;
}

.blogDetail .post {
    margin: 0 auto;
    line-height: 1.8;
    word-break: break-all;
    font-size: 16px;
    font-size: 1rem;
}

@media (max-width: 667px) {
    .blogDetail .post {
        width: 100%;
        padding: 0px;
        font-size: 13px;
        font-size: 0.8125rem;
    }
}

.blogDetail .post a {
    color: #333;
    text-decoration: underline;
}

@media (max-width: 667px) {
    .blogDetail .post h1 {
        font-size: 24px;
        font-size: 1.5rem;
    }
}

.blogDetail .post h3 {
    font-size: 24px;
    font-size: 1.5rem;
    font-weight: bold;
    margin: 50px 0 30px 0;
    line-height: 1.8;
}

@media (max-width: 667px) {
    .blogDetail .post h3 {
        font-size: 14px;
        font-size: 0.875rem;
        margin: 30px 0 20px 0;
    }
}

.blogDetail .post h4 {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    border-bottom: 2px solid #e2041b;
    margin-bottom: 20px;
}

@media (max-width: 667px) {
    .blogDetail .post h4 {
        font-size: 16px;
        font-size: 1rem;
    }
}

.blogDetail .post h4 {
    font-size: 18px;
    font-size: 1.125rem;
    font-weight: bold;
    border-bottom: 2px solid #e2041b;
    margin-bottom: 20px;
}

@media (max-width: 667px) {
    .blogDetail .post h4 {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

.blogDetail .post p {
    margin-bottom: 30px;
    letter-spacing: 1px;
    line-height: 2;
    font-size: 17px;
    font-size: 1.0625rem;
}

.blogDetail .post p small {
    font-size: 12px;
    font-size: 0.75rem;
    line-height: 1.7;
    display: block;
}

.blogDetail .post figure {
    padding: 20px 0;
}

.blogDetail .post figure figcaption {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    border-bottom: 2px solid #e2041b;
    padding-bottom: 5px;
}

@media (max-width: 667px) {
    .blogDetail .post figure figcaption {
        font-size: 16px;
        font-size: 1rem;
    }
}

.blogDetail .post figure ul {
    list-style: none;
}

.blogDetail .post figure ul li {
    font-size: 18px;
    font-size: 1.125rem;
    position: relative;
    margin-left: 30px;
}

@media (max-width: 667px) {
    .blogDetail .post figure ul li {
        font-size: 16px;
        font-size: 1rem;
    }
}

.blogDetail .post figure ul li:before {
    position: absolute;
    top: 0px;
    left: -40px;
    display: block;
    width: 10px;
    height: 10px;
    content: '\f00c';
    font-family: FontAwesome;
    color: #e2041b;
    font-size: 25px;
    font-size: 1.5625rem;
}

.blogDetail .post figure ul li strong {
    font-weight: bold;
}

.blogDetail .post figure.task figcaption {
    border-bottom: 2px solid #666;
}

.blogDetail .post figure.task ul li:before {
    color: #666;
}

.blogDetail .post ul {
    list-style: disc;
    list-style-position: inside;
    padding: 0 0 30px 0px;
}

.blogDetail .post ul li {
    margin-top: 20px;
}

@media (max-width: 667px) {
    .blogDetail .post iframe {
        width: 100%;
    }
}

.blogDetail .post blockquote {
    padding: 20px 100px 20px 20px;
    border-left: 8px solid #efefef;
    margin-left: 100px;
    margin-bottom: 50px;
    margin-top: 50px;
    position: relative;
}

@media (max-width: 667px) {
    .blogDetail .post blockquote {
        padding: 20px 20px 20px 20px;
        border-left: 3px solid #efefef;
        margin-left: 50px;
    }
}

.blogDetail .post blockquote:before {
    content: '“';
    position: absolute;
    font-size: 170px;
    font-size: 10.625rem;
    left: -100px;
    top: 60px;
    font-family: Georgia;
    color: #efefef;
}

.blogDetail .post blockquote p {
    margin-bottom: 0;
    letter-spacing: 0.1em;
}

.blogDetail .post img {
    margin-bottom: 40px;
    height: auto;
}

.blogDetail .post img.alignright {
    display: block;
    margin: 0 0 0 auto;
    padding: 30px 0;
}

.blogDetail .post img.alignleft {
    display: block;
    margin: 0 auto 0 0;
    padding: 30px 0;
}

.blogDetail .post img.aligncenter {
    display: block;
    margin: 0 auto;
    padding: 30px 0;
}

@media (max-width: 667px) {

    .blogDetail .post img.alignright,
    .blogDetail .post img.alignleft,
    .blogDetail .post img.aligncenter,
    .blogDetail .post img.alignnone {
        width: 100%;
        height: auto;
        margin: 0 auto;
    }
}

.blogDetail .post .su-posts {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-top: 40px;
}

.blogDetail .post .su-posts .su-post {
    width: 30%;
}

@media (max-width: 667px) {
    .blogDetail .post .su-posts .su-post {
        width: 45%;
        margin-bottom: 20px;
    }
}

.blogDetail .post .su-posts .su-post h2 {
    font-size: 18px;
    font-size: 1.125rem;
    margin: 0;
    padding: 15px 0;
}

@media (max-width: 667px) {
    .blogDetail .post .su-posts .su-post h2 {
        font-size: 16px;
        font-size: 1rem;
    }
}

.blogDetail .post .su-posts .su-post .su-post-thumbnail {
    width: 100%;
    height: auto;
    margin-bottom: 0px;
}

.blogDetail .post .su-posts .su-post .su-post-thumbnail img {
    width: 100%;
    height: auto;
    margin-bottom: 0px;
}

.blogDetail .post .su-posts .su-post .su-post-excerpt {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 1.6;
}

@media (max-width: 667px) {
    .blogDetail .post .su-posts .su-post .su-post-excerpt {
        display: none;
    }
}

.blogDetail .post .su-posts .su-post .su-post-excerpt p {
    font-size: 14px;
    font-size: 0.875rem;
}

.blogDetail .post .su-post-excerpt {
    display: none;
}

.blogSingle {
    margin: 0;
}

@media (max-width: 667px) {
    .blogSingle {
        width: 100%;
        padding: 20px;
        margin-top: 0px;
    }
}

.aligncenter {
    clear: both;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.mailmagazine {
    border: 1px solid #CCC;
}

.yudo {
    overflow: hidden;
    *zoom: 1;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    background: #008cdd;
    color: #FFF;
    padding: 30px 40px;
    margin: 40px 0 0 0;
}

@media (max-width: 667px) {
    .yudo {
        width: 100%;
        padding: 20px;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }
}

.yudo p {
    font-size: 14px;
    font-size: 0.875rem;
    line-height: 200%;
    margin-bottom: 0px !important;
}


@media (max-width: 667px) {
    .yudo .text {
        width: 100%;
        float: none;
    }
}

.yudo .button {
    line-height: normal;
    float: right;
    padding-top: 23px;
}

@media (max-width: 667px) {
    .yudo .button {
        float: none;
        text-align: center;
    }
}



.yudo .button a:hover {

    color: #FFF;
}

/* ------------------------------------------------------------
      Price SETTING CSS
     ------------------------------------------------------------ */
.price {
    background: #058CDD;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

.price .title {
    width: 952px;
    margin: 0 auto;
    color: #FFF;
    padding: 60px 0 30px 0;
}

@media (max-width: 667px) {
    .price .title {
        width: 100%;
    }
}

.price .title h1 {
    font-size: 50px;
    font-size: 3.125rem;
    margin-bottom: 30px;
    text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.3);
    font-weight: normal;
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
}

.price .title h1 span {
    font-size: 24px;
    font-size: 1.5rem;
    margin-left: 10px;
}

@media (max-width: 667px) {
    .price .title h1 {
        font-size: 20px;
        font-size: 1.25rem;
        font-weight: bold;
        text-align: center;
    }
}

.price .priceBox {
    width: 952px;
    margin: 0 auto 60px auto;
    border-bottom: 1px solid #FFF;
    overflow: hidden;
    *zoom: 1;
}

@media (max-width: 667px) {
    .price .priceBox {
        width: 100%;
    }
}

.price .priceBox .title {
    padding: 0 0 30px 0;
}

.price .priceBox .title h1 {
    font-family: "HelveticaNeue-Ultralight", "Helvetica", "Arial", sans-serif;
    font-size: 27px;
    font-size: 1.6875rem;
    margin-bottom: 0px;
}

.price .left {
    width: 469px;
    height: 290px;
    position: relative;
    float: left;
}

@media (max-width: 667px) {
    .price .left {
        width: 100%;
    }
}

.price .left table {
    width: 469px;
    position: absolute;
    top: 165px;
    color: #FFF;
}

.price .left table .bdr {
    border-bottom: 1px solid #7a9bbc;
}

.price .left table .lf {
    width: 50%;
    font-size: 10px;
    font-size: 0.625rem;
}

.price .left table .rg {
    width: 50%;
    text-align: right;
    font-size: 10px;
    font-size: 0.625rem;
}

.price .left table.hour {
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
    font-size: 16px;
    font-size: 1rem;
    top: 205px;
}

.price .left table.hour td {
    text-align: center;
}

.price .left .invite {
    width: 469px;
    position: absolute;
    top: 255px;
    color: #FFF;
}

.price .left .invite p {
    font-size: 12px;
    font-size: 0.75rem;
}

.price .left .invite p.admission {
    font-weight: bold;
}

.price .right {
    width: 440px;
    padding-bottom: 60px;
    float: right;
    color: #FFF;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}

@media (max-width: 667px) {
    .price .right {
        width: 100%;
    }
}

.price .right h1 {
    font-size: 23px;
    font-size: 1.4375rem;
    font-weight: normal;
    margin-bottom: 30px;
    letter-spacing: 0.1em;
}

.price .right h2 {
    font-size: 15px;
    font-size: 0.9375rem;
    margin: 15px 0;
}

.price .right p {
    font-size: 12px;
    font-size: 0.75rem;
    padding-bottom: 20px;
    line-height: 180%;
}

.price .right p span {
    font-size: 14px;
    font-size: 0.875rem;
    color: #FFF;
    margin-bottom: 8px;
    display: block;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}

.price .ticket {
    color: #292e31;
    width: 220px;
    height: 250px;
    text-align: center;
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
    position: absolute;
    border-radius: 3px;
    background-image: -ms-linear-gradient(90deg, #e6ebed 0%, #fdfdfe 100%);
    -webkit-box-shadow: 0px 0px 3px rgba(33, 23, 20, 0.42);
    box-shadow: 0px 0px 3px rgba(33, 23, 20, 0.42);
}

.price .ticket h2 {
    width: 102px;
    margin: 20px auto 0px auto;
    color: #0398f2;
    background: -webkit-linear-gradient(#0036ff, #0398f2);
    -webkit-background-clip: text;
    line-height: 75%;
    font-size: 50px;
    font-size: 3.125rem;
}

.price .ticket h2 span {
    display: block;
    font-size: 23px;
    font-size: 1.4375rem;
}

.price .ticket p {
    font-size: 23px;
    font-size: 1.4375rem;
}

.price .ticket3 {
    top: 0px;
    left: 0px;
}

.price .ticket6 {
    top: 0px;
    left: 240px;
}

.price .ticket6 .most {
    font-size: 10px;
    font-size: 0.625rem;
    width: 220px;
    height: 10px;
    text-align: center;
    color: #efc01e;
    z-index: 9999;
    position: absolute;
    top: -2px;
    left: 0px;
}

.price .ticket6 i.fa-bookmark {
    font-size: 35px;
    font-size: 2.1875rem;
    color: #f4ed25;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
    position: absolute;
    width: 35px;
    height: 35px;
    z-index: 9999;
    top: -8px;
    right: 4px;
}

.price .ticket9 {
    top: 0px;
    left: 320px;
}

.price .attention {
    width: 952px;
    margin: 0 auto;
    color: #FFF;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}

.price .attention p {
    font-size: 10px;
    font-size: 0.625rem;
    line-height: 200%;
}

.priceBox.month {
    height: 420px;
    border-bottom: 1px solid #FFF;
    margin: 0 auto 20px auto;
}

.priceBox.month .ticket {
    height: 210px;
}

.priceBox.month .ticket h2 {
    margin: 20px auto 0px auto;
    padding-bottom: 0px;
    color: #6dc604;
    background: -webkit-linear-gradient(#4e8014, #6dc604);
    -webkit-background-clip: text;
}

.priceBox.month .invite {
    top: 220px !important;
}

.rotate {
    margin-bottom: 10px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.plus {
    margin-bottom: 10px;
}

.plus i {
    font-size: 14px;
    font-size: 0.875rem;
    vertical-align: middle;
    color: #424242;
}

.price .ticket p {
    line-height: 1.2;
}

.price .ticket .check {
    margin-top: 20px;
    padding-top: 8px;
    border-top: 1px solid #CCC;
}

.price .ticket .plus-contents {
    font-size: 10px;
    font-size: 0.625rem;
}

.price .ticket .plus-contents span {
    background: #6dc604;
    color: #FFF;
    padding: 5px 8px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}

/* ------------------------------------------------------------
      TICKER SETTING CSS
     ------------------------------------------------------------ */
.tickercontainer {
    background: #EEE;
    width: 100%;
    font-size: 15px;
    font-size: 0.9375rem;
    overflow: hidden;
    *zoom: 1;
    overflow: hidden;
    padding: 10px 0px;
    margin: 0px;
    vertical-align: middle;
}

.tickercontainer .mask {
    position: relative;
    top: 8px;
    height: auto;
    overflow: hidden;
}

.tickercontainer .mask i {
    margin-right: 10px;
    color: #639aff;
}

ul.newsticker {
    position: relative;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

ul.newsticker li {
    float: left;
    margin: 0;
    padding-right: 55px;
}

ul.newsticker li {
    float: left;
    margin: 0;
    padding-right: 55px;
}

ul.newsticker li a {
    text-decoration: underline;
    color: #333;
}

ul.newsticker li a:hover {
    color: #5a5a5a;
}

/* ------------------------------------------------------------
      Pan SETTING CSS
     ------------------------------------------------------------ */
#breadcrumb {
    overflow: hidden;
    *zoom: 1;
    width: 100%;
    border-bottom: 1px solid #EEE;
}

#breadcrumb div {
    width: 1080px;
    margin: 3px auto;
    font-size: 10px;
    font-size: 0.625rem;
}

#breadcrumb div span {
    margin-right: 10px;
}

@media (max-width: 667px) {
    #breadcrumb div {
        width: 90%;
        margin: 0 auto;
    }
}

/* ------------------------------------------------------------
      CONTACT SETTING CSS
     ------------------------------------------------------------ */
.pageSingle {
    overflow: hidden;
    *zoom: 1;
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

.pageSingle header {
    background: #f5f7f9;
    padding: 80px 0;
    line-height: 200%;
    border-bottom: 1px solid #e4e9ec;
    letter-spacing: 1.2px;
    text-align: center;
}

@media (max-width: 667px) {
    .pageSingle header {
        padding: 30px 0;
    }
}

.pageSingle header .inner {
    font-size: 16px;
    font-size: 1rem;
    width: 1080px;
    margin: 0px auto;
}

.pageSingle header .inner h3 {
    font-size: 32px;
    font-size: 2rem;
    margin-bottom: 25px;
    color: #058CDD;
}

@media (max-width: 667px) {
    .pageSingle header .inner h3 {
        font-size: 20px;
        font-size: 1.25rem;
    }

    .pageSingle header .inner h3 br {
        display: none;
    }
}

.pageSingle header .inner .text {
    color: #6f7c82;
}

@media (max-width: 667px) {
    .pageSingle header .inner .text {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

@media (max-width: 667px) {
    .pageSingle header .inner .image {
        width: 90%;
        margin: 20px auto;
    }

    .pageSingle header .inner .image img {
        width: 100%;
        height: auto;
    }
}

@media (max-width: 667px) {
    .pageSingle header .inner {
        width: 90%;
        margin: 0 auto;
    }
}

.pageSingle header.session {
    background: #FFF;
    padding: 120px 0;
}

@media (max-width: 667px) {
    .pageSingle header.session {
        padding: 30px 0;
    }
}

.pageSingle header.session.session_bg {
    background: url(images/bg_seminar.jpg) no-repeat center center;
    background-size: cover;
}

.pageSingle header.session.thank_bg {
    background: none;
    padding: 0;
}

.pageSingle header.session.session_bg h3,
.pageSingle header.session.session_bg .text {
    color: #FFF;
}

.pageSingle .contactform {
    width: 800px;
    margin: 30px auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

@media (max-width: 667px) {
    .pageSingle .contactform {
        width: 90%;
        font-size: 14px;
        font-size: 0.875rem;
    }
}

.pageSingle .contactform a {
    text-decoration: underline;
}

.pageSingle .contactform h4 {
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
}

@media (max-width: 667px) {
    .pageSingle .contactform h4 {
        margin-bottom: 20px;
    }
}

.pageSingle .contactform ul {
    margin-bottom: 20px;
    line-height: 260%;
}

.pageSingle .contactform ul li {
    list-style: disc inside;
}

.pageSingle .contactform .acs {
    margin-bottom: 20px;
}

/* ------------------------------------------------------------
      Footer SETTING CSS
     ------------------------------------------------------------ */
#footer {
    background: #FFF;
    width: 100%;
    padding: 40px 0 20px 0;
}

#footer .footer ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

@media (max-width: 667px) {
    #footer .footer ul {
        display: block;
    }
}

#footer .footer ul li {
    font-size: 12px;
    font-size: 0.75rem;
    margin: 0 10px;
}

#footer .footer .copyright {
    font-size: 10px;
    font-size: 0.625rem;
    text-align: center;
}

@media (max-width: 667px) {
    #footer .footer .copyright {
        display: block;
        line-height: normal;
        width: 90%;
        margin: 0 auto;
    }
}

#fix_popup {
    z-index: 9999;
    position: fixed;
    display: none;
    bottom: 20px;
    right: 20px;
}

#fix_popup .fix_popup_wrapper {
    position: relative;
    color: #FFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_box {
    background: #058CDD;
    color: #FFFF;
    text-align: center;
    padding: 20px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
}

#fix_popup .fix_popup_wrapper .fix_popup_box p span {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    display: block;
    margin-bottom: 10px;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button {
    background: #FFF;
    border-color: #DDD;
    width: 212px;
    height: 50px;
    font-weight: bold;
    font-size: 15px;
    font-size: 0.9375rem;
    color: #e2041b;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button:visited {
    color: #e2041b;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button:focus {
    color: #e2041b;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button:hover {
    color: #ca0519;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button:active {
    color: #e2041b;
}

#fix_popup .fix_popup_wrapper .fix_popup_close {
    width: 29px;
    height: 29px;
    text-align: center;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    background: #058CDD;
    position: absolute;
    -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.35);
    box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.35);
    top: -10px;
    left: -10px;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a {
    color: #FFFFFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a:visited {
    color: #FFFFFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a:focus {
    color: #FFFFFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a:hover {
    color: #DDDDDD;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a:active {
    color: #FFFFFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_close i {
    margin-top: 4px;
    font-size: 20px;
    font-size: 1.25rem;
}

#fix_popup .fix_popup_wrapper:placeholder-shown {
    color: #00ff00;
}

#fix_popup .fix_popup_wrapper::-webkit-input-placeholder {
    color: #00ff00;
}

#fix_popup .fix_popup_wrapper:-moz-placeholder {
    color: #00ff00;
    opacity: 1;
}

#fix_popup .fix_popup_wrapper::-moz-placeholder {
    color: #00ff00;
    opacity: 1;
}

#fix_popup .fix_popup_wrapper:-ms-input-placeholder {
    color: #00ff00;
}

#mc_embed_signup .button {
    clear: both;
    background: #ff6a63 !important;
    border-color: #DDD !important;
    border-radius: 4px;
    -webkit-transition: all 0.23s ease-in-out 0s;
    -o-transition: all 0.23s ease-in-out 0s;
    transition: all 0.23s ease-in-out 0s;
    color: #e2041b;
    color: #FFFFFF !important;
    cursor: pointer;
    display: inline-block;
    font-size: 18px;
    font-weight: normal;
    height: 32px;
    line-height: 32px;
    margin: 0 5px 10px 0;
    padding: 0 22px;
    text-align: center;
    text-decoration: none;
    vertical-align: top;
    white-space: nowrap;
    width: auto;
    margin: 0 auto !important;
}

#mc_embed_signup .button:visited {
    color: #e2041b;
}

#mc_embed_signup .button:focus {
    color: #e2041b;
}

#mc_embed_signup .button:hover {
    color: #ca0519;
}

#mc_embed_signup .button:active {
    color: #e2041b;
}

#mc_embed_signup_scroll {
    text-align: center;
}

#mc_embed_signup .mc-field-group input {
    font-size: 16px !important;
    width: 300px !important;
}

/* 20190531_近藤追記 */
.blogDetail h1 {
    font-size: 27px;
    font-size: 1.7rem;
}

.blogDetail h2 {
    font-size: 26px;
    font-size: 1.6rem;
}

@media (max-width: 667px) {
    .blogDetail h2 {
        font-size: 21px;
        font-size: 1.4rem;
    }
}

/* Contactform7確認画面 */
.wpcf7 input.wpcf7-confirm[type=submit],
.wpcf7 input.wpcf7-back[type=button] {
    background: #ff6a63;
    color: #FFF;
    display: block;
    padding: 15px;
    margin-bottom: 15px;
    font-size: 18px;
    font-size: 1.125rem;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    cursor: pointer;
    border: none;
}

.wpcf7 input.wpcf7-back[type=button] {
    background: #717171;
}

.wpcf7 input.wpcf7-confirm[type=submit]:hover {
    background: #ff746c;
}

.wpcf7 input.wpcf7-back[type=button]:hover {
    background: #848484;
}

.wpcf7 .wpcf7-confirm,
.wpcf7 .wpcf7-back {
    margin: 0 auto;
    text-align: center;
    padding: 8px 30px !important;
    width: 200px;
    font-weight: normal;
}

.wpcf7 .custom-wpcf7c-confirmed .wpcf7-text,
.wpcf7 .custom-wpcf7c-confirmed .wpcf7-textarea {
    background-color: rgb(232, 240, 254);
}

.wpcf7 .custom-wpcf7c-confirmed input:-internal-autofill-selected.wpcf7-text {
    background-color: #9de3ff !important;
}

/* ブログサイドバー */
.blogwarp {
    width: 1360px;
}

@media (min-width: 1400px) {
    .blogwarp {
        width: 100%;
    }
}

@media (max-width: 667px) {
    .blogwarp {
        width: 100%;
        margin-top: 0px;
    }
}

.blogwarp aside.blogSidebar {
    width: 180px;
}

@media (min-width: 1400px) {
    .blogwarp aside {
        width: calc(100% / 2 - 1040px / 2);
        margin: 0 20px;
    }

    .blogwarp aside.blogSidebar {
        width: calc(100% / 2 - 1040px / 2);
    }
}

@media (max-width: 667px) {
    .blogwarp aside.blogSidebar {
        display: block;
        width: 100%;
        padding: 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
}

.blogwarp aside.blogSidebar img {
    width: 100%;
    height: auto;
}

/* 2020/11/26 media */
.media_contents {
    margin: 10px auto;
    text-align: center;
    width: 1080px;
    background-color: #FFF;
    border-radius: 12px;
    -moz-border-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    padding: 25px;
    margin-bottom: 30px;
}

@media (max-width: 667px) {
    .media_contents {
        margin: 10px 0;
        text-align: center;
        width: 100%;
        background-color: #FFF;
        border-radius: 12px;
        -moz-border-radius: 12px;
        -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
        box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
        padding: 25px;
        margin-bottom: 30px;
    }
}

.media_img {
    width: 20%;
}

@media (max-width: 667px) {
    .media_img {
        width: 80%;
    }
}

.features {
    counter-reset: number;
    /*数字をリセット*/
}

.featuresList {
    position: relative;
    line-height: 1.5;
    list-style-type: none !important;
    /*数字を一旦消す*/
    padding: 0.5em 0.5em 0.5em 60px;
}

.featuresListinList {
    background: #ffffff;
    border-radius: 3px;
    -webkit-box-shadow: 0px 0px 5px silver;
    box-shadow: 0px 0px 5px silver;
    margin: 0 0 3em 6em;
    list-style: none;
    line-height: 1.5;
    padding: 1.5em;
    width: 85%;
}

.featuresList:before {
    /* 以下数字をつける */
    position: absolute;
    counter-increment: number;
    content: counter(number);
    display: inline-block;
    background: #058CDD;
    color: white;
    font-family: 'Avenir', 'Arial Black', 'Arial', sans-serif;
    font-weight: bold;
    font-size: 20px;
    border-radius: 50%;
    left: 0;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.featuresList:after {
    content: '';
    display: block;
    position: absolute;
    left: 39px;
    height: 0;
    width: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 12px solid #058CDD;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

/*20210219 start about2追加 */
.about2 {
    width: 952px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

.about2 p,
.about2 h2 {
    color: #292e31;
}

.about2 .intro {
    margin: 5em;
    text-align: center;
}

.about2 .column_box .column2 {
    padding: 50px;
}

.lines-on-sides {
    margin: 0.5em 0 5em 0;
    display: table;
    text-align: center;
    white-space: nowrap;
    color: #b8c2c7;
}

.lines-on-sides:after,
.lines-on-sides:before {
    content: '';
    display: table-cell;
    width: 50%;
    background: -o-linear-gradient(transparent 50%, currentColor 50%, currentColor calc(50% + 1px), transparent calc(50% + 1px));
    background: linear-gradient(transparent 50%, currentColor 50%, currentColor calc(50% + 1px), transparent calc(50% + 1px));
    -webkit-background-clip: padding;
    background-clip: padding;
}

.lines-on-sides:after {
    border-left: 1em solid transparent;
}

.lines-on-sides:before {
    border-right: 1em solid transparent;
}

.about2 .more {
    margin: 2em auto;
    width: 35%;
}

.about2 .column_box img {
    width: 100%;
}

.about2 .column_box figure {
    background: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.exitflexbox img {
    width: 100%;
}

.exitflexbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.exitbox1 {
    width: 25%;
    margin: auto;
}

.exitbox2 {
    width: 25%;
    margin: 0 0 0 .5rem;
}

.about2 .rounded {
    border-radius: 0.5rem !important;
}

@media screen and (max-width: 667px) {
    .about2 {
        width: 100%;
    }

    .exitflexbox {
        display: block;
    }

    .exitflexbox .exitbox1 {
        width: 100%;
        margin: 0 auto;
    }

    .exitflexbox .exitbox2 {
        width: 100%;
        margin: 0 auto;
    }
}

/*20210219 end about2追加 */
/* 20210312 ブログ改修 START */
.blog-header {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    background-color: #058CDD;
    color: white;
    height: 82px;
}

.blog-header__items::after {
    content: "";
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: block;
    margin-left: 40px;
}

.blog-header__items * {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

.blog-header__logo {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: 40px;
}

.blog-header__logo img {
    width: 215px;
    height: auto;
    vertical-align: top;
    padding: 5px;
}

.blog-footer {
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    background-color: #058CDD;
    color: white;
    padding: 30px 0 10px;
    text-align: center;
}

.blog-footer__logo img {
    width: 300px;
    height: auto;
    margin-bottom: 10px;
}

.blog-footer .copyright {
    font-size: 10px;
}

.blog-recommend-sp {
    display: none;
}

.slick-slide {
    margin: 0 30px;
}

.slick-dots li button:before {
    opacity: 1 !important;
    color: black;
    line-height: 30px !important;
}

.slick-dots li.slick-active button:before {
    color: #058CDD !important;
}

.slick-dots li button:before {
    font-size: 8px !important;
}

.slick-prev {
    z-index: 1;
    left: calc(50% - 460px) !important;
    left: calc(50% - min(430px, 40vw) - min(30px, 5vw)) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    -ms-transform: translate(-50%, -50%) !important;
    transform: translate(-50%, -50%) !important;
}

.slick-next {
    z-index: 1;
    right: calc(50% - 460px) !important;
    right: calc(50% - min(430px, 40vw) - min(30px, 5vw)) !important;
    -webkit-transform: translate(50%, -50%) !important;
    -ms-transform: translate(50%, -50%) !important;
    transform: translate(50%, -50%) !important;
}

.slick-prev::before,
.slick-next::before {
    font-size: 45px !important;
    font-size: min(45px, 8vw) !important;
    color: #a4a4a4 !important;
}

.slick-arrow {
    width: 45px !important;
    width: min(45px, 8vw) !important;
    height: 45px !important;
    height: min(45px, 8vw) !important;
}

.breadcrumps {
    font-size: 9px;
    line-height: 12px;
    color: #292e31;
    padding: 5px 0;
}

.breadcrumps__item {
    margin-left: 8px;
    padding-left: 15px;
    position: relative;
}

.breadcrumps__item::before {
    position: absolute;
    content: ">";
    top: 0;
    left: 0;
    line-height: 9px;
}

/* 20210312 ブログ改修 END */
/* 20210324 ニュース改修 START */
#news {
    /* margin: 10% 0; */
    margin: 0;
    padding: 50px;
    background-color: #EEEEEE;
}

.news_flex {
    width: 100%;
    margin: 0 auto;
}

.news_title {
    width: 100%;
    font-size: 1.5em;
    border-bottom: 1px solid #292E31;
    margin-bottom: 10%;
}

.news_list {
    width: 100%;
}

.news_list li {
    margin: 30px;
    color: #058CDD;
    text-align: left;
}

.news_list .news_post_title {
    text-align: center;
}

.news_list a {
    text-align: center;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

.news_list a:hover {
    color: #058CDD;
}

.all_past_news:before {
    content: ">>>";
    color: #058CDD;
}

.all_past_news {
    text-align: right !important;
    margin-top: 50px;
}

.news_list .non_contents {
    color: #292E31;
}

.all_news {
    margin: 5% auto;
}

@media(min-width :667px) {
    .news_flex {
        width: 1080px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .news_title {
        width: 30%;
        font-size: 1.5em;
        border-bottom: none;
    }

    .news_list {
        width: 70%;
        border-left: 1px solid #292E31;
        padding: 0 5%;
    }

    .news_list li {
        margin: 30px;
        color: #058CDD;
        text-align: unset;
    }

    .news_list .news_post_title {
        margin-left: 50px;
    }

    .news_list a {}

    .all_past_news:before {
        content: ">>>";
        color: #058CDD;
    }

    .all_past_news {
        text-align: right !important;
    }

    .news_list .non_contents {
        text-align: unset;
    }

    .all_news {
        margin: 5% auto;
    }
}

/* 20210324 ニュース改修 END */
/*　ホバーアニメ　START*/
.text-hover {
    display: inline;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 10px;
    padding-left: 10px;
    -webkit-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-duration: 0.7s;
    -o-transition-duration: 0.7s;
    transition-duration: 0.7s;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transition-property: color;
    -o-transition-property: color;
    transition-property: color;
    white-space: nowrap;
    overflow: hidden;
    position: relative;
    z-index: 2;
    text-decoration: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.text-hover:after,
.text-hover:before {
    -webkit-transition-duration: 0.7s;
    -o-transition-duration: 0.7s;
    transition-duration: 0.7s;
    -webkit-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
}

.text-hover:after {
    background-color: #292E31;
}

.text-hover:before {
    background-color: #292E31;
}

.text-hover:hover,
.text-hover:focus {
    outline: 0;
    cursor: pointer;
    color: #292E31;
    -webkit-transition: color 0.7s ease-in-out;
    -o-transition: color 0.7s ease-in-out;
    transition: color 0.7s ease-in-out;
}

.text-hover:hover:after,
.text-hover:focus:after {
    background-color: #292E31;
}

.text-hover:hover:before,
.text-hover:focus:before {
    background-color: #292E31;
}

.text-hover:hover:after,
.text-hover:focus:after,
.text-hover:hover:before,
.text-hover:focus:before {
    -webkit-transition-duration: 0.7s;
    -o-transition-duration: 0.7s;
    transition-duration: 0.7s;
    -webkit-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
}

.text-hover-overline-goes-left-underline-goes-right:hover:after,
.text-hover-overline-goes-left-underline-goes-right:focus:after {
    outline: 0;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 100%;
}

.text-hover-overline-goes-left-underline-goes-right:before {
    content: "";
    position: absolute;
    z-index: -1;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 0;
    height: 3px;
}

.text-hover-overline-goes-left-underline-goes-right:hover:before,
.text-hover-overline-goes-left-underline-goes-right:focus:before {
    outline: 0;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 100%;
}

.text-hover-overline-goes-left-underline-goes-right:after {
    top: 0%;
    right: 0%;
}

.text-hover-overline-goes-left-underline-goes-right:before {
    bottom: 0%;
    left: 0%;
}

.text-hover-underline-goes-right:after {
    content: "";
    position: absolute;
    z-index: -1;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 0;
    height: 1px;
}

.text-hover-underline-goes-right:hover:after,
.text-hover-underline-goes-right:focus:after {
    outline: 0;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 100%;
}

.text-hover-underline-goes-right:after {
    left: 0;
    bottom: 0;
}

/* ホバーアニメ END　*/
/*ニューモフィズム的装飾*/
.neumodiv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
}

.neumorphism {
    padding: 2em 1.5em;
    border: none;
    border-radius: 1000rem;
    font-size: 1rem;
    letter-spacing: .1rem;
    outline: none;
    -webkit-box-shadow: -6px -6px 14px rgba(255, 255, 255, .7), -6px -6px 10px rgba(255, 255, 255, .5), 6px 6px 8px rgba(255, 255, 255, .075), 6px 6px 10px rgba(0, 0, 0, .15);
    box-shadow: -6px -6px 14px rgba(255, 255, 255, .7), -6px -6px 10px rgba(255, 255, 255, .5), 6px 6px 8px rgba(255, 255, 255, .075), 6px 6px 10px rgba(0, 0, 0, .15);
}

/*プライバシーポリシー*/
.policy {
    width: 952px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

@media (max-width: 667px) {
    .policy {
        width: 100%;
    }
}

.policy .title h5 {
    margin-bottom: 30px;
}

.policy .privacy {
    margin: 10% 0;
}

.policy .privacy h4 {
    border-bottom: 1px solid #292E31;
    margin: 3em 0 1em 0;
}

.policy .privacy ol {
    margin: 1em 0 1em 3em;
}

/* 20210615 ABOUT改修 START */
.about-contents-reason {
    width: 80%;
    margin: 0 auto 80px;
}

.about-contents-top h1 {
    font-size: 1.25rem;
    margin-bottom: 40px;
}

.about-contents-top h2 {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 40px;
}

.about-contents-top {
    margin-bottom: 40px;
}

.about-contents-title {
    margin: 60px auto 0px;
    width: 80%;
    background-color: #0072B7;
    padding: 30px 40px;
    color: #fff;
    font-size: 1.125rem;
    text-align: center;
}

.contents {
    background-color: #fff;
}

.wrap-section {
    width: 1080px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto;
}

.wrap-section-img {
    width: 15%;
}

.wrap-section-text {
    width: 85%;
}

.wrap-section-text h2 {
    padding-left: 4%;
    font-weight: bold;
}

.about_column .column_box .column3 p {
    font-weight: bold;
}

.w-100 {
    width: 100%;
}

.mt-50 {
    margin-top: 50px;
}

.title_img {
    margin-top: 40px;
}

.description_text {
    text-align: center;
    margin-bottom: 50px;
}

.oukan-contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 80%;
    margin: 0 auto;
}

.oukan {
    width: 30%;
}

.oukan p {
    font-weight: bold;
    letter-spacing: 1px;
    text-align: center;
}

.oukan img {
    width: 100%;
}

.yazirusi {
    width: 30%;
}

.wrap-text-four {
    width: 40%;
    text-align: center;
    padding-top: 20px;
}

.wrap-text-four p {
    width: 80%;
    background-color: #031a31;
    color: #fff;
    font-size: 1.125rem;
    margin: 4% auto;
    text-align: center;
    border-radius: 7px;
    padding: 5px 20px;
}

.wrap-text-four span {
    display: block;
    margin-top: 50px;
    font-weight: bold;
    letter-spacing: 1px;
    color: #6f7c82;
}

.image-contents {
    margin: 100px 0;
}

.image-contents img {
    width: 100%;
}

.arrow {
    display: inline-block;
    height: 4px;
    width: 100px;
    background-color: #5bc0de;
    position: relative;
    top: 130px;
    left: 60px;
}

.arrow:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left: 30px solid #5bc0de;
    left: 80px;
    top: -7px;
}

.photo1 img {
    width: 90%;
    margin: 0 auto;
    display: block;
}

.photo2 img {
    width: 100%;
}

.photo8 img {
    width: 90%;
}

.pc_only {
    display: block !important;
    ;
}

.sp_only {
    display: none !important;
}

@media (max-width: 667px) {
    .wrap-section {
        padding: 30px 10px;
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .imgnumber {
        width: 100%;
        text-align: center;
    }

    .wrap-section-img {
        width: 30%;
    }

    .wrap-section-text {
        width: 100%;
        text-align: center;
    }

    .about .title .imgnumber img {
        width: auto;
    }

    .oukan-contents {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .oukan {
        width: 80%;
    }

    .wrap-text-four {
        width: 100%;
        text-align: center;
        padding-top: 20px;
    }

    .wrap-text-four span {
        margin-top: 0px;
    }

    .about .title img {
        width: 70%;
    }

    .pc_only {
        display: none;
    }

    .system p {
        text-align: center;
        width: 90%;
        margin: 40px auto;
        line-height: 25px;
    }
}

/* 20210806 system改修 START */

.margin-12 {
    margin-right: -12px;

}

.white {
    background-color: white;
}


#content {
    background-color: #fff;
}

.system_box {
    width: 1080px;
    max-width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-weight: 600;
}

.maxwidth100 {
    max-width: 100%;
}

.system_text_p {
    margin: 7% 0;
    text-align: center;
}

.system.maxwidth100 span {
    font-size: 15px;
    display: block;
    text-align: center;
    padding-bottom: 10px;
}

.system_img_left {
    background-color: #42A4DD;
    border-radius: 3px;
    margin-right: 2%;
}

.system_img_left p {
    text-align: center;
    color: #42A4DD;
    background-color: #fff;
    padding: 8px 0;
    margin-top: 50px;
}

.system_img_center {
    background-color: #41CC9C;
    border-radius: 3px;
    margin: 0 2%;
}

.system_img_center p {
    text-align: center;
    background-color: #fff;
    padding: 8px 0;
    margin-top: 50px;
}

.system_img_center img {
    width: 55px;
    margin-top: 7px;
}

/*　＋　*/

.plus_outer .plus {
    margin: 3em auto;
    vertical-align: middle;
    color: #707070;
    line-height: 1;
    width: 2em;
    height: 0.5em;
    background: currentColor;
    border-radius: 0.5em;
    position: relative;
}

/*　＋　*/

.plus_outer .plus_width {
    width: 3em;
}

.plus_outer .plus::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    border-radius: inherit;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.system_img_right {
    background-color: #707070;
    border-radius: 3px;
    margin-left: 2%;
}

.system_img_right p {
    color: #fff;
    text-align: center;
    font-weight: 600;
    font-size: 18px;
    width: 168px;
}

.circle {
    font-size: 12px;
    display: inline-block;
    margin: 30px 8px 50px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #fff;
    text-align: center;
    font-weight: 600;
}

.system_img_left .circle {
    line-height: 100px;
}

.circle img {
    display: block;
    margin: 10px auto -5px;
}

.circle_inner {
    text-align: center;
}

.number_font {
    color: #42A4DD;
    font-size: 35px;
    padding: 0 3px;
}

.section_line {
    border: 1px solid #000;
    width: 1080px;
}

.money_table {
    width: 1200px;
    max-width: 100%;
    margin: 0 auto;
}

.circle_en {
    display: inline-block;
    margin: 30px 10px 50px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #42A4DD;
    text-align: center;
    line-height: 75px;
    color: #fff;
    font-size: 30px;
}

.plus_outer,
.plus_rotate_outer,
.system_img_right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

hr {
    border: none;
    border-top: 1px dashed gray;
    margin: 80px auto;
    width: 92%;
    border: none;
    border-top: 1px dashed gray;
}

.hosoku_sp {
    display: none;
}

.systemn_table .white {
    background-color: #fff;
}

/* .gizi::before {
    content: "";
    display: block;
    width: 100px;
    height: 100px;
    background-color: red;
    border: 100px solid transparent;
    border-top: 100px solid #e0edff;
  } */

/* 吹き出し */

.balloon1 {
    position: absolute;
    top: -15%;
    left: 11%;
    display: inline-block;
    padding: 7px 10%;
    min-width: 120px;
    max-width: 100%;
    color: #fff;
    font-weight: bold;
    font-size: 17px;
    background: #FF6A63;
    border-radius: 3px;
}

.balloon1:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #FF6A63;
}

.balloon1 p {
    text-align: center;
    margin: 0;
    padding: 0;
}

/* 吹き出しここまで */

.number_1 {
    position: absolute;
    top: 5%;
    left: 3%;
    text-align: center;
    padding: 10px 20px;
    background-color: #41CC9C;
    color: #fff;
    border-radius: 3px;
    font-size: 25px;
}

.number_2 {
    background-color: #3DC2D1;
}

.number_3 {
    background-color: #42A4DD;
}

.title_line {
    width: 100%;
    background-color: #058CDD;
    line-height: 113px;
}

.title_line h2 {
    color: #fff;
    font-size: 30px;
    text-align: center;
    line-height: 113px;
}

.one_study {
    text-align: center;
    padding: 30px 0px;
    line-height: 30px;
}

.one_study_money {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #42A4DD;
    width: 100%;
    height: 88px;
    margin: 0 auto;
    border-radius: 3px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.one_study_container {
    width: 639px;
    max-width: 100%;
    margin: 0 auto;
    text-align: right;
    margin-bottom: 100px;
    font-size: 18px;
}

.one_study_money_gray {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 639px;
    height: 88px;
    margin: 0 auto;
    border-radius: 3px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #a7a7a7;
    -webkit-box-shadow: #333333;
    box-shadow: #333333;
}

.one_study_money .text_left {
    width: 40%;
    padding: 15px 0;
}

.one_study_money .text_left p {
    padding: 10px 0;
}

.one_study_money {
    color: #fff;
    text-align: center;
}

.one_study_money .text_right {
    width: 60%;
}

.study_style {
    width: 1080px;
    max-width: 100%;
    position: relative;
    margin: 140px auto;
}

.study_style_inner {
    width: 1080px;
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 100px auto;
    background-color: #F8F8F8;
    margin: 50px auto;
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
}

.study_style_inner .left {
    width: 35%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
}

.study_style_inner .left img {
    width: 253px;
    max-width: 80%;
}

.study_style_inner .left p {
    text-align: center;
    color: #41CC9C;
    font-size: 30px;
    font-weight: 600;
}

.study_style_inner .right {
    width: 65%;
}

.right_innner {
    width: 500px;
    max-width: 100%;
    margin: 0 auto;
    padding: 70px 20px 30px;
}

.study_style_inner .right {
    text-align: center;
}

.study_style_inner .right p {
    padding-bottom: 20px;
}

.ryoukin_kasen {
    border-bottom: 1px solid #000;
    width: 85%;
    text-align: right;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.ryoukin_kasen_inner {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding-left: 5%;
}

.ryoukin_taisei {
    text-align: right;
}

.money_kasen {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
}

.circle_style {
    display: inline-block;
    margin-right: 8px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #42A4DD;
    text-align: center;
    line-height: 75px;
    color: #fff;
    font-size: 30px;
}

.lesson_box {
    width: 1080px;
    max-width: 100%;
    margin: 140px auto 5px;
}

.lesson_box_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 100px auto;
    background-color: #F8F8F8;
    margin: 50px auto;
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
}

.lesson_box_inner .left {
    width: 35%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.lesson_box_inner .right {
    width: 65%;
}

.lesson_box_inner .right_inner {
    width: 568px;
    max-width: 100%;
    margin: 0 auto;
    padding: 50px 20px;
}

.height_auto {
    height: auto;
    margin-top: 20px;
}

.arrow_box {
    margin: 70px 0 30px;
}

.arrow_box span {
    margin-left: 17%;
}

.arrow01 {
    display: inline-block;
    width: 15px;
    height: 15px;
    border-top: solid 3px #058CDD;
    border-right: solid 3px #058CDD;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* 左向き吹き出し */

.balloon1-left {
    position: relative;
    display: inline-block;
    margin: 1.5em 0 1.5em 15px;
    padding: 35px 70px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    font-size: 16px;
    background-color: #058CDD;
    color: #fff;
    border-radius: 3px;
}

.balloon1-left:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -30px;
    margin-top: -15px;
    border: 15px solid transparent;
    border-right: 15px solid #058CDD;
    ;
}

.balloon1-left p {
    margin: 0;
    padding: 0;
}

/* 左向き吹き出しここまで */

.question_box {
    width: 1336px;
    max-width: 90%;
    margin: 20px auto;
}

.question_box_inner {
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.question_box_inner .left img {
    width: 341px;
    max-width: 100%;
}

.arrow_padding {
    padding: 50px;
}

.question_box_2 {
    width: 650px;
    max-width: 90%;
    margin: 0 auto 200px;
    text-align: right;
}

.arrow_box_2 {
    text-align: left;
    margin: 40px 0;
}

.arrow_box_2 span {
    margin: 35px;
}

.question_box_2 a {
    font-size: 13px;
    padding: 15px 20px;
}

.button {
    color: #fff;
    border-radius: 5px;
    background-color: #ff6a63;
    text-align: center;
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 30rem;
    -webkit-box-shadow: 3px 3px 7px rgb(0 0 0 / 20%);
    box-shadow: 3px 3px 7px rgb(0 0 0 / 20%);
}

.button:hover {
    background-color: #fff;
    color: #ff6a63;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    border: 1px solid #ff6a63;
    -webkit-box-shadow: 7px 7px 7px rgb(0 0 0 / 20%);
    box-shadow: 7px 7px 7px rgb(0 0 0 / 20%);
}


.button_system {
    width: 16rem;
}



.button_margin {
    margin: 20px 0;
    float: right;
}

.number_font_sp {
    display: none;
}



.pc_none {
    display: none;
}

.one_study_table_body {
    background-color: #F8F8F8;
    color: #292E31;
    height: auto;
}

.one_study_table_body_outer {
    padding: 25px 0;
    background-color: #F8F8F8;
}

.text_left_number {
    font-size: 40px;
    color: #42A4DD;
}

.one_study_money_outer {
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    width: 639px;
    max-width: 100%;
    margin: 20px auto 20px;
    font-size: 18px;
}

.one_study_table_body .text_left {
    border-right: 4px solid #d1d1d1
}

/* テーブルここから */

.school_table_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.school_table {
    border-collapse: separate;
    border-spacing: 12px;
}

.school_table td {
    background-color: #F8F8F8;
    text-align: center;
}

.school_table p {
    font-size: 20px;
}

table .school_table_bgwhite {
    background-color: transparent;
}

.school_table_imgtext {
    width: 385px;
    max-width: 100%;
    color: #fff;
    font-weight: 600;
    padding: 8px;
    border-radius: 5px;
}

.school_table_imgtext img {
    width: 100px;
    max-width: 100%;
    margin-bottom: -11px;
}

.school_table_imgtext p {
    line-height: 1;
}

.school_table_numbertext {
    width: 160px;
    max-width: 90%;
    color: #fff;
    text-align: center;
    padding: 20px 0px;
    font-size: 20px;
    border-radius: 5px;
}

.school_table_numbertext p {
    font-size: 35px;
    margin: 6px;
}

.school_table_content {
    width: 385px;
    max-width: 90%;
    padding: 10px;
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
}

.school_table .colorgreen {
    background-color: #41CC9C;
}

.school_table .colorrightblue {
    background-color: #3DC2D1;
}

.school_table .colorblue {
    background-color: #42A4DD;
}

.school_table .colordeepblue {
    background-color: #058CDD;
}

.hr_line {
    border: none;
    border-top: 2px solid #707070;
    margin: 25px auto;
    width: 98%;
}

.hosoku_container {
    width: 1080px;
    max-width: 100%;
    margin: 20px auto;
    text-align: right;
    font-size: 17px;
}

/* システム料金表 */

.system_table_container {
    width: 1080px;
    max-width: 100%;
    margin: 0px auto 100px;
}

.system_table {
    width: 1080px;
    max-width: 100%;
    margin: 0 auto;
}

.system_table td {
    background-color: rgb(250 250 250);
    text-align: center;
}

.system_table .system_table_bgwhite {
    background-color: white;
}

table .system_table_td {
    border: 1px solid #058CDD;
    border-bottom: 1px dashed #058CDD;
    border-left: 0.5px solid #058CDD;
    text-align: center;
}

table .system_table_td_center {}

table .system_table_td_inner {
    padding: 10px;
}

table .system_table_td p {
    color: #fff;
    background-color: #058CDD;
}

.system_border {
    border: 1px solid #058CDD;
    border-top: 1px dashed #058CDD;
    border-bottom: 1px dashed #058CDD;
}

.bluecolor {
    color: #058CDD;
}

.system_border_last {
    border: 1px solid #058CDD;
    border-top: 1px dashed #058CDD;
    border-bottom: 1px solid #058CDD;
    margin-bottom: 50px;
}

.system_table_container .hosoku {
    text-align: right
}

.system_border img {
    width: 86px;
    max-width: 100%;
}

table .system_border .fontbold {
    font-weight: 600;
    line-height: 18px;
}

.circle_table {
    display: inline-block;
    margin-right: 8px;
    width: 162px;
    height: 162px;
    border-radius: 50%;
    background: #058CDD;
    text-align: center;
    line-height: 40px;
    padding-top: 45px;
    color: #fff;
    font-size: 30px;
}

.backgroundwhite {
    background-color: #fff !important;
}

/* システム料金表ここまで */

.circle_system {
    width: 210px;
    height: 210px;
    border-radius: 50%;
    background: white;
    line-height: 420px;
    margin: 0 auto;
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
}

.circle_system img {
    width: 210px;
    max-width: 100%;
}

/* 上吹き出し */

.balloon1-top {
    position: relative;
    display: block;
    margin: 40px auto;
    padding: 15px 10px;
    width: 220px;
    max-width: 100%;
    color: #fff;
    font-size: 16px;
    background: #058CDD;
    border-radius: 5px;
}

.balloon1-top:before {
    content: "";
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 15px solid #058CDD;
}

.balloon1-top p {
    margin: 0;
    padding: 0;
}


.sp_only {
    display: none;
}

.sp_only_table {
    display: none;
}


.system_box .circle {
    font-size: 12px;
    display: inline-block;
    margin: 30px 8px 50px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #fff;
    text-align: center;
    font-weight: 600;
}

.button_a {
    display: none;
    color: white;
}





@media (max-width: 667px) {


    .sp_only {
        display: block;
    }

    .sp_only_table {
        display: table;
    }

    .system_box {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
    }

    /* .circle {
      margin: 30px 2% 50px;
      width: 26vw;
      height: 26vw;
    } */
    .number_font {
        font-size: 35px;
    }

    .system_img_left {
        margin: 0 3%;
    }

    .circle img {
        margin: 13px auto -10px;
    }

    .system_img_center img {
        width: 15vw;
    }

    .circle {
        font-size: 3vw;
    }

    .system_img_right {
        width: 44%;
        margin: 0 auto;
        padding: 15vw 0;
    }

    .system_table_outer {
        width: 100%;
        overflow-x: auto;
        margin: 0 auto;
    }

    .system_table_container .hosoku {
        font-size: 13px;
        width: 90%;
        margin: 0 auto;
    }

    .one_study_money_outer {
        max-width: 80%;
    }

    .one_study_container {
        max-width: 80%;
    }

    .one_study_container p {
        font-size: 13px;
        line-height: 10px;
    }

    .study_style_inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .right_innner {
        padding: 40px 20px 30px;
    }

    .study_style_inner .left img {
        width: 253px;
        max-width: 100%;
        margin-top: 70px;
    }

    .study_style_inner .left p {
        font-size: 5vw;
    }

    .balloon1 {
        top: -70px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    .study_style_inner .right p {
        line-height: 25px;
    }

    .study_style_inner .right {
        width: 100%;
    }

    .ryoukin_taisei {
        width: 95%;
        text-align: right;
    }

    .ryoukin_kasen {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: calc(100% - 70px);
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        text-align: left;
    }

    .circle_style {
        width: 55px;
        height: 55px;
        line-height: 57px;
        font-size: 25px;
    }

    .system_img_left .circle {
        line-height: 27vw;
    }

    .lesson_box {
        width: 90%;
        margin: 70px auto 5px;
    }

    .lesson_box_inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
        padding: 70px 20px;
    }

    .lesson_box .right {
        width: 100%;
    }

    .lesson_box .left {
        width: 100%;
    }

    .justify_left {
        -webkit-box-pack: left;
        -ms-flex-pack: left;
        justify-content: left;
    }

    .hosoku_container p {
        line-height: 23px;
        font-size: 13px;
        width: 90%;
        margin: 0 auto;
    }

    .schoolimg {
        width: 100%;
    }

    .schoolimg img {
        width: 100%;
    }

    .hukdasi {
        text-align: center;
    }

    .balloon1_sp {
        position: relative;
        display: inline-block;
        margin: 1.5em 0;
        padding: 40px 0px;
        width: 80%;
        color: #555;
        font-size: 16px;
        background-color: #058CDD;
        color: #fff;
        border-radius: 5px;
    }

    .balloon1_sp:before {
        content: "";
        position: absolute;
        top: 100%;
        left: 50%;
        margin-left: -15px;
        border: 15px solid transparent;
        border-top: 15px solid #058CDD;
    }

    .balloon1_sp p {
        margin: 0;
        padding: 0;
        font-size: 15px;
    }

    .arrow_box_2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .arrow_box_2 span {
        margin: 0 5%;
        text-align: center;
    }

    .button_margin a {
        margin: 0 auto;
        width: 90%;
        text-align: center;
        display: block;
    }

    .question_box_2 a {
        padding: 15px 10px;
    }

    .question_box_2 {
        margin: 0 auto 50px;
    }

    .title_line h2 {
        font-size: 25px;
    }

    .circle_table {
        width: 100px;
        height: 100px;
        line-height: 30px;
        padding-top: 29px;
        margin: 0px 30px 0px 10px;
    }

    .circle_system {
        width: 125px;
        height: 125px;
        line-height: 30px;
        margin-bottom: 25px;
    }

    .balloon1-top {
        margin: 25px auto 5px;
    }

    .system_box .circle {
        font-size: 12px;
        display: inline-block;
        margin: 30px 1% 50px;
        width: 27vw;
        height: 27vw;
        border-radius: 50%;
        background: #fff;
        text-align: center;
        font-weight: 600;
    }

    .button_margin {
        float: none;
    }

    .ryoukin_kasen_fontb {
        font-size: 4vw;
    }

    .lesson_box_inner .right_inner {
        padding: 50px 0px;
    }

    .system_border img {
        width: 25%;
        margin: -11px;
        display: block;
        margin: 0 auto;
    }

    .balloon1-top {
        margin: 5vw 5px;
        padding: 2vw 0px;
    }

    table .system_table_td p {
        font-size: 13px;
    }

    .one_study {
        font-size: 14px;
        padding: 30px 8px;
    }
}



.yudo .button:hover a {
    color: #ff6a63;
}

/* ------------------------------------------------------------
	Price SETTING CSS
   ------------------------------------------------------------ */

.price {
    background: #058CDD;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

.price .title {
    width: 952px;
    margin: 0 auto;
    color: #FFF;
    padding: 60px 0 30px 0;
}

@media (max-width: 667px) {
    .price .title {
        width: 100%;
    }
}

.price .title h1 {
    font-size: 50px;
    font-size: 3.125rem;
    margin-bottom: 30px;
    text-shadow: 1px 1px 0px rgba(0, 0, 0, 0.3);
    font-weight: normal;
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
}

.price .title h1 span {
    font-size: 24px;
    font-size: 1.5rem;
    margin-left: 10px;
}

@media (max-width: 667px) {
    .price .title h1 {
        font-size: 20px;
        font-size: 1.25rem;
        font-weight: bold;
        text-align: center;
    }
}

.price .priceBox {
    width: 952px;
    margin: 0 auto 60px auto;
    border-bottom: 1px solid #FFF;
    overflow: hidden;
    *zoom: 1;
}

@media (max-width: 667px) {
    .price .priceBox {
        width: 100%;
    }
}

.price .priceBox .title {
    padding: 0 0 30px 0;
}

.price .priceBox .title h1 {
    font-family: "HelveticaNeue-Ultralight", "Helvetica", "Arial", sans-serif;
    font-size: 27px;
    font-size: 1.6875rem;
    margin-bottom: 0px;
}

.price .left {
    width: 469px;
    height: 290px;
    position: relative;
    float: left;
}

@media (max-width: 667px) {
    .price .left {
        width: 100%;
    }
}

.price .left table {
    width: 469px;
    position: absolute;
    top: 165px;
    color: #FFF;
}

.price .left table .bdr {
    border-bottom: 1px solid #7a9bbc;
}

.price .left table .lf {
    width: 50%;
    font-size: 10px;
    font-size: 0.625rem;
}

.price .left table .rg {
    width: 50%;
    text-align: right;
    font-size: 10px;
    font-size: 0.625rem;
}

.price .left table.hour {
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
    font-size: 16px;
    font-size: 1rem;
    top: 205px;
}

.price .left table.hour td {
    text-align: center;
}

.price .left .invite {
    width: 469px;
    position: absolute;
    top: 255px;
    color: #FFF;
}

.price .left .invite p {
    font-size: 12px;
    font-size: 0.75rem;
}

.price .left .invite p.admission {
    font-weight: bold;
}

.price .right {
    width: 440px;
    padding-bottom: 60px;
    float: right;
    color: #FFF;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}

@media (max-width: 667px) {
    .price .right {
        width: 100%;
    }
}

.price .right h1 {
    font-size: 23px;
    font-size: 1.4375rem;
    font-weight: normal;
    margin-bottom: 30px;
    letter-spacing: 0.1em;
}

.price .right h2 {
    font-size: 15px;
    font-size: 0.9375rem;
    margin: 15px 0;
}

.price .right p {
    font-size: 12px;
    font-size: 0.75rem;
    padding-bottom: 20px;
    line-height: 180%;
}

.price .right p span {
    font-size: 14px;
    font-size: 0.875rem;
    color: #FFF;
    margin-bottom: 8px;
    display: block;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}

.price .ticket {
    color: #292e31;
    width: 220px;
    height: 250px;
    text-align: center;
    font-family: "HelveticaNeue-Thin", "Helvetica", "Arial", sans-serif;
    position: absolute;
    border-radius: 3px;
    background-image: -ms-linear-gradient(90deg, #e6ebed 0%, #fdfdfe 100%);
    -webkit-box-shadow: 0px 0px 3px rgba(33, 23, 20, 0.42);
    box-shadow: 0px 0px 3px rgba(33, 23, 20, 0.42);
}

.price .ticket h2 {
    width: 102px;
    margin: 20px auto 0px auto;
    color: #0398f2;
    background: -webkit-linear-gradient(#0036ff, #0398f2);
    -webkit-background-clip: text;
    line-height: 75%;
    font-size: 50px;
    font-size: 3.125rem;
}

.price .ticket h2 span {
    display: block;
    font-size: 23px;
    font-size: 1.4375rem;
}

.price .ticket p {
    font-size: 23px;
    font-size: 1.4375rem;
}

.price .ticket3 {
    top: 0px;
    left: 0px;
}

.price .ticket6 {
    top: 0px;
    left: 240px;
}

.price .ticket6 .most {
    font-size: 10px;
    font-size: 0.625rem;
    width: 220px;
    height: 10px;
    text-align: center;
    color: #efc01e;
    z-index: 9999;
    position: absolute;
    top: -2px;
    left: 0px;
}

.price .ticket6 i.fa-bookmark {
    font-size: 35px;
    font-size: 2.1875rem;
    color: #f4ed25;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
    position: absolute;
    width: 35px;
    height: 35px;
    z-index: 9999;
    top: -8px;
    right: 4px;
}

.price .ticket9 {
    top: 0px;
    left: 320px;
}

.price .attention {
    width: 952px;
    margin: 0 auto;
    color: #FFF;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}

.price .attention p {
    font-size: 10px;
    font-size: 0.625rem;
    line-height: 200%;
}

.priceBox.month {
    height: 420px;
    border-bottom: 1px solid #FFF;
    margin: 0 auto 20px auto;
}

.priceBox.month .ticket {
    height: 210px;
}

.priceBox.month .ticket h2 {
    margin: 20px auto 0px auto;
    padding-bottom: 0px;
    color: #6dc604;
    background: -webkit-linear-gradient(#4e8014, #6dc604);
    -webkit-background-clip: text;
}

.priceBox.month .invite {
    top: 220px !important;
}

.rotate {
    margin-bottom: 10px;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.plus {
    margin-bottom: 10px;
}

.plus i {
    font-size: 14px;
    font-size: 0.875rem;
    vertical-align: middle;
    color: #424242;
}

.price .ticket p {
    line-height: 1.2;
}

.price .ticket .check {
    margin-top: 20px;
    padding-top: 8px;
    border-top: 1px solid #CCC;
}

.price .ticket .plus-contents {
    font-size: 10px;
    font-size: 0.625rem;
}

.price .ticket .plus-contents span {
    background: #6dc604;
    color: #FFF;
    padding: 5px 8px;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.1);
}

/* ------------------------------------------------------------
	TICKER SETTING CSS
   ------------------------------------------------------------ */

.tickercontainer {
    background: #EEE;
    width: 100%;
    font-size: 15px;
    font-size: 0.9375rem;
    overflow: hidden;
    *zoom: 1;
    overflow: hidden;
    padding: 10px 0px;
    margin: 0px;
    vertical-align: middle;
}

.tickercontainer .mask {
    position: relative;
    top: 8px;
    height: auto;
    overflow: hidden;
}

.tickercontainer .mask i {
    margin-right: 10px;
    color: #639aff;
}

ul.newsticker {
    position: relative;
    list-style-type: none;
    margin: 0;
    padding: 0;
}

ul.newsticker li {
    float: left;
    margin: 0;
    padding-right: 55px;
}

ul.newsticker li {
    float: left;
    margin: 0;
    padding-right: 55px;
}

ul.newsticker li a {
    text-decoration: underline;
    color: #333;
}

ul.newsticker li a:hover {
    color: #5a5a5a;
}

/* ------------------------------------------------------------
	Pan SETTING CSS
   ------------------------------------------------------------ */

#breadcrumb {
    overflow: hidden;
    *zoom: 1;
    width: 100%;
    border-bottom: 1px solid #EEE;
}

#breadcrumb div {
    width: 1080px;
    margin: 3px auto;
    font-size: 10px;
    font-size: 0.625rem;
}

#breadcrumb div span {
    margin-right: 10px;
}

@media (max-width: 667px) {
    #breadcrumb div {
        width: 90%;
        margin: 0 auto;
    }
}

/* ------------------------------------------------------------
	CONTACT SETTING CSS
   ------------------------------------------------------------ */

.pageSingle {
    overflow: hidden;
    *zoom: 1;
    width: 100%;
    margin: 0 auto;
    padding: 0;
}

.pageSingle header {
    background: #f5f7f9;
    padding: 80px 0;
    line-height: 200%;
    border-bottom: 1px solid #e4e9ec;
    letter-spacing: 1.2px;
    text-align: center;
}

@media (max-width: 667px) {
    .pageSingle header {
        padding: 30px 0;
    }
}

.pageSingle header .inner {
    font-size: 16px;
    font-size: 1rem;
    width: 1080px;
    margin: 0px auto;
}

.pageSingle header .inner.inner_contactTxt {
    max-width: 800px;
    width: 90%;
    border: 2px solid #000;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.8);
    padding: 30px 0;
}

.pageSingle header.session.session_bg_contact {
    padding: 140px 0;
}

.pageSingle header.session.session_bg .inner_contactTxt h3 {
    color: #333;
}

.pageSingle header .inner h3 {
    font-size: 32px;
    font-size: 2rem;
    margin-bottom: 25px;
    color: #058CDD;
}

.pageSingle header.session.session_bg.session_bg_contact {
    width: 100%;
}

@media (max-width: 667px) {
    .pageSingle header .inner h3 {
        font-size: 20px;
        font-size: 1.25rem;
    }

    .pageSingle header .inner h3 br {
        display: none;
    }
}

.pageSingle header .inner .text {
    color: #6f7c82;
}

@media (max-width: 667px) {
    .pageSingle header .inner .text {
        font-size: 14px;
        font-size: 0.875rem;
    }
}

@media (max-width: 667px) {
    .pageSingle header .inner .image {
        width: 90%;
        margin: 20px auto;
    }

    .pageSingle header .inner .image img {
        width: 100%;
        height: auto;
    }
}

@media (max-width: 667px) {
    .pageSingle header .inner {
        width: 90%;
        margin: 0 auto;
    }
}

.pageSingle header.session {
    background: #FFF;
    padding: 120px 0;
}

@media (max-width: 667px) {
    .pageSingle header.session {
        padding: 30px 0;
    }

    .pageSingle header.session.session_bg_contact {
        padding: 70px 0;
    }
}

.pageSingle header.session.session_bg {
    background: url(images/bg_seminar12.jpg) no-repeat center bottom;
    background-size: cover;
    position: relative;
}

.pageSingle header.session.thank_bg {
    background: none;
    padding: 0;
}

.pageSingle header.session.session_bg h3,
.pageSingle header.session.session_bg .text {
    color: #FFF;
}

.pageSingle .contactform {
    width: 800px;
    margin: 30px auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

@media (max-width: 667px) {
    .pageSingle .contactform {
        width: 90%;
        font-size: 14px;
        font-size: 0.875rem;
    }
}

.pageSingle .contactform a {
    text-decoration: underline;
}

.pageSingle .contactform h4 {
    font-size: 16px;
    font-size: 1rem;
    font-weight: bold;
}

@media (max-width: 667px) {
    .pageSingle .contactform h4 {
        margin-bottom: 20px;
    }
}

.pageSingle .contactform ul {
    margin-bottom: 20px;
    line-height: 260%;
}

.pageSingle .contactform ul li {
    list-style: disc inside;
}

.pageSingle .contactform .acs {
    margin-bottom: 20px;
}

/* ------------------------------------------------------------
	Footer SETTING CSS
   ------------------------------------------------------------ */

#footer {
    background: #FFF;
    width: 100%;
    padding: 40px 0 100px 0;
}

#footer .footer ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -ms-flex-line-pack: stretch;
    align-content: stretch;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

#footer .footer ul li {
    font-size: 12px;
    font-size: 0.75rem;
    margin: 0 10px;
}

@media (max-width: 667px) {
    #footer .footer ul {
        justify-content: space-between;
        padding: 0px 5% 20px;
    }

    #footer .footer ul li {
        width: 40%;
    }
}

#footer .footer .copyright {
    font-size: 10px;
    font-size: 0.625rem;
    text-align: center;
}

@media (max-width: 667px) {
    #footer .footer .copyright {
        display: block;
        line-height: normal;
        width: 90%;
        margin: 0 auto;
    }
}

#fix_popup {
    z-index: 9999;
    position: fixed;
    display: none;
    bottom: 20px;
    right: 20px;
}

#fix_popup .fix_popup_wrapper {
    position: relative;
    color: #FFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_box {
    background: #058CDD;
    color: #FFFF;
    text-align: center;
    padding: 20px;
    border-top-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-left-radius: 12px;
    border-bottom-right-radius: 12px;
    border-top-left-radius: 12px;
    border-bottom-left-radius: 12px;
    border-top-right-radius: 12px;
    border-bottom-right-radius: 12px;
}

#fix_popup .fix_popup_wrapper .fix_popup_box p span {
    font-size: 20px;
    font-size: 1.25rem;
    font-weight: bold;
    display: block;
    margin-bottom: 10px;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button {
    background: #FFF;
    border-color: #DDD;
    width: 212px;
    height: 50px;
    font-weight: bold;
    font-size: 15px;
    font-size: 0.9375rem;
    color: #e2041b;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button:visited {
    color: #e2041b;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button:focus {
    color: #e2041b;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button:hover {
    color: #ca0519;
}

#fix_popup .fix_popup_wrapper .fix_popup_box .trial button:active {
    color: #e2041b;
}

#fix_popup .fix_popup_wrapper .fix_popup_close {
    width: 29px;
    height: 29px;
    text-align: center;
    border-top-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-left-radius: 20px;
    border-bottom-right-radius: 20px;
    border-top-left-radius: 20px;
    border-bottom-left-radius: 20px;
    border-top-right-radius: 20px;
    border-bottom-right-radius: 20px;
    background: #058CDD;
    position: absolute;
    -webkit-box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.35);
    box-shadow: 1px 1px 1px rgba(0, 0, 0, 0.35);
    top: -10px;
    left: -10px;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a {
    color: #FFFFFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a:visited {
    color: #FFFFFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a:focus {
    color: #FFFFFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a:hover {
    color: #DDDDDD;
}

#fix_popup .fix_popup_wrapper .fix_popup_close a:active {
    color: #FFFFFF;
}

#fix_popup .fix_popup_wrapper .fix_popup_close i {
    margin-top: 4px;
    font-size: 20px;
    font-size: 1.25rem;
}

#fix_popup .fix_popup_wrapper:placeholder-shown {
    color: #00ff00;
}

#fix_popup .fix_popup_wrapper::-webkit-input-placeholder {
    color: #00ff00;
}

#fix_popup .fix_popup_wrapper:-moz-placeholder {
    color: #00ff00;
    opacity: 1;
}

#fix_popup .fix_popup_wrapper::-moz-placeholder {
    color: #00ff00;
    opacity: 1;
}

#fix_popup .fix_popup_wrapper:-ms-input-placeholder {
    color: #00ff00;
}

#mc_embed_signup .button {
    clear: both;
    background: #ff6a63 !important;
    border-color: #DDD !important;
    border-radius: 4px;
    -webkit-transition: all 0.23s ease-in-out 0s;
    -o-transition: all 0.23s ease-in-out 0s;
    transition: all 0.23s ease-in-out 0s;
    color: #e2041b;
    color: #FFFFFF !important;
    cursor: pointer;
    display: inline-block;
    font-size: 18px;
    font-weight: normal;
    height: 32px;
    line-height: 32px;
    margin: 0 5px 10px 0;
    padding: 0 22px;
    text-align: center;
    text-decoration: none;
    vertical-align: top;
    white-space: nowrap;
    width: auto;
    margin: 0 auto !important;
}

#mc_embed_signup .button:visited {
    color: #e2041b;
}

#mc_embed_signup .button:focus {
    color: #e2041b;
}

#mc_embed_signup .button:hover {
    color: #ca0519;
}

#mc_embed_signup .button:active {
    color: #e2041b;
}

#mc_embed_signup_scroll {
    text-align: center;
}

#mc_embed_signup .mc-field-group input {
    font-size: 16px !important;
    width: 300px !important;
}

/* 20190531_近藤追記 */

.blogDetail h1 {
    font-size: 27px;
    font-size: 1.7rem;
}

.blogDetail h2 {
    font-size: 26px;
    font-size: 1.6rem;
}

@media (max-width: 667px) {
    .blogDetail h2 {
        font-size: 21px;
        font-size: 1.4rem;
    }
}

/* Contactform7確認画面 */

.wpcf7 input.wpcf7-confirm[type=submit],
.wpcf7 input.wpcf7-back[type=button] {
    background: #ff6a63;
    color: #FFF;
    display: block;
    padding: 15px;
    margin-bottom: 15px;
    font-size: 18px;
    font-size: 1.125rem;
    border-radius: 3px;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    cursor: pointer;
    border: none;
}

.wpcf7 input.wpcf7-back[type=button] {
    background: #717171;
}

.wpcf7 input.wpcf7-confirm[type=submit]:hover {
    background: #ff746c;
}

.wpcf7 input.wpcf7-back[type=button]:hover {
    background: #848484;
}

.wpcf7 .wpcf7-confirm,
.wpcf7 .wpcf7-back {
    margin: 0 auto;
    text-align: center;
    padding: 8px 30px !important;
    width: 200px;
    font-weight: normal;
}

.wpcf7 .custom-wpcf7c-confirmed .wpcf7-text,
.wpcf7 .custom-wpcf7c-confirmed .wpcf7-textarea {
    background-color: rgb(232, 240, 254);
}

.wpcf7 .custom-wpcf7c-confirmed input:-internal-autofill-selected.wpcf7-text {
    background-color: #9de3ff !important;
}

/* ブログサイドバー */

.blogwarp {
    width: 1360px;
}

@media (min-width: 1400px) {
    .blogwarp {
        width: 100%;
    }
}

@media (max-width: 667px) {
    .blogwarp {
        width: 100%;
        margin-top: 0px;
    }
}

.blogwarp aside.blogSidebar {
    width: 180px;
}

@media (min-width: 1400px) {
    .blogwarp aside {
        width: calc(100% / 2 - 1040px / 2);
        margin: 0 20px;
    }

    .blogwarp aside.blogSidebar {
        width: calc(100% / 2 - 1040px / 2);
    }
}

@media (max-width: 667px) {
    .blogwarp aside.blogSidebar {
        display: block;
        width: 100%;
        padding: 20px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }
}

.blogwarp aside.blogSidebar img {
    width: 100%;
    height: auto;
}

/* 2020/11/26 media */

.media_contents {
    margin: 10px auto;
    text-align: center;
    width: 1080px;
    background-color: #FFF;
    border-radius: 12px;
    -moz-border-radius: 12px;
    -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
    padding: 25px;
    margin-bottom: 30px;
}

@media (max-width: 667px) {
    .media_contents {
        margin: 10px auto;
        text-align: center;
        width: 90%;
        background-color: #FFF;
        border-radius: 12px;
        -moz-border-radius: 12px;
        -webkit-box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
        box-shadow: 0px 0px 12px 1px rgba(0, 0, 0, 0.05);
        padding: 25px;
        margin-bottom: 30px;
    }

    .media_contents .left {
        margin-left: 0;
    }
}

.media_img {
    width: 20%;
}

@media (max-width: 667px) {
    .media_img {
        width: 80%;
    }
}

.features {
    counter-reset: number;
    /*数字をリセット*/
}

.featuresList {
    position: relative;
    line-height: 1.5;
    list-style-type: none !important;
    /*数字を一旦消す*/
    padding: 0.5em 0.5em 0.5em 60px;
}

.featuresListinList {
    background: #ffffff;
    border-radius: 3px;
    -webkit-box-shadow: 0px 0px 5px silver;
    box-shadow: 0px 0px 5px silver;
    margin: 0 0 3em 6em;
    list-style: none;
    line-height: 1.5;
    padding: 1.5em;
    width: 85%;
}

.featuresList:before {
    /* 以下数字をつける */
    position: absolute;
    counter-increment: number;
    content: counter(number);
    display: inline-block;
    background: #058CDD;
    color: white;
    font-family: 'Avenir', 'Arial Black', 'Arial', sans-serif;
    font-weight: bold;
    font-size: 20px;
    border-radius: 50%;
    left: 0;
    width: 40px;
    height: 40px;
    line-height: 40px;
    text-align: center;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.featuresList:after {
    content: '';
    display: block;
    position: absolute;
    left: 39px;
    height: 0;
    width: 0;
    border-top: 7px solid transparent;
    border-bottom: 7px solid transparent;
    border-left: 12px solid #058CDD;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

/*20210219 start about2追加 */

.about2 {
    width: 952px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

.about2 p,
.about2 h2 {
    color: #292e31;
}

.about2 .intro {
    margin: 5em;
    text-align: center;
}

.about2 .column_box .column2 {
    padding: 50px;
}

.lines-on-sides {
    margin: 0.5em 0 5em 0;
    display: table;
    text-align: center;
    white-space: nowrap;
    color: #b8c2c7;
}

.lines-on-sides:after,
.lines-on-sides:before {
    content: '';
    display: table-cell;
    width: 50%;
    background: -o-linear-gradient(transparent 50%, currentColor 50%, currentColor calc(50% + 1px), transparent calc(50% + 1px));
    background: linear-gradient(transparent 50%, currentColor 50%, currentColor calc(50% + 1px), transparent calc(50% + 1px));
    -webkit-background-clip: padding;
    background-clip: padding;
}

.lines-on-sides:after {
    border-left: 1em solid transparent;
}

.lines-on-sides:before {
    border-right: 1em solid transparent;
}

.about2 .more {
    margin: 2em auto;
    width: 35%;
}

.about2 .column_box img {
    width: 100%;
}

.about2 .column_box figure {
    background: none;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.exitflexbox img {
    width: 100%;
}

.exitflexbox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.exitbox1 {
    width: 25%;
    margin: auto;
}

.exitbox2 {
    width: 25%;
    margin: 0 0 0 .5rem;
}

.about2 .rounded {
    border-radius: 0.5rem !important;
}

@media screen and (max-width: 667px) {
    .about2 {
        width: 100%;
    }

    .exitflexbox {
        display: block;
    }

    .exitflexbox .exitbox1 {
        width: 100%;
        margin: 0 auto;
    }

    .exitflexbox .exitbox2 {
        width: 100%;
        margin: 0 auto;
    }
}

/*20210219 end about2追加 */

/* 20210312 ブログ改修 START */

.blog-header {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    background-color: #058CDD;
    color: white;
}

.blog-header__items::after {
    content: "";
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: block;
    margin-left: 40px;
}

.blog-header__items * {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

.blog-header__logo {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: 40px;
}

.blog-header__logo img {
    width: 215px;
    height: auto;
    vertical-align: top;
    padding: 5px;
}

.blog-footer {
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    background-color: #058CDD;
    color: white;
    padding: 30px 0 10px;
    text-align: center;
}

.blog-footer__logo img {
    width: 300px;
    height: auto;
    margin-bottom: 10px;
}

.blog-footer .copyright {
    font-size: 10px;
}

.blog-category__buttons {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-bottom: 20px;
}

.blog-category__buttonDesign {
    color: #333333;
    background-color: transparent;
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 10px;
    text-align: center;
    border-radius: 5px;
    -webkit-transition: background-color 0.3s;
    -o-transition: background-color 0.3s;
    transition: background-color 0.3s;
    font-weight: 600;
    background-color: #F9F9F9;

    font-size: 1rem;
    letter-spacing: .1rem;
    -webkit-box-shadow: -6px -6px 14px rgba(255, 255, 255, .7), -6px -6px 10px rgba(255, 255, 255, .5), 6px 6px 8px rgba(255, 255, 255, .075), 6px 6px 10px rgba(0, 0, 0, .15);
    box-shadow: -6px -6px 14px rgba(255, 255, 255, .7), -6px -6px 10px rgba(255, 255, 255, .5), 6px 6px 8px rgba(255, 255, 255, .075), 6px 6px 10px rgba(0, 0, 0, .15);
    white-space: nowrap;
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin: 5px;

}

.blog-category__buttonDesign.active {
    background-color: #00A5D4;
    color: #fff;
}




.blog-category__buttonDesign:hover {
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    -webkit-transition: .4s ease-out;
    -o-transition: .4s ease-out;
    transition: .4s ease-out
}

.blog-category__buttonDesign:active {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.blog-category__buttonDesign:active::before {
    opacity: 1;
}


.blog-more__botton {
    width: 100%;
    color: #00A5D4;
    background-image: -webkit-gradient(linear, left top, left bottom, from(#F9F9F9), to(#F1F1F1));
    background-image: -o-linear-gradient(top, #F9F9F9, #F1F1F1);
    background-image: linear-gradient(to bottom, #F9F9F9, #F1F1F1);
    margin-bottom: 30px;
}


.blog-card {
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    border-radius: 10px;
    overflow: hidden;
    background-color: #F9F9F9;

    font-size: 1rem;
    letter-spacing: .1rem;
    outline: none;
    -webkit-box-shadow: -6px -6px 14px rgba(255, 255, 255, .7), -6px -6px 10px rgba(255, 255, 255, .5), 6px 6px 8px rgba(255, 255, 255, .075), 6px 6px 10px rgba(0, 0, 0, .15);
    box-shadow: -6px -6px 14px rgba(255, 255, 255, .7), -6px -6px 10px rgba(255, 255, 255, .5), 6px 6px 8px rgba(255, 255, 255, .075), 6px 6px 10px rgba(0, 0, 0, .15);

}

.blog-card.active {
    background-color: #00A5D4;
    color: #fff;
}



.blog-card:hover {
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    box-shadow: 0 4px 6px rgba(0, 0, 0, 0.2);
    -webkit-transition: .4s ease-out;
    -o-transition: .4s ease-out;
    transition: .4s ease-out
}

.blog-card:active {
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
    -webkit-box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.2);
}

.blog-card:active::before {
    opacity: 1;
}

.blog-card__img-wrapper {
    position: relative;
    overflow: hidden;
    width: 100% !important;
}

.blog-card__img {
    width: 100%;
    height: auto;
}

.blog-card__body {
    padding: 30px 20px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.blog-card__body>*:last-child {
    margin-top: auto;
}

.blog-card__title {
    font-size: 16px;
    line-height: 1.6em;
    font-weight: 600;
    min-height: 100px;
    color: #333333;
}

.blog-card__date {
    display: block;
    font-size: 14px;
    height: 14px;
    color: #888888;
    padding-top: 5px;
}

.blog-card-landscape {
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    border-radius: 10px;
    overflow: hidden;
    background-color: white;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.blog-card-landscape .blog-card__img-wrapper {
    -ms-flex-preferred-size: 57%;
    flex-basis: 57%;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    position: relative;
    padding-top: 34%;
    overflow: hidden;
}

.blog-card-landscape .blog-card__img {
    width: 100%;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
}

.blog-card-landscape .blog-card__body {
    font-size: 23px;
    font-size: clamp(16px, 2vw, 23px);
    min-height: 0vw;
    padding: 2em 1.5em 0 1.7em;
}

.blog-card-landscape .blog-card__title {
    font-size: inherit;
    min-height: 0vw;
    line-height: 1.6em;
    font-weight: 600;
    height: 70%;
    overflow: hidden;
}

.blog-card-landscape .blog-card__date {
    font-size: 14px;
    color: #888888;
}

.blog-articles .wp-pagenavi {
    margin: 0 auto;
    border: none;
}


.blog-articles .wp-pagenavi span.current,
.blog-articles .wp-pagenavi a:hover {
    border: none !important;
}

.blog-articles .wp-pagenavi span.current {
    color: #058CDD;
}

.blog-articles .wp-pagenavi span.extend {
    display: inline-block;
}

.breadcrumps {
    font-size: 9px;
    line-height: 12px;
    color: #292e31;
    padding: 5px 0;
}

.breadcrumps__item {
    margin-left: 8px;
    padding-left: 15px;
    position: relative;
}

.breadcrumps__item::before {
    position: absolute;
    content: ">";
    top: 0;
    left: 0;
    line-height: 9px;
}

.blog-article__content {
    font-size: 16px;
    line-height: 2.2;
}

.blog-article__content h1:first-of-type {
    margin-top: 1em;
}

.blog-article__content h1,
.blog-article__content h2,
.blog-article__content h3,
.blog-article__content h4,
.blog-article__content h5,
.blog-article__content h6 {
    line-height: 1.5;
    font-weight: bold;
}

.blog-article__content h1 {
    font-size: 28px;
}

.blog-article__content h2 {
    font-size: 22px;
    border-left: 7px solid #058CDD;
    -webkit-box-shadow: 0 3px 0 #D6D6D6;
    box-shadow: 0 3px 0 #D6D6D6;
    background-color: #F4F4F4;
    padding: 20px 15px;
}

.blog-article__content h3 {
    font-size: 19px;
    font-weight: bold;
    border-bottom: 3px solid rgba(0, 0, 0, 0.15);
    position: relative;
    padding-left: 8px;
    padding-bottom: 5px;
}

.blog-article__content h3::before {
    position: absolute;
    content: "";
    display: block;
    width: 70px;
    height: 3px;
    background-color: #058CDD;
    bottom: 0;
    left: 0;
    -webkit-transform: translateY(3px);
    -ms-transform: translateY(3px);
    transform: translateY(3px);
}

.blog-article__content h4 {
    font-size: 16px;
    font-weight: bold;
    border-left: 3px solid #058CDD;
    padding-left: 8px;
    height: 28px;
}

.blog-article__content table {
    margin-left: auto;
    margin-right: auto;
}

.blog-article__content iframe {
    max-width: 100% !important;
    display: block;
    margin: 0 auto;
}


/* 20210312 ブログ改修 END */

/* 20210324 ニュース改修 START */

#news {
    margin: 0;
    padding: 50px;
    background-color: #EEEEEE;
}

.news_flex {
    width: 100%;
    margin: 0 auto;
}

.news_title {
    width: 100%;
    font-size: 1.5em;
    border-bottom: 1px solid #292E31;
    margin-bottom: 10%;
}

.news_list {
    width: 100%;
}

.news_list li {
    margin: 30px;
    color: #058CDD;
    text-align: left;
}

.news_list .news_post_title {
    text-align: center;
}

.news_list a {
    text-align: center;
    -webkit-transition: all .5s ease;
    -o-transition: all .5s ease;
    transition: all .5s ease;
}

.news_list a:hover {
    color: #058CDD;
}

.all_past_news:before {
    content: ">>>";
    color: #058CDD;
}

.all_past_news {
    text-align: right !important;
    margin-top: 50px;
}

.news_list .non_contents {
    color: #292E31;
}

.all_news {
    margin: 5% auto;
}

@media(min-width :667px) {
    .news_flex {
        width: 1080px;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .news_title {
        width: 30%;
        font-size: 1.5em;
        border-bottom: none;
    }

    .news_list {
        width: 70%;
        border-left: 1px solid #292E31;
        padding: 0 5%;
    }

    .news_list li {
        margin: 30px;
        color: #058CDD;
        text-align: left;
    }

    .news_list .news_post_title {
        margin-left: 50px;
    }

    .news_list a {}

    .all_past_news:before {
        content: ">>>";
        color: #058CDD;
    }

    .all_past_news {
        text-align: right !important;
    }

    .news_list .non_contents {
        text-align: unset;
    }

    .all_news {
        margin: 5% auto;
    }
}

@media(max-width :667px) {
    #news {
        margin: 0 0;
        padding: 50px 5%;
    }

    .news_list li {
        margin: 0;
        padding: 10px 10px;
        color: #058CDD;
        text-align: unset;
    }
}

/* 20210324 ニュース改修 END */

/*　ホバーアニメ　START*/

.text-hover {
    display: inline;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-right: 10px;
    padding-left: 10px;
    -webkit-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-duration: 0.7s;
    -o-transition-duration: 0.7s;
    transition-duration: 0.7s;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-transition-property: color;
    -o-transition-property: color;
    transition-property: color;
    white-space: nowrap;
    overflow: hidden;
    position: relative;
    z-index: 2;
    text-decoration: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

.text-hover:after,
.text-hover:before {
    -webkit-transition-duration: 0.7s;
    -o-transition-duration: 0.7s;
    transition-duration: 0.7s;
    -webkit-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
}

.text-hover:after {
    background-color: #292E31;
}

.text-hover:before {
    background-color: #292E31;
}

.text-hover:hover,
.text-hover:focus {
    outline: 0;
    cursor: pointer;
    color: #292E31;
    -webkit-transition: color 0.7s ease-in-out;
    -o-transition: color 0.7s ease-in-out;
    transition: color 0.7s ease-in-out;
}

.text-hover:hover:after,
.text-hover:focus:after {
    background-color: #292E31;
}

.text-hover:hover:before,
.text-hover:focus:before {
    background-color: #292E31;
}

.text-hover:hover:after,
.text-hover:focus:after,
.text-hover:hover:before,
.text-hover:focus:before {
    -webkit-transition-duration: 0.7s;
    -o-transition-duration: 0.7s;
    transition-duration: 0.7s;
    -webkit-transition-timing-function: ease-in-out;
    -o-transition-timing-function: ease-in-out;
    transition-timing-function: ease-in-out;
    -webkit-transition-delay: 0s;
    -o-transition-delay: 0s;
    transition-delay: 0s;
}

.text-hover-overline-goes-left-underline-goes-right:hover:after,
.text-hover-overline-goes-left-underline-goes-right:focus:after {
    outline: 0;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 100%;
}

.text-hover-overline-goes-left-underline-goes-right:before {
    content: "";
    position: absolute;
    z-index: -1;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 0;
    height: 3px;
}

.text-hover-overline-goes-left-underline-goes-right:hover:before,
.text-hover-overline-goes-left-underline-goes-right:focus:before {
    outline: 0;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 100%;
}

.text-hover-overline-goes-left-underline-goes-right:after {
    top: 0%;
    right: 0%;
}

.text-hover-overline-goes-left-underline-goes-right:before {
    bottom: 0%;
    left: 0%;
}

.text-hover-underline-goes-right:after {
    content: "";
    position: absolute;
    z-index: -1;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 0;
    height: 1px;
}

.text-hover-underline-goes-right:hover:after,
.text-hover-underline-goes-right:focus:after {
    outline: 0;
    -webkit-transition-property: width, background-color;
    -o-transition-property: width, background-color;
    transition-property: width, background-color;
    width: 100%;
}

.text-hover-underline-goes-right:after {
    left: 0;
    bottom: 0;
}

/* ホバーアニメ END　*/

/*ニューモフィズム的装飾*/

.neumodiv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0;
}

.neumorphism {
    padding: 2em 1.5em;
    border: none;
    border-radius: 1000rem;
    font-size: 1rem;
    letter-spacing: .1rem;
    outline: none;
    -webkit-box-shadow: -6px -6px 14px rgba(255, 255, 255, .7), -6px -6px 10px rgba(255, 255, 255, .5), 6px 6px 8px rgba(255, 255, 255, .075), 6px 6px 10px rgba(0, 0, 0, .15);
    box-shadow: -6px -6px 14px rgba(255, 255, 255, .7), -6px -6px 10px rgba(255, 255, 255, .5), 6px 6px 8px rgba(255, 255, 255, .075), 6px 6px 10px rgba(0, 0, 0, .15);
}

/*プライバシーポリシー*/

.policy {
    width: 952px;
    margin: 0 auto;
    font-size: 16px;
    font-size: 1rem;
    line-height: 200%;
}

@media (max-width: 667px) {
    .policy {
        width: 100%;
    }
}

.policy .title h5 {
    margin-bottom: 30px;
}

.policy .privacy {
    margin: 10% 0;
}

.policy .privacy h4 {
    border-bottom: 1px solid #292E31;
    margin: 3em 0 1em 0;
}

.policy .privacy ol {
    margin: 1em 0 1em 3em;
}

/* 20210615 ABOUT改修 START */

.about-contents-reason {
    width: 80%;
    margin: 0 auto 80px;
}

.about-contents-top h1 {
    font-size: 1.25rem;
    margin-bottom: 40px;
}

.about-contents-top h2 {
    font-size: 1.125rem;
    font-weight: bold;
    margin-bottom: 40px;
}

.about-contents-top {
    margin-bottom: 40px;
}

.about-contents-title {
    margin: 60px auto 0px;
    width: 80%;
    background-color: #0072B7;
    padding: 30px 40px;
    color: #fff;
    font-size: 1.125rem;
    text-align: center;
}

.contents {
    background-color: #fff;
}

.wrap-section {
    width: 1080px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto;
}

.wrap-section-img {
    width: 15%;
}

.wrap-section-text {
    width: 85%;
}

.wrap-section-text h2 {
    padding-left: 4%;
    font-weight: bold;
}

.about_column .column_box .column3 p {
    font-weight: bold;
}

.w-100 {
    width: 100%;
}

.mt-50 {
    margin-top: 50px;
}

.title_img {
    margin-top: 40px;
}

.description_text {
    text-align: center;
    margin-bottom: 50px;
}

.oukan-contents {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 80%;
    margin: 0 auto;
}

.oukan {
    width: 30%;
}

.oukan p {
    font-weight: bold;
    letter-spacing: 1px;
    text-align: center;
}

.oukan img {
    width: 100%;
}

.yazirusi {
    width: 30%;
}

.wrap-text-four {
    width: 40%;
    text-align: center;
    padding-top: 20px;
}

.wrap-text-four p {
    width: 80%;
    background-color: #031a31;
    color: #fff;
    font-size: 1.125rem;
    margin: 4% auto;
    text-align: center;
    border-radius: 7px;
    padding: 5px 20px;
}

.wrap-text-four span {
    display: block;
    margin-top: 50px;
    font-weight: bold;
    letter-spacing: 1px;
    color: #6f7c82;
}

.image-contents {
    margin: 100px 0;
}

.image-contents img {
    width: 100%;
}

.arrow {
    display: inline-block;
    height: 4px;
    width: 100px;
    background-color: #5bc0de;
    position: relative;
    top: 130px;
    left: 60px;
}

.arrow:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left: 30px solid #5bc0de;
    left: 80px;
    top: -7px;
}

.photo1 img {
    width: 90%;
    margin: 0 auto;
    display: block;
}

.photo2 img {
    width: 100%;
}

.photo8 img {
    width: 90%;
}

@media (max-width: 667px) {
    .wrap-section {
        padding: 30px 10px;
        width: 100%;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .imgnumber {
        width: 100%;
        text-align: center;
    }

    .wrap-section-img {
        width: 30%;
    }

    .wrap-section-text {
        width: 100%;
        text-align: center;
    }

    .about .title .imgnumber img {
        width: auto;
    }

    .oukan-contents {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .oukan {
        width: 80%;
    }

    .wrap-text-four {
        width: 100%;
        text-align: center;
        padding-top: 20px;
    }

    .wrap-text-four span {
        margin-top: 0px;
    }

    .about .title img {
        width: 70%;
    }

    .system p {
        text-align: center;
        width: 90%;
        margin: 40px auto;
        line-height: 20px;
    }
}



/* 20210806 system改修 START */

.white {
    background-color: white;
}



#content {
    background-color: #fff;
}

.system_box {
    width: 1080px;
    max-width: 100%;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    font-weight: 600;
}

.maxwidth100 {
    max-width: 100%;
}



.system_img_left {
    background-color: #42A4DD;
    border-radius: 3px;
    margin-right: 2%;
}

.system_img_left p {
    text-align: center;
    color: #42A4DD;
    background-color: #fff;
    padding: 8px 0;
    margin-top: 50px;
}

.system_img_center {
    background-color: #41CC9C;
    border-radius: 3px;
    margin: 0 2%;
}

.system_img_center p {
    text-align: center;
    background-color: #fff;
    padding: 8px 0;
    margin-top: 50px;
}

.system_img_center img {
    width: 55px;
    margin-top: 7px;
}

/*　＋　*/

.plus_outer .plus {
    margin: 3em auto;
    vertical-align: middle;
    color: #707070;
    line-height: 1;
    width: 2em;
    height: 0.5em;
    background: currentColor;
    border-radius: 0.5em;
    position: relative;
}

/*　＋　*/

.plus_outer .plus_width {
    width: 3em;
}

.plus_outer .plus::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: inherit;
    border-radius: inherit;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}

.system_img_right {
    background-color: #707070;
    border-radius: 3px;
    margin-left: 2%;
}

.system_img_right p {
    color: #fff;
    text-align: center;
    font-weight: 600;
    font-size: 18px;
    width: 168px;
}

.circle {
    font-size: 12px;
    display: inline-block;
    margin: 30px 8px 50px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #fff;
    text-align: center;
    font-weight: 600;
}

.system_img_left .circle {
    line-height: 100px;
}

.circle img {
    display: block;
    margin: 10px auto -5px;
}

.circle_inner {
    text-align: center;
}

.number_font {
    color: #42A4DD;
    font-size: 35px;
    padding: 0 3px;
}

.section_line {
    border: 1px solid #000;
    width: 1080px;
}

.money_table {
    width: 1200px;
    max-width: 100%;
    margin: 0 auto;
}

.circle_en {
    display: inline-block;
    margin: 30px 10px 50px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #42A4DD;
    text-align: center;
    line-height: 75px;
    color: #fff;
    font-size: 30px;
}

.plus_outer,
.plus_rotate_outer,
.system_img_right {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

hr {
    border: none;
    border-top: 1px dashed gray;
    margin: 80px auto;
    width: 92%;
    border: none;
    border-top: 1px dashed gray;
}

.hosoku_sp {
    display: none;
}

.systemn_table .white {
    background-color: #fff;
}

/* .gizi::before {
  content: "";
  display: block;
  width: 100px;
  height: 100px;
  background-color: red;
  border: 100px solid transparent;
  border-top: 100px solid #e0edff;
} */

/* 吹き出し */

.balloon1 {
    position: absolute;
    top: -15%;
    left: 11%;
    display: inline-block;
    padding: 7px 10%;
    min-width: 120px;
    max-width: 100%;
    color: #fff;
    font-weight: bold;
    font-size: 17px;
    background: #FF6A63;
    border-radius: 3px;
}

.balloon1:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-top: 15px solid #FF6A63;
}

.balloon1 p {
    text-align: center;
    margin: 0;
    padding: 0;
}

/* 吹き出しここまで */

.number_1 {
    position: absolute;
    top: 5%;
    left: 3%;
    text-align: center;
    padding: 10px 20px;
    background-color: #41CC9C;
    color: #fff;
    border-radius: 3px;
    font-size: 25px;
}

.number_2 {
    background-color: #3DC2D1;
}

.number_3 {
    background-color: #42A4DD;
}

.title_line {
    width: 100%;
    background-color: #058CDD;
    line-height: 113px;
}


.one_study {
    text-align: center;
    padding: 30px 0px;
    line-height: 30px;
}

.one_study_money {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    background-color: #42A4DD;
    width: 100%;
    height: 88px;
    margin: 0 auto;
    border-radius: 3px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.one_study_container {
    width: 639px;
    max-width: 100%;
    margin: 0 auto;
    text-align: right;
    margin-bottom: 100px;
    font-size: 18px;
}

.one_study_money_gray {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 639px;
    height: 88px;
    margin: 0 auto;
    border-radius: 3px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #a7a7a7;
    -webkit-box-shadow: #333333;
    box-shadow: #333333;
}

.one_study_money .text_left {
    width: 40%;
    padding: 15px 0;
}

.one_study_money .text_left p {
    padding: 10px 0;
}

.one_study_money {
    color: #fff;
    text-align: center;
}

.one_study_money .text_right {
    width: 60%;
}

.study_style {
    width: 1080px;
    max-width: 100%;
    position: relative;
    margin: 140px auto;
}

.study_style_inner {
    width: 1080px;
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 100px auto;
    background-color: #F8F8F8;
    margin: 50px auto;
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
}

.study_style_inner .left {
    width: 35%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column;
    flex-flow: column;
}

.study_style_inner .left img {
    width: 253px;
    max-width: 80%;
}

.study_style_inner .left p {
    text-align: center;
    color: #41CC9C;
    font-size: 30px;
    font-weight: 600;
}

.study_style_inner .right {
    width: 65%;
}

.right_innner {
    width: 500px;
    max-width: 100%;
    margin: 0 auto;
    padding: 70px 20px 30px;
}

.study_style_inner .right {
    text-align: center;
}

.study_style_inner .right p {
    padding-bottom: 20px;
}

.ryoukin_kasen {
    border-bottom: 1px solid #000;
    width: 85%;
    text-align: right;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.ryoukin_kasen_inner {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    padding-left: 5%;
}

.ryoukin_taisei {
    text-align: right;
}

.money_kasen {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: left;
}

.circle_style {
    display: inline-block;
    margin-right: 8px;
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background: #42A4DD;
    text-align: center;
    line-height: 75px;
    color: #fff;
    font-size: 30px;
}

.lesson_box {
    width: 1080px;
    max-width: 100%;
    margin: 140px auto 5px;
}

.lesson_box_inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 100px auto;
    background-color: #F8F8F8;
    margin: 50px auto;
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
}

.lesson_box_inner .left {
    width: 35%;
    display: flex;
    align-items: center;
}

.lesson_box_inner .left img {
    width: 100%;
    height: 100%;
    margin: 0 auto;
    object-fit: cover;
}

.lesson_box_inner .right {
    width: 65%;
}

.lesson_box_inner .right_inner {
    width: 568px;
    max-width: 100%;
    margin: 0 auto;
    padding: 50px 20px;
}

.height_auto {
    height: auto;
    margin-top: 20px;
}

.arrow_box {
    margin: 70px 0 30px;
}

.arrow_box span {
    margin-left: 17%;
}

.arrow01 {
    display: inline-block;
    width: 15px;
    height: 15px;
    border-top: solid 3px #058CDD;
    border-right: solid 3px #058CDD;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

/* 左向き吹き出し */

.balloon1-left {
    position: relative;
    display: inline-block;
    margin: 1.5em 0 1.5em 15px;
    padding: 35px 70px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    font-size: 16px;
    background-color: #058CDD;
    color: #fff;
    border-radius: 3px;
}

.balloon1-left:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -30px;
    margin-top: -15px;
    border: 15px solid transparent;
    border-right: 15px solid #058CDD;
    ;
}

.balloon1-left p {
    margin: 0;
    padding: 0;
}

/* 左向き吹き出しここまで */

.question_box {
    width: 1336px;
    max-width: 90%;
    margin: 20px auto;
}

.question_box_inner {
    max-width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 0 auto;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.question_box_inner .left img {
    width: 341px;
    max-width: 100%;
}

.arrow_padding {
    padding: 50px;
}

.question_box_2 {
    width: 650px;
    max-width: 90%;
    margin: 0 auto 200px;
    text-align: right;
}

.arrow_box_2 {
    text-align: left;
    margin: 40px 0;
}

.arrow_box_2 span {
    margin: 35px;
}

.question_box_2 a {
    font-size: 13px;
    padding: 15px 20px;
}

.button_system {
    width: 16rem;
}

.button:hover {
    background-color: #fff;
    color: #ff6a63;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    border: 1px solid #ff6a63;
    -webkit-box-shadow: 7px 7px 7px rgb(0 0 0 / 20%);
    box-shadow: 7px 7px 7px rgb(0 0 0 / 20%);
}

.button_margin {
    margin: 20px 0;
    float: right;
}

.number_font_sp {
    display: none;
}

.color41CC9C {
    color: #41CC9C;
}

.color3DC2D1 {
    color: #3DC2D1;
}

.color42A4DD {
    color: #42A4DD;
}

.backcolor41CC9C {
    background-color: #41CC9C;
}

.backcolor3DC2D1 {
    background-color: #3DC2D1;
}

.backcolor42A4DD {
    background-color: #42A4DD;
}

.backcolor058CDD {
    background-color: #058CDD;
}


.pc_none {
    display: none;
}

.one_study_table_body {
    background-color: #F8F8F8;
    color: #292E31;
    height: auto;
}

.one_study_table_body_outer {
    padding: 25px 0;
    background-color: #F8F8F8;
}

.text_left_number {
    font-size: 40px;
    color: #42A4DD;
}

.one_study_money_outer {
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    width: 639px;
    max-width: 100%;
    margin: 20px auto 20px;
    font-size: 18px;
}

.one_study_table_body .text_left {
    border-right: 4px solid #d1d1d1
}

/* テーブルここから */

.school_table {
    border-collapse: separate;
    border-spacing: 12px;
}

.school_table td {
    background-color: #F8F8F8;
    text-align: center;
}

.school_table p {
    font-size: 20px;
}

table .school_table_bgwhite {
    background-color: transparent;
}

.school_table_imgtext {
    width: 385px;
    max-width: 100%;
    color: #fff;
    font-weight: 600;
    padding: 8px;
    border-radius: 5px;
}

.school_table_imgtext img {
    width: 100px;
    max-width: 100%;
    margin-bottom: -11px;
}

.school_table_imgtext p {
    line-height: 1;
}

.school_table_numbertext {
    width: 160px;
    max-width: 90%;
    color: #fff;
    text-align: center;
    padding: 20px 0px;
    font-size: 20px;
    border-radius: 5px;
}

.school_table_numbertext p {
    font-size: 35px;
    margin: 6px;
}

.school_table_content {
    width: 385px;
    max-width: 90%;
    padding: 10px;
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
}

.school_table .colorgreen {
    background-color: #41CC9C;
}

.school_table .colorrightblue {
    background-color: #3DC2D1;
}

.school_table .colorblue {
    background-color: #42A4DD;
}

.school_table .colordeepblue {
    background-color: #058CDD;
}

.hr_line {
    border: none;
    border-top: 2px solid #707070;
    margin: 25px auto;
    width: 98%;
}

.hosoku_container {
    width: 1080px;
    max-width: 100%;
    margin: 20px auto;
    text-align: right;
    font-size: 17px;
}

/* システム料金表 */

.system_table_container {
    width: 1080px;
    max-width: 100%;
    margin: 0px auto 100px;
}

.system_table {
    width: 1080px;
    max-width: 100%;
    margin: 0 auto;
}

.system_table td {
    background-color: rgb(250 250 250);
    text-align: center;
}

.system_table .system_table_bgwhite {
    background-color: white;
}

table .system_table_td {
    border: 1px solid #058CDD;
    border-bottom: 1px dashed #058CDD;
    border-left: 0.5px solid #058CDD;
    text-align: center;
}

table .system_table_td_center {}

table .system_table_td_inner {
    padding: 10px;
}

table .system_table_td p {
    color: #fff;
    background-color: #058CDD;
}

.system_border {
    border: 1px solid #058CDD;
    border-top: 1px dashed #058CDD;
    border-bottom: 1px dashed #058CDD;
}

.bluecolor {
    color: #058CDD;
}

.system_border_last {
    border: 1px solid #058CDD;
    border-top: 1px dashed #058CDD;
    border-bottom: 1px solid #058CDD;
    margin-bottom: 50px;
}

.system_table_container .hosoku {
    text-align: right
}

.system_border img {
    width: 86px;
    max-width: 100%;
}

table .system_border .fontbold {
    font-weight: 600;
    line-height: 18px;
}

.circle_table {
    display: inline-block;
    margin-right: 8px;
    width: 162px;
    height: 162px;
    border-radius: 50%;
    background: #058CDD;
    text-align: center;
    line-height: 40px;
    padding-top: 45px;
    color: #fff;
    font-size: 30px;
}

.backgroundwhite {
    background-color: #fff !important;
}

/* システム料金表ここまで */

.circle_system {
    width: 210px;
    height: 210px;
    border-radius: 50%;
    background: white;
    line-height: 420px;
    margin: 0 auto;
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
}

.circle_system img {
    width: 210px;
    max-width: 100%;
}

/* 上吹き出し */

.balloon1-top {
    position: relative;
    display: block;
    margin: 40px auto;
    padding: 15px 10px;
    width: 220px;
    max-width: 100%;
    color: #fff;
    font-size: 16px;
    background: #058CDD;
    border-radius: 5px;
    text-align: center;
}

.balloon1-top:before {
    content: "";
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 15px solid #058CDD;
}

.balloon1-top p {
    margin: 0;
    padding: 0;
}

.balloon1-top_41CC9C {
    width: 248px;
    position: relative;
    display: block;
    margin: 40px auto;
    padding: 15px 10px;
    max-width: 100%;
    color: #fff;
    font-size: 17px;
    background: #41CC9C;
    border-radius: 5px;
}

.balloon1-top_41CC9C:before {
    content: "";
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 15px solid #41CC9C;
}


.balloon1-top_3DC2D1 {
    width: 248px;
    position: relative;
    display: block;
    margin: 40px auto;
    padding: 15px 10px;
    max-width: 100%;
    color: #fff;
    font-size: 17px;
    background: #3DC2D1;
    border-radius: 5px;
    text-align: center;
}

.balloon1-top_3DC2D1:before {
    content: "";
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 15px solid #3DC2D1;
}

.balloon1-top_058CDD {
    width: 248px;
    position: relative;
    display: block;
    margin: 40px auto;
    padding: 15px 10px;
    max-width: 100%;
    color: #fff;
    font-size: 17px;
    background: #058CDD;
    border-radius: 5px;
    text-align: center;
}

.balloon1-top_058CDD:before {
    content: "";
    position: absolute;
    top: -30px;
    left: 50%;
    margin-left: -15px;
    border: 15px solid transparent;
    border-bottom: 15px solid #058CDD;
}


.sp_none {
    display: block;
}

.sp_only {
    display: none;
}

.system_box .circle {
    font-size: 12px;
    display: inline-block;
    margin: 30px 8px 50px;
    width: 100px;
    height: 100px;
    border-radius: 50%;
    background: #fff;
    text-align: center;
    font-weight: 600;
}

@media (max-width: 667px) {

    .sp_only {
        display: block;
    }

    .system_box {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
    }

    /* .circle {
    margin: 30px 2% 50px;
    width: 26vw;
    height: 26vw;
  } */
    .number_font {
        font-size: 35px;
    }

    .system_img_left {
        margin: 0 3%;
    }

    .circle img {
        margin: 13px auto -10px;
    }

    .system_img_center img {
        width: 15vw;
    }

    .circle {
        font-size: 3vw;
    }

    .system_img_right {
        width: 44%;
        margin: 0 auto;
        padding: 15vw 0;
    }

    .system_table_outer {
        width: 100%;
        overflow-x: auto;
        margin: 0 auto;
    }

    .system_table_container .hosoku {
        font-size: 13px;
        width: 90%;
        margin: 0 auto;
    }

    .one_study_money_outer {
        max-width: 80%;
    }

    .one_study_container {
        max-width: 80%;
    }

    .one_study_container p {
        font-size: 13px;
        line-height: 10px;
    }

    .study_style_inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .right_innner {
        padding: 40px 20px 30px;
    }

    .study_style_inner .left img {
        width: 253px;
        max-width: 100%;
        margin-top: 70px;
    }

    .study_style_inner .left p {
        font-size: 5vw;
    }

    .balloon1 {
        top: -70px;
        left: 50%;
        -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
        transform: translateX(-50%);
    }

    .study_style_inner .right p {
        line-height: 25px;
    }

    .study_style_inner .right {
        width: 100%;
    }

    .ryoukin_taisei {
        width: 95%;
        text-align: right;
    }

    .ryoukin_kasen {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        width: calc(100% - 70px);
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        text-align: left;
    }

    .circle_style {
        width: 55px;
        height: 55px;
        line-height: 57px;
        font-size: 25px;
    }

    .system_img_left .circle {
        line-height: 27vw;
    }

    .lesson_box {
        width: 90%;
        margin: 70px auto 5px;
    }

    .lesson_box_inner {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
        padding: 70px 20px;
    }

    .lesson_box .right {
        width: 100%;
    }

    .lesson_box .left {
        width: 100%;
    }

    .justify_left {
        -webkit-box-pack: left;
        -ms-flex-pack: left;
        justify-content: left;
    }

    .hosoku_container p {
        line-height: 23px;
        font-size: 13px;
        width: 90%;
        margin: 0 auto;
    }

    .schoolimg {
        width: 100%;
    }

    .schoolimg img {
        width: 100%;
    }

    .hukdasi {
        text-align: center;
    }

    .balloon1_sp {
        position: relative;
        display: inline-block;
        margin: 1.5em 0;
        padding: 40px 0px;
        width: 80%;
        color: #555;
        font-size: 16px;
        background-color: #058CDD;
        color: #fff;
        border-radius: 5px;
    }

    .balloon1_sp:before {
        content: "";
        position: absolute;
        top: 100%;
        left: 50%;
        margin-left: -15px;
        border: 15px solid transparent;
        border-top: 15px solid #058CDD;
    }

    .balloon1_sp p {
        margin: 0;
        padding: 0;
        font-size: 15px;
    }

    .arrow_box_2 {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .arrow_box_2 span {
        margin: 0 5%;
        text-align: center;
    }

    .button_margin a {
        margin: 0 auto;
        width: 90%;
        text-align: center;
        display: block;
    }

    .question_box_2 a {
        padding: 15px 10px;
    }

    .question_box_2 {
        margin: 0 auto 50px;
    }

    .title_line h2 {
        font-size: 25px;

    }

    .circle_table {
        width: 100px;
        height: 100px;
        line-height: 30px;
        padding-top: 29px;
        margin: 0px 30px 0px 10px;
    }

    .circle_system {
        width: 125px;
        height: 125px;
        line-height: 30px;
        margin-bottom: 25px;
    }

    .balloon1-top {
        margin: 25px auto 5px;
    }

    .system_box .circle {
        font-size: 12px;
        display: inline-block;
        margin: 30px 1% 50px;
        width: 27vw;
        height: 27vw;
        border-radius: 50%;
        background: #fff;
        text-align: center;
        font-weight: 600;
    }

    .button_margin {
        float: none;
    }

    .ryoukin_kasen_fontb {
        font-size: 4vw;
    }

    .lesson_box_inner .right_inner {
        padding: 50px 0px;
    }

    .system_border img {
        width: 25%;
        margin: -11px;
        display: block;
        margin: 0 auto;
    }

    .balloon1-top {
        margin: 5vw auto;
        padding: 2vw 0px;
    }

    table .system_table_td p {
        font-size: 13px;
    }

    .one_study {
        font-size: 14px;
        padding: 30px 8px;
    }
}





/* 20210925ﾌﾞﾛｸﾞ表示崩れ対応 START */

.blog-article__content-wrapper .yudo .button {
    line-height: normal;
    padding: 15px 0;
    color: #fff;
    border-radius: 5px;
    background-color: #ff6a63;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 2rem;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 40%;
    -webkit-box-shadow: 3px 3px 7px rgb(0 0 0 / 20%);
    box-shadow: 3px 3px 7px rgb(0 0 0 / 20%);
}


.blog-article__content-wrapper .yudo .button:hover a {
    color: #ff6a63;
}

.blog-article__content-wrapper .yudo .button:hover {
    background-color: #fff;
}

.contents_title .button {
    margin-top: 20px;
    background-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
}

.contents_title .button:hover {
    border: none;
}


/* 20210925ﾌﾞﾛｸﾞ表示崩れ対応 END */



/* 0920カリキュラムページ */

.container {
    width: 1080px;
    max-width: 100%;
    margin: 0 auto;

}

.grayback_box {
    background-color: #EFEFEF;

}

.curriculum_box_top {
    width: 430px;
    background-color: #41CC9C;
    color: #fff;
    text-align: center;
    margin: 0 auto;
    border-radius: 5px;
}

.curriculum_box_middle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 142px;
    margin: 15px auto 25px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}


.arrow_bottom {
    display: inline-block;
    height: 4px;
    width: 46px;
    background-color: #707070;
    position: relative;
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
}



.arrow_bottom:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left: 30px solid #707070;
    left: 28px;
    top: -8px;
}

.arrow_bottom_bottom {
    display: inline-block;
    height: 4px;
    width: 46px;
    background-color: #707070;
    position: relative;
    -webkit-transform: rotate(270deg);
    -ms-transform: rotate(270deg);
    transform: rotate(270deg);
    margin-top: 30px;
}

.arrow_bottom_bottom:before {
    position: absolute;
    content: "";
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-left: 30px solid #707070;
    left: 28px;
    top: -8px;
}


.text_middle {
    line-height: 5px;
    font-size: 11px;
}

.curriculum_box_table {
    color: #fff;
    border-collapse: separate;
    border-spacing: 5px;
    position: relative;
    text-align: center;
    margin: 0 auto;
    width: 850px;
}

.curriculum_box_bottom_table {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 30px 0;
    position: relative;

}

table .curriculum_box_bottom_table_top {
    text-align: center;
    padding: 30px 0;
    border-radius: 5px;
}





.curriculum_box_bottom_table_bottom {
    border-radius: 5px;
    text-align: center;
    width: 140px;
    padding: 17px 0;
    line-height: 26px;
}

.curriculum_box_bottom_table .left {
    text-align: center;
}

.curriculum_box_bottom_table_bottom .text_middle {
    margin-top: 25px;
}

.curriculum_box_bottom_table_top .text_middle {
    margin-top: 25px;

}

.curriculum_box_table span {
    display: block;
    font-size: 12px;
    line-height: 17px;

}

.curriculum_box_top span:nth-child(2) {
    display: block;
    font-size: 12px;
    line-height: 17px;
    margin-top: 25px;
}

.backgroundcolor3DC2D1 {
    background-color: #3DC2D1;
}

.backgroundcolorFF6A63 {
    background-color: #FF6A63;
}

.backgroundcolor707070 {
    background-color: #707070;
}





.circle_culli_top {
    font-size: 27px;
    color: #058CDD;
    line-height: 100px;
    margin-top: 0px;
    margin-bottom: 210px;
}

.circle_culli_top:nth-child(2) {
    margin-bottom: 0px;
}

.circle_ordermade {
    display: block;
    color: #fff;
    font-size: 18px;
    display: block;
    width: 225px;
    height: 225px;
    border-radius: 50%;
    text-align: center;
    margin: 0 auto;
}

.circle_ordermade_ex {
    line-height: 24px;
    font-size: 18px;
    padding: 50px 0;
}

.circle_ordermade_ex span {
    line-height: 22px;
    font-size: 13px;
}

.circle_ordermade_text {
    font-size: 17px;
    width: 248px;
    border-radius: 5px;
    color: #fff;
    margin: 30px auto;
    text-align: center;
}

.popup {
    display: none;
    border-radius: 5px;
}

.popup.show {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: grid;
    place-items: center;
    -ms-flex-line-pack: center;
    align-content: center;
}

.popup.popup_out.show {
    width: 850px;
    height: 455px;
    top: 27%;
    left: 0%;
    z-index: 1;
}

.popup img {
    position: absolute;
    top: 3%;
    right: 3%;
}

.popup_text_outer {
    position: relative;
}



.balloon1-top_41CC9C p {
    text-align: center;
}

.circle_ordermade_outer {
    width: 25%;
    padding: 0 30px;
}

.order_curriculum {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.order_curriculum .left {
    width: 25%;

}

.order_curriculum .center {
    width: 5%;

}

.order_curriculum .right {
    width: 70%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;

}

.curriculum_right_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 20px 0;
}



.curriculum_right_flex_FF6A63_span {
    width: 200px;
}

.curriculum_right_flex_p {
    width: 200px;
}

.curriculum_right_flex_FF6A63 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin: 20px 0;
    font-size: 17px;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.curriculum_right_flex_FF6A63_p {
    width: 531px;
    background-color: #FF6A63;
    color: #fff;
    border-radius: 5px;
    text-align: center;
}

.curriculum_right_flex_FF6A63_p p {
    padding: 10px;
}

.curriculum_right_flex_FF6A63 span {
    display: block;
    color: #FF6A63;
    text-align: center;
    font-size: 17px;
    margin-top: 10px;
}

.curriculum_right_flex p {

    text-align: center;
    font-size: 17px;
}



.curriculum_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

}

.curriculum_2_right {
    color: #fff;
    border-radius: 5px;
    text-align: center;
    margin-top: 20px;
    padding: 20px;
    font-size: 17px;
}

.curriculum_right_flex_inner {
    background-color: #EFEFEF;
    padding: 20px;
    width: 531px;
}

.curriculum_right_flex_inner p {
    color: #fff;
    border-radius: 5px;
    padding: 20px 5px;
    text-align: center;
    font-size: 17px;
    width: 50%;
}

.curriculum_right_flex_inner p:nth-child(2) {
    margin-left: 10px;
}


.triangle1 {
    width: 0;
    height: 0;
    border-left: 40px solid #41CC9C;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    margin: 0 50px;
}

.triangle1_41CC9C {
    width: 0;
    height: 0;
    border-left: 40px solid #41CC9C;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    margin: 0 50px;
}

.triangle1_3DC2D1 {
    width: 0;
    height: 0;
    border-left: 40px solid #3DC2D1;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    margin: 0 50px;
}

.triangle1_058CDD {
    width: 0;
    height: 0;
    border-left: 40px solid #058CDD;
    border-top: 30px solid transparent;
    border-bottom: 30px solid transparent;
    margin: 0 50px;
}

.color41CC9C {
    color: #41CC9C !important;
}

.color3DC2D1 {
    color: #3DC2D1 !important;
}

.color058CDD {
    color: #058CDD !important;
}



.circle_system_curriculum {
    width: 183px;
    height: 183px;
    border-radius: 50%;
    background: white;
    line-height: 370px;
    margin: 30px auto;
    -webkit-box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);
    box-shadow: 4px 4px 2px rgba(16, 41, 56, 0.16);


}

.circle_system_curriculum img {
    width: 210px;
    max-width: 100%;
}

.bordersolid {
    border: 1px solid #EEEEEE;
    margin: 45px;
}

.circle_ordermade_ex_2 {
    padding-top: 65px;
}

.circle_ordermade_ex_2 span {
    font-size: 13px;
}

.ordermade_text h2 {
    font-size: 22px;
    font-weight: 600;
    text-align: center;
    line-height: 7vw;
}

.ordermade_text h3 {
    font-weight: 600;

}

.ebook_content {
    width: 30%;

}

.ebook_content img {
    width: 100%;
    margin-bottom: 20px;
}

.ordermade_text_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 45px auto 100px;
}

.button a {
    color: #fff;
    display: block;
    padding: 30px;
    font-size: 25px;
}

.ordermade_button {
    width: 596px;
    margin: 0px auto 80px;
}

.ordermade_fotter_content p {
    font-size: 16px;
    text-align: center;
    margin: 20px;
}

.ordermade_fotter_content {
    margin-top: 130px;
}

.order_curriculum {
    margin-bottom: 150px;
}

.ordermade_button .button_a {
    color: white;
    padding: 15px 0;
    font-size: 1rem;
}

.button_a:hover {
    color: #FF6A63;
}



.backcolor41CC9C {
    background-color: #41CC9C;
}

.backcolor3DC2D1 {
    background-color: #3DC2D1;
}

.backcolor42A4DD {
    background-color: #42A4DD;
}

.backcolor058CDD {
    background-color: #058CDD;
}


.balloon1-top.backcolor41CC9C:before {
    border-bottom: 15px solid #41CC9C;
}

.balloon1-top.backcolor3DC2D1:before {
    border-bottom: 15px solid #3DC2D1;
}

.balloon1-top.backcolor058CDD:before {
    border-bottom: 15px solid #058CDD;
}



@media (max-width: 667px) {
    .title_system .title_system_span {
        font-size: 11px;
    }

    .ordermade_fotter_content p {
        line-height: 25px;
    }


    .system_text_p {
        font-size: 13px;
    }

    .system.maxwidth100 span {
        font-size: 13px;
        padding-top: 20px;
    }

    .grayback_box .circle {
        display: block;

    }

    .grayback_box {
        padding: 20px 0;
    }

    .circle_culli_top {
        font-size: 27px;
        color: #058CDD;
        line-height: 100px;
        margin: 0 auto;
    }

    .curriculum_box_top {
        width: 95%;
        margin: 15px auto 0;
        padding: 10px;
        position: relative;
    }

    .circle_ordermade_outer {
        width: auto;
    }

    .circle_ordermade {
        width: 225px;
        height: 225px;
    }

    .circle_ordermade_ex {
        line-height: 24px;
        font-size: 16px;

    }

    .order_curriculum {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
    }

    .order_curriculum .left {
        width: 100%;
    }

    .order_curriculum .center {
        width: 100%;
    }

    .triangle1 {
        margin: 0 auto;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        border-left: 30px solid #41CC9C;
        border-top: 20px solid transparent;
        border-bottom: 20px solid transparent;
    }

    .triangle1_3DC2D1 {
        margin: 0 auto;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        border-left: 30px solid #3DC2D1;
        border-top: 20px solid transparent;
        border-bottom: 20px solid transparent;
    }

    .triangle1_41CC9C {
        margin: 0 auto;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        border-left: 30px solid #41CC9C;
        border-top: 20px solid transparent;
        border-bottom: 20px solid transparent;
    }

    .triangle1_058CDD {
        margin: 0 auto;
        -webkit-transform: rotate(90deg);
        -ms-transform: rotate(90deg);
        transform: rotate(90deg);
        border-left: 30px solid #058CDD;
        border-top: 20px solid transparent;
        border-bottom: 20px solid transparent;
    }




    .curriculum_right_flex_FF6A63 {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
    }

    .curriculum_right_flex_FF6A63 {
        margin: 0 auto;
        width: 100%;
    }

    .curriculum_right_flex_FF6A63_p {
        width: 85%;
        margin: 0 auto;
        padding: 10px;
    }

    .curriculum_right_flex_FF6A63_span {
        width: 100%;
    }

    .right_inner {
        width: 100%;
    }

    .order_curriculum .right {
        width: 100%;
    }

    .curriculum_right_flex {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
    }

    .curriculum_right_flex_inner {
        width: 90%;
    }

    .curriculum_right_flex_inner p {
        font-size: 10px;
        line-height: 17px;
        padding: 20px 0px;
    }



    .curriculum_right_flex_FF6A63_p p {
        font-size: 15px;
        line-height: 20px;

    }

    .ordermade_text h2 {
        font-size: 15px;
    }

    .ebook_content p {
        font-size: 13px;
        line-height: 17px;
    }

    .ebook_content img {
        margin-bottom: 0px;
    }

    .ordermade_button .button_a {
        color: white;
        padding: 15px 0;
        font-size: 1rem;
    }

    .button_a:hover {
        color: #FF6A63;
    }



    .ordermade_button {
        width: 90%;
        margin: 0px auto 80px;
    }

    .ordermade_text_flex {
        width: 85%;
        margin: 45px auto 50px;
    }

    .ordermade_fotter_content {
        margin-top: 0px;
    }

    .title_system {
        padding: 30px 0 0px;
        line-height: 1;
    }

    .order_curriculum {
        margin-bottom: 0;
    }

    .bordersolid {
        margin: 25px auto;
    }



    .balloon1-top_3DC2D1 {
        width: 65%;
    }

    .balloon1-top_41CC9C {
        width: 65%;
    }

    .circle_ordermade_text {
        width: 65%;
    }

    .curriculum_box_table {
        width: 95%;
    }

    .popup.popup_out.show {
        width: 100%;
        height: 200px;
        top: 0%;
        left: 0%;
        z-index: 1;
    }




}

.blog-header {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    background-color: #058CDD;
    color: white;
}

.blog-header__items::after {
    content: "";
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: block;
    margin-left: 40px;
}

.blog-header__items * {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
}

.blog-header__logo {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    margin-right: 40px;
}

.blog-header__logo img {
    width: 100%;
    height: auto;
    vertical-align: top;
    padding: 5px 5px 10px;
}

.blog-header__title img {
    width: 100%;
    height: auto;
    vertical-align: top;
    padding: 5px 5px 10px;
}

.blog-footer {
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    background-color: #058CDD;
    color: white;
    padding: 30px 0 10px;
    text-align: center;
}

.blog-footer__logo img {
    width: 300px;
    height: auto;
    margin-bottom: 10px;
}

.blog-footer .copyright {
    font-size: 10px;
}

.blog-main #breadcrumb {
    border: none;
    padding: 0 10px;
    margin-bottom: 10px;
}

.blog-main #breadcrumb div {
    font-size: 0.6em;
    line-height: 1.5;
    width: auto;
}


.blog-section-title {
    text-align: left;
    border-bottom: 3px solid #00A5D4;
    padding-bottom: 7px;
    margin-bottom: 24px;
    position: relative;
    letter-spacing: .25rem;
    font-weight: 600;
    margin-top: 8%;
}

.blog-section-title-ja {
    display: inline;
    font-size: 1.3rem;
    color: #333333;
}

.blog-section-title-en {
    display: inline;
    color: #00A5D4;
    font-size: 1.125rem;
    margin-left: 21px;
    font-weight: 600;
}


.blog-banner {
    margin: 0 auto;
    margin-bottom: 5%;
}

.blog-banner img {
    width: 100%;
    height: auto;
}


.slick-slide {
    margin: 0 30px;
}

.slick-dots li button:before {
    opacity: 1 !important;
    color: black;
    line-height: 30px !important;
}

.slick-dots li.slick-active button:before {
    color: #058CDD !important;
}

.slick-dots li button:before {
    font-size: 8px !important;
}

.slick-prev {
    z-index: 1;
    left: calc(50% - 460px) !important;
    left: calc(50% - min(430px, 40vw) - min(30px, 5vw)) !important;
    -webkit-transform: translate(-50%, -50%) !important;
    -ms-transform: translate(-50%, -50%) !important;
    transform: translate(-50%, -50%) !important;
}

.slick-next {
    z-index: 1;
    right: calc(50% - 460px) !important;
    right: calc(50% - min(430px, 40vw) - min(30px, 5vw)) !important;
    -webkit-transform: translate(50%, -50%) !important;
    -ms-transform: translate(50%, -50%) !important;
    transform: translate(50%, -50%) !important;
}

.slick-prev::before,
.slick-next::before {
    font-size: 45px !important;
    font-size: calc(min(45px, 8vw)) !important;
    color: #a4a4a4 !important;
}

.slick-arrow {
    width: 45px !important;
    width: calc(min(45px, 8vw)) !important;
    height: 45px !important;
    height: calc(min(45px, 8vw)) !important;
}

.slick-dotted.slick-slider {
    margin-bottom: 90px !important;
}

.blog-articles {
    width: 1200px;
    width: calc(min(1200px, 90%));
    background-color: #F9F9F9;
    border-radius: 10px;
    margin: 30px auto;
}

.blog-articles__list {
    display: grid;
    -ms-grid-columns: (minmax(265px, 1fr))[auto-fill];
    grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));
    display: -ms-grid;
    -ms-grid-columns: 1fr 1fr 1fr;
    -webkit-column-gap: 30px;
    -moz-column-gap: 30px;
    column-gap: 30px;
}

.blog-first__list {
    margin-bottom: 10%;
}

.blog-articles__list>*:nth-child(1) {
    display: block;
    -ms-grid-row: 1;
    -ms-grid-column: 1;
}

.blog-articles__list>*:nth-child(2) {
    display: block;
    -ms-grid-row: 1;
    -ms-grid-column: 2;
}

.blog-articles__list>*:nth-child(3) {
    display: block;
    -ms-grid-row: 1;
    -ms-grid-column: 3;
}

.blog-articles__list>*:nth-child(4) {
    display: block;
    -ms-grid-row: 2;
    -ms-grid-column: 1;
}

.blog-articles__list>*:nth-child(5) {
    display: block;
    -ms-grid-row: 2;
    -ms-grid-column: 2;
}

.blog-articles__list>*:nth-child(6) {
    display: block;
    -ms-grid-row: 2;
    -ms-grid-column: 3;
}

.blog-articles__list>*:nth-child(7) {
    display: block;
    -ms-grid-row: 3;
    -ms-grid-column: 1;
}

.blog-articles__list>*:nth-child(8) {
    display: block;
    -ms-grid-row: 3;
    -ms-grid-column: 2;
}

.blog-articles__list>*:nth-child(9) {
    display: block;
    -ms-grid-row: 3;
    -ms-grid-column: 3;
}

.blog-articles__list>*:nth-child(10) {
    display: block;
    -ms-grid-row: 4;
    -ms-grid-column: 1;
}

.blog-articles__list>*:nth-child(11) {
    display: block;
    -ms-grid-row: 4;
    -ms-grid-column: 2;
}

.blog-articles__list>*:nth-child(12) {
    display: block;
    -ms-grid-row: 4;
    -ms-grid-column: 3;
}

.blog-articles__item {
    margin: 0 0px 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    height: calc(100% - 40px);

}

.blog-articles .wp-pagenavi {
    margin: 0 auto;
    border: none;
}

.wp-pagenavi a,
.wp-pagenavi span {
    margin: 0 !important;
    padding: 0 8px !important;
    font-size: 15px;
    font-weight: 600;
    color: black;
    height: 0 !important;
    line-height: normal !important;
}

.wp-pagenavi span.current,
.wp-pagenavi a:hover {
    border: none !important;
}

.wp-pagenavi span.current {
    color: #058CDD;
}

.wp-pagenavi span.extend {
    display: inline-block;
}

.blog-search {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.blog-search-inner {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    max-width: 250px;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.blog-search-icon {
    height: 25px;
    width: 25px;
}

.blog-search input[type="text"] {

    padding: 8px;
    border-radius: 20px;
    border: 0;
    text-align: center;
    font-size: 13px;
    background-color: #E9E9E9;
    outline: none;
}

.blog-search input[type="submit"] {
    border: none;
    border-radius: 5px;
    font-size: 13px;
    padding: 0 10px;
    cursor: pointer;
    background: #058CDD;
    color: #fff;
    -webkit-appearance: none;
}


.blog-container {
    width: 1300px;
    width: calc(min(1300px, 90%));
    margin: 0 auto;
}

.blog-article {
    word-break: break-all;
}

.blog-article__content-wrapper {
    padding: 80px 50px 20px;
    padding: 20px calc(min(140px, 5%)) 20px;
    background-color: #F7F7F7;
}

@media(max-width:667px) {
    .blog-section-title-en {
        display: block;
        margin-left: 0;
    }

    .blog-article__content-wrapper {
        padding-top: 105px;
    }

    .blog-articles__list {
        grid-template-columns: repeat(auto-fill, minmax(100%, 1fr));
    }

    .blog-section-title {
        margin-top: 4em;
    }
}

.blog-first-title {
    margin-top: 0;
}

.blog-article__content {
    font-size: 16px;
    line-height: 2.2;
}

.blog-article__content h1:first-of-type {
    margin-top: 0;
    border-radius: 10px;
    padding: 3%;
    background-color: #ffffff;
}

.blog-article__content img {
    max-width: 100%;
    display: block;
    margin: 0 auto;
    margin-bottom: 40px;
    height: auto;
}

.blog-article__content h1,
.blog-article__content h2,
.blog-article__content h3,
.blog-article__content h4,
.blog-article__content h5,
.blog-article__content h6 {
    line-height: 1.5;
    font-weight: bold;
}

.blog-article__content h1 {
    font-size: 28px;
}

.blog-article__content h2 {
    font-size: 22px;
    border-left: 7px solid #058CDD;
    -webkit-box-shadow: 0 3px 0 #D6D6D6;
    box-shadow: 0 3px 0 #D6D6D6;
    background-color: #F4F4F4;
    padding: 20px 15px;
    margin-top: 60px;
    margin-bottom: 40px;
}

.blog-article__content h3 {
    font-size: 19px;
    font-weight: bold;
    border-bottom: 3px solid rgba(0, 0, 0, 0.15);
    position: relative;
    padding-left: 8px;
    padding-bottom: 5px;
    margin-top: 60px;
    margin-bottom: 40px;
}

#toc_container {
    margin: 40px 0;
}

.blog-article__content h3::before {
    position: absolute;
    content: "";
    display: block;
    width: 70px;
    height: 3px;
    background-color: #058CDD;
    bottom: 0;
    left: 0;
    -webkit-transform: translateY(3px);
    -ms-transform: translateY(3px);
    transform: translateY(3px);
}

.blog-article__content h4 {
    font-size: 16px;
    font-weight: bold;
    border-left: 3px solid #058CDD;
    padding-left: 8px;
    height: 28px;
    margin-top: 60px;
    margin-bottom: 40px;
}

.blog-article__content table {
    margin-left: auto;
    margin-right: auto;
}

.blog-article__content iframe {
    max-width: 100% !important;
    display: block;
    margin: 0 auto;
}

.blog-article__content a {
    color: #058CDD !important;
    text-decoration: none;
}

.blog-article__content a:visited {
    color: #145E7A !important;
}

.blog-article__content a:hover,
.blog-article__content a:focus {
    opacity: .7;
    text-decoration: underline;
}

.blog-article__date {
    display: block;
    font-size: 14px;
    color: #707070;
    text-align: right;
    margin-right: 10px;
    margin-bottom: 20px;
}

.blog-article__main {
    background-color: #ffffff;
    border-radius: 10px;
    padding: 50px 50px;
}

.blog-aside__inner {
    top: 0;
    background: #F7F7F7;
    padding: 25px 0;
}

.blog-aside__sticky {
    position: sticky;
    top: 100px;
}

.blog-aside h3 {
    font-size: 16px;
    font-weight: 700;
}

.blog-cat-tree {
    font-size: 13px;
    line-height: 1.5em;
}

.blog-cat-tree a {
    color: #058CDD;

}

.blog-cat-subtree__item {
    padding-bottom: 1em;
}

.blog-2-columns {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.blog-2-columns>*:nth-child(1) {
    width: 100%;
}

.blog-2-columns>*:nth-child(2) {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}

.blog-2-columns aside {
    margin-left: 10px;
    min-width: 300px;
    /*margin-top: 82px;*/
    -ms-flex-negative: 0;
    flex-shrink: 0;
    text-align: center;
}

@media (max-width: 960px) {
    .blog-2-columns {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }

    .blog-2-columns aside {
        margin-top: 20px;
        margin-left: 0;
    }
}

/* Youtube動画埋め込みのレスポンシブ化 */

.embed-container {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden;
    max-width: 100%;
}

.embed-container iframe,
.embed-container object,
.embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.blog-section-movie {
    background-color: #E4E4E4;
    margin: 10% calc(50% - 50vw);
    padding: 45px 0;
    width: 100vw;
}

.blog-section-movie-wrapper {
    margin: 30px auto;
    width: 1200px;
    width: calc(min(1200px, 90%));
}

/*無料カウンセリングボタンはみ出し修正20211020*/
@media (max-width: 667px) {
    .blog-article__content-wrapper .yudo .button {
        width: 100%;
        margin-top: 5%;
    }
}

/*無料カウンセリングボタンはみ出し修正20211020END*/
/*基礎知識ブログページデザイン崩れ修正20211021*/
.classList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-flow: wrap;
    flex-flow: wrap;
}

/*基礎知識ブログページデザイン崩れ修正20211021END*/

/*TOPページ　スクールで学ぶと得られる結果追加 20211023*/
#about_result h3 {
    text-decoration: underline;
}

#about_result p {
    width: 1080px;
    margin-bottom: 5%;
}

@media(max-width:667px) {
    #about_result p {
        width: 100%;
        font-size: 0.875rem;
    }
}

/*TOPページ　スクールで学ぶと得られる結果追加 20211023 END*/
/*モバイル崩れ対応 20211023*/
#about_teacher .button {
    width: 380px;
}

.news_post_title {
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    overflow: hidden;
}

/*モバイル崩れ対応 20211023　END*/

/*トップページリニューアル 20211123　START*/
.header_leftbox {
    width: 112px;
    height: 112px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.header_leftbox_wrap {
    margin: 0 auto;
}

.header_leftbox p {
    color: #707070;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    margin-top: -11px;
}



.header_leftbox_img {
    width: 30%;
    margin: 0 auto;
}

.header_leftbox_img img {
    width: 100%;
}

.header_leftbox_flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    height: 100%;
}

.header_leftbox_last {
    background-color: #058CDD;
}

.header_leftbox_last p {
    color: white;
    line-height: 18px;
    margin-top: -3px;
}

.sp_none {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}


/* トップアンダー */


.topunder {
    width: 100%;
    padding: 10px;
    background-color: #A49238;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    z-index: 9999;

}

.middle_cta .topunder {
    z-index: 1;
}

.topunder .left {
    text-align: center;
    -ms-flex-preferred-size: 20%;
    flex-basis: 20%;
}

.topunder h2 {
    color: white;
    font-size: 20px;
    font-weight: bold;
}

.topunder .left p {
    color: white;
    margin-top: -35px;
}

.topunder .center {
    -ms-flex-preferred-size: 50%;
    flex-basis: 50%;
}

.topunder .center .center_img {
    width: 28px;
    display: inline-block;
}

.topunder .center .tel .center_img img {
    width: 100%;
    margin-bottom: -5px;
}

.topunder .center .tel p {
    font-size: 8px;
}

.topunder .tel span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.topunder .center .tel .tel_text {
    color: white;
    font-size: 21px;
    padding-left: 77px;
}

.topunder .center p {
    color: white;
    font-size: 12px;
    line-height: 15px;
    margin-left: 10px;

}

.topunder .tel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}



/* ブログページのナビゲーション改修 */

.sp_block {
    display: block;
}


.blog-header__items {
    margin: 0 auto;
    padding: 20px 20px 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: 100%;
    padding: 7px 0;
}

.blog-header__items .left {
    width: 34%;
    margin-left: 0;
}

.blog-header__items .center {
    width: 50%;
}

.blog-header__title {
    text-align: center;
    width: 70%;
    max-width: 400px;
    margin: 0 auto 0 5%;
}



.blog-header__logo {
    margin-left: 10%;
    margin-right: auto;
    text-align: right;
    width: 50%;
    max-width: 250px;
}



.sp_topunder_box {
    width: 100%;
    position: fixed;
    bottom: 0;
    z-index: 9999;

}

.sp__block {
    display: none;
}

.sp__none {
    display: block;
}


.topunder .right {
    display: none;
}

.sp_only {
    display: none;
}

/* ヘッダーのみ1537pxとする*/
@media(max-width: 1080px) {


    .sp_block {
        display: block;
    }

    .header_leftbox {

        height: 100%;

    }


    #main_header .gnav_wrapper .logo {}

    .header_leftbox p {
        font-size: 10px;
        line-height: 15px;
        margin-top: -6px;
    }

    .header_leftbox_img {
        width: 28px;
        margin: 5px auto 0;
    }

    #main_header .gnav_wrapper {
        height: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -ms-flex-line-pack: center;
        align-content: center;
    }

    #main_header .gnav_wrapper .logo {
        height: 80%;
        width: auto;
        margin: 0 auto;

    }

    #main_header .gnav_wrapper .logo img {
        height: 100%;
        width: auto;
    }

    #main_header {
        min-width: auto;
        top: 0;
        height: 8%;
    }


}


@media(max-width: 667px) {

    /* ヘッダー右横を消す */
    .header_leftbox {
        width: 20%;
        height: 100%;
        position: absolute;
        top: 0;
        right: 0;
        z-index: 5;
    }

    .header_leftbox_last {
        background-color: #058CDD;
    }

    /* トップアンダー */
    .sp_only {
        display: block;
    }

    .topunder .left {
        display: none;
    }

    .topunder .left p {
        font-size: 5%;
        line-height: 150%;
    }

    .topunder h2 {
        font-size: 50%;
        line-height: 150%;
    }

    .topunder .center {
        -ms-flex-preferred-size: 70%;
        flex-basis: 70%;
        padding: 3% 1.5%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;

    }

    .topunder .center .center_img {
        -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .topunder .center .tel .center_img img {
        width: 100%;
        margin-bottom: -5px;
    }

    .topunder .center .tel span {
        color: white;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .topunder .center .tel .tel_text {
        color: white;
        font-size: 10%;
        padding-left: 0px;
        margin-left: 5%;
        line-height: 150%;
        display: none;
    }

    .topunder .center .tel p {
        color: white;
        /*font-size: 20%;*/
        line-height: 150%;

    }

    .sp_block {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }



    .right_img_wrap {
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    .right_img {
        -ms-flex-preferred-size: 20%;
        flex-basis: 20%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }


    .sp__none {
        display: none;
    }

    .topunder .right {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        padding: 3% 3%;
        background-color: #058CDD;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .right_img_wrap span {
        color: white;
        font-size: 10%;
        line-height: 150%;
    }

    .topunder .center .tel {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    /* ブログページ */



    .blog-header {
        height: 105px;
    }


    .blog-header__items {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
        padding: 3% 0px 10px;
    }

    .blog-header__items center {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-flow: column;
        flex-flow: column;
        padding: 3% 0px 10px;
    }

    .blog-header .blog-header__items .left {
        width: 70%;
        margin-left: 0;
    }

    .blog-header__logo {
        width: 60%;
        margin-right: auto;
        margin-left: auto;
    }

    .blog-header__logo img {
        width: 100%;
        padding: 0;
    }

    .blog-header__title {
        width: 50%;
        margin-right: auto;
        margin-left: auto;
    }



    .blog-header__title img {
        width: 100%;
        padding: 0px;
        padding-top: 5px;

    }

    .blog-header__items .center {
        width: 100%;
    }

    .blog-header__items .left {
        width: 100%;
    }

    .topunder {
        padding: 0;
        width: 100%;
        background-color: #A49238;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: space-evenly;
        -ms-flex-pack: space-evenly;
        justify-content: space-evenly;
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        align-items: stretch;
        /* position: fixed;
        z-index: 9999;
        position: static;
        bottom: 0; */
    }

    .sp__block {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }

    /* 装飾ボタン */
    #top_main_visual .top_main_visual_wrapper .more {
        width: 100%;
        margin-top: 10px;
    }

    #top_main_visual {
        padding-top: 54px;
    }


}

/*　2021/12/21　カウンセリング案内改修 */
.lp-step .wp-block-column {
    position: relative;
    background-color: #fff;
    padding: 0;
    margin: 1rem;
    border: 1px solid rgba(119, 119, 119, 0.1);
    border-radius: 5px;

}


.wp-block-column {
    border-radius: 0.5em;
}


.lp-step .wp-block-column:after {
    position: absolute;
    content: '　';
    top: calc(50% - 1rem);
    right: -1.4rem;
    display: inline-block;
    width: 1rem;
    height: 1rem;
    border-color: #333;
    border-style: solid;
    border-width: 5px 5px 0 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}


.lp-step p {
    padding: 0 1rem;
}

p.has-background {
    padding: 20px 30px;
}

.lp-circle-item {

    display: inline-block;
    margin: 1rem !important;
    padding: 0 !important;
    width: 4rem !important;
    height: 4rem;
    line-height: 4rem !important;
    border-radius: 50%;
    font-size: x-large;
    letter-spacing: -0.05em;
}

.blueback {
    background-color: #00a5d4;
}

.has-text-align-center {
    text-align: center;
}

.lp-step p {
    padding: 0 1rem;
}

.has-text-align-center {
    text-align: center;
}

.has-medium-font-size {
    font-size: 20px;
}

.shadow {
    -webkit-box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important;
    box-shadow: 0 .5rem 1rem rgba(0, 0, 0, .15) !important;
}


.wp-block-column {
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    min-width: 0;
    word-break: break-word;
    overflow-wrap: break-word;
}

.no-after:after {
    content: none;
}

.lp-step .wp-block-column:last-child:after {
    content: none;

}

@media(max-width:667px) {
    .lp-step .wp-block-column:after {
        content: none;
    }
}

/*　2021/12/21 フローティングバナー */
.floating-banner {
    position: fixed;
    z-index: 99999;
    bottom: 25%;
    right: 0;
    width: 400px;
    height: 100px;
    background-color: #A49238;
    border-radius: 5px 0 0 5px;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
}

.floating-banner img {
    position: fixed;
    z-index: 999999;
    bottom: 25%;
    right: 250px;
    width: 150px;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
}

.floating-banner p {
    color: white;
    padding-right: 30px;
    padding-top: 20px;
    float: right;
}


@media(max-width:667px) {
    .floating-banner {
        display: none;
    }
}


/* 2021/12/22 モバイル固定フッターのサイズ感を縮める改修 */

@media(max-width:667px) {
    .tel-attention {
        display: none;
    }
}

/* 2021/12/26 ブログページヘッダー固定 */
.blog-header {
    font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: white;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    background-color: #EBEBEB;
    z-index: 9999;
    width: 100%;
    height: auto;
}



.blog-main {
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    background-color: #F9F9F9;
    overflow: unset;
}


/* 2021/12/26 フローティングバナーのアニメーション追加 */
.fade_off {
    opacity: 0;
    -webkit-transition: all .5s;
    -o-transition: all .5s;
    transition: all .5s;
}

.fade_on {
    opacity: 1;
}

.floating-loading {
    right: -270px;
    opacity: 0.7;

}

.floating-loading img {
    right: -0px;

}


/*2022/03/09　ﾌﾞﾛｸﾞ表示緊急対応 */

.blogpage_cta {
    display: none;
}

/*2022/04/29　ﾌﾞﾛｸﾞ下部ボタン対応 */
.yudo .button a {
    font-size: 100%;
    padding: 0;
}

.logo img {
    width: 100%;
    height: auto;
}

.blog-aside__banner {
    width: 100%;
    margin-bottom: 20px;
}

.blog-aside__banner img {
    width: 100%;
    border-radius: 10px;
}

.line_marker {
    display: inline;
    background: -webkit-gradient(linear, left top, left bottom, color-stop(60%, transparent), color-stop(60%, #E2EE46));
    background: -o-linear-gradient(transparent 60%, #E2EE46 60%);
    background: linear-gradient(transparent 60%, #E2EE46 60%);

}

.blog-aside__title {
    display: inline;
    position: relative;
    text-align: center;
    line-height: 1.3;

}


.blog-aside__title:before,
.blog-aside__title:after {
    position: relative;
    display: inline-block;
    content: "";
    width: 5px;
    height: 2em;
    margin: 0 1em;
    margin-top: -.2em;
    background: #707070;
    vertical-align: middle;
}

.blog-aside__title:before {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.blog-aside__title:after {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.blog-aside__card {
    margin: 10px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

.blog-aside__card:last-child {
    margin-bottom: 20px;
}

.blog-aside__card-img-wrapper {
    width: 50%;
    margin-right: 10px;
}

.blog-aside__card-img {
    width: 100%;
    border: 1px solid #707070;
    border-radius: 10px;


}

.blog-aside__card-body {
    width: 40%;
}

.blog-aside__card-title {
    color: #707070;
    line-height: normal;
}



/* １つ目の記事だけ */
.blog-aside__rank:first-child {
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
}

.blog-aside__rank-img-wrapper:first-of-type {
    width: 100%;
    margin-top: 10px;

}

.blog-aside__rank-body:first-of-type {
    width: 100%;
    margin-bottom: 10px;
}

.blog-aside__rank:last-child {
    margin-bottom: 20px;
}


.blog-aside__rank-img-wrapper {
    width: 50%;
    margin-right: 10px;
}

.blog-aside__rank-img {
    width: 100%;
    border-radius: 10px;
    border: 1px solid #707070;
}

.blog-aside__rank-body {
    width: 40%;
}

.blog-aside__rank-title {
    color: #707070;
    line-height: normal;
}

.blog-aside__rank {
    margin: 10px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;

}


.gt {
    color: #058CDD;
}

.blog-footer__yudo {
    width: 100%;
    background: -o-linear-gradient(54deg, #64B3F4 0%, #DAF9EB 80%, #DAF9EB 100%);
    background: linear-gradient(36deg, #64B3F4 0%, #DAF9EB 80%, #DAF9EB 100%);
}

.blog-footer__yudo-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: calc(min(1300px, 90%));
    margin: 0 auto;
    padding: 60px 0;
}

.blog-footer__yudo-left {
    width: 60%;
    margin-right: 5%;
    text-align: center;
    color: #707070;
}

.blog-footer__yudo-right {
    width: 35%;

}

.blog-footer__yudo-right img {
    width: 100%;

}

.blog-footer__yudo-caption {
    font-size: 0.5em;
}

.blog-footer__yudo-left img {
    margin: 0 auto;
    width: 60%;
    display: block;
}

.blog-footer__yudo-left ol {
    counter-reset: item;
    display: inline-block;
    text-align: left;
    margin: 30px 0;
}

.blog-footer__yudo-left li {
    display: inline;
    position: relative;
    padding-left: 30px;
    padding: 0.5em 0.5em 0.5em 30px;
}

.blog-footer__yudo-left li::before {
    position: absolute;
    display: inline-block;
    top: 50%;
    left: -5px;
    counter-increment: item 1;
    content: counter(item);
    padding: 0 0.2em 0 0.2em;
    background: #fff;
    color: #707070;
    border-radius: 50%;
    width: 25px;
    height: 25px;
    line-height: 25px;
    text-align: center;
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transform: translateY(-50%);
    font-size: 0.8em;



}

.blog-footer__yudo-left button,
.blog-footer__yudo-left button::before {
    background-color: #058CDD;
    padding: 20px;
    margin: 20px 0;
    width: 100%;
    border: none;
    color: #fff;
    font-size: 100%;
    cursor: pointer;

    will-change: transform, filter;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out;

    -webkit-box-shadow:
        0 1.9px 2.5px rgb(0 0 0 / 6%),
        0 5px 6.1px rgb(0 0 0 / 8%),
        0 10.1px 11.4px rgb(0 0 0 / 9%),
        0 19.2px 19.8px rgb(0 0 0 / 9%),
        10px 1px 34.8px rgb(255 255 255 / 60%),
        0 101px 74px rgb(0 0 0 / 13%);

    box-shadow:
        0 1.9px 2.5px rgb(0 0 0 / 6%),
        0 5px 6.1px rgb(0 0 0 / 8%),
        0 10.1px 11.4px rgb(0 0 0 / 9%),
        0 19.2px 19.8px rgb(0 0 0 / 9%),
        10px 1px 34.8px rgb(255 255 255 / 60%),
        0 101px 74px rgb(0 0 0 / 13%);
}



.blog-footer__yudo-left button:hover {

    -webkit-transform: scale(1.03);

    -ms-transform: scale(1.03);

    transform: scale(1.03);
}

.blog-footer__yudo-left button:hover::before {
    bottom: 0;
    -webkit-filter: blur(8px);
    filter: blur(8px);
}

.blog-footer__yudo-left button:active {


    -webkit-box-shadow: inset -5px -5px 10px 0px rgba(255, 255, 255, 0.5), inset 5px 5px 10px 0px rgba(0, 0, 0, 0.3);


    box-shadow: inset -5px -5px 10px 0px rgba(255, 255, 255, 0.5), inset 5px 5px 10px 0px rgba(0, 0, 0, 0.3);

}

.blog-footer__yudo-p {
    font-size: 1.3em;
}

@media(max-width:667px) {
    .blog-footer__yudo-container {
        -webkit-box-orient: vertical;
        -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
        flex-direction: column-reverse;
    }

    .blog-footer__yudo-right {
        width: 95%;
        margin-bottom: 20px;

    }

    .blog-footer__yudo-left img {
        width: 95%;
    }

    .blog-footer__yudo-left {
        width: 95%;
        margin-right: 0;
    }
}

.blog-header-sub {
    background-color: #00A5D4;
    z-index: 9999;
    padding: 2.5px 0;
}

.blog-header-sub .blog-cat-tree {

    display: -webkit-box;

    display: -ms-flexbox;

    display: flex;

    -ms-flex-pack: distribute;

    justify-content: space-around;
    ;
    width: 80%;
    margin: 0 auto;
}

.blog-header-sub .blog-cat-tree__item {
    text-align: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    position: relative;
    font-weight: 600;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.blog-header-sub .blog-cat-tree__item a:visited {

    color: #fff;

}

.blog-header-sub .blog-cat-tree__item a {
    width: 100%;
    color: #fff;
}


.blog-header-sub .blog-cat-tree__item:hover ul a {
    width: 100%;
    color: #00A5D4;
}

.blog-cat-tree__item:hover .blog-cat-subtree a:hover {
    color: #EBEBEB;
}

.blog-header-sub .blog-cat-tree__item:not(:last-of-type)::after {
    background: #058CDD;
    content: '';
    display: block;
    height: 3px;
    width: 0;
    bottom: -5px;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -moz-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    -o-transform: translateX(-50%);


    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;

    position: absolute;

}

.blog-header-sub .blog-cat-tree__item:hover::after {
    width: 100%;
}

/* .blog-header-sub .blog-cat-subtree {
    display: none;
    height: 0;
    width: 0;
}


.blog-header-sub .blog-cat-tree__item:hover .blog-cat-subtree {
    position: absolute;
    top: 90px;
    width: 140px;
    -moz-transition: all .2s ease;
    -o-transition: all .2s ease;
    -webkit-transition: all .2s ease;
    transition: all .2s ease;
    display: flex;
    flex-direction: column;
    z-index: 9999;
    background: #ffffff;
} */



.blog-header-sub ul {
    margin: 0;
    padding: 0;
}

.blog-header-sub li {
    list-style: none;
}

.blog-header-sub a {
    display: inline-block;
    padding: .5em 1em;
    white-space: nowrap;
    color: #222;
    text-decoration: none;
}

.blog-cat-subtree a:hover {
    background-color: #00A5D4;
    width: 100%;
    color: #EBEBEB;
    -webkit-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all 0.5s ease;
}


.blog-header-sub>ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.blog-header-sub>ul>li {
    position: relative;
    margin-right: 1px;
}

.blog-header-sub>ul>li:last-child {
    margin-right: 0;
}

.blog-header-sub li ul {
    height: 0;
    width: 0;
    overflow: hidden;
    position: absolute;
}

.blog-header-sub li:hover ul {
    height: auto;
    width: auto;
    top: 33px;
    background-color: #EBEBEB;
}

@media (max-width: 667px) {
    .blog-header-sub {
        display: none;
    }
}


.quick_form_2_css {
    margin: 40px auto;
}

.shortCode__offer {
    -webkit-box-shadow: 5px 5px 15px 6px #e6e8e6;
    box-shadow: 5px 5px 15px 6px #e6e8e6;
    border-radius: 10px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 75px 50px;
    border: 1px solid #E6E8E6;
    margin: 20px 0;
}

.shortCode__offer-left {
    width: 50%;
    margin-right: 50px;
}

.shortCode__offer-right {
    width: 50%;
    position: relative;
}

.shortCode__offer-left img {
    margin-bottom: 0px;
    -webkit-box-shadow: 5px 5px 15px 6px #e6e8e6;
    box-shadow: 5px 5px 15px 6px #e6e8e6;
    border-radius: 10px;
}

.shortCode__offer-right button {
    background: #058CDD;
    padding: 20px 0;
    text-align: center;
    font-size: 20px;
    font-size: 1.25rem;
    position: relative;
    display: block;
    margin: 0 auto;
    color: #FFF;
    border-radius: 10px;
    width: 100%;
    border: none;
    padding: 20px;
    cursor: pointer;
    font-size: 100%;
    will-change: transform, filter;
    -webkit-transform-style: preserve-3d;
    transform-style: preserve-3d;
    -webkit-transition: all .3s ease-out;
    -o-transition: all .3s ease-out;
    transition: all .3s ease-out;
    -webkit-box-shadow: 0 1.9px 2.5px rgb(0 0 0 / 6%), 0 5px 6.1px rgb(0 0 0 / 8%), 0 10.1px 11.4px rgb(0 0 0 / 9%), 0 19.2px 19.8px rgb(0 0 0 / 9%), 10px 1px 34.8px rgb(255 255 255 / 60%), 0 101px 74px rgb(0 0 0 / 13%);
    box-shadow: 0 1.9px 2.5px rgb(0 0 0 / 6%), 0 5px 6.1px rgb(0 0 0 / 8%), 0 10.1px 11.4px rgb(0 0 0 / 9%), 0 19.2px 19.8px rgb(0 0 0 / 9%), 10px 1px 34.8px rgb(255 255 255 / 60%), 0 101px 74px rgb(0 0 0 / 13%);
}

.shortCode__offer-right a:hover {
    text-decoration: none;
}

.shortCode__offer-right button:hover {
    -webkit-transform: scale(1.03);
    -ms-transform: scale(1.03);
    transform: scale(1.03);

}


.shortCode__offer-right p {
    text-align: left;
    margin-bottom: 20px;
}



@media (max-width: 667px) {
    .shortCode__offer {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .shortCode__offer-left {
        width: 100%;
        margin-right: 0px;
    }

    .shortCode__offer-right {
        width: 100%;
    }

}

.shortCode__nextPost {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-shadow: 5px 5px 15px 6px #e6e8e6;
    box-shadow: 5px 5px 15px 6px #e6e8e6;
    border-radius: 10px;
    padding: 35px 50px;
    border: 1px solid #E6E8E6;
    margin: 30px 0;
}

.shortCode__nextPost-left {
    width: 30%;
    text-align: center;
}

.shortCode__nextPost-right {
    width: 60%;
}

.shortCode__nextPost-title {
    font-size: 1.2em;
    font-weight: bold;

    background-image: -o-linear-gradient(left, #000, #000 2px, transparent 2px, transparent 8px);

    background-image: linear-gradient(to right, #000, #000 2px, transparent 2px, transparent 8px);
    background-size: 8px 2px;
    background-position: left bottom;
    background-repeat: repeat-x;

    margin-bottom: 20px;
    line-height: 1.5;
    padding-bottom: 20px;
    color: #031a31;
}

.shortCode__nextPost-line {
    font-weight: bold;
    color: #031a31;
    margin-bottom: 10px;
}

.shortCode__nextPost-a:hover {

    text-decoration: none !important;
}

.shortCode__nextPost-right p {
    line-height: 2;
    color: #031a31;
}

.shortCode__nextPost-left img {
    margin: auto;
    border-radius: 10px;
}

@media (max-width: 667px) {
    .shortCode__nextPost {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .shortCode__nextPost-left {
        width: 100%;

    }

    .shortCode__nextPost-right {
        width: 100%;
    }

    .shortCode__nextPost-left img {
        margin-bottom: 40px;
    }

    .shortCode__nextPost-line {
        font-size: 100% !important;
    }
}

@media (max-width: 1300px) {

    .shortCode__nextPost-line {
        font-size: 70%;

    }

}

.shortCode__talk {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.shortCode__talk_content {
    width: 70%;
}

.shortCode__talk_icon {
    width: 20%;
    min-width: 100px;
}

.shortCode__talk_icon img {
    margin: 0;
}

.shortCode__talk-left {
    position: relative;
    display: inline-block;
    margin: 1.5em 0 1.5em 15px;
    padding: 30px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    font-size: 16px;
    background: #FFF;
    border: solid 3px #058CDD;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 10px;
}

.shortCode__talk-left:before {
    content: "";
    position: absolute;
    top: 50%;
    left: -24px;
    margin-top: -12px;
    border: 12px solid transparent;
    border-right: 12px solid #FFF;
    z-index: 2;
}

.shortCode__talk-left:after {
    content: "";
    position: absolute;
    top: 50%;
    left: -30px;
    margin-top: -14px;
    border: 14px solid transparent;
    border-right: 14px solid #058CDD;
    z-index: 1;
}

.shortCode__talk-left p {
    margin: 0;
    padding: 0;
}

.shortCode__talk-right {
    position: relative;
    display: inline-block;
    margin: 1.5em 15px 1.5em 0;
    padding: 30px;
    min-width: 120px;
    max-width: 100%;
    color: #555;
    font-size: 16px;
    background: #FFF;
    border: solid 3px #A49238;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 10px;
}

.shortCode__talk-right:before {
    content: "";
    position: absolute;
    top: 50%;
    right: -24px;
    margin-top: -12px;
    border: 12px solid transparent;
    border-left: 12px solid #FFF;
    z-index: 2;
}

.shortCode__talk-right:after {
    content: "";
    position: absolute;
    top: 50%;
    right: -30px;
    margin-top: -14px;
    border: 14px solid transparent;
    border-left: 14px solid #A49238;
    z-index: 1;
}

.shortCode__talk-right p {
    margin: 0;
    padding: 0;
}


@media (max-width: 667px) {

    .shortCode__talk-right {
        padding: 10px;
    }

    .shortCode__talk-left {
        padding: 10px;
    }

    .shortCode__talk_content {
        width: 85%;
        font-size: 14px;
    }

    .shortCode__talk {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    .shortCode__talk-left:before {
        border: 0;
    }

    .shortCode__talk-left:after {
        border: 0;
    }

    .shortCode__talk-right:before {
        border: 0;
    }

    .shortCode__talk-right:after {
        border: 0;
    }

}

#toc_container {
    border: 1px solid #707070 !important;
    border-radius: 10px !important;
}

#toc_container p.toc_title+ul.toc_list {
    margin-top: 1em;
    border-top: 1px dashed #707070;
    margin: 1em 1.5em;
    padding: 30px 0;
}

.toc_list>li>a {
    font-weight: bold;
    color: #058CDD !important;
}

.toc_list>li>ul>li>a {
    color: #707070 !important;
}

.shortCode__mailMagazine {

    margin: 50px -50px;
    color: white;
    background-image: url("images/mailform_background.svg");
    background-size: cover;
    background-position: right bottom;
}

.shortCode__mailMagazine-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 5% 20% 0 20%;

}

.shortCode__mailMagazine-freeimgContainer {
    width: 20%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.shortCode__mailMagazine-freeimg {
    width: 70%;
    float: right;
    margin: 0 auto !important;
}

.shortCode__mailMagazine-titleContainer {
    width: 80%;
    text-align: center;
}

.shortCode__mailMagazine-title b {
    font-size: 1.4rem;
}

.shortCode__mailMagazine-intro {
    font-size: 0.7rem;
}

.shortCode__mailMagazine-border {
    position: relative;
    display: inline-block;
}

.shortCode__mailMagazine-border:before {
    content: '';
    position: absolute;
    left: 50%;
    bottom: 10px;
    width: 0;
    border-bottom: double 2px #EEEEEE;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%);
    -webkit-animation: border_anim 1.1s ease-in-out forwards;
    animation: border_anim 1.1s ease-in-out forwards
}

@-webkit-keyframes border_anim {
    0% {
        width: 0%;
    }

    100% {
        width: 100%;
    }
}

@keyframes border_anim {
    0% {
        width: 0%;
    }

    100% {
        width: 100%;
    }
}

.shortCode__mailMagazine-middle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    padding: 5% 15% 0 15%;
    -webkit-box-pack: space-evenly;
    -ms-flex-pack: space-evenly;
    justify-content: space-evenly;
}

.shortCode__mailMagazine-box {
    width: 45%;
    background-color: white;
    border-radius: 10px;
    padding: 0 2% 2%;
    text-align: center;
}

.shortCode__mailMagazine-bottom {
    margin-top: 5%;
    padding: 0 30% 5%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.shortCode__mailMagazine-box p {
    color: #4A4848;
    font-size: 0.7rem;
    line-height: 2em;
}

.shortCode__mailMagazine-box b {
    color: #FF6A63;
    font-size: 1rem;
}

.shortCode__mailMagazine-icon {
    width: 35%;
    margin: 0 auto !important;
    top: -9%;
    position: relative;
}

.shortCode__mailMagazine-Present {
    width: 25%;
    margin: 0 auto !important;
    top: -9%;
    position: relative;
}

.shortCode__mailMagazine-bottom p {
    font-size: 0.7rem;
    text-align: center;

    margin-bottom: 2%;
}

.shortCode__mailMagazine-button {
    width: 100%;
}

.shortCode__mailMagazine-text {
    width: 100%;
    border-radius: 10px;
    background-color: #EBEBEB;
    color: #707070;
    font-size: 0.5rem;
    height: 2rem;
    text-align: center;
    border: 0;
    -webkit-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
}

.shortCode__mailMagazine-text:focus {
    outline: 0;
    font-size: 1rem;
    background-color: white;
}

.shortCode__mailMagazine-button {
    position: relative;
    display: block;
    text-decoration: none;
    border-radius: 10px;
    border: 0;
    background-color: #FF6A63;
    height: 2rem;
    font-size: 0.8rem;
    color: white;
    margin-top: 10px;
    -webkit-box-shadow: 0px 0px 6px #c3c3c3;
    box-shadow: 0px 0px 6px #c3c3c3;
    overflow: hidden;
}

@-webkit-keyframes shiny {
    0% {
        left: -20%;
    }

    10% {
        left: 120%;
    }

    100% {
        left: 120%;
    }
}

@keyframes shiny {
    0% {
        left: -20%;
    }

    10% {
        left: 120%;
    }

    100% {
        left: 120%;
    }
}

.shortCode__mailMagazine-button::after {
    content: '';
    position: absolute;
    top: -10%;
    left: -20%;
    width: 40px;
    height: 100%;
    -webkit-transform: scale(2) rotate(20deg);
    -ms-transform: scale(2) rotate(20deg);
    transform: scale(2) rotate(20deg);
    background-image: -o-linear-gradient(350deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);
    background-image: linear-gradient(100deg, rgba(255, 255, 255, 0) 10%, rgba(255, 255, 255, .5) 100%, rgba(255, 255, 255, 0) 0%);

    /* アニメーション */
    -webkit-animation-name: shiny;
    animation-name: shiny;
    -webkit-animation-duration: 4s;
    animation-duration: 4s;
    -webkit-animation-timing-function: ease-in-out;
    animation-timing-function: ease-in-out;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

.shortCode__mailMagazine-form {
    width: 100%;
}


.shortCode__mailMagazine2 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 50px -50px;
    padding: 0 10%;
    color: white;
    background-image: url("images/mailform_background2.svg");
    background-size: cover;
    background-position: right top;
}


.shortCode__mailMagazine2-img {
    min-width: 145px;
    width: 25%;
    margin-bottom: 0px !important;
    height: 100% !important;
    margin: 0 !important;
}

.shortCode__mailMagazine2-center {
    width: 75%;
    text-align: center;
}

.shortCode__mailMagazine2-center img {
    width: 10%;
    margin: 1em auto 0.5em auto;
    min-width: 40px;
}

.shortCode__mailMagazine2-center form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    margin-bottom: 1em;
}

.shortCode__mailMagazine2-center form input {
    width: 60%;
    height: 1.8rem;
    max-width: 500px;
}


.shortCode__mailMagazine2-center button {
    margin-top: 0;
    width: 20%;
    height: 1.8rem;
    margin-left: 2rem;
    min-width: 90px;
    max-width: 120px;
}

.shortCode__mailMagazine2-center p {
    color: #4A4848;
    font-weight: bold;
    font-size: 0.7rem;
    letter-spacing: 0.1rem;

}

.shortCode__mailMagazine2-center b {
    color: #FFFFFF;
    line-height: 1.4rem;
    font-size: 1.3rem;
}

@media (max-width: 667px) {
    .shortCode__mailMagazine2 {
        background-color: #99A9B0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        background-image: none;
        padding: 1rem 0;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .shortCode__mailMagazine2-center img {
        width: 25%;
        margin: 1em auto !important;
    }

    .shortCode__mailMagazine2-center form {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        margin: 0 0 1rem 0;
    }

    .shortCode__mailMagazine2-center p {
        margin-top: 0px;
    }

    .shortCode__mailMagazine2-center button {
        width: 100%;
        margin-left: 0;
    }

    .shortCode__mailMagazine2-center form input {
        width: 100%;
        margin-bottom: 1rem;
    }

    .shortCode__mailMagazine2-titlebox {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }

    .shortCode__mailMagazine2-titlebox img {
        width: 1.5em;
        margin: 0 0.5em 0 auto !important;

    }

    .shortCode__mailMagazine2-center {
        width: 90%;
        border: 1px #E6E8E6 solid;
        padding: 1em 1em;
        margin: 0.4em 2em;
    }

    .shortCode__mailMagazine2-img {
        min-width: 130px;
    }

    .shortCode__mailMagazine-top {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .shortCode__mailMagazine-middle {
        padding: 5% 1rem 0;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }

    .shortCode__mailMagazine-bottom {
        padding: 0 1rem 1rem;
    }

    .shortCode__mailMagazine-top {
        padding: 5% 1rem 0;
    }

    .shortCode__mailMagazine-titleContainer {
        width: 100%;
    }

    .shortCode__mailMagazine-box {
        width: 70%;
        margin-bottom: 1rem;
    }

    .shortCode__mailMagazine2 {
        background-image: -o-radial-gradient(center, circle 248px, #cfd9df 0%, #AFBEC4 47%, #99A9B0 100%) !important;
        background-image: radial-gradient(circle 248px at center, #cfd9df 0%, #AFBEC4 47%, #99A9B0 100%) !important;
        /* background-image: linear-gradient(-225deg, #CBBACC 0%, #2580B3 100%)!important; */
    }

    .blog-container {
        width: 100%;
    }

    .blog-article__content-wrapper {
        padding: 0;
    }

    .blog-article__main {
        padding: 10px 15px;
    }

    .blog-article__content {
        font-size: 14px;
    }

    .blog-article__content h1 {
        font-size: 24px;
    }

    .blog-article__date {
        margin-bottom: 0px;
    }

    .blog-article__content h2 {
        margin-bottom: 30px;
        font-size: 20px;
    }

    .blog-article__content h3 {
        margin-bottom: 30px;
        font-size: 18px;
    }

    .blog-article__content h4 {
        margin-bottom: 30px;
    }

    #toc_container {
        padding: 10px 0;
    }

}

.blog-article__main span {
    margin: 20px 0;
    display: block;
}

#toc_container span {
    margin: 0;
    display: inline;
}

h2 span {
    margin: 0 !important;
    display: inline !important;
}

h3 span {
    margin: 0 !important;
    display: inline !important;
}

h4 span {
    margin: 0 !important;
    display: inline !important;
}

.pc {
    display: block !important;
}

.pc-inlineblock {
    display: inline-block !important;
}

.sp {
    display: none !important;
}

@media only screen and (max-width: 667px) {
    .pc {
        display: none !important;
    }

    .pc-inlineblock {
        display: none !important;
    }

    .sp {
        display: block !important;
    }
}


.shortCode__mailMagazine2-title b {
    font-size: 0.8rem;
}

.shortCode__mailMagazine2-title {
    font-weight: normal !important;
    color: white !important;
    margin-top: .5rem;
}

.shortCode__mailMagazine2-title2 {
    margin-bottom: .5rem;
}

.shortCode__mailMagazine2-title img {
    display: block;
    width: 2em;

    margin: auto !important;
}

/* ショートコード offer 目次表示対策 */

.shortCode__offer-title {
    display: block;
    font-size: 1.17em;
    -webkit-margin-before: 1em;
    margin-block-start: 1em;
    -webkit-margin-after: 1em;
    margin-block-end: 1em;
    -webkit-margin-start: 0px;
    margin-inline-start: 0px;
    -webkit-margin-end: 0px;
    margin-inline-end: 0px;
    font-weight: bold;
    font-size: 19px;
    font-weight: bold;
    border-bottom: 3px solid rgba(0, 0, 0, 0.15);
    position: relative;
    padding-left: 8px;
    padding-bottom: 5px;
    margin-top: 60px;
    margin-bottom: 40px !important;
    line-height: 1.5;
}


.shortCode__offer-title::before {
    position: absolute;
    content: "";
    display: block;
    width: 70px;
    height: 3px;
    background-color: #058CDD;
    bottom: 0;
    left: 0;
    -webkit-transform: translateY(3px);
    -ms-transform: translateY(3px);
    transform: translateY(3px);
}

.shortCode__mailMagazine-button {
    cursor: pointer;
}

/* blogTopページのメルマガバナー */
.blog-top__mailMagazine2 {
    margin: 5% calc(50% - 50vw);
    max-height: 300px;
    overflow: hidden;
}

.blog-top__mailMagazine2__img {
    width: auto;
    max-height: 300px;
}

@media only screen and (max-width: 667px) {
    .blog-top__mailMagazine2 {
        max-height: initial;
        max-height: auto;
        overflow: visible;
    }
}

/* ブログのサブヘッダー　ハンバーガーメニュー化 */
.hamburger-menu {
    display: none;
    position: absolute;
    z-index: 9999;
    /*ボタンを最前面に*/
    top: 20px;
    right: 20px;
    cursor: pointer;
    width: 50px;
    height: 50px;
}

.hamburger-menu span {
    display: inline-block;
    -webkit-transition: all 0.4s;
    -o-transition: all 0.4s;
    transition: all 0.4s;
    position: absolute;
    left: 14px;
    height: 3px;
    border-radius: 2px;
    background-color: #666;
    width: 45%;
}

.hamburger-menu span:nth-of-type(1) {
    top: 15px;
}

.hamburger-menu span:nth-of-type(2) {
    top: 23px;
}

.hamburger-menu span:nth-of-type(3) {
    top: 31px;
}


.hamburger-menu.cross span {
    background-color: #fff;
}

.hamburger-menu.cross span:nth-of-type(1) {
    top: 18px;
    left: 18px;
    -webkit-transform: translateY(6px) rotate(-45deg);
    -ms-transform: translateY(6px) rotate(-45deg);
    transform: translateY(6px) rotate(-45deg);
    width: 30%;
}

.hamburger-menu.cross span:nth-of-type(2) {
    opacity: 0;
}

.hamburger-menu.cross span:nth-of-type(3) {
    top: 30px;
    left: 18px;
    -webkit-transform: translateY(-6px) rotate(45deg);
    -ms-transform: translateY(-6px) rotate(45deg);
    transform: translateY(-6px) rotate(45deg);
    width: 30%;
}

/* スマホサイズの時のみ、ハンバーガーメニューを表示 */
@media (max-width: 667px) {
    .hamburger-menu {
        display: block;
        top: 16px;
    }

    .hamburger-menu span {
        -webkit-transition: all 0.3s;
        -o-transition: all 0.3s;
        transition: all 0.3s;
    }

    /* サイドメニュー */
    .side-menu {
        position: fixed;
        top: 0;
        right: -120%;
        width: 100%;
        height: 100vh;
        background: #fff;
        overflow-y: auto;
        -webkit-transition: all 0.6s;
        -o-transition: all 0.6s;
        transition: all 0.6s;
        z-index: 999;
        display: block;
    }

    .side-menu.open {
        right: 0;
        background-color: #00A5D4;

    }



    .blog-header-sub .blog-cat-tree {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
        height: 80%;
        -ms-flex-pack: distribute;
        justify-content: space-around;
        margin: 10% auto;
    }

    .blog-cat-subtree {
        display: none;
    }

    .blog-header-sub .blog-cat-tree__item:not(:last-of-type)::after {
        background: #fff;
    }
}

/*　ブログ記事サイドバーメルマガ登録フォーム */
.blog-sidebar__mailMagazine2 {
    width: 100%;
    margin: 50px 0;
    background-color: #99A9B0;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-image: none;
    padding: 1rem 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background-image: -o-radial-gradient(center, circle 248px, #cfd9df 0%, #AFBEC4 47%, #99A9B0 100%) !important;
    background-image: radial-gradient(circle 248px at center, #cfd9df 0%, #AFBEC4 47%, #99A9B0 100%) !important;

}

.blog-sidebar__mailMagazine2-center b {
    color: #FFFFFF;
    line-height: 1.4rem;
    font-size: 1.3rem;
}

.blog-sidebar__mailMagazine2-center {
    border: 1px #E6E8E6 solid;
    padding: 1em 1em;
    margin: 0.4em 2em;
}

.blog-sidebar__mailMagazine2-center img {
    width: 35%;
    margin: 1em auto !important;
    min-width: 40px;
}

.blog-sidebar__mailMagazine2-center form {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    margin: 0 0 1rem 0;
}

.blog-sidebar__mailMagazine2-center p {
    margin-top: 0px;
    font-size: 0.7rem;
    letter-spacing: 0.1rem;
    color: #4A4848;
    font-weight: bold;
}



.blog-sidebar__mailMagazine2-center button {
    width: 100%;
    margin-left: 0;
}

.blog-sidebar__mailMagazine2-center form input {
    width: 100%;
    margin-bottom: 1rem;
}

.blog-sidebar__mailMagazine2-titlebox {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}

.blog-sidebar__mailMagazine2-titlebox img {
    width: 0.5em;
    margin: 0.3em 0.5em 0 auto !important;
    min-width: 20px;

}



.blog-sidebar__mailMagazine2-img {
    min-width: 130px;
}

.blog-sidebar__mailMagazine2-title b {
    font-size: 0.8rem;
}


/* ヘッダー下メインコンテンツ */
.main_top_lp {
    background-color: #F9F9F9;
    padding: 40px 0;
}

.main_top_lp2 {
    padding: 0 0 0 calc(min(140px, 5%));
}

.main_top_lp_contents {
    background-color: white;
    color: #000;
    width: calc(min(1300px, 90%));
    margin: 0 auto;
    height: 60px;
    display: flex;
    /*justify-content: space-between;*/
    align-items: center;
    padding-left: 30px;
}

.main_top_label {
    background-color: #00A5D4;
    color: white;
    border-radius: 5px;
    padding: 5px 60px;
    display: flex;
}

.main_top_label img {
    margin-right: 10px;
}


.main_top_title {
    margin-left: 40px;
    font-weight: bold;
}

@media screen and (max-width:768px) {
    .main_top_label img {
        display: none;

    }

    .main_top_lp2 {
        padding: 0;
    }

    .main_top_label {
        padding: 0;
        width: 140px;
        text-align: center;
    }

    .main_top_lp {
        padding: 0;
    }

    .main_top_lp_contents {
        padding: 0;
    }

    .main_top_label p,
    .main_top_title {
        font-size: 8px;
        margin: 0 auto;
    }
}

/* 講師一覧　生徒様の声 */
.students-voice h3 {
    text-align: center;
    margin-top: 40px;
    margin-bottom: 30px;
    font-size: 24px;
}

.voice-box-1,
.voice-box-2 {
    background-color: #D4E6F3;
    border-radius: 10px;
    width: 48%;
    padding: 20px 30px;
}

.students-voice-box {
    display: flex;
    justify-content: space-between;
}

.students-voice-box span {
    font-size: 12px;
    line-height: 14px;
}

.students-voice-box h4 {
    font-size: 18px;
    text-align: center;
    margin-bottom: 15px;
}

@media (max-width: 667px) {
    .students-voice-box {
        display: block;
    }

    .voice-box-1,
    .voice-box-2 {
        width: 90%;
        margin: 30px auto;
    }

}


/*ページ内リンク　位置調整*/

html {
    scroll-padding-top: 300px;
}

:target {
    scroll-margin-top: 300px;
}

/* カウンセリングThanksページ */

#thank_main_visual .thank_main_visual_wrapper {
    background: url(images/thank1.png) no-repeat center center;
    background-size: cover;
    width: 100%;
    height: 700px;
    margin: 0 auto;
    position: relative;
}

#thank_main_visual .thank_main_visual_wrapper .online_thank h2 {
    color: white;
    font-size: 48px;
    font-weight: bold;
    line-height: normal;
    text-align: center;
    margin: 0 22%;
    padding-top: 150px;
}

#thank_main_visual .thank_main_visual_wrapper .online_thank .contact_message {
    font-size: 20px;
    margin: 0 30%;
    text-align: center;
    padding-top: 50px;
    line-height: normal;
}

#thank_main_visual .thank_main_visual_wrapper .online_thank p.contact_thank {
    text-align: left;
}

#thank_main_visual .thank_main_visual_wrapper .online_thank p.contact_mail {
    text-align: left;
    padding-top: 50px;
}

#thank_main_visual .thank_main_visual_wrapper .online_thank a.contact_link {
    color: white;
    text-decoration: underline;
}

#counseling_info {
    width: 55%;
    margin: auto;
}

#counseling_info h3 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    padding-top: 120px;
    padding-bottom: 50px;
}

#counseling_info ol {
    padding: 0 10%;
}

.instructor p {
    padding-top: 50px;
}

.venue {
    padding-top: 50px;
}

/* ebook thanksページ */

.ebook_btn {
    margin: 50px auto;
    width: 35%;
}

.thank2_main_visual_wrapper {
    background: url(images/thank2.png) no-repeat center center;
    background-size: cover;
    width: 100%;
    height: 700px;
    margin: 0 auto;
    position: relative;
}

#thank2_main_visual .thank2_main_visual_wrapper .ebook_thank h2 {
    color: white;
    font-size: 96px;
    font-weight: bold;
    line-height: normal;
    text-align: center;
    padding-top: 150px;
}

.ebook_thank h2 {
    text-shadow: 10px 5px #000000,
        /*文字の右下に影を追加*/
        10px -1px #000000,
        /*文字の右上に影を追加*/
        -1px 1px #000000,
        /*文字の左下に影を追加*/
        -1px -1px #000000;
    /*文字の左上に影を追加*/
    ;
}

.ebook_message p.contact_thank2 {
    font-size: 32px;
    padding-top: 80px;
    color: white;
    font-weight: bold;
    line-height: normal;
    text-align: center;
}

.ebook_info {
    margin-top: 50px;
}

.ebook_info p {
    text-align: center;
    color: black;
    font-size: 16px;
    padding-top: inherit;
}

#demo_disc {
    width: 60%;
    margin: auto;
}

.demo_img {
    background: url(images/thank-demo.png) no-repeat center center;
    background-size: contain;
    width: 100%;
    height: 555px;
    margin: 100px 0;
}

#demo_disc h3 {
    text-align: center;
    font-size: 20px;
    font-weight: bold;
    padding-bottom: 50px;
}

#demo_disc ol {
    padding: 0 10%;
}

.film_text p {
    padding-top: 50px;
    color: black;
    font-size: 16px;
    text-align: left;
    padding-left: 10%;
    font-weight: inherit;
}

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

html {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    font-size: 100%;
    /*rem算出をしやすくするために*/
}

.btn,
a.btn,
button.btn {
    font-size: 1.6rem;
    font-weight: 700;
    line-height: 1.5;
    position: relative;
    display: block;
    padding: 1rem 4rem;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    text-align: center;
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.1em;
    color: #212529;
    border-radius: 0.5rem;
}

a.btn--red {
    background-color: #e2041b;
    border-bottom: 5px solid #990414;
}

a.btn--red:hover {
    margin-top: 3px;
    color: #fff;
    background: #e2041b;
    border-bottom: 2px solid #990414;
}

a.btn--shadow {
    -webkit-box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
    box-shadow: 0 3px 5px rgba(0, 0, 0, .3);
}

.ebook_btn a {
    color: white !important;
}

/*バナー*/
span.banner-text {
    display: none;
}

.sp_only {
    display: none;
}

.topunder .center .tel p {
    font-size: 18px;
}

/*
.left {
    margin-left: 200px;
}
    */

.topunder {
    justify-content: center;
}

@media screen and (max-width:768px) {
    #thank_main_visual .thank_main_visual_wrapper {
        background-size: contain;
        width: 100%;
        height: 410px;
    }

    #thank_main_visual .thank_main_visual_wrapper .online_thank h2 {
        font-size: 20px;
        margin: 0;
        padding-top: 90px;
    }

    #thank_main_visual .thank_main_visual_wrapper .online_thank .contact_message {
        font-size: 15px;
        padding-top: 20px;
    }

    #thank2_main_visual .thank2_main_visual_wrapper {
        background-size: contain;
        width: 100%;
        height: 410px;
    }

    #thank2_main_visual .thank2_main_visual_wrapper .ebook_thank h2 {
        font-size: 50px;
        margin: 0;
        padding-top: 100px;
    }

    #thank2_main_visual .thank2_main_visual_wrapper .ebook_thank .ebook_message .contact_thank2 {
        font-size: 15px;
        padding-top: 35px;
    }

    /*バナー*/
    .pc_only {
        display: none !important;
    }

    .sp_only {
        display: block !important;
    }

    span.banner-text {
        font-size: 15px;
        display: block;
    }

    h2.sp_only {
        font-size: 15px;
    }

    p.tel-text {
        font-size: 8px;
    }

    .center_img {
        margin-right: 5px;
    }

    h2.sp_only {
        padding-top: 3px;
    }

    .sp_only {
        display: block;
    }


}

.study_style_inner .right p {
    padding-bottom: 0;
}

.curriculum_text {
    margin-bottom: 30px;
}

.money_kasen {
    justify-content: space-between;
}

.study_style_inner .right {
    text-align: left;
}

/* 20240921 fv */

.sp_message {
    display: none;
}

.sp_btn_fv {
    display: none;
}

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

    .sp_message {
        display: block;
        padding: 30px 6%;
        text-align: center;
    }

    .sp_message h1 {
        color: #058CDD;
        margin-bottom: 12px;
        font-weight: 800;
        line-height: 160%;
        font-size: 20px;
    }

    .sp_message p {
        margin-top: 25px;
    }

    .sp_btn_fv {
        display: block;
        position: absolute;
        bottom: 20px;
        right: 0;
        width: 42%;
    }

    .sp_btn_fv img {
        width: 100%;
    }
}


.banner_counseling01 {
    margin: 20px 0;
}

.media_article {
    text-align: left;
    font-size: 14px;
    text-decoration: underline;
}

.article_title {
    font-size: 16px;
    margin: 20px 0;
}

.media_img2 {
    width: 30%;
}

.article_box {
    display: flex;
    justify-content: space-evenly;
}

.media_img2 {
    width: 100%;
}

.article_box div {
    width: 30%;
}

.article_link:hover {
    text-decoration: underline;
    color: #058CDD;
}


.shortCode__cvBanner01 {
    margin: 15px auto 40px;
    width: 100%;
    display: block;
}

a.shortCode__cvBanner01,
a.shortCode__cvBanner01:hover,
a.shortCode__cvBanner01:visited {
    color: #3e3e3e !important;
}

.shortCode__cvBanner01 img {
    width: 100%;
    height: auto;
}


/*メインビジュアル*/
.main_image {
    width: 100%;
    height: auto;
    margin-top: 115px;
}

.main_image_sp {
    width: 100%;
    height: auto;
    margin-top: 115px;
    display: none;
    /* PCでは非表示 */
}

@media (max-width: 667px) {
    .main_image {
        display: none;
        /* スマホでは非表示 */
    }

    .main_image_sp {
        display: block;
        /* スマホでは表示 */
    }
}

.top_bottom_contact {
    background: #fff;
    padding-bottom: 60px;
}


.bg_white {
    background: #fff;
}


.top_field_block {
    padding-bottom: 50px;
}
.top_field_block_title {
    font-weight: bold;
    font-size: 1.2rem;
    margin-bottom: 10px;
}
.top_field_block_column {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-bottom: 10px;
    align-items: center;
}
.top_field_block_column_left {
    width: 28%;
}
.top_field_block_column_right {
    width: 70%;
}
.top_field_block_column_left img {
    width: 100%;
    height: auto;
}
.top_field_block_class {
    margin-bottom: 5px;
}
.top_field_block_example {
    border-radius: 10px;
    border: 3px solid #CEE1F2;
    margin-bottom: 15px;
    padding: 10px;
}
.top_field_block_table {
    width: 100%;
}
.top_field_block_table,
.top_field_block_table th,
.top_field_block_table td {
    border-collapse: collapse;
    border: 1px solid #000;
}
.top_field_block_table th {
    background: #CEE1F2;
    width: 28%;
    padding: 10px;
}
.top_field_block_table td {
    background: #fff;
    padding: 10px;
}
.top_subject_title {
    text-align: center;
    margin-bottom: 20px;
    font-size: 1.75rem;
    font-weight: bold;
}
.top_subject_block {
    padding-bottom: 40px;
}
.top_subject_block_title {
    background: #F6B26B;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    padding: 10px 15px;
    margin-bottom: 20px;
}
.top_subject_column {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.top_subject_box {
    width: 31.5%;
    margin-bottom: 30px;
    text-align: center;
    background: #fff;
    border: 3px solid #ccc;
}
.top_subject_box_title {
    background: #F6B26B;
    color: #fff;
    font-size: 1.2rem;
    font-weight: bold;
    padding: 8px 5px;
}
.top_subject_box_title_small {
    font-size: 1rem;
}
.top_subject_box_title2 {
    font-size: 1rem;
    line-height: 1.1rem;
}
.top_subject_box_image img {
    width: 100%;
    height: auto;
}
.top_subject_box_text {
    padding: 5px 5px 10px;
    color: #4A4848;
    line-height: 1.8rem;
}
.top_subject_box_small {
    font-size: 0.9rem;
    line-height: 1.4rem;
    margin-top: -10px;
}
.top_subject_block.top_subject_orange .top_subject_block_title,
.top_subject_block.top_subject_orange .top_subject_box_title {
    background: #F6B26B;
}
.top_subject_block.top_subject_red .top_subject_block_title,
.top_subject_block.top_subject_red .top_subject_box_title {
    background: #E99898;
}
.top_subject_block.top_subject_blue .top_subject_block_title,
.top_subject_block.top_subject_blue .top_subject_box_title {
    background: #6FA7DB;
}
.top_subject_block.top_subject_green .top_subject_block_title,
.top_subject_block.top_subject_green .top_subject_box_title {
    background: #92C37D;
}

@media (max-width: 667px) {
    .top_field_block_column {
        display: block;
    }
    .top_field_block_column_left {
        width: 80%;
        margin: 0 auto 15px;
    }
    .top_field_block_column_right {
        width: 100%;
        margin-bottom: 20px;
    }
    .top_field_block_table th {
        width: 28%;
        padding: 5px;
    }
    .top_field_block_table td {
        padding: 5px;
    }
    .top_subject_title {
        margin-bottom: 20px;
        font-size: 1.5rem;
    }
    .top_subject_block_title {
        font-size: 1.3rem;
    }
    .top_subject_column {
        display: block;
    }
    .top_subject_box {
        width: 100%;
        margin-bottom: 20px;
    }
    .top_subject_box_title {
        font-size: 1.2rem;
    }
    .top_subject_box_title_small {
        font-size: 1.2rem;
    }
    .top_subject_box_title2 {
        font-size: 1rem;
        line-height: 1.1rem;
    }
}


#top_main_visual {
    padding-top: 110px;
}
.main_image {
    margin: -5px 0 -12px;
}
#main_header .gnav_wrapper .logo {
    width: 280px;
    margin-left: 20px;
}
#navigation.gnav {
    width: calc(100% - 300px);
}
#main_header .gnav_wrapper .gnav ul li {
    margin-left: 35px;
}
.header_leftbox {
    width: 100px;
}
.header_leftbox_last {
    width: 112px;
}
.reasons_why_progress_arrow {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 32px 0 8px;
}
.reasons_why_progress_arrow img {
    width: 30%;
    height: 30px;
    vertical-align: bottom;
}
#book .book_image {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
#book .book_image img {
    width: 23%;
    margin: 0 0 20px;
}

@media (max-width: 667px) {
    #book .book_image img {
        width: 48%;
    }
}
@media (min-width: 667px) {
    .news_flex {
        max-width: 1080px;
        width: 100%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
    }
    .news_title {
        width: 15%;
    }
    .news_list {
        width: 85%;
        border-left: 1px solid #292E31;
        padding: 0 25px;
    }
    .news_list .news_post_title {
        margin-left: 20px;
        text-align: left;
    }
    .news_list a {
        text-align: left;
    }
}


.curriculum_box {
    margin: 50px auto 0;
    padding-bottom: 50px;
    font-family: Helvetica;
    font-weight: bold;
}
.curriculum_box_flex {
    display: flex;
    justify-content: space-between;

}
.curriculum_box_flex_left {
    width: 60%;
}
.curriculum_box_flex_right {
    width: 40%;
}
.curriculum_item {
    width: 80%;
    border-radius: 30px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-weight: bold;
    margin-bottom: 20px;
    position: relative;
}
.curriculum_item_red {
    background: #F7D6D9;
}
.curriculum_item_blue {
    background: #D2E2F4;
}
.curriculum_item_green {
    background: #D3ECD9;
    margin-bottom: 0;
}
.curriculum_item_red .curriculum_item_left {
    background: #D87D80;
}
.curriculum_item_blue .curriculum_item_left {
    background: #6B92C3;
}
.curriculum_item_green .curriculum_item_left {
    background: #739D70;
}
.curriculum_item_left {
    color: #fff;
    text-align: center;
    border-radius: 30px 0 0 30px;
    width: 40%;
    padding: 10px 5px;
    height: -webkit-fill-available;
    height: stretch;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
}
.curriculum_item_center {
    width: 45%;
    padding: 10px;
}
.curriculum_item_blue .curriculum_item_left_title {
    width: 100%;
}
.curriculum_item_blue .curriculum_item_icon {
    width: 100%;
    margin-top: -70px;
}
.curriculum_item_blue .curriculum_item_center {
    width: 60%;
}
.curriculum_item_right {
    width: 15%;
    text-align: center;
}
.curriculum_item_icon img {
    width: 40px;
    height: auto;
    margin-top: 10px;
}
.curriculum_box_flex_right {
    position: relative;
    font-weight: bold;
    background: #EDDB99;
    border-radius: 30px;
    padding: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.curriculum_right_item {
    width: 100%;
}
.curriculum_right_item_flex {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.curriculum_right_item_title {
    position: absolute;
    top: -20px;
    left: 50%;
    transform: translateX(-50%);
    right: 0;
    text-align: center;
    border-radius: 30px;
    background: #B89334;
    color: #fff;
    padding: 3px 30px;
    display: inline-block;
    width: max-content;
}
.curriculum_right_item_text {
    width: 75%;
    height: -webkit-fill-available;
    height: stretch;
    display: flex;
    align-items: center;
}
.curriculum_right_item_text small {
    font-size: 0.8rem;
}
.curriculum_right_item_icon {
    width: 25%;
    text-align: center;
}
.curriculum_right_item_icon img {
    width: 50px;
    height: auto;
}
.curriculum_item_left_line {
    position: absolute;
    right: -22%;
    width: 22%;
    border: 4px solid;
}
.curriculum_item_left_vertical {
    display: none;
}
.curriculum_item_left_arrow {
    position: absolute;
    top: -10px;
    right: -15px;
    width: 0;
    height: 0;
    border-style: solid;
    border-top: 10px solid transparent;
    border-bottom: 10px solid transparent;
    border-left: 10px solid #555555;
    border-right: 0;
    border-radius: 10px;
}
.curriculum_item_red .curriculum_item_left_line {
    border-color: #F7D6D9;
}
.curriculum_item_blue .curriculum_item_left_line {
    border-color: #D2E2F4;
}
.curriculum_item_green .curriculum_item_left_line {
    border-color: #D3ECD9;
}
.curriculum_item_red .curriculum_item_left_arrow {
    border-left: 10px solid #F7D6D9;
}
.curriculum_item_blue .curriculum_item_left_arrow {
    border-left: 10px solid #D2E2F4;
}
.curriculum_item_green .curriculum_item_left_arrow {
    border-left: 10px solid #D3ECD9;
}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .logo {
        width: auto;
        margin: 0 auto;
    }
    .curriculum_box_flex {
        display: block;
    }
    .curriculum_box_flex_left {
        width: 100%;
        margin-bottom: 60px;
    }
    .curriculum_item_icon img {
        width: 80%;
    }
    .curriculum_item_blue .curriculum_item_icon {
        margin-top: -20px;
    }
    .curriculum_item_blue .curriculum_item_icon img {
        width: 30%;
    }
    .curriculum_box_flex_right {
        width: 100%;
    }
    .curriculum_item_left_line {
        position: absolute;
        border: 4px solid;
    }
    .curriculum_item_red .curriculum_item_left_line {
        width: 20%;
        right: -20%;
    }
    .curriculum_item_blue .curriculum_item_left_line {
        width: 14%;
        right: -14%;
    }
    .curriculum_item_green .curriculum_item_left_line {
        width: 8%;
        right: -8%;
    }
    .curriculum_item_left_vertical {
        display: block;
        position: absolute;
        top: -3px;
        right: -4px;
        border: 4px solid #F7D6D9;
    }
    .curriculum_item_red .curriculum_item_left_vertical {
        height: 400px;
        border-color: #F7D6D9;
    }
    .curriculum_item_blue .curriculum_item_left_vertical {
        height: 240px;
        border-color: #D2E2F4;
    }
    .curriculum_item_green .curriculum_item_left_vertical {
        height: 70px;
        border-color: #D3ECD9;
    }
    .curriculum_item_left_arrow {
        right: -6px;
        transform: rotate(90deg);
    }
    .curriculum_item_red .curriculum_item_left_arrow {
        top: 395px;
    }
    .curriculum_item_blue .curriculum_item_left_arrow {
        top: 235px;
    }
    .curriculum_item_green .curriculum_item_left_arrow {
        top: 65px;
    }
    .curriculum_right_item_text small {
        font-size: 0.9rem;
    }

}



#goal5 .bg_grey {
    background: #FAFAFA;
    width: 100vw;
    margin-left: calc(50% - 50vw);
}
.anchor-target::before {
    content: "";
    display: block;
    height: 110px;
    margin-top: -110px;
    visibility: hidden;
    pointer-events: none;
}
.about.page_goal_column {
    width: 1080px;
}
h2.goal5_title {
    color: #058CDD;
    font-size: 2.2rem;
    font-weight: bold;
}
.goal5_text {
    text-align: center;
    margin-bottom: 40px;
    font-size: 1.2rem;
}
.goal5_flex {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.goal5_flex_box {
    width: 19%;
    text-align: center;
    background: #fff;
    padding: 15px 5px;
    border: 1px solid #C4C6CF;
    border-radius: 5px;
    margin-bottom: 60px;
}
.goal5_flex_box_title {
    color: #058CDD;
    font-size: 1.3rem;
}
.goal5_flex_box_img {
    height: 60px;
    position: relative;
}
.goal5_flex_box_img img {
    width: 30px;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.goal5_block_flex {
    padding: 40px 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.goal5_block_flex.goal5_block_flex_image {
    flex-direction: row-reverse;
}
.goal5_info,
.goal5_image {
    width: 48%;
}
.goal5_info_goal {
    color: #058CDD;
    font-size: 0.8rem;
    font-family: Arial, sans-serif;
}
.goal5_info_goal img {
    width: 1rem;
    height: auto;
    margin-right: 8px;
    vertical-align: middle;
}
.goal5_info_title {
    font-size: 1.6rem;
    line-height: 170%;
    font-weight: bold;
    color: #058CDD;
    margin-bottom: 20px;
}
.goal5_info_description {
    font-size: 1.2rem;
    line-height: 1.7rem;
    margin-bottom: 20px;
}
.goal5_info_point {
    color: #058CDD;
    font-weight: bold;
}
.goal5_info_point img {
    width: 1rem;
    height: auto;
    margin-right: 8px;
    vertical-align: middle;
}
.goal5_info_point_text {
    margin-left: 25px;
}
.goal5_image img {
    width: 100%;
    height: auto;
    border-radius: 10px;
}
.goal5_info_point02 {
    background: #fff;
    border-left: 4px solid #058CDD;
    border-radius: 10px;
    padding: 15px 15px;
}
.goal5_info_point02_title {
    color: #058CDD;
    font-weight: bold;
    margin-bottom: 10px;
}
.goal5_info_point02 ul {
    list-style: disc;
    padding-left: 30px;
}
.goal5_info_point02 ul li {
    padding-left: 5px;
}
.goal5_info_point03 {
    display: flex;
    justify-content: space-between;
}
.goal5_info_point03_block {
    width: 49%;
    background: #FAFAFA;
    padding: 15px;
    border-radius: 10px;
    border: 1px solid #C4C6CF;
}
.goal5_info_point03_title {
    color: #058CDD;
    font-weight: bold;
    margin-bottom: 5px;
    font-size: 1.1rem;
}
.goal5_info_point03_description {
    font-size: 0.9rem;
}
.goal5_info_point04 ul li {
    margin-bottom: 10px;
    color: #058CDD;
}
.goal5_info_point04 ul li span {
    margin-bottom: 10px;
    color: #058CDD;
    font-weight: bold;
    margin-right: 10px;
    font-family: 'Arial Black', Arial, sans-serif;
}
.goal5_info_point04_step01 {
    opacity: 1;
}
.goal5_info_point04_step02 {
    opacity: .75;
}
.goal5_info_point04_step03 {
    opacity: .5;
}
.goal5_info_point05 {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 0;
    border-radius: 10px;
    background: #F6F3F2;
    border: 1px solid #C4C6CF;
}
.goal5_info_point05_block {
    width: 48%;
    text-align: center;
}
.goal5_info_point05_title {
    color: #058CDD;
    font-weight: bold;
    font-family: 'Arial Black', Arial, sans-serif;
    font-size: 2rem;
}
.goal5_info_point05_text {
    color: #058CDD;
}
.goal5_info_point05_line {
    height: 60px;
    border: 1px solid #C4C6CF;
}


/* ヘッダー折り返し前に変更　======================= */
@media (max-width: 1363px) {
    #main_header {
        height: 110px;
    }
    #container {
        padding-top: 110px;
    }
    .hamburger {
        top: -15px;
        height: 100%;
    }
    .header_leftbox.sp_none {
        display: none;
    }
    #main_header .gnav_wrapper .gnav ul li {
        margin-left: 0;
    }
    .header_leftbox_flex {
        position: absolute;
        right: 0;
        top: 0;
    }
    #main_header .gnav_wrapper .gnav ul .havechild {
        display: none;
    }
    #main_header .gnav_wrapper .gnav ul li .gnav__second-level {
        top: 0px;
        display: block;
        width: 100%;
        opacity: 1;
        background-color: #ffffff;
        border-radius: 3px;
        position: relative;
        visibility: visible;
    }
    #main_header .gnav_wrapper .gnav ul li:hover .gnav__second-level {
        top: 0;
    }
    .gnav__second-level li a::after { 
        background: #058CDD;
        left: 50%;
        bottom: 0px;
        margin-left: -50%;
        width: 100%;
        height: 3px;
        content: '';
        position: absolute;
    }
    #main_header .gnav_wrapper .gnav ul li .gnav__second-level li a::after {
        left: 50%;
        bottom: 0px;
        margin-left: -50%;
        width: 100%;
        height: 3px;
        content: "";
        position: absolute;
        transform: scaleX(0);
        z-index: -1;
        background: rgb(5, 140, 221);
        transition: 0.3s;
    }
    #main_header .gnav_wrapper .gnav ul li .gnav__second-level li a::after {
        background: #058CDD;
        left: 50%;
        bottom: 0px;
        margin-left: -50%;
        width: 100%;
        height: 3px;
        content: '';
        position: absolute;
        -webkit-transform: scaleX(0);
        -ms-transform: scaleX(0);
        transform: scaleX(0);
        -webkit-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        z-index: -1;
    }
    #main_header .gnav_wrapper .gnav ul li .gnav__second-level li a:hover::after {
        -webkit-transform: scaleX(1);
        -ms-transform: scaleX(1);
        transform: scaleX(1);
    }
    #main_header .gnav_wrapper .gnav ul li .gnav__second-level li:hover a {
        color: #292E31;
        background-color: #fff;
    }
    #main_header .gnav_wrapper .gnav ul li a {
        padding: 30px 0;
    }
    #main_header .gnav_wrapper .gnav ul li .gnav__second-level li a {
        padding: 30px 0;
    }
    #main_header .gnav_wrapper .logo {
        position: absolute;
        width: 54%;
        max-width: 320px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        background: none;
        margin: 0 10px 0 0;
    }
    #main_header .gnav_wrapper .logo img {
        width: 100%;
        height: auto;
    }
    .hamburger {
        display: block;
    }
    #navigation.gnav {
        width: 100% !important;
        max-width: 100%;
        position: absolute;
        top: 0;
        left: 0;
        margin-top: 110px;
        margin-left: 0px !important;
        display: none;
    }
    #navigation.gnav ul li {
        background: #FFF;
        width: 100%;
        margin-right: 0px !important;
        display: block;
    }
    #navigation.gnav ul li {
        background: #FFF;
        width: 100%;
        margin-right: 0px !important;
        display: block;
    }
    #breadcrumb {
        padding: 0 30px;
    }
}

@media (max-width: 1080px) {
    #main_header {
        height: 80px;
    }
    #navigation.gnav {
        margin-top: 80px;
    }
    #main_header .gnav_wrapper .gnav {
        margin-top: 80px!important;
    }
    #container {
        padding-top: 80px;
    }


    .topunder .right {
        display: none;
    }
    .topunder .center .tel {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .topunder .center .center_img {
        -ms-flex-preferred-size: 20%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .topunder .center .tel p {
        display: none;
    }
    .topunder .center .tel .tel_text {
        display: none;
    }
    .topunder .left {
        display: none;
    }
    .topunder .center p {
        display: none;
    }
    .topunder .center .tel .center_img img {
        width: 30px;
        margin-bottom: 0;
    }
    .center_img {
        margin-right: 5px;
    }
    .tel span .sp_only {
        display: block!important;
    }
    .topunder .center .tel p.pc_only {
        display: none!important;
    }

    #top_main_visual {
        padding-top: 80px;
    }
    .main_image_sp {
        margin-top: 0px;
    }
    #about_result p {
        width: 100%;
        padding: 0 2% 5%;
    }
    #goal5 .bg_grey {
        margin-left: 0;
    }

}

@media (max-width: 667px) {
    #main_header .gnav_wrapper .logo {
        margin: 15px 10px 0 0;
    }
    .about.page_goal_column {
        width: 100%;
    }
    .goal5_flex {
        display: flex;
        justify-content: space-around;
    }
    .goal5_flex_box {
        width: 48%;
        margin-bottom: 20px;
    }
    .goal5_block_flex {
        padding: 40px 0;
        display: block;
    }
    .goal5_info,
    .goal5_image {
        width: 100%;
        margin-bottom: 30px;
    }
    .goal5_info {
        margin-bottom: 30px;
    }
    .goal5_info_point img {
        width: 1rem;
        height: auto;
        margin-right: 8px;
    }
    .goal5_info_point_text {
        margin-left: 25px;
    }
    .goal5_image img {
        width: 100%;
    }
    .goal5_info_point03 {
        display: block;
    }
    .goal5_info_point03_block {
        width: 100%;
        margin-bottom: 20px;
    }
    .goal5_info_point05 {
        display: flex;
    }
    .goal5_info_point05_title {
        font-size: 1.5rem;
    }
    
    .header_leftbox_last {
        width: 80px;
    }

}


.top_main_visual_subtitle {
    position: absolute;
    top: 27%;
    left: 30px;
    color: #fff;
    font-size: clamp(12px, 1.5vw, 30px);
    font-weight: bold;
    font-family: "Helvetica", "Arial", sans-serif;
    transform: rotate(-3.3deg);
}
.top_main_visual_maintitle {
    position: absolute;
    top: 38%;
    left: 35px;
    color: #1E1D1A;
    font-size: clamp(16px, 3vw, 60px);
    font-weight: bold;
    font-family: "Helvetica", "Arial", sans-serif;
    transform: rotate(-3.3deg);
}
.top_main_visual_maintitle .font_strong{
    color: #FF8C00;
    margin-right: 5px!important;
    font-size: clamp(18px, 4vw, 78px);
}
.top_main_visual_3circle {
    position: absolute;
    bottom: 10%;
    left: 35px;
    display: flex;
}
.top_main_visual_3circle_box {
    background: url('images/mainimage202607-circle_pc.png')no-repeat;
    background-position: center;
    background-size: cover;
    width: 14vw;
    height: 14vw;
    margin-right: 1.2vw;
    text-align: center;
    color: #fff;
    font-size: clamp(16px, 1.8vw, 60px);
    font-family: "Helvetica", "Arial", sans-serif;
    font-weight: bold;
    line-height: 1.3em;
}
.top_main_visual_3circle_box_top {
    height: 50%;
    position: relative;
    top: 20%;
    transform: translate(0, -20%);
}
.top_main_visual_3circle_box_bottom {
    height: 50%;
    position: relative;
    top: 5%;
    transform: translate(0, -2.5%);
}
.top_main_visual_3circle_small {
    font-size: clamp(12px, 1.2vw, 40px);
    font-weight: normal;
}
@media (max-width: 1080px) {
    .top_main_visual_3circle_box {
        line-height: 1.2rem;
    }
}
@media (max-width: 667px) {
    .top_main_visual_subtitle {
        top: (25% + 9px);
        left: calc(1vw + 0px);
        font-size: clamp(10px, 2vw, 20px);
        transform: rotate(-3.6deg);
    }
    .top_main_visual_maintitle {
        top: calc(36% + 5px);
        left: calc(1vw + 0px);
        font-size: clamp(12px, 3vw, 30px);
        transform: rotate(-4deg);
    }
    .top_main_visual_maintitle .font_strong{
        color: #FF8C00;
        margin-right: 2px!important;
        font-size: clamp(16px, 3.5vw, 78px);
    }
    .top_main_visual_3circle {
        position: absolute;
        bottom: 0;
        top: 55%;
        left: 10px;
        display: flex;
    }
    .top_main_visual_3circle_box {
        background: url('images/mainimage202607-circle_sp.png')no-repeat;
        background-size: cover;
        width: 20vw;
        height: 20vw;
        margin-right: 0;
        font-size: clamp(12px, 2.3vw, 20px);
        line-height: 1rem;
    }
    .top_main_visual_3circle_box.circle01 {
        margin-top: 0;
    }
    .top_main_visual_3circle_box.circle02 {
        margin-top: 14vw;
        margin-left: -4vw;
    }
    .top_main_visual_3circle_box.circle03 {
        margin-top: -3vw;
        margin-left: -7vw;
    }
    .top_main_visual_3circle_box_top {
        height: 50%;
        position: relative;
        top: 20%;
        transform: translate(0, -25%);
        margin-left: 2px;
    }
    .top_main_visual_3circle_box_bottom {
        height: 50%;
        position: relative;
        top: 5%;
        transform: translate(0, -2.5%);
        margin-left: 2px;
    }
    .top_main_visual_3circle_small {
        font-size: clamp(10px, 2vw, 20px);
        font-weight: normal;
    }
}