@import url(https://fonts.googleapis.com/earlyaccess/notosansjapanese.css);@import url(https://fonts.googleapis.com/earlyaccess/mplus1p.css);@import url('https://fonts.googleapis.com/css2?family=Jost:wght@300;400;500&family=Noto+Sans+JP&display=swap');html {
    color: #000;
    background: #FFF
}

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,legend,input,textarea,p,blockquote,th,td {
    margin: 0;
    padding: 0
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

fieldset,img {
    border: 0
}

address,caption,cite,code,dfn,em,strong,th,var {
    font-style: normal;
    font-weight: normal
}

ol,ul {
    list-style: none
}

caption,th {
    text-align: left
}

h1,h2,h3,h4,h5,h6 {
    font-size: 100%;
    font-weight: normal
}

q:before,q:after {
    content: ''
}

abbr,acronym {
    border: 0;
    font-variant: normal
}

sup {
    vertical-align: text-top
}

sub {
    vertical-align: text-bottom
}

input,textarea,select {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit;
    *font-size: 100%
}

legend {
    color: #000
}

#yui3-css-stamp.cssreset {
    display: none
}

/*!
* Bootstrap v3.3.7 (http://getbootstrap.com)
* Copyright 2011-2016 Twitter, Inc.
* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)
*/
@font-face {
    font-family: 'Glyphicons Halflings';
    src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot");
    src: url("../fonts/bootstrap/glyphicons-halflings-regular.eot?#iefix") format("embedded-opentype"),url("../fonts/bootstrap/glyphicons-halflings-regular.woff2") format("woff2"),url("../fonts/bootstrap/glyphicons-halflings-regular.woff") format("woff"),url("../fonts/bootstrap/glyphicons-halflings-regular.ttf") format("truetype"),url("../fonts/bootstrap/glyphicons-halflings-regular.svg#glyphicons_halflingsregular") format("svg")
}

@media(min-width:769px) {
    .only-sp {
        display: none;
    }
}

.glyphicon {
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    font-style: normal;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.glyphicon-asterisk:before {
    content: "\002a"
}

.glyphicon-plus:before {
    content: "\002b"
}

.glyphicon-euro:before,.glyphicon-eur:before {
    content: "\20ac"
}

.glyphicon-minus:before {
    content: "\2212"
}

.glyphicon-cloud:before {
    content: "\2601"
}

.glyphicon-envelope:before {
    content: "\2709"
}

.glyphicon-pencil:before {
    content: "\270f"
}

.glyphicon-glass:before {
    content: "\e001"
}

.glyphicon-music:before {
    content: "\e002"
}

.glyphicon-search:before {
    content: "\e003"
}

.glyphicon-heart:before {
    content: "\e005"
}

.glyphicon-star:before {
    content: "\e006"
}

.glyphicon-star-empty:before {
    content: "\e007"
}

.glyphicon-user:before {
    content: "\e008"
}

.glyphicon-film:before {
    content: "\e009"
}

.glyphicon-th-large:before {
    content: "\e010"
}

.glyphicon-th:before {
    content: "\e011"
}

.glyphicon-th-list:before {
    content: "\e012"
}

.glyphicon-ok:before {
    content: "\e013"
}

.glyphicon-remove:before {
    content: "\e014"
}

.glyphicon-zoom-in:before {
    content: "\e015"
}

.glyphicon-zoom-out:before {
    content: "\e016"
}

.glyphicon-off:before {
    content: "\e017"
}

.glyphicon-signal:before {
    content: "\e018"
}

.glyphicon-cog:before {
    content: "\e019"
}

.glyphicon-trash:before {
    content: "\e020"
}

.glyphicon-home:before {
    content: "\e021"
}

.glyphicon-file:before {
    content: "\e022"
}

.glyphicon-time:before {
    content: "\e023"
}

.glyphicon-road:before {
    content: "\e024"
}

.glyphicon-download-alt:before {
    content: "\e025"
}

.glyphicon-download:before {
    content: "\e026"
}

.glyphicon-upload:before {
    content: "\e027"
}

.glyphicon-inbox:before {
    content: "\e028"
}

.glyphicon-play-circle:before {
    content: "\e029"
}

.glyphicon-repeat:before {
    content: "\e030"
}

.glyphicon-refresh:before {
    content: "\e031"
}

.glyphicon-list-alt:before {
    content: "\e032"
}

.glyphicon-lock:before {
    content: "\e033"
}

.glyphicon-flag:before {
    content: "\e034"
}

.glyphicon-headphones:before {
    content: "\e035"
}

.glyphicon-volume-off:before {
    content: "\e036"
}

.glyphicon-volume-down:before {
    content: "\e037"
}

.glyphicon-volume-up:before {
    content: "\e038"
}

.glyphicon-qrcode:before {
    content: "\e039"
}

.glyphicon-barcode:before {
    content: "\e040"
}

.glyphicon-tag:before {
    content: "\e041"
}

.glyphicon-tags:before {
    content: "\e042"
}

.glyphicon-book:before {
    content: "\e043"
}

.glyphicon-bookmark:before {
    content: "\e044"
}

.glyphicon-print:before {
    content: "\e045"
}

.glyphicon-camera:before {
    content: "\e046"
}

.glyphicon-font:before {
    content: "\e047"
}

.glyphicon-bold:before {
    content: "\e048"
}

.glyphicon-italic:before {
    content: "\e049"
}

.glyphicon-text-height:before {
    content: "\e050"
}

.glyphicon-text-width:before {
    content: "\e051"
}

.glyphicon-align-left:before {
    content: "\e052"
}

.glyphicon-align-center:before {
    content: "\e053"
}

.glyphicon-align-right:before {
    content: "\e054"
}

.glyphicon-align-justify:before {
    content: "\e055"
}

.glyphicon-list:before {
    content: "\e056"
}

.glyphicon-indent-left:before {
    content: "\e057"
}

.glyphicon-indent-right:before {
    content: "\e058"
}

.glyphicon-facetime-video:before {
    content: "\e059"
}

.glyphicon-picture:before {
    content: "\e060"
}

.glyphicon-map-marker:before {
    content: "\e062"
}

.glyphicon-adjust:before {
    content: "\e063"
}

.glyphicon-tint:before {
    content: "\e064"
}

.glyphicon-edit:before {
    content: "\e065"
}

.glyphicon-share:before {
    content: "\e066"
}

.glyphicon-check:before {
    content: "\e067"
}

.glyphicon-move:before {
    content: "\e068"
}

.glyphicon-step-backward:before {
    content: "\e069"
}

.glyphicon-fast-backward:before {
    content: "\e070"
}

.glyphicon-backward:before {
    content: "\e071"
}

.glyphicon-play:before {
    content: "\e072"
}

.glyphicon-pause:before {
    content: "\e073"
}

.glyphicon-stop:before {
    content: "\e074"
}

.glyphicon-forward:before {
    content: "\e075"
}

.glyphicon-fast-forward:before {
    content: "\e076"
}

.glyphicon-step-forward:before {
    content: "\e077"
}

.glyphicon-eject:before {
    content: "\e078"
}

.glyphicon-chevron-left:before {
    content: "\e079"
}

.glyphicon-chevron-right:before {
    content: "\e080"
}

.glyphicon-plus-sign:before {
    content: "\e081"
}

.glyphicon-minus-sign:before {
    content: "\e082"
}

.glyphicon-remove-sign:before {
    content: "\e083"
}

.glyphicon-ok-sign:before {
    content: "\e084"
}

.glyphicon-question-sign:before {
    content: "\e085"
}

.glyphicon-info-sign:before {
    content: "\e086"
}

.glyphicon-screenshot:before {
    content: "\e087"
}

.glyphicon-remove-circle:before {
    content: "\e088"
}

.glyphicon-ok-circle:before {
    content: "\e089"
}

.glyphicon-ban-circle:before {
    content: "\e090"
}

.glyphicon-arrow-left:before {
    content: "\e091"
}

.glyphicon-arrow-right:before {
    content: "\e092"
}

.glyphicon-arrow-up:before {
    content: "\e093"
}

.glyphicon-arrow-down:before {
    content: "\e094"
}

.glyphicon-share-alt:before {
    content: "\e095"
}

.glyphicon-resize-full:before {
    content: "\e096"
}

.glyphicon-resize-small:before {
    content: "\e097"
}

.glyphicon-exclamation-sign:before {
    content: "\e101"
}

.glyphicon-gift:before {
    content: "\e102"
}

.glyphicon-leaf:before {
    content: "\e103"
}

.glyphicon-fire:before {
    content: "\e104"
}

.glyphicon-eye-open:before {
    content: "\e105"
}

.glyphicon-eye-close:before {
    content: "\e106"
}

.glyphicon-warning-sign:before {
    content: "\e107"
}

.glyphicon-plane:before {
    content: "\e108"
}

.glyphicon-calendar:before {
    content: "\e109"
}

.glyphicon-random:before {
    content: "\e110"
}

.glyphicon-comment:before {
    content: "\e111"
}

.glyphicon-magnet:before {
    content: "\e112"
}

.glyphicon-chevron-up:before {
    content: "\e113"
}

.glyphicon-chevron-down:before {
    content: "\e114"
}

.glyphicon-retweet:before {
    content: "\e115"
}

.glyphicon-shopping-cart:before {
    content: "\e116"
}

.glyphicon-folder-close:before {
    content: "\e117"
}

.glyphicon-folder-open:before {
    content: "\e118"
}

.glyphicon-resize-vertical:before {
    content: "\e119"
}

.glyphicon-resize-horizontal:before {
    content: "\e120"
}

.glyphicon-hdd:before {
    content: "\e121"
}

.glyphicon-bullhorn:before {
    content: "\e122"
}

.glyphicon-bell:before {
    content: "\e123"
}

.glyphicon-certificate:before {
    content: "\e124"
}

.glyphicon-thumbs-up:before {
    content: "\e125"
}

.glyphicon-thumbs-down:before {
    content: "\e126"
}

.glyphicon-hand-right:before {
    content: "\e127"
}

.glyphicon-hand-left:before {
    content: "\e128"
}

.glyphicon-hand-up:before {
    content: "\e129"
}

.glyphicon-hand-down:before {
    content: "\e130"
}

.glyphicon-circle-arrow-right:before {
    content: "\e131"
}

.glyphicon-circle-arrow-left:before {
    content: "\e132"
}

.glyphicon-circle-arrow-up:before {
    content: "\e133"
}

.glyphicon-circle-arrow-down:before {
    content: "\e134"
}

.glyphicon-globe:before {
    content: "\e135"
}

.glyphicon-wrench:before {
    content: "\e136"
}

.glyphicon-tasks:before {
    content: "\e137"
}

.glyphicon-filter:before {
    content: "\e138"
}

.glyphicon-briefcase:before {
    content: "\e139"
}

.glyphicon-fullscreen:before {
    content: "\e140"
}

.glyphicon-dashboard:before {
    content: "\e141"
}

.glyphicon-paperclip:before {
    content: "\e142"
}

.glyphicon-heart-empty:before {
    content: "\e143"
}

.glyphicon-link:before {
    content: "\e144"
}

.glyphicon-phone:before {
    content: "\e145"
}

.glyphicon-pushpin:before {
    content: "\e146"
}

.glyphicon-usd:before {
    content: "\e148"
}

.glyphicon-gbp:before {
    content: "\e149"
}

.glyphicon-sort:before {
    content: "\e150"
}

.glyphicon-sort-by-alphabet:before {
    content: "\e151"
}

.glyphicon-sort-by-alphabet-alt:before {
    content: "\e152"
}

.glyphicon-sort-by-order:before {
    content: "\e153"
}

.glyphicon-sort-by-order-alt:before {
    content: "\e154"
}

.glyphicon-sort-by-attributes:before {
    content: "\e155"
}

.glyphicon-sort-by-attributes-alt:before {
    content: "\e156"
}

.glyphicon-unchecked:before {
    content: "\e157"
}

.glyphicon-expand:before {
    content: "\e158"
}

.glyphicon-collapse-down:before {
    content: "\e159"
}

.glyphicon-collapse-up:before {
    content: "\e160"
}

.glyphicon-log-in:before {
    content: "\e161"
}

.glyphicon-flash:before {
    content: "\e162"
}

.glyphicon-log-out:before {
    content: "\e163"
}

.glyphicon-new-window:before {
    content: "\e164"
}

.glyphicon-record:before {
    content: "\e165"
}

.glyphicon-save:before {
    content: "\e166"
}

.glyphicon-open:before {
    content: "\e167"
}

.glyphicon-saved:before {
    content: "\e168"
}

.glyphicon-import:before {
    content: "\e169"
}

.glyphicon-export:before {
    content: "\e170"
}

.glyphicon-send:before {
    content: "\e171"
}

.glyphicon-floppy-disk:before {
    content: "\e172"
}

.glyphicon-floppy-saved:before {
    content: "\e173"
}

.glyphicon-floppy-remove:before {
    content: "\e174"
}

.glyphicon-floppy-save:before {
    content: "\e175"
}

.glyphicon-floppy-open:before {
    content: "\e176"
}

.glyphicon-credit-card:before {
    content: "\e177"
}

.glyphicon-transfer:before {
    content: "\e178"
}

.glyphicon-cutlery:before {
    content: "\e179"
}

.glyphicon-header:before {
    content: "\e180"
}

.glyphicon-compressed:before {
    content: "\e181"
}

.glyphicon-earphone:before {
    content: "\e182"
}

.glyphicon-phone-alt:before {
    content: "\e183"
}

.glyphicon-tower:before {
    content: "\e184"
}

.glyphicon-stats:before {
    content: "\e185"
}

.glyphicon-sd-video:before {
    content: "\e186"
}

.glyphicon-hd-video:before {
    content: "\e187"
}

.glyphicon-subtitles:before {
    content: "\e188"
}

.glyphicon-sound-stereo:before {
    content: "\e189"
}

.glyphicon-sound-dolby:before {
    content: "\e190"
}

.glyphicon-sound-5-1:before {
    content: "\e191"
}

.glyphicon-sound-6-1:before {
    content: "\e192"
}

.glyphicon-sound-7-1:before {
    content: "\e193"
}

.glyphicon-copyright-mark:before {
    content: "\e194"
}

.glyphicon-registration-mark:before {
    content: "\e195"
}

.glyphicon-cloud-download:before {
    content: "\e197"
}

.glyphicon-cloud-upload:before {
    content: "\e198"
}

.glyphicon-tree-conifer:before {
    content: "\e199"
}

.glyphicon-tree-deciduous:before {
    content: "\e200"
}

.glyphicon-cd:before {
    content: "\e201"
}

.glyphicon-save-file:before {
    content: "\e202"
}

.glyphicon-open-file:before {
    content: "\e203"
}

.glyphicon-level-up:before {
    content: "\e204"
}

.glyphicon-copy:before {
    content: "\e205"
}

.glyphicon-paste:before {
    content: "\e206"
}

.glyphicon-alert:before {
    content: "\e209"
}

.glyphicon-equalizer:before {
    content: "\e210"
}

.glyphicon-king:before {
    content: "\e211"
}

.glyphicon-queen:before {
    content: "\e212"
}

.glyphicon-pawn:before {
    content: "\e213"
}

.glyphicon-bishop:before {
    content: "\e214"
}

.glyphicon-knight:before {
    content: "\e215"
}

.glyphicon-baby-formula:before {
    content: "\e216"
}

.glyphicon-tent:before {
    content: "\26fa"
}

.glyphicon-blackboard:before {
    content: "\e218"
}

.glyphicon-bed:before {
    content: "\e219"
}

.glyphicon-apple:before {
    content: "\f8ff"
}

.glyphicon-erase:before {
    content: "\e221"
}

.glyphicon-hourglass:before {
    content: "\231b"
}

.glyphicon-lamp:before {
    content: "\e223"
}

.glyphicon-duplicate:before {
    content: "\e224"
}

.glyphicon-piggy-bank:before {
    content: "\e225"
}

.glyphicon-scissors:before {
    content: "\e226"
}

.glyphicon-bitcoin:before,.glyphicon-btc:before,.glyphicon-xbt:before {
    content: "\e227"
}

.glyphicon-yen:before,.glyphicon-jpy:before {
    content: "\00a5"
}

.glyphicon-ruble:before,.glyphicon-rub:before {
    content: "\20bd"
}

.glyphicon-scale:before {
    content: "\e230"
}

.glyphicon-ice-lolly:before {
    content: "\e231"
}

.glyphicon-ice-lolly-tasted:before {
    content: "\e232"
}

.glyphicon-education:before {
    content: "\e233"
}

.glyphicon-option-horizontal:before {
    content: "\e234"
}

.glyphicon-option-vertical:before {
    content: "\e235"
}

.glyphicon-menu-hamburger:before {
    content: "\e236"
}

.glyphicon-modal-window:before {
    content: "\e237"
}

.glyphicon-oil:before {
    content: "\e238"
}

.glyphicon-grain:before {
    content: "\e239"
}

.glyphicon-sunglasses:before {
    content: "\e240"
}

.glyphicon-text-size:before {
    content: "\e241"
}

.glyphicon-text-color:before {
    content: "\e242"
}

.glyphicon-text-background:before {
    content: "\e243"
}

.glyphicon-object-align-top:before {
    content: "\e244"
}

.glyphicon-object-align-bottom:before {
    content: "\e245"
}

.glyphicon-object-align-horizontal:before {
    content: "\e246"
}

.glyphicon-object-align-left:before {
    content: "\e247"
}

.glyphicon-object-align-vertical:before {
    content: "\e248"
}

.glyphicon-object-align-right:before {
    content: "\e249"
}

.glyphicon-triangle-right:before {
    content: "\e250"
}

.glyphicon-triangle-left:before {
    content: "\e251"
}

.glyphicon-triangle-bottom:before {
    content: "\e252"
}

.glyphicon-triangle-top:before {
    content: "\e253"
}

.glyphicon-console:before {
    content: "\e254"
}

.glyphicon-superscript:before {
    content: "\e255"
}

.glyphicon-subscript:before {
    content: "\e256"
}

.glyphicon-menu-left:before {
    content: "\e257"
}

.glyphicon-menu-right:before {
    content: "\e258"
}

.glyphicon-menu-down:before {
    content: "\e259"
}

.glyphicon-menu-up:before {
    content: "\e260"
}

* {
    box-sizing: border-box
}

*:before,*:after {
    box-sizing: border-box
}

html {
    font-size: 10px;
    -webkit-tap-highlight-color: transparent
}

body {
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 14px;
    line-height: 1.42857;
    color: #333;
    background-color: #fff
}

input,button,select,textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}

a {
    color: #337ab7;
    text-decoration: none
}

a:hover {
    color: #23527c;
    text-decoration: underline
}

a:focus {
    color: #23527c;
    text-decoration: underline;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px
}

figure {
    margin: 0
}

img {
    vertical-align: middle
}

.img-responsive {
    display: block;
    max-width: 100%;
    height: auto
}

.img-rounded {
    border-radius: 6px
}

.img-thumbnail {
    padding: 4px;
    line-height: 1.42857;
    background-color: #fff;
    border: 1px solid #ddd;
    border-radius: 4px;
    transition: all 0.2s ease-in-out;
    display: inline-block;
    max-width: 100%;
    height: auto
}

.img-circle {
    border-radius: 50%
}

hr {
    margin-top: 20px;
    margin-bottom: 20px;
    border: 0;
    border-top: 1px solid #eee
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0
}

.sr-only-focusable:active,.sr-only-focusable:focus {
    position: static;
    width: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    clip: auto
}

[role="button"] {
    cursor: pointer
}

.container,.container-fluid {
    margin-right: auto;
    margin-left: auto;
    padding-left: 15px;
    padding-right: 15px
}

.container:before,.container-fluid:before {
    content: " ";
    display: table
}

.container:after,.container-fluid:after {
    content: " ";
    display: table;
    clear: both
}

@media (min-width: 768px) {
    .container {
        width:750px
    }
}

@media (min-width: 992px) {
    .container {
        width:970px
    }
}

@media (min-width: 1200px) {
    .container {
        width:1170px
    }
}

.row {
    margin-left: -15px;
    margin-right: -15px
}

.row:before {
    content: " ";
    display: table
}

.row:after {
    content: " ";
    display: table;
    clear: both
}

.col-xs-1,.col-sm-1,.col-md-1,.col-lg-1,.col-xs-2,.col-sm-2,.col-md-2,.col-lg-2,.col-xs-3,.col-sm-3,.col-md-3,.col-lg-3,.col-xs-4,.col-sm-4,.col-md-4,.col-lg-4,.col-xs-5,.col-sm-5,.col-md-5,.col-lg-5,.col-xs-6,.col-sm-6,.col-md-6,.col-lg-6,.col-xs-7,.col-sm-7,.col-md-7,.col-lg-7,.col-xs-8,.col-sm-8,.col-md-8,.col-lg-8,.col-xs-9,.col-sm-9,.col-md-9,.col-lg-9,.col-xs-10,.col-sm-10,.col-md-10,.col-lg-10,.col-xs-11,.col-sm-11,.col-md-11,.col-lg-11,.col-xs-12,.col-sm-12,.col-md-12,.col-lg-12 {
    position: relative;
    min-height: 1px;
    padding-left: 15px;
    padding-right: 15px
}

.col-xs-1,.col-xs-2,.col-xs-3,.col-xs-4,.col-xs-5,.col-xs-6,.col-xs-7,.col-xs-8,.col-xs-9,.col-xs-10,.col-xs-11,.col-xs-12 {
    float: left
}

.col-xs-1 {
    width: 8.33333%
}

.col-xs-2 {
    width: 16.66667%
}

.col-xs-3 {
    width: 25%
}

.col-xs-4 {
    width: 33.33333%
}

.col-xs-5 {
    width: 41.66667%
}

.col-xs-6 {
    width: 50%
}

.col-xs-7 {
    width: 58.33333%
}

.col-xs-8 {
    width: 66.66667%
}

.col-xs-9 {
    width: 75%
}

.col-xs-10 {
    width: 83.33333%
}

.col-xs-11 {
    width: 91.66667%
}

.col-xs-12 {
    width: 100%
}

.col-xs-pull-0 {
    right: auto
}

.col-xs-pull-1 {
    right: 8.33333%
}

.col-xs-pull-2 {
    right: 16.66667%
}

.col-xs-pull-3 {
    right: 25%
}

.col-xs-pull-4 {
    right: 33.33333%
}

.col-xs-pull-5 {
    right: 41.66667%
}

.col-xs-pull-6 {
    right: 50%
}

.col-xs-pull-7 {
    right: 58.33333%
}

.col-xs-pull-8 {
    right: 66.66667%
}

.col-xs-pull-9 {
    right: 75%
}

.col-xs-pull-10 {
    right: 83.33333%
}

.col-xs-pull-11 {
    right: 91.66667%
}

.col-xs-pull-12 {
    right: 100%
}

.col-xs-push-0 {
    left: auto
}

.col-xs-push-1 {
    left: 8.33333%
}

.col-xs-push-2 {
    left: 16.66667%
}

.col-xs-push-3 {
    left: 25%
}

.col-xs-push-4 {
    left: 33.33333%
}

.col-xs-push-5 {
    left: 41.66667%
}

.col-xs-push-6 {
    left: 50%
}

.col-xs-push-7 {
    left: 58.33333%
}

.col-xs-push-8 {
    left: 66.66667%
}

.col-xs-push-9 {
    left: 75%
}

.col-xs-push-10 {
    left: 83.33333%
}

.col-xs-push-11 {
    left: 91.66667%
}

.col-xs-push-12 {
    left: 100%
}

.col-xs-offset-0 {
    margin-left: 0%
}

.col-xs-offset-1 {
    margin-left: 8.33333%
}

.col-xs-offset-2 {
    margin-left: 16.66667%
}

.col-xs-offset-3 {
    margin-left: 25%
}

.col-xs-offset-4 {
    margin-left: 33.33333%
}

.col-xs-offset-5 {
    margin-left: 41.66667%
}

.col-xs-offset-6 {
    margin-left: 50%
}

.col-xs-offset-7 {
    margin-left: 58.33333%
}

.col-xs-offset-8 {
    margin-left: 66.66667%
}

.col-xs-offset-9 {
    margin-left: 75%
}

.col-xs-offset-10 {
    margin-left: 83.33333%
}

.col-xs-offset-11 {
    margin-left: 91.66667%
}

.col-xs-offset-12 {
    margin-left: 100%
}

@media (min-width: 768px) {
    .col-sm-1,.col-sm-2,.col-sm-3,.col-sm-4,.col-sm-5,.col-sm-6,.col-sm-7,.col-sm-8,.col-sm-9,.col-sm-10,.col-sm-11,.col-sm-12 {
        float:left
    }

    .col-sm-1 {
        width: 8.33333%
    }

    .col-sm-2 {
        width: 16.66667%
    }

    .col-sm-3 {
        width: 25%
    }

    .col-sm-4 {
        width: 33.33333%
    }

    .col-sm-5 {
        width: 41.66667%
    }

    .col-sm-6 {
        width: 50%
    }

    .col-sm-7 {
        width: 58.33333%
    }

    .col-sm-8 {
        width: 66.66667%
    }

    .col-sm-9 {
        width: 75%
    }

    .col-sm-10 {
        width: 83.33333%
    }

    .col-sm-11 {
        width: 91.66667%
    }

    .col-sm-12 {
        width: 100%
    }

    .col-sm-pull-0 {
        right: auto
    }

    .col-sm-pull-1 {
        right: 8.33333%
    }

    .col-sm-pull-2 {
        right: 16.66667%
    }

    .col-sm-pull-3 {
        right: 25%
    }

    .col-sm-pull-4 {
        right: 33.33333%
    }

    .col-sm-pull-5 {
        right: 41.66667%
    }

    .col-sm-pull-6 {
        right: 50%
    }

    .col-sm-pull-7 {
        right: 58.33333%
    }

    .col-sm-pull-8 {
        right: 66.66667%
    }

    .col-sm-pull-9 {
        right: 75%
    }

    .col-sm-pull-10 {
        right: 83.33333%
    }

    .col-sm-pull-11 {
        right: 91.66667%
    }

    .col-sm-pull-12 {
        right: 100%
    }

    .col-sm-push-0 {
        left: auto
    }

    .col-sm-push-1 {
        left: 8.33333%
    }

    .col-sm-push-2 {
        left: 16.66667%
    }

    .col-sm-push-3 {
        left: 25%
    }

    .col-sm-push-4 {
        left: 33.33333%
    }

    .col-sm-push-5 {
        left: 41.66667%
    }

    .col-sm-push-6 {
        left: 50%
    }

    .col-sm-push-7 {
        left: 58.33333%
    }

    .col-sm-push-8 {
        left: 66.66667%
    }

    .col-sm-push-9 {
        left: 75%
    }

    .col-sm-push-10 {
        left: 83.33333%
    }

    .col-sm-push-11 {
        left: 91.66667%
    }

    .col-sm-push-12 {
        left: 100%
    }

    .col-sm-offset-0 {
        margin-left: 0%
    }

    .col-sm-offset-1 {
        margin-left: 8.33333%
    }

    .col-sm-offset-2 {
        margin-left: 16.66667%
    }

    .col-sm-offset-3 {
        margin-left: 25%
    }

    .col-sm-offset-4 {
        margin-left: 33.33333%
    }

    .col-sm-offset-5 {
        margin-left: 41.66667%
    }

    .col-sm-offset-6 {
        margin-left: 50%
    }

    .col-sm-offset-7 {
        margin-left: 58.33333%
    }

    .col-sm-offset-8 {
        margin-left: 66.66667%
    }

    .col-sm-offset-9 {
        margin-left: 75%
    }

    .col-sm-offset-10 {
        margin-left: 83.33333%
    }

    .col-sm-offset-11 {
        margin-left: 91.66667%
    }

    .col-sm-offset-12 {
        margin-left: 100%
    }
}

@media (min-width: 992px) {
    .col-md-1,.col-md-2,.col-md-3,.col-md-4,.col-md-5,.col-md-6,.col-md-7,.col-md-8,.col-md-9,.col-md-10,.col-md-11,.col-md-12 {
        float:left
    }

    .col-md-1 {
        width: 8.33333%
    }

    .col-md-2 {
        width: 16.66667%
    }

    .col-md-3 {
        width: 25%
    }

    .col-md-4 {
        width: 33.33333%
    }

    .col-md-5 {
        width: 41.66667%
    }

    .col-md-6 {
        width: 50%
    }

    .col-md-7 {
        width: 58.33333%
    }

    .col-md-8 {
        width: 66.66667%
    }

    .col-md-9 {
        width: 75%
    }

    .col-md-10 {
        width: 83.33333%
    }

    .col-md-11 {
        width: 91.66667%
    }

    .col-md-12 {
        width: 100%
    }

    .col-md-pull-0 {
        right: auto
    }

    .col-md-pull-1 {
        right: 8.33333%
    }

    .col-md-pull-2 {
        right: 16.66667%
    }

    .col-md-pull-3 {
        right: 25%
    }

    .col-md-pull-4 {
        right: 33.33333%
    }

    .col-md-pull-5 {
        right: 41.66667%
    }

    .col-md-pull-6 {
        right: 50%
    }

    .col-md-pull-7 {
        right: 58.33333%
    }

    .col-md-pull-8 {
        right: 66.66667%
    }

    .col-md-pull-9 {
        right: 75%
    }

    .col-md-pull-10 {
        right: 83.33333%
    }

    .col-md-pull-11 {
        right: 91.66667%
    }

    .col-md-pull-12 {
        right: 100%
    }

    .col-md-push-0 {
        left: auto
    }

    .col-md-push-1 {
        left: 8.33333%
    }

    .col-md-push-2 {
        left: 16.66667%
    }

    .col-md-push-3 {
        left: 25%
    }

    .col-md-push-4 {
        left: 33.33333%
    }

    .col-md-push-5 {
        left: 41.66667%
    }

    .col-md-push-6 {
        left: 50%
    }

    .col-md-push-7 {
        left: 58.33333%
    }

    .col-md-push-8 {
        left: 66.66667%
    }

    .col-md-push-9 {
        left: 75%
    }

    .col-md-push-10 {
        left: 83.33333%
    }

    .col-md-push-11 {
        left: 91.66667%
    }

    .col-md-push-12 {
        left: 100%
    }

    .col-md-offset-0 {
        margin-left: 0%
    }

    .col-md-offset-1 {
        margin-left: 8.33333%
    }

    .col-md-offset-2 {
        margin-left: 16.66667%
    }

    .col-md-offset-3 {
        margin-left: 25%
    }

    .col-md-offset-4 {
        margin-left: 33.33333%
    }

    .col-md-offset-5 {
        margin-left: 41.66667%
    }

    .col-md-offset-6 {
        margin-left: 50%
    }

    .col-md-offset-7 {
        margin-left: 58.33333%
    }

    .col-md-offset-8 {
        margin-left: 66.66667%
    }

    .col-md-offset-9 {
        margin-left: 75%
    }

    .col-md-offset-10 {
        margin-left: 83.33333%
    }

    .col-md-offset-11 {
        margin-left: 91.66667%
    }

    .col-md-offset-12 {
        margin-left: 100%
    }
}

@media (min-width: 1200px) {
    .col-lg-1,.col-lg-2,.col-lg-3,.col-lg-4,.col-lg-5,.col-lg-6,.col-lg-7,.col-lg-8,.col-lg-9,.col-lg-10,.col-lg-11,.col-lg-12 {
        float:left
    }

    .col-lg-1 {
        width: 8.33333%
    }

    .col-lg-2 {
        width: 16.66667%
    }

    .col-lg-3 {
        width: 25%
    }

    .col-lg-4 {
        width: 33.33333%
    }

    .col-lg-5 {
        width: 41.66667%
    }

    .col-lg-6 {
        width: 50%
    }

    .col-lg-7 {
        width: 58.33333%
    }

    .col-lg-8 {
        width: 66.66667%
    }

    .col-lg-9 {
        width: 75%
    }

    .col-lg-10 {
        width: 83.33333%
    }

    .col-lg-11 {
        width: 91.66667%
    }

    .col-lg-12 {
        width: 100%
    }

    .col-lg-pull-0 {
        right: auto
    }

    .col-lg-pull-1 {
        right: 8.33333%
    }

    .col-lg-pull-2 {
        right: 16.66667%
    }

    .col-lg-pull-3 {
        right: 25%
    }

    .col-lg-pull-4 {
        right: 33.33333%
    }

    .col-lg-pull-5 {
        right: 41.66667%
    }

    .col-lg-pull-6 {
        right: 50%
    }

    .col-lg-pull-7 {
        right: 58.33333%
    }

    .col-lg-pull-8 {
        right: 66.66667%
    }

    .col-lg-pull-9 {
        right: 75%
    }

    .col-lg-pull-10 {
        right: 83.33333%
    }

    .col-lg-pull-11 {
        right: 91.66667%
    }

    .col-lg-pull-12 {
        right: 100%
    }

    .col-lg-push-0 {
        left: auto
    }

    .col-lg-push-1 {
        left: 8.33333%
    }

    .col-lg-push-2 {
        left: 16.66667%
    }

    .col-lg-push-3 {
        left: 25%
    }

    .col-lg-push-4 {
        left: 33.33333%
    }

    .col-lg-push-5 {
        left: 41.66667%
    }

    .col-lg-push-6 {
        left: 50%
    }

    .col-lg-push-7 {
        left: 58.33333%
    }

    .col-lg-push-8 {
        left: 66.66667%
    }

    .col-lg-push-9 {
        left: 75%
    }

    .col-lg-push-10 {
        left: 83.33333%
    }

    .col-lg-push-11 {
        left: 91.66667%
    }

    .col-lg-push-12 {
        left: 100%
    }

    .col-lg-offset-0 {
        margin-left: 0%
    }

    .col-lg-offset-1 {
        margin-left: 8.33333%
    }

    .col-lg-offset-2 {
        margin-left: 16.66667%
    }

    .col-lg-offset-3 {
        margin-left: 25%
    }

    .col-lg-offset-4 {
        margin-left: 33.33333%
    }

    .col-lg-offset-5 {
        margin-left: 41.66667%
    }

    .col-lg-offset-6 {
        margin-left: 50%
    }

    .col-lg-offset-7 {
        margin-left: 58.33333%
    }

    .col-lg-offset-8 {
        margin-left: 66.66667%
    }

    .col-lg-offset-9 {
        margin-left: 75%
    }

    .col-lg-offset-10 {
        margin-left: 83.33333%
    }

    .col-lg-offset-11 {
        margin-left: 91.66667%
    }

    .col-lg-offset-12 {
        margin-left: 100%
    }
}

.clearfix:before {
    content: " ";
    display: table
}

.clearfix:after {
    content: " ";
    display: table;
    clear: both
}

.center-block {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.pull-right {
    float: right !important
}

.pull-left {
    float: left !important
}

.hide {
    display: none !important
}

.show {
    display: block !important
}

.invisible {
    visibility: hidden
}

.text-hide {
    font: 0/0 a;
    color: transparent;
    text-shadow: none;
    background-color: transparent;
    border: 0
}

.hidden {
    display: none !important
}

.affix {
    position: fixed
}

@-ms-viewport {
    width: device-width
}

.visible-xs,.visible-sm,.visible-md,.visible-lg,.visible-xs-block,.visible-xs-inline,.visible-xs-inline-block,.visible-sm-block,.visible-sm-inline,.visible-sm-inline-block,.visible-md-block,.visible-md-inline,.visible-md-inline-block,.visible-lg-block,.visible-lg-inline,.visible-lg-inline-block,.visible-print,.visible-print-block,.visible-print-inline,.visible-print-inline-block {
    display: none !important
}

@media (max-width: 767px) {
    .visible-xs {
        display:block !important
    }

    table.visible-xs {
        display: table !important
    }

    tr.visible-xs {
        display: table-row !important
    }

    th.visible-xs,td.visible-xs {
        display: table-cell !important
    }
}

@media (max-width: 767px) {
    .visible-xs-block {
        display:block !important
    }
}

@media (max-width: 767px) {
    .visible-xs-inline {
        display:inline !important
    }
}

@media (max-width: 767px) {
    .visible-xs-inline-block {
        display:inline-block !important
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .visible-sm {
        display:block !important
    }

    table.visible-sm {
        display: table !important
    }

    tr.visible-sm {
        display: table-row !important
    }

    th.visible-sm,td.visible-sm {
        display: table-cell !important
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .visible-sm-block {
        display:block !important
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .visible-sm-inline {
        display:inline !important
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .visible-sm-inline-block {
        display:inline-block !important
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .visible-md {
        display:block !important
    }

    table.visible-md {
        display: table !important
    }

    tr.visible-md {
        display: table-row !important
    }

    th.visible-md,td.visible-md {
        display: table-cell !important
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .visible-md-block {
        display:block !important
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .visible-md-inline {
        display:inline !important
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .visible-md-inline-block {
        display:inline-block !important
    }
}

@media (min-width: 1200px) {
    .visible-lg {
        display:block !important
    }

    table.visible-lg {
        display: table !important
    }

    tr.visible-lg {
        display: table-row !important
    }

    th.visible-lg,td.visible-lg {
        display: table-cell !important
    }
}

@media (min-width: 1200px) {
    .visible-lg-block {
        display:block !important
    }
}

@media (min-width: 1200px) {
    .visible-lg-inline {
        display:inline !important
    }
}

@media (min-width: 1200px) {
    .visible-lg-inline-block {
        display:inline-block !important
    }
}

@media (max-width: 767px) {
    .hidden-xs {
        display:none !important
    }
}

@media (min-width: 768px) and (max-width: 991px) {
    .hidden-sm {
        display:none !important
    }
}

@media (min-width: 992px) and (max-width: 1199px) {
    .hidden-md {
        display:none !important
    }
}

@media (min-width: 1200px) {
    .hidden-lg {
        display:none !important
    }
}

@media print {
    .visible-print {
        display: block !important
    }

    table.visible-print {
        display: table !important
    }

    tr.visible-print {
        display: table-row !important
    }

    th.visible-print,td.visible-print {
        display: table-cell !important
    }
}

@media print {
    .visible-print-block {
        display: block !important
    }
}

@media print {
    .visible-print-inline {
        display: inline !important
    }
}

@media print {
    .visible-print-inline-block {
        display: inline-block !important
    }
}

@media print {
    .hidden-print {
        display: none !important
    }
}

body:after {
    content: url(vender/close.png) url(vender/loading.gif) url(vender/prev.png) url(vender/next.png);
    display: none
}

body.lb-disable-scrolling {
    overflow: hidden
}

.lightbox {
    position: absolute;
    left: 0;
    width: 100%;
    z-index: 10000;
    text-align: center;
    line-height: 0;
    font-weight: normal
}

.lightboxOverlay {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 9999;
    background-color: black;
    opacity: .8;
    filter: alpha(opacity=80);
    display: none
}

.lightbox .lb-image {
    display: block;
    height: auto;
    max-width: inherit;
    border-radius: 3px
}

.lightbox a img {
    border: none
}

.lb-outerContainer {
    position: relative;
    background-color: white;
    *zoom:1;width: 250px;
    height: 250px;
    margin: 0 auto;
    border-radius: 4px
}

.lb-outerContainer:after {
    content: "";
    display: table;
    clear: both
}

.lb-container {
    padding: 4px
}

.lb-loader {
    position: absolute;
    top: 43%;
    left: 0;
    height: 25%;
    width: 100%;
    text-align: center;
    line-height: 0
}

.lb-cancel {
    display: block;
    width: 32px;
    height: 32px;
    margin: 0 auto;
    background: url(vender/loading.gif) no-repeat
}

.lb-nav {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    z-index: 10
}

.lb-container>.nav {
    left: 0
}

.lb-nav a {
    outline: none;
    background-image: url("data:image/gif;base64,R0lGODlhAQABAPAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw==")
}

.lb-prev,.lb-next {
    height: 100%;
    cursor: pointer;
    display: block
}

.lb-nav a.lb-prev {
    width: 34%;
    left: 0;
    float: left;
    background: url(vender/prev.png) left 48% no-repeat;
    opacity: 0;
    filter: alpha(opacity=0);
    transition: opacity 0.6s
}

.lb-nav a.lb-prev:hover {
    opacity: 1;
    filter: alpha(opacity=100)
}

.lb-nav a.lb-next {
    width: 64%;
    right: 0;
    float: right;
    background: url(vender/next.png) right 48% no-repeat;
    opacity: 0;
    filter: alpha(opacity=0);
    transition: opacity 0.6s
}

.lb-nav a.lb-next:hover {
    opacity: 1;
    filter: alpha(opacity=100)
}

.lb-dataContainer {
    margin: 0 auto;
    padding-top: 5px;
    *zoom:1;width: 100%;
    border-bottom-left-radius: 4px;
    border-bottom-right-radius: 4px
}

.lb-dataContainer:after {
    content: "";
    display: table;
    clear: both
}

.lb-data {
    padding: 0 4px;
    color: #ccc
}

.lb-data .lb-details {
    width: 85%;
    float: left;
    text-align: left;
    line-height: 1.1em
}

.lb-data .lb-caption {
    font-size: 13px;
    font-weight: bold;
    line-height: 1em
}

.lb-data .lb-number {
    display: block;
    clear: left;
    padding-bottom: 1em;
    font-size: 12px;
    color: #999999
}

.lb-data .lb-close {
    display: block;
    float: right;
    width: 30px;
    height: 30px;
    background: url(vender/close.png) top right no-repeat;
    text-align: right;
    outline: none;
    opacity: .7;
    filter: alpha(opacity=70);
    transition: opacity 0.2s
}

.lb-data .lb-close:hover {
    cursor: pointer;
    opacity: 1;
    filter: alpha(opacity=100)
}

html {
    font-size: 63%;
    background: #fff;
    height: 100%
}

@media screen and (min-width: 1200px) {
    html {
        font-size:63%
    }
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
    html {
        font-size:50.4%
    }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    html {
        font-size:47.25%
    }
}

@media screen and (max-width: 767px) {
    html {
        font-size:47.25%
    }
}

body {
    font-family: "Mplus 1p","Yu Gothic",YuGothic,"游ゴシック","游ゴシック体","メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
    font-weight: 300;
    line-height: 1.6;
    min-width: 320px;
    min-height: 100vh;
    margin: 0 auto !important;
    color: #666;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    word-wrap: break-word;
    word-break: break-all;
    box-shadow: 0 0 10px #ccc;
    background: #fff;
    position: relative;
    -webkit-font-smoothing: antialiased
}

body.noscroll {
    height: 100vh;
    overflow: hidden
}

@media screen and (min-width: 1200px) {
    body {
        letter-spacing:.12em
    }
}

@media screen and (min-width: 992px) and (max-width: 1199px) {
    body {
        letter-spacing:.04em
    }
}

@media screen and (min-width: 768px) and (max-width: 991px) {
    body {
        letter-spacing:.02em
    }
}

@media screen and (max-width: 767px) {
    body {
        letter-spacing:.01em
    }
}

@media screen and (max-width: 767px) {
    body {
        max-width:650px
    }
}

a {
    color: #333;
    text-decoration: none;
    transition: .15s all linear
}

a:hover {
    transition: .15s all linear;
    color: #ff0071;
    text-decoration: none;
    transition: .15s all linear;
    transition: .15s all linear
}

table {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border-bottom: 2px solid #ccc;
    font-size: 1.6rem;
    margin-bottom: 1em
}

table th,table td {
    border: 1px solid #fff;
    padding: 5px
}

table th {
    padding: 0 5px;
    font-weight: bold;
    border-bottom: 2px solid #ccc
}

table tr:nth-child(2n) {
    background: #F4F4F4
}

table.form_table {
    border: none
}

table.form_table th,table.form_table td {
    border: none;
    padding: 5px;
    padding: 1em
}

table.form_table th {
    width: 300px;
    background: #F4F4F4;
    border-bottom: 1px solid #fff;
    vertical-align: top
}

table.form_table td {
    border: 1px solid #F4F4F4;
    border-color: #F4F4F4;
    font-weight: 400
}

table.form_table td small {
    line-height: 1.4;
    letter-spacing: 0
}

table.form_table tr {
    background: none
}

table.form_table input[type=text],table.form_table input[type=email],table.form_table input[type=tel] {
    width: 100%;
    border: 1px solid #ddd;
    padding: 0 .4em;
    display: block;
    max-height: 10em
}

table.form_table textarea {
    width: 100%;
    border: 1px solid #ddd;
    padding: 0 .4em;
    display: block;
    max-height: 10em
}

table.form_table input[type=text].other_kind {
    display: inline-block;
    max-width: 200px;
    padding: .2em .4em
}

table.form_table .required {
    margin-top: .4em;
    display: inline-block;
    background: #ff0071;
    color: #fff;
    padding: 0 1em;
    font-size: 1.2rem;
    float: right;
    font-weight: 700
}

input[type=submit] {
    border: none;
    display: block;
    width: 200px;
    height: 50px;
    line-height: 50px;
    text-align: center;
    background: #ff0071;
    color: #fff;
    border-radius: 0;
    font-weight: 500;
    margin: 1em auto;
    cursor: pointer;
    transition: .15s all ease-in-out
}

input[type=submit]:hover {
    transition: .15s all ease-in-out;
    background: coral
}

.table_wrap.radial_img {
    padding: 2em;
    margin: 2em 0
}

.table_wrap.radial_img table {
    border: none
}

.table_wrap.radial_img table th {
    border: none
}

.table_wrap.radial_img table td {
    border: none;
    padding: .4em
}

.table_wrap.radial_img table td .wrap {
    background: #F4F4F4;
    padding: .8em
}

.table_wrap.radial_img table th {
    font-size: 2rem;
    vertical-align: sub;
    padding: .4em 0
}

.table_wrap.radial_img table th span {
    display: inline-block;
    padding: .4em;
    border: 2px solid;
    width: 100%;
    text-align: center
}

.table_wrap.radial_img table tr {
    background: none
}

.table_wrap.radial_img table tr:nth-child(1) th span {
    border-color: #7f7fff
}

.table_wrap.radial_img table tr:nth-child(2) th span {
    border-color: #bf7fff
}

.table_wrap.radial_img table tr:nth-child(3) th span {
    border-color: #ff7fff
}

.table_wrap.radial_img table tr:nth-child(4) th span {
    border-color: #ff7f7f
}

.table_wrap.radial_img table tr:nth-child(5) th span {
    border-color: #ffbf7f
}

.table_wrap.radial_img table tr:nth-child(6) th span {
    border-color: #bfff7f
}

.table_wrap.radial_img table tr:nth-child(7) th span {
    border-color: #7fffbf
}

.table_wrap.radial_img table tr:nth-child(8) th span {
    border-color: #7f7fff
}

.table_wrap.radial_img table tr:nth-child(9) th span {
    border-color: #bf7fff
}

.table_wrap.radial_img table tr:nth-child(10) th span {
    border-color: #ff7fff
}

.table_wrap.radial_img table tr:nth-child(1) td .wrap {
    background: rgba(127,127,255,0.2)
}

.table_wrap.radial_img table tr:nth-child(2) td .wrap {
    background: rgba(191,127,255,0.2)
}

.table_wrap.radial_img table tr:nth-child(3) td .wrap {
    background: rgba(255,127,255,0.2)
}

.table_wrap.radial_img table tr:nth-child(4) td .wrap {
    background: rgba(255,127,127,0.2)
}

.table_wrap.radial_img table tr:nth-child(5) td .wrap {
    background: rgba(255,191,127,0.2)
}

.table_wrap.radial_img table tr:nth-child(6) td .wrap {
    background: rgba(191,255,127,0.2)
}

.table_wrap.radial_img table tr:nth-child(7) td .wrap {
    background: rgba(127,255,191,0.2)
}

.table_wrap.radial_img table tr:nth-child(8) td .wrap {
    background: rgba(127,127,255,0.2)
}

.table_wrap.radial_img table tr:nth-child(9) td .wrap {
    background: rgba(191,127,255,0.2)
}

.table_wrap.radial_img table tr:nth-child(10) td .wrap {
    background: rgba(255,127,255,0.2)
}

.table_wrap.radial_img table strong {
    font-size: 2rem
}

@media screen and (max-width: 767px) {
    table.form_table th {
        width:100%;
        display: block;
        padding: 0 5px
    }

    table.form_table td {
        width: 100%;
        display: block;
        padding: 0 5px;
        border: none;
        padding: 5px 0
    }

    table.child_age {
        display: block;
        border: none
    }

    table.child_age th {
        display: none
    }

    table.child_age td {
        display: block;
        border: none;
        border-top: 1px solid #F4F4F4
    }

    table.child_age td:first-child {
        border-top: none;
        background: rgba(255,191,127,0.2)
    }

    table.child_age td:before {
        display: inline-block;
        background: #ffbf7f;
        color: #fff;
        font-size: 1.2rem;
        padding: .2em .8em;
        border-radius: 2px;
        font-weight: bold
    }

    table.child_age tr {
        display: block;
        border: 1px solid rgba(255,191,127,0.5);
        border-radius: .4em;
        margin-bottom: .4em
    }

    table.child_age tr:first-child {
        display: none
    }

    table.child_age tr:nth-child(2n) {
        background: #fff
    }

    table.child_age td:nth-child(1):before {
        content: "学年"
    }

    table.child_age td:nth-child(2):before {
        content: "保育期間"
    }

    table.child_age td:nth-child(3):before {
        content: "定員"
    }

    table.child_age td:nth-child(4):before {
        content: "出生期間"
    }
}

p,div,figure {
    font-size: 1.6rem
}

p img,div img,figure img,a img {
    max-width: 100%;
    height: auto
}

img {
    vertical-align: top
}

ul,ol {
    padding-left: 0;
    list-style: none;
    margin: 0
}

strong,b {
    font-weight: bold
}

input:focus,textarea:focus,keygen:focus,select:focus {
    outline-offset: -2px
}

:focus {
    outline: none
}

a:focus {
    outline: none;
    text-decoration: none;
    color: #ff7f7f
}

@media screen and (min-width: 768px) {
    a img {
        transition:.15s all ease-in-out
    }

    a img:hover {
        transition: .15s all ease-in-out
    }

    figure a {
        display: block;
        width: 100%;
        height: 100%;
        overflow: hidden
    }

    figure a:hover img {
        transform: scale(1.1)
    }

    img {
        backface-visibility: hidden;
        -webkit-backface-visibility: hidden
    }
}

p {
    margin: 0
}

.mt-100 {
    margin-top: -100px !important
}

.mt-95 {
    margin-top: -95px !important
}

.mt-90 {
    margin-top: -90px !important
}

.mt-85 {
    margin-top: -85px !important
}

.mt-80 {
    margin-top: -80px !important
}

.mt-75 {
    margin-top: -75px !important
}

.mt-70 {
    margin-top: -70px !important
}

.mt-65 {
    margin-top: -65px !important
}

.mt-60 {
    margin-top: -60px !important
}

.mt-55 {
    margin-top: -55px !important
}

.mt-50 {
    margin-top: -50px !important
}

.mt-45 {
    margin-top: -45px !important
}

.mt-40 {
    margin-top: -40px !important
}

.mt-35 {
    margin-top: -35px !important
}

.mt-30 {
    margin-top: -30px !important
}

.mt-25 {
    margin-top: -25px !important
}

.mt-20 {
    margin-top: -20px !important
}

.mt-15 {
    margin-top: -15px !important
}

.mt-10 {
    margin-top: -10px !important
}

.mt-5 {
    margin-top: -5px !important
}

.mt0 {
    margin-top: 0px !important
}

.mt5 {
    margin-top: 5px !important
}

.mt10 {
    margin-top: 10px !important
}

.mt15 {
    margin-top: 15px !important
}

.mt20 {
    margin-top: 20px !important
}

.mt25 {
    margin-top: 25px !important
}

.mt30 {
    margin-top: 30px !important
}

.mt35 {
    margin-top: 35px !important
}

.mt40 {
    margin-top: 40px !important
}

.mt45 {
    margin-top: 45px !important
}

.mt50 {
    margin-top: 50px !important
}

.mt55 {
    margin-top: 55px !important
}

.mt60 {
    margin-top: 60px !important
}

.mt65 {
    margin-top: 65px !important
}

.mt70 {
    margin-top: 70px !important
}

.mt75 {
    margin-top: 75px !important
}

.mt80 {
    margin-top: 80px !important
}

.mt85 {
    margin-top: 85px !important
}

.mt90 {
    margin-top: 90px !important
}

.mt95 {
    margin-top: 95px !important
}

.mt100 {
    margin-top: 100px !important
}

.mt105 {
    margin-top: 105px !important
}

.mt110 {
    margin-top: 110px !important
}

.mt115 {
    margin-top: 115px !important
}

.mt120 {
    margin-top: 120px !important
}

.mt125 {
    margin-top: 125px !important
}

.mt130 {
    margin-top: 130px !important
}

.mt135 {
    margin-top: 135px !important
}

.mt140 {
    margin-top: 140px !important
}

.mt145 {
    margin-top: 145px !important
}

.mt150 {
    margin-top: 150px !important
}

.ml0 {
    margin-left: 0px !important
}

.ml5 {
    margin-left: 5px !important
}

.ml10 {
    margin-left: 10px !important
}

.ml15 {
    margin-left: 15px !important
}

.ml20 {
    margin-left: 20px !important
}

.ml25 {
    margin-left: 25px !important
}

.ml30 {
    margin-left: 30px !important
}

.ml35 {
    margin-left: 35px !important
}

.ml40 {
    margin-left: 40px !important
}

.ml45 {
    margin-left: 45px !important
}

.ml50 {
    margin-left: 50px !important
}

.ml55 {
    margin-left: 55px !important
}

.ml60 {
    margin-left: 60px !important
}

.ml65 {
    margin-left: 65px !important
}

.ml70 {
    margin-left: 70px !important
}

.ml75 {
    margin-left: 75px !important
}

.ml80 {
    margin-left: 80px !important
}

.ml85 {
    margin-left: 85px !important
}

.ml90 {
    margin-left: 90px !important
}

.ml95 {
    margin-left: 95px !important
}

.ml100 {
    margin-left: 100px !important
}

.ml105 {
    margin-left: 105px !important
}

.ml110 {
    margin-left: 110px !important
}

.ml115 {
    margin-left: 115px !important
}

.ml120 {
    margin-left: 120px !important
}

.ml125 {
    margin-left: 125px !important
}

.ml130 {
    margin-left: 130px !important
}

.ml135 {
    margin-left: 135px !important
}

.ml140 {
    margin-left: 140px !important
}

.ml145 {
    margin-left: 145px !important
}

.ml150 {
    margin-left: 150px !important
}

.mr0 {
    margin-right: 0px !important
}

.mr5 {
    margin-right: 5px !important
}

.mr10 {
    margin-right: 10px !important
}

.mr15 {
    margin-right: 15px !important
}

.mr20 {
    margin-right: 20px !important
}

.mr25 {
    margin-right: 25px !important
}

.mr30 {
    margin-right: 30px !important
}

.mr35 {
    margin-right: 35px !important
}

.mr40 {
    margin-right: 40px !important
}

.mr45 {
    margin-right: 45px !important
}

.mr50 {
    margin-right: 50px !important
}

.mr55 {
    margin-right: 55px !important
}

.mr60 {
    margin-right: 60px !important
}

.mr65 {
    margin-right: 65px !important
}

.mr70 {
    margin-right: 70px !important
}

.mr75 {
    margin-right: 75px !important
}

.mr80 {
    margin-right: 80px !important
}

.mr85 {
    margin-right: 85px !important
}

.mr90 {
    margin-right: 90px !important
}

.mr95 {
    margin-right: 95px !important
}

.mr100 {
    margin-right: 100px !important
}

.mr105 {
    margin-right: 105px !important
}

.mr110 {
    margin-right: 110px !important
}

.mr115 {
    margin-right: 115px !important
}

.mr120 {
    margin-right: 120px !important
}

.mr125 {
    margin-right: 125px !important
}

.mr130 {
    margin-right: 130px !important
}

.mr135 {
    margin-right: 135px !important
}

.mr140 {
    margin-right: 140px !important
}

.mr145 {
    margin-right: 145px !important
}

.mr150 {
    margin-right: 150px !important
}

.mb0 {
    margin-bottom: 0px !important
}

.mb5 {
    margin-bottom: 5px !important
}

.mb10 {
    margin-bottom: 10px !important
}

.mb15 {
    margin-bottom: 15px !important
}

.mb20 {
    margin-bottom: 20px !important
}

.mb25 {
    margin-bottom: 25px !important
}

.mb30 {
    margin-bottom: 30px !important
}

.mb35 {
    margin-bottom: 35px !important
}

.mb40 {
    margin-bottom: 40px !important
}

.mb45 {
    margin-bottom: 45px !important
}

.mb50 {
    margin-bottom: 50px !important
}

.mb55 {
    margin-bottom: 55px !important
}

.mb60 {
    margin-bottom: 60px !important
}

.mb65 {
    margin-bottom: 65px !important
}

.mb70 {
    margin-bottom: 70px !important
}

.mb75 {
    margin-bottom: 75px !important
}

.mb80 {
    margin-bottom: 80px !important
}

.mb85 {
    margin-bottom: 85px !important
}

.mb90 {
    margin-bottom: 90px !important
}

.mb95 {
    margin-bottom: 95px !important
}

.mb100 {
    margin-bottom: 100px !important
}

.mb105 {
    margin-bottom: 105px !important
}

.mb110 {
    margin-bottom: 110px !important
}

.mb115 {
    margin-bottom: 115px !important
}

.mb120 {
    margin-bottom: 120px !important
}

.mb125 {
    margin-bottom: 125px !important
}

.mb130 {
    margin-bottom: 130px !important
}

.mb135 {
    margin-bottom: 135px !important
}

.mb140 {
    margin-bottom: 140px !important
}

.mb145 {
    margin-bottom: 145px !important
}

.mb150 {
    margin-bottom: 150px !important
}

@media screen and (max-width: 767px) {
    div,p,span,ul,li,h1,h2,h3,h4,h5,h6,nav,section,:before,:after {
        max-width:100%
    }
}

.no-object-fit .product_introduce .thumb_list li {
    overflow: hidden
}

.no-object-fit .product_introduce .thumb_list li img {
    height: auto
}

.DB {
    display: block
}

.DI {
    display: inline
}

.DIB {
    display: inline-block
}

.DT {
    display: table
}

.DTBC {
    display: table-cell
}

.DTBR {
    display: table-row
}

.DN,.disN {
    display: none
}

.op00 {
    opacity: 0;
    filter: alpha(opacity=0)
}

.op01 {
    opacity: .1;
    filter: alpha(opacity=10)
}

.op02 {
    opacity: .2;
    filter: alpha(opacity=20)
}

.op03 {
    opacity: .3;
    filter: alpha(opacity=30)
}

.op04 {
    opacity: .4;
    filter: alpha(opacity=40)
}

.op05 {
    opacity: .5;
    filter: alpha(opacity=50)
}

.op06 {
    opacity: .6;
    filter: alpha(opacity=60)
}

.op07 {
    opacity: .7;
    filter: alpha(opacity=70)
}

.op08 {
    opacity: .8;
    filter: alpha(opacity=80)
}

.op09 {
    opacity: .9;
    filter: alpha(opacity=90)
}

.ls-10 {
    letter-spacing: -0.10em
}

.ls-09 {
    letter-spacing: -0.09em
}

.ls-08 {
    letter-spacing: -0.08em
}

.ls-07 {
    letter-spacing: -0.07em
}

.ls-06 {
    letter-spacing: -0.06em
}

.ls-05 {
    letter-spacing: -0.05em
}

.ls-04 {
    letter-spacing: -0.04em
}

.ls-03 {
    letter-spacing: -0.03em
}

.ls-02 {
    letter-spacing: -0.02em
}

.ls-01 {
    letter-spacing: -0.01em
}

.ls00 {
    letter-spacing: 0.00em
}

.ls01 {
    letter-spacing: 0.01em
}

.ls02 {
    letter-spacing: 0.02em
}

.ls03 {
    letter-spacing: 0.03em
}

.ls04 {
    letter-spacing: 0.04em
}

.ls05 {
    letter-spacing: 0.05em
}

.ls06 {
    letter-spacing: 0.06em
}

.ls07 {
    letter-spacing: 0.07em
}

.ls08 {
    letter-spacing: 0.08em
}

.ls09 {
    letter-spacing: 0.09em
}

.ls10 {
    letter-spacing: 0.10em
}

.fs10 {
    font-size: 1rem
}

.fs11 {
    font-size: 1.1rem
}

.fs12 {
    font-size: 1.2rem
}

.fs13 {
    font-size: 1.3rem
}

.fs12 {
    font-size: 1.2rem
}

.fs13 {
    font-size: 1.3rem
}

.fs14 {
    font-size: 1.4rem
}

.fs15 {
    font-size: 1.5rem
}

.fs16 {
    font-size: 1.6rem
}

.fs17 {
    font-size: 1.7rem
}

.fs18 {
    font-size: 1.8rem
}

.fs19 {
    font-size: 1.9rem
}

.fs20 {
    font-size: 2rem
}

.fs21 {
    font-size: 2.1rem
}

.fs22 {
    font-size: 2.2rem
}

.fs23 {
    font-size: 2.3rem
}

.fs24 {
    font-size: 2.4rem
}

.fs25 {
    font-size: 2.5rem
}

.fs26 {
    font-size: 2.6rem
}

.fs27 {
    font-size: 2.7rem
}

.fs28 {
    font-size: 2.8rem
}

.fs29 {
    font-size: 2.9rem
}

.fs30 {
    font-size: 3rem
}

.fs31 {
    font-size: 3.1rem
}

.fs32 {
    font-size: 3.2rem
}

.fs33 {
    font-size: 3.3rem
}

.fs34 {
    font-size: 3.4rem
}

.fs35 {
    font-size: 3.5rem
}

.fs36 {
    font-size: 3.6rem
}

.fs37 {
    font-size: 3.7rem
}

.fs38 {
    font-size: 3.8rem
}

.fs39 {
    font-size: 3.9rem
}

.box40 {
    width: 40px
}

.box60 {
    width: 60px
}

.box100 {
    width: 100px
}

.box120 {
    width: 120px
}

.box140 {
    width: 140px
}

.box145 {
    width: 145px
}

.box150 {
    width: 150px
}

.box240 {
    width: 240px
}

.box300 {
    width: 300px
}

.box320 {
    width: 320px
}

.box350 {
    width: 350px
}

.box380 {
    width: 380px
}

form .top {
    margin-bottom: 0.5em
}

.mini {
    font-size: 90%
}

table select {
    margin-bottom: 0.5em
}

.fb,.bold {
    font-weight: bold
}

.gothic {
    font-family: "Mplus 1p","Yu Gothic",YuGothic,"游ゴシック","游ゴシック体","メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif
}

.mincho {
    font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif
}

.garamond01 {
    font-family: "Cormorant Garamond","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif
}

.garamond02 {
    font-family: "EB Garamond","ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif
}

.textIn,.text_in {
    text-indent: -9999px;
    display: block
}

.color0 {
    color: #ff7f7f
}

.color1 {
    color: #7f7fff
}

.color2 {
    color: #bf7fff
}

.color3 {
    color: #ff7fff
}

.color4 {
    color: #ffbf7f
}

.color5 {
    color: #bfff7f
}

.color6 {
    color: #7fffbf
}

.bg_dark01 {
    background: #292933
}

.bg_dark02 {
    background: #44444f
}

.bg_light01 {
    background: #eee
}

.bg_light02 {
    background: #ccc
}

.bg_light03 {
    background: #ddd
}

.basecolor {
    color: #ff0071
}

.cvrn_circle {
    display: inline-block
}

.cvrn_circle::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #ff0071;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.crisp {
    image-rendering: -webkit-optimize-contrast;
    image-rendering: -moz-crisp-edges;
    image-rendering: -o-crisp-edges;
    image-rendering: crisp-edges;
    -ms-interpolation-mode: nearest-neighbor
}

.pen::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.comment::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.tag::before {
    content: "";
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    color: inherit;
    font-size: inherit;
    font-style: normal;
    font-weight: 300;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.tags::before {
    content: "";
    position: relative;
    top: 1px;
    display: inline-block;
    font-family: 'Glyphicons Halflings';
    color: inherit;
    font-size: inherit;
    font-style: normal;
    font-weight: 300;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.external::after {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.btn {
    border: 1px solid;
    border-radius: 0;
    color: #fff;
    display: inline-block;
    font-size: 1.4rem
}

.btn_cvrn {
    position: relative
}

.btn_cvrn::after {
    content: "\f054";
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    position: absolute;
    font-size: 1em;
    margin-top: -.5em;
    top: 50%;
    right: .4em;
    opacity: .5;
    filter: alpha(opacity=50)
}

#print {
    text-align: center;
    display: inline-block;
    background: #666;
    color: #fff;
    font-size: 1.4rem;
    font-weight: bold;
    padding: 0.2em 1em 0;
    border-radius: 2px;
    margin-bottom: 0.4em;
    cursor: pointer;
    transition: .15s all ease-in-out
}

#print::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: rgba(255,255,255,0.7);
    font-size: 1.2em;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

#print:hover {
    transition: .15s all ease-in-out;
    opacity: .8;
    filter: alpha(opacity=80)
}

@media screen and (max-width: 991px) {
    .btn_l {
        padding:1em 8.5em
    }
}

@media screen and (max-width: 767px) {
    .btn_l {
        padding:1em;
        width: 90%
    }
}

.scrl_box {
    max-height: 200px;
    overflow-y: scroll;
    border: 4px solid #F4F4F4;
    padding: 1em
}

.sp_menu {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    background: #ff0071;
    padding: 14px 14px 10px;
    cursor: pointer;
    z-index: 11;
    transition: .15s all ease-in-out
}

.sp_menu:hover {
    transition: .15s all ease-in-out
}

.sp_menu.active {
    background: #000;
    top: 20px;
    right: 40px
}

@media screen and (max-width: 991px) {
    .sp_menu {
        display:block
    }
}

@media screen and (max-width: 767px) {
    .sp_menu.active {
        top:15px;
        right: 15px
    }
}

.menu-trigger {
    display: inline-block;
    transition: all .2s ease-in-out;
    box-sizing: border-box;
    position: relative;
    width: 30px;
    height: 24px
}

.menu-trigger span {
    display: inline-block;
    transition: all .2s ease-in-out;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #fff;
    border-radius: 4px
}

.menu-trigger span:nth-of-type(1) {
    top: 0
}

.menu-trigger span:nth-of-type(2) {
    top: 10px
}

.menu-trigger span:nth-of-type(3) {
    bottom: 0
}

.menu-trigger.active span:nth-of-type(1) {
    transform: translateY(10px) rotate(-45deg)
}

.menu-trigger.active span:nth-of-type(2) {
    left: 50%;
    opacity: 0;
    animation: active-menu-bar02 .8s forwards
}

.menu-trigger.active span:nth-of-type(3) {
    transform: translateY(-11px) rotate(45deg)
}

@keyframes active-menu-bar02 {
    100% {
        height: 0
    }
}

.l-box {
    clear: both;
    overflow: hidden;
    *zoom:1}

.l-boxl {
    float: left
}

.l-boxr {
    float: right
}

.left {
    float: left
}

.right {
    float: right
}

.center,.alignC {
    text-align: center
}

.alignleft {
    text-align: left
}

.alignright,.alignR {
    text-align: right
}

.clear {
    clear: both
}

@media screen and (max-width: 767px) {
    .l-boxl,.l-boxr {
        float:none
    }
}

.transition {
    transition: .15s all
}

.transition:hover {
    transition: .15s all
}

.ease {
    transition: .15s all ease-in-out
}

.ease:hover {
    transition: .15s all ease-in-out
}

.linear {
    transition: .15s all linear
}

.linear:hover {
    transition: .15s all linear
}

.img_scale {
    overflow: hidden
}

.img_scale a img {
    transform: scale(1);
    transition: .15s all ease-in-out
}

.img_scale a img:hover {
    transition: .15s all ease-in-out
}

.img_scale a:hover img {
    transform: scale(1.05);
    transition: .15s all ease-in-out;
    opacity: 1;
    filter: alpha(opacity=100)
}

.img_scale a:hover img:hover {
    transition: .15s all ease-in-out
}

.row-0 {
    margin-left: -0px;
    margin-right: -0px
}

.row-0>div,.row-0 nav {
    padding-right: 0px;
    padding-left: 0px
}

.row-5 {
    margin-left: -2.5px;
    margin-right: -2.5px
}

.row-5>div,.row-5 nav {
    padding-right: 2.5px;
    padding-left: 2.5px
}

.row-10 {
    margin-left: -5px;
    margin-right: -5px
}

.row-10>div,.row-10 nav {
    padding-right: 5px;
    padding-left: 5px
}

.row-15 {
    margin-left: -7.5px;
    margin-right: -7.5px
}

.row-15>div,.row-15 nav {
    padding-right: 7.5px;
    padding-left: 7.5px
}

.row-20 {
    margin-left: -10px;
    margin-right: -10px
}

.row-20>div,.row-20 nav {
    padding-right: 10px;
    padding-left: 10px
}

.row-25 {
    margin-left: -12.5px;
    margin-right: -12.5px
}

.row-25>div,.row-25 nav {
    padding-right: 12.5px;
    padding-left: 12.5px
}

.row-30 {
    margin-left: -15px;
    margin-right: -15px
}

.row-30>div,.row-30 nav {
    padding-right: 15px;
    padding-left: 15px
}

.row-35 {
    margin-left: -17.5px;
    margin-right: -17.5px
}

.row-35>div,.row-35 nav {
    padding-right: 17.5px;
    padding-left: 17.5px
}

.row-40 {
    margin-left: -20px;
    margin-right: -20px
}

.row-40>div,.row-40 nav {
    padding-right: 20px;
    padding-left: 20px
}

.row-45 {
    margin-left: -22.5px;
    margin-right: -22.5px
}

.row-45>div,.row-45 nav {
    padding-right: 22.5px;
    padding-left: 22.5px
}

.row-50 {
    margin-left: -25px;
    margin-right: -25px
}

.row-50>div,.row-50 nav {
    padding-right: 25px;
    padding-left: 25px
}

.row-55 {
    margin-left: -27.5px;
    margin-right: -27.5px
}

.row-55>div,.row-55 nav {
    padding-right: 27.5px;
    padding-left: 27.5px
}

.row-60 {
    margin-left: -30px;
    margin-right: -30px
}

.row-60>div,.row-60 nav {
    padding-right: 30px;
    padding-left: 30px
}

.row-65 {
    margin-left: -32.5px;
    margin-right: -32.5px
}

.row-65>div,.row-65 nav {
    padding-right: 32.5px;
    padding-left: 32.5px
}

.row-70 {
    margin-left: -35px;
    margin-right: -35px
}

.row-70>div,.row-70 nav {
    padding-right: 35px;
    padding-left: 35px
}

.row-75 {
    margin-left: -37.5px;
    margin-right: -37.5px
}

.row-75>div,.row-75 nav {
    padding-right: 37.5px;
    padding-left: 37.5px
}

.row-80 {
    margin-left: -40px;
    margin-right: -40px
}

.row-80>div,.row-80 nav {
    padding-right: 40px;
    padding-left: 40px
}

.row-85 {
    margin-left: -42.5px;
    margin-right: -42.5px
}

.row-85>div,.row-85 nav {
    padding-right: 42.5px;
    padding-left: 42.5px
}

.row-90 {
    margin-left: -45px;
    margin-right: -45px
}

.row-90>div,.row-90 nav {
    padding-right: 45px;
    padding-left: 45px
}

.row-95 {
    margin-left: -47.5px;
    margin-right: -47.5px
}

.row-95>div,.row-95 nav {
    padding-right: 47.5px;
    padding-left: 47.5px
}

.row-100 {
    margin-left: -50px;
    margin-right: -50px
}

.row-100>div,.row-100 nav {
    padding-right: 50px;
    padding-left: 50px
}

.row-105 {
    margin-left: -52.5px;
    margin-right: -52.5px
}

.row-105>div,.row-105 nav {
    padding-right: 52.5px;
    padding-left: 52.5px
}

.row-110 {
    margin-left: -55px;
    margin-right: -55px
}

.row-110>div,.row-110 nav {
    padding-right: 55px;
    padding-left: 55px
}

.row-115 {
    margin-left: -57.5px;
    margin-right: -57.5px
}

.row-115>div,.row-115 nav {
    padding-right: 57.5px;
    padding-left: 57.5px
}

.row-120 {
    margin-left: -60px;
    margin-right: -60px
}

.row-120>div,.row-120 nav {
    padding-right: 60px;
    padding-left: 60px
}

.row-125 {
    margin-left: -62.5px;
    margin-right: -62.5px
}

.row-125>div,.row-125 nav {
    padding-right: 62.5px;
    padding-left: 62.5px
}

.row-130 {
    margin-left: -65px;
    margin-right: -65px
}

.row-130>div,.row-130 nav {
    padding-right: 65px;
    padding-left: 65px
}

.row-135 {
    margin-left: -67.5px;
    margin-right: -67.5px
}

.row-135>div,.row-135 nav {
    padding-right: 67.5px;
    padding-left: 67.5px
}

.row-140 {
    margin-left: -70px;
    margin-right: -70px
}

.row-140>div,.row-140 nav {
    padding-right: 70px;
    padding-left: 70px
}

.row-145 {
    margin-left: -72.5px;
    margin-right: -72.5px
}

.row-145>div,.row-145 nav {
    padding-right: 72.5px;
    padding-left: 72.5px
}

.row-150 {
    margin-left: -75px;
    margin-right: -75px
}

.row-150>div,.row-150 nav {
    padding-right: 75px;
    padding-left: 75px
}

@media screen and (max-width: 1199px) {
    .row-0 {
        margin-left:-0px;
        margin-right: -0px
    }

    .row-0>div,.row-0 nav {
        padding-right: 0px;
        padding-left: 0px
    }

    .row-5 {
        margin-left: -1.75px;
        margin-right: -1.75px
    }

    .row-5>div,.row-5 nav {
        padding-right: 1.75px;
        padding-left: 1.75px
    }

    .row-10 {
        margin-left: -3.5px;
        margin-right: -3.5px
    }

    .row-10>div,.row-10 nav {
        padding-right: 3.5px;
        padding-left: 3.5px
    }

    .row-15 {
        margin-left: -5.25px;
        margin-right: -5.25px
    }

    .row-15>div,.row-15 nav {
        padding-right: 5.25px;
        padding-left: 5.25px
    }

    .row-20 {
        margin-left: -7px;
        margin-right: -7px
    }

    .row-20>div,.row-20 nav {
        padding-right: 7px;
        padding-left: 7px
    }

    .row-25 {
        margin-left: -8.75px;
        margin-right: -8.75px
    }

    .row-25>div,.row-25 nav {
        padding-right: 8.75px;
        padding-left: 8.75px
    }

    .row-30 {
        margin-left: -10.5px;
        margin-right: -10.5px
    }

    .row-30>div,.row-30 nav {
        padding-right: 10.5px;
        padding-left: 10.5px
    }

    .row-35 {
        margin-left: -12.25px;
        margin-right: -12.25px
    }

    .row-35>div,.row-35 nav {
        padding-right: 12.25px;
        padding-left: 12.25px
    }

    .row-40 {
        margin-left: -14px;
        margin-right: -14px
    }

    .row-40>div,.row-40 nav {
        padding-right: 14px;
        padding-left: 14px
    }

    .row-45 {
        margin-left: -15.75px;
        margin-right: -15.75px
    }

    .row-45>div,.row-45 nav {
        padding-right: 15.75px;
        padding-left: 15.75px
    }

    .row-50 {
        margin-left: -17.5px;
        margin-right: -17.5px
    }

    .row-50>div,.row-50 nav {
        padding-right: 17.5px;
        padding-left: 17.5px
    }

    .row-55 {
        margin-left: -19.25px;
        margin-right: -19.25px
    }

    .row-55>div,.row-55 nav {
        padding-right: 19.25px;
        padding-left: 19.25px
    }

    .row-60 {
        margin-left: -21px;
        margin-right: -21px
    }

    .row-60>div,.row-60 nav {
        padding-right: 21px;
        padding-left: 21px
    }

    .row-65 {
        margin-left: -22.75px;
        margin-right: -22.75px
    }

    .row-65>div,.row-65 nav {
        padding-right: 22.75px;
        padding-left: 22.75px
    }

    .row-70 {
        margin-left: -24.5px;
        margin-right: -24.5px
    }

    .row-70>div,.row-70 nav {
        padding-right: 24.5px;
        padding-left: 24.5px
    }

    .row-75 {
        margin-left: -26.25px;
        margin-right: -26.25px
    }

    .row-75>div,.row-75 nav {
        padding-right: 26.25px;
        padding-left: 26.25px
    }

    .row-80 {
        margin-left: -28px;
        margin-right: -28px
    }

    .row-80>div,.row-80 nav {
        padding-right: 28px;
        padding-left: 28px
    }

    .row-85 {
        margin-left: -29.75px;
        margin-right: -29.75px
    }

    .row-85>div,.row-85 nav {
        padding-right: 29.75px;
        padding-left: 29.75px
    }

    .row-90 {
        margin-left: -31.5px;
        margin-right: -31.5px
    }

    .row-90>div,.row-90 nav {
        padding-right: 31.5px;
        padding-left: 31.5px
    }

    .row-95 {
        margin-left: -33.25px;
        margin-right: -33.25px
    }

    .row-95>div,.row-95 nav {
        padding-right: 33.25px;
        padding-left: 33.25px
    }

    .row-100 {
        margin-left: -35px;
        margin-right: -35px
    }

    .row-100>div,.row-100 nav {
        padding-right: 35px;
        padding-left: 35px
    }

    .row-105 {
        margin-left: -36.75px;
        margin-right: -36.75px
    }

    .row-105>div,.row-105 nav {
        padding-right: 36.75px;
        padding-left: 36.75px
    }

    .row-110 {
        margin-left: -38.5px;
        margin-right: -38.5px
    }

    .row-110>div,.row-110 nav {
        padding-right: 38.5px;
        padding-left: 38.5px
    }

    .row-115 {
        margin-left: -40.25px;
        margin-right: -40.25px
    }

    .row-115>div,.row-115 nav {
        padding-right: 40.25px;
        padding-left: 40.25px
    }

    .row-120 {
        margin-left: -42px;
        margin-right: -42px
    }

    .row-120>div,.row-120 nav {
        padding-right: 42px;
        padding-left: 42px
    }

    .row-125 {
        margin-left: -43.75px;
        margin-right: -43.75px
    }

    .row-125>div,.row-125 nav {
        padding-right: 43.75px;
        padding-left: 43.75px
    }

    .row-130 {
        margin-left: -45.5px;
        margin-right: -45.5px
    }

    .row-130>div,.row-130 nav {
        padding-right: 45.5px;
        padding-left: 45.5px
    }

    .row-135 {
        margin-left: -47.25px;
        margin-right: -47.25px
    }

    .row-135>div,.row-135 nav {
        padding-right: 47.25px;
        padding-left: 47.25px
    }

    .row-140 {
        margin-left: -49px;
        margin-right: -49px
    }

    .row-140>div,.row-140 nav {
        padding-right: 49px;
        padding-left: 49px
    }

    .row-145 {
        margin-left: -50.75px;
        margin-right: -50.75px
    }

    .row-145>div,.row-145 nav {
        padding-right: 50.75px;
        padding-left: 50.75px
    }

    .row-150 {
        margin-left: -52.5px;
        margin-right: -52.5px
    }

    .row-150>div,.row-150 nav {
        padding-right: 52.5px;
        padding-left: 52.5px
    }
}

@media screen and (max-width: 991px) {
    .row-0 {
        margin-left:-0px;
        margin-right: -0px
    }

    .row-0>div,.row-0 nav {
        padding-right: 0px;
        padding-left: 0px
    }

    .row-5 {
        margin-left: -1.25px;
        margin-right: -1.25px
    }

    .row-5>div,.row-5 nav {
        padding-right: 1.25px;
        padding-left: 1.25px
    }

    .row-10 {
        margin-left: -2.5px;
        margin-right: -2.5px
    }

    .row-10>div,.row-10 nav {
        padding-right: 2.5px;
        padding-left: 2.5px
    }

    .row-15 {
        margin-left: -3.75px;
        margin-right: -3.75px
    }

    .row-15>div,.row-15 nav {
        padding-right: 3.75px;
        padding-left: 3.75px
    }

    .row-20 {
        margin-left: -5px;
        margin-right: -5px
    }

    .row-20>div,.row-20 nav {
        padding-right: 5px;
        padding-left: 5px
    }

    .row-25 {
        margin-left: -6.25px;
        margin-right: -6.25px
    }

    .row-25>div,.row-25 nav {
        padding-right: 6.25px;
        padding-left: 6.25px
    }

    .row-30 {
        margin-left: -7.5px;
        margin-right: -7.5px
    }

    .row-30>div,.row-30 nav {
        padding-right: 7.5px;
        padding-left: 7.5px
    }

    .row-35 {
        margin-left: -8.75px;
        margin-right: -8.75px
    }

    .row-35>div,.row-35 nav {
        padding-right: 8.75px;
        padding-left: 8.75px
    }

    .row-40 {
        margin-left: -10px;
        margin-right: -10px
    }

    .row-40>div,.row-40 nav {
        padding-right: 10px;
        padding-left: 10px
    }

    .row-45 {
        margin-left: -11.25px;
        margin-right: -11.25px
    }

    .row-45>div,.row-45 nav {
        padding-right: 11.25px;
        padding-left: 11.25px
    }

    .row-50 {
        margin-left: -12.5px;
        margin-right: -12.5px
    }

    .row-50>div,.row-50 nav {
        padding-right: 12.5px;
        padding-left: 12.5px
    }

    .row-55 {
        margin-left: -13.75px;
        margin-right: -13.75px
    }

    .row-55>div,.row-55 nav {
        padding-right: 13.75px;
        padding-left: 13.75px
    }

    .row-60 {
        margin-left: -15px;
        margin-right: -15px
    }

    .row-60>div,.row-60 nav {
        padding-right: 15px;
        padding-left: 15px
    }

    .row-65 {
        margin-left: -16.25px;
        margin-right: -16.25px
    }

    .row-65>div,.row-65 nav {
        padding-right: 16.25px;
        padding-left: 16.25px
    }

    .row-70 {
        margin-left: -17.5px;
        margin-right: -17.5px
    }

    .row-70>div,.row-70 nav {
        padding-right: 17.5px;
        padding-left: 17.5px
    }

    .row-75 {
        margin-left: -18.75px;
        margin-right: -18.75px
    }

    .row-75>div,.row-75 nav {
        padding-right: 18.75px;
        padding-left: 18.75px
    }

    .row-80 {
        margin-left: -20px;
        margin-right: -20px
    }

    .row-80>div,.row-80 nav {
        padding-right: 20px;
        padding-left: 20px
    }

    .row-85 {
        margin-left: -21.25px;
        margin-right: -21.25px
    }

    .row-85>div,.row-85 nav {
        padding-right: 21.25px;
        padding-left: 21.25px
    }

    .row-90 {
        margin-left: -22.5px;
        margin-right: -22.5px
    }

    .row-90>div,.row-90 nav {
        padding-right: 22.5px;
        padding-left: 22.5px
    }

    .row-95 {
        margin-left: -23.75px;
        margin-right: -23.75px
    }

    .row-95>div,.row-95 nav {
        padding-right: 23.75px;
        padding-left: 23.75px
    }

    .row-100 {
        margin-left: -25px;
        margin-right: -25px
    }

    .row-100>div,.row-100 nav {
        padding-right: 25px;
        padding-left: 25px
    }

    .row-105 {
        margin-left: -26.25px;
        margin-right: -26.25px
    }

    .row-105>div,.row-105 nav {
        padding-right: 26.25px;
        padding-left: 26.25px
    }

    .row-110 {
        margin-left: -27.5px;
        margin-right: -27.5px
    }

    .row-110>div,.row-110 nav {
        padding-right: 27.5px;
        padding-left: 27.5px
    }

    .row-115 {
        margin-left: -28.75px;
        margin-right: -28.75px
    }

    .row-115>div,.row-115 nav {
        padding-right: 28.75px;
        padding-left: 28.75px
    }

    .row-120 {
        margin-left: -30px;
        margin-right: -30px
    }

    .row-120>div,.row-120 nav {
        padding-right: 30px;
        padding-left: 30px
    }

    .row-125 {
        margin-left: -31.25px;
        margin-right: -31.25px
    }

    .row-125>div,.row-125 nav {
        padding-right: 31.25px;
        padding-left: 31.25px
    }

    .row-130 {
        margin-left: -32.5px;
        margin-right: -32.5px
    }

    .row-130>div,.row-130 nav {
        padding-right: 32.5px;
        padding-left: 32.5px
    }

    .row-135 {
        margin-left: -33.75px;
        margin-right: -33.75px
    }

    .row-135>div,.row-135 nav {
        padding-right: 33.75px;
        padding-left: 33.75px
    }

    .row-140 {
        margin-left: -35px;
        margin-right: -35px
    }

    .row-140>div,.row-140 nav {
        padding-right: 35px;
        padding-left: 35px
    }

    .row-145 {
        margin-left: -36.25px;
        margin-right: -36.25px
    }

    .row-145>div,.row-145 nav {
        padding-right: 36.25px;
        padding-left: 36.25px
    }

    .row-150 {
        margin-left: -37.5px;
        margin-right: -37.5px
    }

    .row-150>div,.row-150 nav {
        padding-right: 37.5px;
        padding-left: 37.5px
    }
}

@media screen and (max-width: 767px) {
    .row {
        margin-left:0px;
        margin-right: 0px
    }

    .row>div,.row nav {
        padding-right: 0px;
        padding-left: 0px
    }
}

.container-fluid {
    padding: 0;
    max-width: 2000px;
    margin: auto
}

@media screen and (max-width: 767px) {
    .container-fluid {
        padding:0 15px
    }
}

#undercolumn_error {
    margin-bottom: 4em;
    padding-bottom: 1em;
    border-bottom: 1px solid #ccc
}

br.pc {
    display: inline
}

br.sp {
    display: none
}

@media screen and (max-width: 991px) {
    br.pc {
        display:none
    }

    br.sp {
        display: inline
    }
}

.indent--1 {
    text-indent: 0em;
    padding-left: 1em;
    display: inline-block
}

.indent--2 {
    text-indent: -1em;
    padding-left: 2.9em;
    display: inline-block
}

header {
    position: fixed;
    width: 100%;
    height: 100px;
    border-bottom: 1px solid rgba(255,255,255,0.1);
    background: #292933;
    top: 0;
    z-index: 10;
    transition: .15s all ease-in-out
}

header:hover {
    transition: .15s all ease-in-out
}

header .siteid {
    float: left;
    padding: 10px 0 0 20px;
    width: calc(20% - 20px)
}

header .siteid .sitename {
    margin-bottom: 5px;
    letter-spacing: 0em;
    line-height: 1
}

header .siteid .sitename a {
    font-size: 1rem;
    opacity: .5;
    filter: alpha(opacity=50);
    color: #fff;
    font-weight: 500
}

header .siteid .sitename a:hover {
    opacity: .4;
    filter: alpha(opacity=40)
}

header .siteid .h_logo {
    display: block;
    width: 160px
}

header .siteid .h_logo .logo_w {
    display: inline
}

header .siteid .h_logo .logo_b {
    display: none
}

header .siteid .h_logo:hover {
    opacity: .7;
    filter: alpha(opacity=70)
}

header nav {
    float: right;
    margin-right: 20px;
    width: 80%
}

header nav ul {
    width: 100%
}

header nav li {
    float: left;
    width: 16.6%;
    margin-top: 25px
}

header nav li>a {
    display: block;
    height: 75px;
    text-align: center;
    font-size: 1.6rem;
    font-weight: 700;
    color: #fff
}

header nav li>a span {
    height: 50px;
    display: block;
    padding-top: 5px;
    line-height: 1.4;
    transition: .15s all ease-in-out;
    box-sizing: border-box
}

header nav li>a span:hover {
    transition: .15s all ease-in-out
}

header nav li>a span small {
    display: block;
    font-weight: 700;
    font-size: 1rem;
    opacity: .7;
    filter: alpha(opacity=70)
}

header nav li>a.cv span {
    background: #ff0071;
    color: #fff
}

header nav li>a.cv:hover span {
    background: coral
}

header nav li>a:hover {
    color: #fff
}

header nav li>a:hover span {
    background: rgba(153,153,153,0.2)
}

header.areafill01 {
    background: #292933
}

header.areafill02 {
    background: #fff;
    border-bottom: 1px solid rgba(85,85,85,0.1)
}

header.areafill02 .siteid .sitename a {
    color: #1A1A1A
}

header.areafill02 .siteid .h_logo .logo_w {
    display: none
}

header.areafill02 .siteid .h_logo .logo_b {
    display: inline
}

header.areafill02 nav li>a {
    color: #1A1A1A
}

@media screen and (max-width: 991px) {
    header {
        height:53px
    }

    header .siteid .sitename {
        display: none
    }

    header .siteid .h_logo {
        float: left
    }

    header nav {
        display: none
    }

    header nav li {
        width: 50%
    }
}

@media screen and (max-width: 767px) {
    header {
        background:#fff;
        background: #fff;
        border-bottom: 1px solid rgba(85,85,85,0.1)
    }

    header.areafill01,header.areafill02 {
        background: #fff;
        border-bottom: 1px solid rgba(85,85,85,0.1)
    }

    header .siteid .sitename a,header.areafill01 .siteid .sitename a,header.areafill02 .siteid .sitename a {
        color: #1A1A1A
    }

    header .siteid .h_logo .logo_w,header.areafill01 .siteid .h_logo .logo_w,header.areafill02 .siteid .h_logo .logo_w {
        display: none
    }

    header .siteid .h_logo .logo_b,header.areafill01 .siteid .h_logo .logo_b,header.areafill02 .siteid .h_logo .logo_b {
        display: inline
    }

    header nav li>a,header.areafill01 nav li>a,header.areafill02 nav li>a {
        color: #1A1A1A
    }
}

.subnav {
    display: none;
    background: rgba(68,68,79,0.95);
    width: 100%;
    position: absolute;
    left: 0;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255,255,255,0.1)
}

.subnav .thumb {
    margin-top: 20px;
    display: block
}

.subnav .thumb img {
    display: block
}

.subnav .txt {
    color: #fff;
    display: block;
    padding: .4em 0;
    font-size: 1.6rem;
    font-weight: 400
}

.subnav .txt::before {
    content: '\f054';
    color: inherit;
    font: normal normal normal 14px/1 FontAwesome;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-size: .9em;
    opacity: .5;
    filter: alpha(opacity=50)
}

.subnav .txt:hover {
    opacity: .7;
    filter: alpha(opacity=70)
}

.areafill01 .subnav {
    background: #44444f
}

.areafill02 .subnav {
    background: #F4F4F4;
    border-bottom: 1px solid rgba(51,51,51,0.1)
}

.areafill02 .subnav .txt {
    color: #333
}

.sp_nav {
    display: none
}

@media screen and (max-width: 991px) {
    .sp_nav {
        position:fixed;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        z-index: 10;
        font-weight: 400;
        line-height: 2;
        padding: 20px 40px;
        background: #000;
        background: rgba(26,26,26,0.5)
    }

    .sp_nav .sp_nav_inner {
        background: rgba(41,41,51,0.95);
        padding: 20px 40px
    }

    .sp_nav a {
        color: #fff;
        font-size: 1.8rem
    }

    .sp_nav .sp_nav_ttl {
        font-weight: 700;
        border-bottom: 1px solid rgba(255,255,255,0.1);
        margin: 2em 0 1em
    }

    .sp_nav ul {
        overflow: hidden;
        *zoom:1}

    .sp_nav ul li {
        width: 33.3333%;
        float: left;
        font-size: 1.4rem
    }

    .sp_nav ul li::before {
        content: "-";
        opacity: .7;
        filter: alpha(opacity=70);
        font-weight: 700
    }

    .sp_nav .sp_menu {
        position: absolute
    }
}

@media screen and (max-width: 767px) {
    .sp_nav {
        padding:15px
    }

    .sp_nav .sp_nav_inner {
        height: calc(100vh - 60px);
        max-height: 500px;
        overflow-y: scroll;
        padding: 15px
    }

    .sp_nav ul li {
        width: 50%;
        font-size: 1rem
    }

    .sp_nav ul li a {
        font-size: 1rem
    }
}

footer {
    background-size: 100%;
    background-color: #292933;
    border-top: 1px solid rgba(255,255,255,0.1);
    border-bottom: 1px solid rgba(255,255,255,0.1);
    color: #fff;
    font-size: 1.2rem;
    padding-top: 5em;
    padding-bottom: 5em
}

footer a {
    color: #fff
}

footer a:hover {
    color: #fff;
    opacity: .7;
    filter: alpha(opacity=70)
}

footer .f_site_status {
    padding-left: 40px
}

footer .f_logo {
    font-weight: 500
}

footer .f_logo a {
    display: inline-block
}

footer .f_logo .sitename {
    font-size: 1rem;
    display: block;
    color: #999
}

footer .f_logo img {
    display: block;
    max-width: 234px;
    margin: 5px 0
}

footer .f_logo .company_name {
    font-size: 1.8rem;
    display: block
}

footer .address {
    font-size: 1.2rem;
    font-weight: 400;
    margin: 1em 0
}

footer .f_contact {
    font-size: 2.2rem;
    font-weight: 900
}

footer .f_contact small {
    display: block;
    font-size: 1.4rem
}

footer .f_sns {
    margin-top: 15px
}

footer .f_sns i {
    font-size: 4rem
}

footer .f_sns .fa-facebook-square {
    font-size: 3.9rem;
    position: relative;
    top: -0.1rem
}

footer .f_sns a+a {
    margin-left: 10px
}

footer .f_sns a:hover {
    opacity: .7;
    filter: alpha(opacity=70)
}

footer .f_nav_ttl {
    font-weight: bold
}

footer .f_nav_ttl.topblank {
    margin-top: 1.7em
}

footer nav {
    margin-top: 4em;
    line-height: 1.7;
    font-size: 1.2rem
}

footer nav a {
    font-size: 1.2rem
}

footer nav a:hover {
    text-decoration: underline;
    opacity: 1;
    filter: alpha(opacity=100)
}

footer nav li::before {
    content: "-";
    display: inline-block
}

.pagetop {
    display: none;
    position: fixed;
    width: 80px;
    height: 80px;
    bottom: 10px;
    right: 10px;
    cursor: pointer;
    z-index: 3;
    background: #ff0071;
    color: #fff;
    text-align: center;
    border-radius: 50%;
    border: 2px solid #ff0071;
    font-weight: 700;
    font-size: 1.2rem;
    line-height: 1.1;
    transform: scale(0.8);
    transition: transform 0.15s linear;
    transition: transform 0.15s linear, -webkit-transform 0.15s linear
}

.pagetop img {
    margin: 15px 0 8px;
    width: 30px
}

.pagetop:hover {
    transform: scale(1)
}

.copyright {
    font-size: 1.4rem;
    font-weight: 400;
    background: #292933;
    color: #999;
    padding: .8em 0
}

.copyright a {
    color: #fff;
    font-weight: 700
}

.copyright a:hover {
    color: #ff0071
}

@media screen and (max-width: 767px) {
    footer {
        background-image:none
    }

    footer .f_logo {
        text-align: center;
        margin-bottom: 2em
    }

    footer .f_site_status {
        padding-left: 0
    }

    footer .address {
        font-size: 2rem
    }

    footer .f_contact {
        font-size: 2.2rem
    }

    footer .f_nav_ttl {
        font-size: 2rem;
        margin-top: 1em;
        padding: 0.2em 0.4em;
        border-bottom: 1px solid rgba(255,255,255,0.5);
        background: rgba(255,255,255,0.2)
    }

    footer .f_nav_ttl a {
        padding: 0;
        border: none
    }

    footer nav {
        display: none
    }

    .pagetop {
        width: 80px;
        height: 80px
    }
}

main {
    display: block;
    padding: 1px 0 0
}

.index_main {
    padding: 0;
    margin-top: 100vh;
    position: absolute;
    width: 100%;
    z-index: 2
}

@media screen and (min-height: 900px) {
    .index_main {
        margin-top:900px
    }

    .index_main main {
        padding: 0
    }
}

@media screen and (max-width: 991px) {
    .index_main {
        margin-top:448px
    }
}

@media screen and (max-width: 767px) {
    .index_main {
        margin-top:753px
    }
}

@media screen and (min-width: 768px) {
    img.aligncenter,img.centered {
        max-width:100%;
        display: block;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 1em
    }

    img.alignright {
        max-width: 50%;
        padding: 4px;
        margin: 0 0 1em 1.6em;
        display: inline
    }

    img.alignleft {
        max-width: 50%;
        padding: 4px;
        margin: 0 1.6em 1em 0;
        display: inline
    }

    .alignright {
        float: right
    }

    .alignleft {
        float: left
    }
}

@media screen and (max-width: 767px) {
    .main_cont .entry_cont img {
        max-width:100%;
        display: block;
        margin: 10px auto
    }

    img.aligncenter,img.centered,img.alignright,img.alignleft {
        max-width: 100%;
        display: block;
        margin: 10px auto
    }
}

.xl_inner {
    max-width: 2000px;
    margin: auto
}

.radial_img {
    border-radius: 4px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1)
}

.infoBox {
    text-align: center
}

.infoBox .infobox-inner {
    display: inline-block;
    padding: 6px 14px;
    border-radius: 8px;
    background-color: #FFF;
    box-shadow: 0px 1px 4px rgba(0,0,0,0.15);
    text-align: center;
    font-weight: 700;
    font-size: 16px
}

.thumb_header {
    overflow: hidden;
    *zoom:1}

.thumb_header .thumb img {
    width: 100px;
    float: left;
    border-radius: 50%;
    border: 4px solid #fff
}

.thumb_header .thumb_header_cont {
    width: calc(100% - 100px);
    float: left;
    padding: 0 1em
}

.thumb_header .thumb_header_cont .ttl {
    padding: 1.2em 0 1em;
    font-size: 1.5rem
}

.thumb_header .thumb_header_cont .ttl span {
    font-size: 2rem;
    font-weight: 500
}

.thumb_header .faq_list {
    clear: both
}

.faq_list {
    padding: 1em 0 0;
    border-bottom: 1px solid #ccc
}

.faq_list li {
    position: relative
}

.faq_list li a {
    display: block;
    padding: .8em 2em .8em 3.4em;
    border-top: 1px solid #ccc
}

.faq_list li a::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #999;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.faq_list li a::after {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #999;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.faq_list li a::before {
    position: absolute;
    left: .3em;
    font-size: 3rem;
    top: 50%;
    margin-top: -.6em;
    transition: color .15s linear
}

.faq_list li a::after {
    position: absolute;
    right: 0;
    font-size: 1rem;
    top: 50%;
    margin-top: -.5em;
    transition: color .15s linear
}

.faq_list li a:hover {
    background: rgba(204,204,204,0.3)
}

.faq_list li a:hover::before,.faq_list li a:hover::after {
    color: #ff0071
}

.faq_list_wrap {
    margin-bottom: 4em
}

.faq_list_wrap .btn_wrap {
    margin-top: 1em
}

.faq_list_wrap .btn_wrap .btn {
    font-size: 1.6rem;
    color: #666;
    padding: .4em 3em;
    font-weight: 400
}

.faq_list_wrap .btn_wrap .btn:hover {
    background: #ff0071;
    color: #fff;
    border-color: #ff0071
}

.faq_detail {
    margin-bottom: 4em
}

.faq_detail dt {
    font-size: 2rem;
    border-bottom: 1px solid #ccc;
    position: relative;
    padding: .4em 0 .4em 40px
}

.faq_detail dt::before {
    content: "Q.";
    position: absolute;
    left: 0;
    font-size: 3rem;
    top: 0;
    margin-top: 0;
    transition: color .15s linear
}

.faq_detail dd {
    position: relative;
    padding: .8em 0 .8em 40px
}

.faq_detail dd::before {
    content: "A.";
    position: absolute;
    left: 0;
    font-size: 3rem;
    top: 0;
    transition: color .15s linear
}

.basecol img {
    border-radius: 4px;
    box-shadow: 0 0 10px rgba(0,0,0,0.1)
}

.basecol.step .label {
    display: inline-block;
    border-bottom: 1px solid #7fffbf;
    font-weight: bold
}

.basecol .round_icon {
    position: relative;
    top: 0;
    left: 50%;
    margin-bottom: -50px;
    margin-left: -50px;
    max-width: 100px
}

.basecol .round_icon img {
    width: 100px;
    border-radius: 50%
}

.basecol_round figure {
    border: 0.4em solid rgba(127,127,255,0.2);
    border-radius: 50%;
    margin: .8em;
    padding: .8em;
    box-shadow: 1px 3px 0px rgba(0,0,0,0.1)
}

.basecol_round figure.round01 {
    border-color: rgba(164,196,234,0.5)
}

.basecol_round figure.round02 {
    border-color: rgba(253,177,202,0.5)
}

.basecol_round figure.round03 {
    border-color: rgba(155,217,225,0.5)
}

.basecol_round figure.round04 {
    border-color: rgba(247,193,127,0.5)
}

.basecol_round figure.round05 {
    border-color: rgba(246,169,168,0.5)
}

.basecol_round figure.round06 {
    border-color: rgba(152,192,160,0.5)
}

.basecol_round figure.round07 {
    border-color: rgba(161,156,184,0.5)
}

.basecol_round img {
    border-radius: 50%;
    box-shadow: none
}

.basecol_round .comment {
    padding: .4em 1.2em;
    position: relative;
    border-top-right-radius: 1.2em;
    border-bottom-left-radius: 1.2em
}

.basecol_round .comment::before {
    position: absolute;
    top: 0;
    left: 0;
    content: "\f10e";
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.basecol_round .comment::after {
    position: absolute;
    bottom: 0;
    right: 0;
    content: "\f10d";
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.basecol_round .comment01 {
    background: rgba(164,196,234,0.2)
}

.basecol_round .comment01::before,.basecol_round .comment01::after {
    color: rgba(164,196,234,0.9)
}

.basecol_round .comment02 {
    background: rgba(253,177,202,0.2)
}

.basecol_round .comment02::before,.basecol_round .comment02::after {
    color: rgba(253,177,202,0.9)
}

.basecol_round .comment03 {
    background: rgba(155,217,225,0.2)
}

.basecol_round .comment03::before,.basecol_round .comment03::after {
    color: rgba(155,217,225,0.9)
}

.basecol_round .comment04 {
    background: rgba(247,193,127,0.2)
}

.basecol_round .comment04::before,.basecol_round .comment04::after {
    color: rgba(247,193,127,0.9)
}

.basecol_round .comment05 {
    background: rgba(246,169,168,0.2)
}

.basecol_round .comment05::before,.basecol_round .comment05::after {
    color: rgba(246,169,168,0.9)
}

.basecol_round .comment06 {
    background: rgba(152,192,160,0.2)
}

.basecol_round .comment06::before,.basecol_round .comment06::after {
    color: rgba(152,192,160,0.9)
}

.basecol_round .comment07 {
    background: rgba(161,156,184,0.2)
}

.basecol_round .comment07::before,.basecol_round .comment07::after {
    color: rgba(161,156,184,0.9)
}

.basecol_round .headding_s {
    text-align: center;
    line-height: 1
}

.basecol_rect figure {
    margin: 1.6em
}

.basecol_rect img {
    box-shadow: none
}

@media screen and (max-width: 767px) {
    .basecol .round_icon {
        margin-bottom:-25px;
        margin-left: -25px
    }

    .basecol .round_icon img {
        width: 50px
    }

    .basecol_round {
        margin-top: 2em
    }

    .basecol_round figure {
        box-sizing: border-box;
        width: 70%;
        max-width: 150px;
        margin: 0 auto
    }

    .basecol_round .comment {
        margin-bottom: 2em
    }

    .basecol_round .headding_s {
        margin-bottom: .4em
    }
}

.col:nth-child(1) .step {
    position: relative;
    margin-top: 0em
}

.col:nth-child(2) .step {
    position: relative;
    margin-top: 5em
}

.col:nth-child(3) .step {
    position: relative;
    margin-top: 10em
}

@media screen and (max-width: 767px) {
    .col:nth-child(1) .step,.col:nth-child(2) .step,.col:nth-child(3) .step {
        margin-top:2em
    }
}

.framebox01 {
    border: 0.8em solid rgba(255,191,127,0.6);
    padding: .8em;
    border-radius: .8em
}

.framebox01 .headding_s span {
    border-color: #ffbf7f
}

.slogan_list {
    border: 0.4em solid rgba(127,255,191,0.6);
    padding: .8em 1.2em;
    background: #fff
}

.slogan_list li {
    margin-left: 2.2em;
    position: relative;
    margin-top: .8em;
    margin-bottom: .8em
}

.slogan_list li span {
    border-bottom: 1px solid #333;
    display: inline-block;
    font-weight: bold
}

.slogan_list li::before {
    position: absolute;
    left: -1.2em;
    text-align: center;
    content: "";
    display: inline-block;
    width: 1em;
    font-weight: bold;
    font-style: italic;
    font-size: 3rem;
    line-height: 1
}

.slogan_list li:nth-child(1) span {
    border-color: #7f7fff
}

.slogan_list li:nth-child(1)::before {
    content: "1.";
    color: #7f7fff
}

.slogan_list li:nth-child(2) span {
    border-color: #bf7fff
}

.slogan_list li:nth-child(2)::before {
    content: "2.";
    color: #bf7fff
}

.slogan_list li:nth-child(3) span {
    border-color: #ff7fff
}

.slogan_list li:nth-child(3)::before {
    content: "3.";
    color: #ff7fff
}

.slogan_list li:nth-child(4) span {
    border-color: #ffbf7f
}

.slogan_list li:nth-child(4)::before {
    content: "4.";
    color: #ffbf7f
}

.slogan_list li:nth-child(5) span {
    border-color: #bfff7f
}

.slogan_list li:nth-child(5)::before {
    content: "5.";
    color: #bfff7f
}

.slogan_list li:nth-child(6) span {
    border-color: #7fffbf
}

.slogan_list li:nth-child(6)::before {
    content: "6.";
    color: #7fffbf
}

.form-group {
    display: inline-block;
    overflow: hidden;
    *zoom:1;border: 1px solid #ccc;
    border-radius: 4px;
    line-height: 1.8;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none
}

.form-group input[type=text] {
    border: none !important;
    width: 1.5em !important;
    padding: 0 0.5em !important;
    box-sizing: content-box !important;
    text-align: right;
    font-size: 1.6rem
}

.form-group .form-parts {
    float: left;
    display: block
}

.form-group .form-parts.change-value {
    padding: 0 0.6em 0 !important;
    background: #f9f9f9;
    cursor: pointer;
    color: #555
}

.form-group .form-parts.change-value i {
    font-size: 1.2rem
}

.form-group .form-parts.change-value-minus {
    border-right: 1px solid #ccc
}

.form-group .form-parts.change-value-plus {
    border-left: 1px solid #ccc
}

.form-group .form-parts.change-value:hover {
    background: #ddd
}

.modal_ {
    display: none;
    position: fixed;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(0,0,0,0.7);
    z-index: 3;
    padding-top: 20px;
    padding-bottom: 20px;
    box-sizing: border-box
}

.modal_ .modal_inner {
    background: #fff;
    border-radius: 4px;
    height: 100%;
    overflow-y: scroll;
    padding-top: 5em;
    padding-bottom: 20px;
    position: relative;
    box-shadow: 0 0 40px rgba(26,26,26,0.4)
}

.modal_ .modal_head {
    position: fixed;
    top: 20px;
    z-index: 3;
    background: rgba(255,255,255,0.95);
    width: 100%;
    max-width: 1170px;
    border-top-left-radius: 4px;
    border-top-right-radius: 4px;
    box-shadow: 0 0 10px rgba(0,0,0,0.2)
}

.modal_ .ttl {
    font-size: 2.4rem;
    font-family: "游明朝",YuMincho,"ヒラギノ明朝 ProN W3","Hiragino Mincho ProN","HG明朝E","ＭＳ Ｐ明朝","ＭＳ 明朝",serif;
    padding: 0.4em;
    color: #ff7f7f;
    font-weight: bold
}

.modal_ .closeBtn {
    text-align: right;
    padding-top: 1em;
    font-size: 1.4rem
}

.modal_ .closeBtn span {
    display: inline-block;
    padding: 0.2em 0.4em;
    border: 1px solid #ccc;
    border-radius: 4px;
    cursor: pointer
}

.modal_ .closeBtn span:hover {
    background: #F4F4F4
}

.modal_ .closeBtn_f {
    text-align: center;
    background: #fff;
    cursor: pointer;
    padding: 1em;
    box-shadow: 0 0 10px rgba(0,0,0,0.2);
    transition: all 0.15s
}

.modal_ .closeBtn_f:hover {
    background: #999;
    color: #fff
}

@media screen and (max-width: 1199px) {
    .modal_ .modal_head {
        max-width:970px
    }
}

@media screen and (max-width: 991px) {
    .modal_ .modal_head {
        max-width:750px
    }
}

.product_detail_list {
    overflow: hidden;
    *zoom:1}

.product_detail_list li {
    float: left;
    background: #F4F4F4;
    margin-bottom: 15px;
    height: 26em
}

.product_detail_list.layout01 li {
    margin-right: 0;
    width: 100%
}

.product_detail_list.layout02 li {
    margin-right: 1%;
    width: 49.5%
}

.product_detail_list.layout02 li:nth-child(2n) {
    margin-right: 0
}

.product_detail_list.layout03 li {
    margin-right: 1.25%;
    width: 32.5%
}

.product_detail_list.layout03 li:nth-child(3n) {
    margin-right: 0
}

.product_detail_list.layout04 li {
    margin-right: 1.3333%;
    width: 24%
}

.product_detail_list.layout04 li:nth-child(4n) {
    margin-right: 0
}

.product_detail_list .thumb_wrap .thumb {
    position: relative;
    padding-top: 65%;
    overflow: hidden;
    background: #999;
    height: inherit;
    cursor: pointer
}

.product_detail_list .thumb_wrap .thumb:hover {
    opacity: .7;
    filter: alpha(opacity=70)
}

.product_detail_list .thumb_wrap .thumb img {
    position: absolute;
    text-align: center;
    top: 0
}

.product_detail_list .detail_ttl {
    font-size: 1.8rem;
    border-bottom: 2px solid #ff7f7f;
    background: #fff
}

.product_detail_list .detail {
    font-size: 1.4rem;
    padding: 0.2em 0.4em
}

@media screen and (max-width: 1199px) {
    .product_detail_list li {
        height:22em
    }
}

@media screen and (max-width: 991px) {
    .product_detail_list li {
        height:22em
    }

    .product_detail_list.layout04 li {
        margin-right: 1.25%;
        width: 32%
    }

    .product_detail_list.layout04 li:nth-child(4n) {
        margin-right: 1.3333%
    }

    .product_detail_list.layout04 li:nth-child(3n) {
        margin-right: 0
    }
}

.inner_thumb {
    display: none;
    background: rgba(0,0,0,0.7);
    height: 100%;
    padding: 5%;
    width: 100%;
    position: fixed;
    z-index: 50;
    top: 0;
    left: 0;
    text-align: center
}

.inner_thumb p {
    box-shadow: 0 0 40px rgba(26,26,26,0.4);
    height: 100%
}

.inner_thumb p .close {
    display: inline-block;
    width: 30px;
    height: 30px;
    background: url(vender/close.png) top right no-repeat;
    text-indent: -9999px;
    outline: none;
    cursor: pointer;
    position: absolute;
    opacity: .7;
    filter: alpha(opacity=70)
}

.inner_thumb p .close:hover {
    opacity: 1;
    filter: alpha(opacity=100)
}

.inner_thumb p img {
    max-height: 100%;
    transition: all 0.15s linear;
    border: 10px solid #fff;
    border-radius: 4px
}

.telop {
    width: 100%;
    position: absolute;
    bottom: 40px;
    left: 0;
    z-index: 3;
    font-weight: 400;
    line-height: 2
}

.telop .label {
    display: block;
    background: #ff0071;
    color: #fff;
    width: 100px;
    text-align: center;
    float: left
}

.telop .label.more {
    background: #000
}

.telop .label.more:hover {
    background: #ff0071
}

.telop .telop-item {
    width: calc(100% - 200px);
    float: left;
    background: rgba(51,51,51,0.9);
    max-height: 2em;
    overflow: hidden;
    *zoom:1}

.telop .telop-item .slide a {
    color: #fff;
    padding: 0 2em
}

.telop .telop-item .slide a .date {
    font-size: 1.2rem
}

.telop .telop-item .slide a .title {
    font-size: 1.6rem
}

.telop .telop-item .slide a:hover {
    text-decoration: underline
}

.telop .telop-item .slick-arrow.slick-prev {
    left: 0
}

.telop .telop-item .slick-arrow.slick-next {
    right: 0
}

.telop .telop-item .slick-arrow.slick-prev,.telop .telop-item .slick-arrow.slick-next {
    top: 0;
    height: 0;
    z-index: 4
}

.telop .telop-item .slick-arrow.slick-prev::before,.telop .telop-item .slick-arrow.slick-next::before {
    font-family: "Mplus 1p","Yu Gothic",YuGothic,"游ゴシック","游ゴシック体","メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
    font-size: 1.6rem;
    line-height: 2;
    opacity: .7;
    filter: alpha(opacity=70);
    color: white;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    display: block;
    background: #1A1A1A
}

.telop .telop-item .slick-arrow.slick-prev:hover::before,.telop .telop-item .slick-arrow.slick-next:hover::before {
    opacity: 1;
    filter: alpha(opacity=100)
}

@media screen and (max-width: 767px) {
    .telop {
        display:none
    }
}

.keyv {
    color: #333;
    overflow: hidden;
    background: #F9F9F9;
    background-position: center center;
    background-repeat: no-repeat
}

.keyv_wrapper {
    margin: 0 auto;
    max-width: 1240px;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
}

@media screen and (max-width: 767px) {
    .keyv_wrapper {
        display:block;
        flex-direction: row;
        padding-top: 3.18rem;
    }
}
@media screen and (min-width: 767px) {
    .keyv_wrapper {
        padding: 0 4rem;
    }
}

.keyv_img {
    width: 600px;
}

@media screen and (max-width: 767px) {
    .keyv_img {
        margin:0 auto;
        width: 190px;
        height: 200px;
    }
}

@media screen and (max-width: 767px) {
    .keyv_ttl {
        margin:0 auto;
        width: 330px;
    }
}
@media screen and (max-width: 767px) {
    .keyv_ttl {
        width: 100%;
    }
}

.keyv_ttl_en {
    height: max-content;
    font-family: 'Jost',sans-serif;
    font-size: 5.6rem;
    line-height: 1.2;
    font-weight: 300;
}

@media screen and (max-width: 767px) {
    .keyv_ttl_en {
        font-size:3.6rem;
    }
    .slider_bg {
        position: relative;
    }
    .slider_bg .keyv_txt-inner {
        position: absolute;
        top: 158px;
        right: 0;
        left: 0;
        margin: auto;
        padding: 0 2rem;
    }
}
@media screen and (max-width: 350px) {
    .keyv_ttl_en {
        font-size:3.4rem;
    }
}

.keyv_ttl_ja {
    height: max-content;
    font-family: 'Noto Sans JP',sans-serif;
    margin-top: 1.6rem;
    font-size: 1.3rem;
    line-height: 2;
}

@media(max-width: 767px) {
    .keyv_ttl_ja {
        margin-top: 1.06rem;
        font-size:1.51rem;
    }
}
@media(max-width: 350px) {
    .keyv_ttl_ja {
        font-size:1.4rem;
    }
}

.keyv .keyv_txt {
    width: 100%;
    max-width: 2000px;
    margin: auto;
    z-index: 1;
    transition: .15s all ease-in-out;
}

@media screen and (max-width: 991px) {
    .keyv .keyv_txt {
        padding:100px 0 0
    }
}

@media screen and (max-width: 767px) {
    .keyv .keyv_txt {
        margin: 0 auto;
        width: 330px;
        padding:2.5rem 0 0;
    }
}
@media screen and (max-width: 365px) {
    .keyv .keyv_txt {
        max-width: 330px;
        width: 100%;
    }
}

.keyv .keyv_txt:hover {
    transition: .15s all ease-in-out
}

.keyv .keyv_txt .keyv_txt-inner {
    display: inline-block;
}

.keyv .keyv_txt_low {
    color: #333
}

.keyv .keyv_txt .keyv_ttl {
    height: max-content;
    font-size: 3rem;
    line-height: 1.2;
    margin-bottom: 1.2em
}

@media(max-width:768px) {
    .keyv .keyv_txt .keyv_ttl {
        margin-bottom: .814em;
    }
}

.keyv .keyv_txt .keyv_ttl .low_keyv_ttl {
    font-size: 3rem;
    margin: 1.2em 0 1.2em;
    color: #999
}

.keyv .keyv_txt .keyv_ttl-small {
    font-size: 2rem;
    display: block;
    margin-bottom: 15px;
}

.keyv .keyv_txt .release_date {
    font-weight: 400;
    margin-bottom: 1.2em;
    color: #666
}

.keyv .keyv_txt .keyv_lead {
    font-size: 2rem;
    margin-bottom: 2em
}

.keyv .keyv_txt .bnr_app_dl a {
    display: inline-block
}

.keyv .keyv_txt .bnr_app_dl a img {
    width: 270px;
    position: static;
    left: auto;
    margin: 0 10px 10px 0;
    max-width: none
}

.keyv .keyv_txt .btn {
    position: relative;
    font-weight: 400;
    padding: 1.6rem 7.3rem;
    text-align: center;
    margin: 0 10px;
    border-color: #ff0071;
    color: #FF0071;
    font-size: 1.6rem;
    font-family: 'Jost', sans-serif;
}
.keyv .keyv_txt .btn:before {
    position: absolute;
    top: 50%;
    right: 1.9rem;
    transform: translateY(-50%);
    content: "";
    display: block;
    width: 1.8rem;
    height: 1.8rem;
    background: url(../img/index/slider_btn_icon.svg)center center/100% 100% no-repeat
}

@media(max-width:768px) {
    .keyv .keyv_txt .btn {
        margin: 0 auto;
        display: block;
        width: 164px;
        padding: 1.323rem 5.027rem;
        box-sizing: border-box;
        font-size: 1.852rem;
    }
}
.keyv .keyv_txt .btn:hover {
    opacity: .6;
}
.keyv .keyv_txt .btn.btn_low {
    color: #333;
    width: 270px
}

.keyv .keyv_txt .btn.btn_low::after {
    content: '\f14c';
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: 50%;
    margin-right: .2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-left: .3em
}

.keyv .slide {
    height: 900px;
    max-height: 100vh;
    position: relative;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center
}

.keyv .slick-arrow {
    position: absolute;
    top: 50%;
    margin-top: -40px;
    z-index: 2;
    text-indent: -9999px;
    display: block;
    width: 40px;
    height: 80px;
    border: none;
    background: transparent;
    background-size: 40px 80px;
    background-repeat: no-repeat;
    opacity: .8;
    filter: alpha(opacity=80)
}

.keyv .slick-arrow:hover {
    opacity: 1;
    filter: alpha(opacity=100)
}

.keyv .slick-arrow.slick-prev {
    left: 50%;
    margin-left: -640px
}

.keyv .slick-arrow.slick-next {
    right: 50%;
    margin-right: -640px
}

@media screen and (min-width: 2000px) {
    .keyv .keyv_txt {
        left:50%;
        margin-left: -1000px
    }
}

.keyv_wrap {
    position: fixed;
    width: 100%
}

@media(max-width:768px) {
    .keyv_wrap {
        height: 754px
    }
}

.slide.slider_bg {
    background: url(../img/index/slide05.png) top 50px right/ 125% 100%;
}

@media(max-width:768px) {
    .keyv .slide.slider_bg {
        background: url(../img/index/slide05_sp.png) top -30px center/100% 100% no-repeat;
    }
}

@media screen and (max-width: 991px) {
    .keyv .keyv_txt-inner {
        padding-right: 10vw
    }

    .keyv .slide {
        height: 448px
    }
}

@media screen and (max-width: 767px) {
    .keyv {
        margin-top:53px;
        margin-bottom: auto
    }

    .keyv .keyv_txt.alignR,.keyv .keyv_txt.alignL {
        text-align: center
    }

    .keyv .keyv_txt .keyv_ttl {
        font-size: 3rem
    }

    .keyv .keyv_txt .keyv_lead {
        font-size: 1.6rem
    }

    .keyv .keyv_txt .keyv_txt-inner {
        display: block;
        padding: 0 2rem;
    }

    .keyv .keyv_txt .keyv_ttl-small {
        margin-bottom: 5px
    }

    .keyv .slide {
        background-size: 155vw;
        background-position: top center;
        height: calc(550px - 52px);
        margin-bottom: auto;
        position: absolute !important;
        left: 0 !important;
        top: 0 !important
    }

    .keyv.index_keyv {
        height: 550px
    }

    .keyv.index_keyv .keyv_txt .keyv_ttl {
        font-size: 2.6rem
    }

    .keyv.index_keyv .keyv_txt .keyv_lead {
        font-size: 1.4rem
    }

    .keyv.index_keyv .single-item {
        height: 550px
    }

    .keyv.index_keyv .slick-track {
        height: 550px !important
    }

    .keyv .single-item {
        float: none !important;
        height: 450px
    }

    .keyv .slick-track {
        height: 450px !important
    }
}

.sp_news {
    width: 100%;
    position: absolute;
    z-index: 10;
    bottom: 0;
    margin-bottom: 0;
    background: #33333a;
    font-weight: 400;
    color: #fff;
    padding: 15px 15px 80px
}

.sp_news .news_title {
    text-align: center;
    font-size: 3rem;
    margin-bottom: 10px
}

.sp_news ul {
    border-top: 1px solid rgba(255,255,255,0.1);
    margin-bottom: 30px
}

.sp_news ul li {
    border-bottom: 1px solid rgba(255,255,255,0.1)
}

.sp_news ul li a {
    display: block;
    color: #fff;
    font-size: 1.5rem;
    padding: .4em .8em .4em 0;
    position: relative
}

.sp_news ul li a .date {
    display: block;
    font-size: 1.2rem
}

.sp_news ul li a::after {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #fff;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    opacity: .5;
    filter: alpha(opacity=50);
    position: absolute;
    right: 0;
    font-size: 1rem;
    top: 50%;
    margin-top: -.5em;
    transition: color .15s linear
}

.sp_news .btn {
    width: 100%;
    font-size: 2rem;
    padding: .4em 0;
    text-align: center
}

.keyv.keyv_works {
    color: #fff;
    overflow: hidden;
    background: #F9F9F9;
    background-position: center center;
    background-repeat: no-repeat
}

.keyv.keyv_works .keyv_txt {
    position: absolute;
    width: 100%;
    max-width: 2000px;
    margin: auto;
    color: #fff;
    z-index: 1;
    transition: .15s all ease-in-out;
    padding: 200px 10vw 0
}

.keyv.keyv_works .keyv_txt:hover {
    transition: .15s all ease-in-out
}

.keyv.keyv_works .keyv_txt_low {
    color: #333
}

.keyv.keyv_works .keyv_txt .keyv_ttl {
    font-size: 4rem;
    line-height: 1.2;
    margin-bottom: 1.2em
}

.keyv.keyv_works .keyv_txt .keyv_ttl .low_keyv_ttl {
    font-size: 3rem;
    margin: 1.2em 0 1.2em;
    color: #999
}

.keyv.keyv_works .keyv_txt .release_date {
    font-weight: 400;
    margin-bottom: 1.2em;
    color: #666
}

.keyv.keyv_works .keyv_txt .keyv_lead {
    font-size: 2rem;
    margin-bottom: 2em
}

.keyv.keyv_works .keyv_txt .bnr_app_dl a {
    display: inline-block
}

.keyv.keyv_works .keyv_txt .bnr_app_dl a img {
    width: 270px;
    position: static;
    left: auto;
    margin: 0 10px 10px 0;
    max-width: none
}

.keyv.keyv_works .keyv_txt .btn {
    font-weight: 400;
    padding: .4em 1.2em;
    text-align: center;
    margin: 0 10px;
    font-size: 2rem
}

.keyv.keyv_works .keyv_txt .btn.btn_low {
    color: #333;
    width: 270px
}

.keyv.keyv_works .keyv_txt .btn.btn_low::after {
    content: '\f14c';
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: 50%;
    margin-right: .2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-left: .3em
}

.keyv.keyv_works .keyv_txt .btn:hover {
    color: #fff;
    background: #ff0071;
    border-color: #ff0071
}

.keyv.keyv_works .slide {
    height: 900px;
    max-height: 100vh;
    position: relative
}

.keyv.keyv_works .slide .keyv_img {
    width: 2000px;
    position: absolute;
    left: 50%;
    margin-left: -1000px;
    top: 50%;
    margin-top: -450px;
    max-width: none
}

.keyv.keyv_works .slick-arrow {
    position: absolute;
    top: 50%;
    margin-top: -40px;
    z-index: 2;
    text-indent: -9999px;
    display: block;
    width: 40px;
    height: 80px;
    border: none;
    background: transparent;
    background-size: 40px 80px;
    background-repeat: no-repeat;
    opacity: .8;
    filter: alpha(opacity=80)
}

.keyv.keyv_works .slick-arrow:hover {
    opacity: 1;
    filter: alpha(opacity=100)
}

.keyv.keyv_works .slick-arrow.slick-prev {
    left: 50%;
    margin-left: -640px
}

.keyv.keyv_works .slick-arrow.slick-next {
    right: 50%;
    margin-right: -640px
}

@media screen and (min-width: 2000px) {
    .keyv.keyv_works .keyv_txt {
        left:50%;
        margin-left: -1000px
    }
}

.keyv_wrap {
    position: fixed;
    width: 100%
}

@media screen and (max-width: 991px) {
    .keyv.keyv_works .keyv_txt {
        padding:100px 10vw 0
    }

    .keyv.keyv_works .slide .keyv_img {
        width: 1000px;
        margin-left: -500px;
        height: 450px;
        top: 0;
        margin-top: 0
    }
}

@media screen and (max-width: 767px) {
    .keyv.keyv_works {
        margin-top:53px;
        margin-bottom: auto;
        height: 600px
    }

    .keyv.keyv_works .keyv_txt {
        padding: 60px 10px 0;
        font-weight: 400
    }

    .keyv.keyv_works .keyv_txt.alignR,.keyv.keyv_works .keyv_txt.alignL {
        text-align: center
    }

    .keyv.keyv_works .keyv_txt .keyv_ttl {
        font-size: 3rem
    }

    .keyv.keyv_works .keyv_txt .keyv_lead {
        font-size: 1.6rem
    }

    .keyv.keyv_works .keyv_txt .btn {
        width: 100%;
        box-sizing: border-box;
        margin: 0
    }

    .keyv.keyv_works .slide .keyv_img {
        height: 450px
    }

    .keyv.keyv_works .single-item {
        float: none !important;
        height: 450px
    }

    .keyv.keyv_works .slick-track {
        height: 600px !important
    }

    .keyv.keyv_works .slide {
        background-size: auto 60vw;
        background-position: center top;
        margin-bottom: auto;
        position: absolute !important;
        left: 0 !important;
        top: 0 !important;
        height: 600px
    }

    .keyv.keyv_works .slide .keyv_txt {
        padding-top: 40px
    }

    .keyv.keyv_works .slide .keyv_txt .keyv_ttl {
        margin-bottom: .4em
    }

    .keyv.keyv_works .slide .keyv_txt .release_date {
        margin-bottom: 300px
    }

    .keyv.keyv_works .slide .keyv_img {
        margin-left: -340px
    }

    .keyv.keyv_works .slide .bnr_app_dl a img {
        margin: 0 5px 5px;
        width: 135px
    }

    .keyv.keyv_works .slide .btn {
        width: 280px
    }
}

.closing_section {
    text-align: center;
    padding-top: 80px;
    padding-bottom: 90px
}

.closing_section .section_head {
    margin-bottom: 60px
}

.closing_section .section_head .ttl {
    font-weight: 500
}

.closing_section .section_head .ttl span {
    display: block;
    font-size: 3rem
}

.closing_section .section_head .ttl span:after {
    content: "";
    display: block;
    width: 200px;
    height: 1px;
    margin: 10px auto;
    background: rgba(153,153,153,0.5)
}

.closing_section .section_head .ttl .headding {
    font-size: 1.6rem
}

.closing_section .section_head .lead {
    font-weight: 400;
    margin-top: 1.2em
}

.closing_section.bg_dark01,.closing_section.bg_dark02,.closing_section.bg_dark01 a,.closing_section.bg_dark02 a {
    color: #fff
}

.closing_section.bg_dark01 a:hover,.closing_section.bg_dark02 a:hover {
    color: #ff0071
}

.closing_section.bg_light01,.closing_section.bg_light02,.closing_section.bg_light01 a,.closing_section.bg_light02 a {
    color: #666
}

.closing_section.bg_light01 a:hover,.closing_section.bg_light02 a:hover {
    color: #ff0071
}

.closing_section .listview1 {
    text-align: center;
    font-weight: 500
}

.closing_section .listview1 .ttl {
    font-size: 2rem;
    padding: .4em 0;
    font-weight: 700
}

.closing_section .listview1 .lead {
    font-size: 1.2rem;
    margin-bottom: 1.2em
}

.closing_section .listview1 .btn {
    width: 100%;
    padding: 10px
}

.closing_section .listview1 .btn:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    border-color: #ff0071;
    background: #ff0071;
    color: #fff
}

.closing_section .listview2 {
    text-align: left;
    font-weight: 500;
    transform: scale(0.9);
    transition: transform 0.3s linear;
    transition: transform 0.3s linear, -webkit-transform 0.3s linear
}

.closing_section .listview2 figure {
    opacity: .6;
    filter: alpha(opacity=60)
}

.closing_section .listview2 .cont {
    opacity: .3;
    filter: alpha(opacity=30);
    margin: 10px 0;
    padding: 0 10px;
    border-left: 1px dashed #999;
    border-right: 1px dashed #999
}

.closing_section .listview2 .ttl {
    font-size: 1.4rem;
    padding: .4em 0;
    font-weight: 700
}

.closing_section .listview2 .lead {
    font-size: 1.2rem;
    margin-bottom: 1.2em
}

.closing_section .listview2.slick-current {
    transform: scale(1)
}

.closing_section .listview2.slick-current .cont,.closing_section .listview2.slick-current figure {
    opacity: 1;
    filter: alpha(opacity=100)
}

.closing_section .multi_item {
    margin-bottom: 40px
}

.closing_section .multi_item .slick-arrow {
    z-index: 1;
    opacity: .7;
    filter: alpha(opacity=70);
    width: 30px;
    height: 60px;
    background-size: 30px 60px;
    top: 30%
}

.closing_section .multi_item .slick-arrow:hover {
    opacity: 1;
    filter: alpha(opacity=100)
}

.closing_section .multi_item .slick-arrow::before {
    display: none
}

.closing_section .multi_item .slick-arrow.slick-prev {
    left: 50%;
    margin-left: -17.3vw;
    background-image: url(../img/common/vender/prev.png)
}

.closing_section .multi_item .slick-arrow.slick-next {
    right: 50%;
    margin-right: -17.3vw;
    background-image: url(../img/common/vender/next.png)
}

.closing_section .btn_wrap .btn {
    font-weight: 400;
    width: 100%;
    max-width: 400px;
    padding: 10px
}

.closing_section .btn_wrap .btn:hover {
    opacity: 1;
    filter: alpha(opacity=100);
    border-color: #ff0071;
    background: #ff0071;
    color: #fff
}

.closing_section .btn_wrap .btn_dark {
    color: #666
}

@media screen and (max-width: 767px) {
    .closing_section .listview1 {
        margin-bottom:60px
    }

    .closing_section .listview2 {
        margin-bottom: 60px;
        transform: scale(1)
    }

    .closing_section .listview2 figure,.closing_section .listview2 .cont {
        opacity: 1;
        filter: alpha(opacity=100)
    }
}

.index_table {
    background: none;
    border: none;
    margin: 3em 0 2em;
    border-bottom: 5px solid rgba(255,255,255,0.3)
}

.index_table tr {
    background: none
}

.index_table tr:nth-child(2n) {
    background: none
}

.index_table tr:nth-child(2n+1) {
    background: rgba(255,255,255,0.3)
}

.index_table th,.index_table td {
    border: none
}

.index_table th {
    padding: .4em 1.2em;
    vertical-align: top;
    text-align: right;
    font-size: 1.6rem;
    font-weight: 500
}

.index_table td {
    text-align: left;
    font-size: 1.4rem;
    font-weight: 400
}

.closing_section .faq_list_wrap {
    margin: 2em 0
}

.closing_section .faq_list_wrap .thumb_header {
    text-align: left
}

.closing_section .faq_list_wrap .btn_wrap .btn {
    color: #fff
}

.closing_section .faq_list {
    border-color: rgba(255,255,255,0.1);
    font-size: 1.4rem
}

.closing_section .faq_list li a {
    border-color: rgba(255,255,255,0.1);
    padding-left: 4em;
    font-weight: 400
}

.closing_section .faq_list li a:hover {
    color: #fff
}

.closing_section .faq_list li a::before,.closing_section .faq_list li a::after {
    color: #fff;
    opacity: .5;
    filter: alpha(opacity=50)
}

.rec_list {
    border-bottom: 1px solid #ccc;
    text-align: left;
    font-weight: 400;
    margin-bottom: 3em
}

.rec_list li {
    position: relative
}

.rec_list li a {
    display: block;
    padding: .8em 2em .8em 0;
    border-top: 1px solid #ccc;
    overflow: hidden;
    *zoom:1}

.rec_list li a::after {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #999;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    right: 0;
    font-size: 1rem;
    top: 50%;
    margin-top: -.5em;
    transition: color .15s linear
}

.rec_list li a:hover {
    background: rgba(204,204,204,0.3)
}

.rec_list li a:hover::before,.rec_list li a:hover::after {
    color: #ff0071
}

.rec_list li .kind {
    font-size: 1.6rem;
    display: block;
    float: left;
    text-align: left;
    font-weight: 500
}

.rec_list li .detail {
    font-size: 1.2rem;
    line-height: 2;
    display: block;
    float: right;
    text-align: left
}

@media screen and (max-width: 767px) {
    .rec_list li .kind,.rec_list li .detail {
        width:100%;
        float: none
    }
}

.closing_section .cv {
    margin-bottom: 30px
}

.closing_section .cv .btn {
    border: none;
    font-size: 1.8rem;
    padding: .8em 3.2em;
    font-weight: 500;
    width: 100%;
    max-width: 400px;
    position: relative
}

.closing_section .cv .btn::after {
    content: "\f054";
    display: inline-block;
    font: normal normal normal 14px/1 FontAwesome;
    font-size: inherit;
    position: absolute;
    font-size: 1em;
    margin-top: -.5em;
    top: 50%;
    right: .4em
}

.closing_section .cv .btn:hover {
    color: #fff;
    opacity: .7;
    filter: alpha(opacity=70)
}

.closing_section .cv .btn_estimate {
    background: #999
}

.closing_section .cv .btn_estimate::after {
    opacity: .8;
    filter: alpha(opacity=80)
}

.closing_section .cv .btn_contact {
    background: #ff0071
}

.closing_section .cv_lead {
    font-size: 1.6rem;
    margin-bottom: 15px;
    font-weight: normal
}

.closing_section .cv_info {
    font-weight: 500
}

.closing_section .cv_info .cv_info_txt {
    font-size: 1.6rem
}

.closing_section .cv_info em {
    font-size: 2.4rem;
    font-weight: 900
}

.closing_section .cv_info small {
    font-size: 1.6rem;
    display: block
}

@media screen and (max-width: 767px) {
    .closing_section .cv .btn {
        width:100%
    }
}

.lower {
    background: #F4F4F4
}

.page_head {
    background: #F4F4F4;
    margin-top: 100px;
    padding: 40px 0;
    font-weight: 400
}

.page_head .ttl {
    font-size: 2.6rem;
    text-align: center;
    margin-bottom: 1em
}

.page_head .ttl:after {
    content: "";
    display: block;
    width: 200px;
    height: 1px;
    margin: 10px auto;
    background: rgba(153,153,153,0.5)
}

.page_head .lead {
    text-align: center;
    font-size: 1.6rem;
    letter-spacing: 0
}

@media screen and (max-width: 991px) {
    .page_head {
        margin-top:53px
    }
}

.privacypolicy .post_cont h2 {
    margin-top: 2.5em
}

.privacypolicy .post_cont table {
    border-bottom: none
}

.privacypolicy .post_cont table tr {
    border: 1px solid #666
}

.privacypolicy .post_cont table th {
    border-bottom: none;
    border: 1px solid #666
}

.privacypolicy .post_cont table td {
    border: none;
    border: 1px solid #666
}

.privacypolicy .post_cont table th:nth-child(1) {
    width: 30%
}

.privacypolicy .post_cont table th:nth-child(2) {
    width: 70%
}

.privacypolicy .post_cont li {
    padding-left: 1.6em;
    line-height: 1.7;
    margin: .4em 0
}

.privacypolicy .post_cont li:before {
    color: #999;
    font-size: 10px;
    top: .8em
}

@media screen and (max-width: 991px) {
    .privacypolicy .post_cont table {
        table-layout:fixed
    }

    .privacypolicy .post_cont table th:nth-child(1),.privacypolicy .post_cont table th:nth-child(2) {
        width: 50%
    }

    .privacypolicy .post_cont li:before {
        top: .5em
    }
}

.post_cont {
    line-height: 2
}

.post_cont.template_a {
    background: #fff;
    padding: 40px 0
}

.post_cont.add_section {
    margin: 40px 0 0
}

.post_cont .sec_count {
    display: block;
    position: absolute;
    width: 80px;
    height: 80px;
    text-align: center;
    background: #ff0071;
    top: -40px;
    left: 50%;
    margin-left: -40px;
    font-style: normal;
    color: #fff;
    border-radius: 50%;
    line-height: 1.2;
    padding-top: 1em;
    border: 4px double rgba(255,0,113,0.5)
}

.post_cont .sec_count .step {
    display: block;
    font-size: 1.4rem;
    opacity: .7;
    filter: alpha(opacity=70);
    font-weight: 900
}

.post_cont .sec_count .num {
    display: block;
    font-size: 3rem;
    font-style: italic;
    font-weight: 700
}

.post_cont .sec_count.fa {
    padding-top: 0;
    line-height: 80px;
    letter-spacing: 0
}

.post_cont .sec_count.fa::before {
    font-size: 4.4rem
}

.post_cont .cf {
    display: block;
    clear: both
}

.post_cont h1,.post_cont h2,.post_cont h3,.post_cont h4,.post_cont h5,.post_cont h6 {
    font-weight: bold;
    margin-top: 1.6em;
    margin-bottom: 1.6em
}

.post_cont h2 {
    font-size: 2.4rem;
    text-align: center;
    position: relative;
    padding-bottom: 20px
}

.post_cont h2::before {
    position: absolute;
    content: "";
    display: block;
    left: 50%;
    bottom: 10px
}

.post_cont h2::after {
    position: absolute;
    content: "";
    display: block;
    left: 50%;
    bottom: 10px;
    width: 100px;
    height: 3px;
    background: #ff0071;
    margin-left: -50px
}

.post_cont h2::before {
    width: 400px;
    height: 1px;
    background: rgba(153,153,153,0.5);
    margin-left: -200px;
    margin-bottom: 1px
}

.post_cont h3 {
    font-size: 2.2rem;
    border-bottom: 1px solid rgba(153,153,153,0.3);
    padding-bottom: .4em
}

.post_cont h3::before {
    content: "";
    display: inline-block;
    width: .7em;
    height: .7em;
    transform: rotate(45deg);
    background: #ff0071;
    margin-right: .4em
}

.post_cont h4 {
    font-size: 2rem
}

.post_cont h4::before {
    content: "";
    display: inline-block;
    width: .7em;
    height: .7em;
    transform: rotate(45deg);
    background: #ff0071;
    opacity: .5;
    filter: alpha(opacity=50);
    margin-right: .4em
}

.post_cont h5 {
    font-size: 1.8rem
}

.post_cont h5::before {
    content: "";
    display: inline-block;
    width: .7em;
    height: .7em;
    transform: rotate(45deg);
    background: #fff;
    border: 1px solid #ff0071;
    margin-right: .4em
}

.post_cont h6 {
    font-size: 1.6rem;
    border-left: .4em;
    padding-left: .4em
}

.post_cont p {
    font-size: 1.6rem;
    margin-top: .4em;
    margin-bottom: 1.6em;
    font-weight: 400;
    letter-spacing: 0em
}

.post_cont p a {
    color: #ff0071
}

.post_cont p a[target]::after {
    content: '\f14c';
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: 50%;
    margin-right: .2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-left: .3em
}

.post_cont p a:hover {
    text-decoration: underline
}

.post_cont blockquote {
    border-left: 0.8em solid #ccc;
    padding-left: .8em
}

.post_cont strong {
    font-weight: bold
}

.post_cont em {
    font-style: italic;
    margin-right: .2em
}

.post_cont ul {
    letter-spacing: 0;
    margin-top: .4em;
    margin-bottom: 1.6em
}

.post_cont ul li {
    font-weight: 400;
    position: relative;
    padding-left: 2.4em;
    line-height: 1.2;
    margin: .8em 0
}

.post_cont ul li::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #ff0071;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    top: .1em;
    left: 1em
}

.post_cont ul li a {
    color: #ff0071
}

.post_cont ul li a:hover {
    text-decoration: underline
}

.post_cont ul li a[target]::after {
    content: '\f14c';
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: 50%;
    margin-right: .2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-left: .3em
}

.post_cont ul li dl dd {
    padding-left: 0
}

.post_cont ol {
    letter-spacing: 0;
    margin-top: .4em;
    margin-bottom: 1.6em;
    counter-reset: number
}

.post_cont ol li {
    font-size: 2rem;
    font-weight: 400;
    line-height: 1.2;
    margin: .8em 0 .8em 2.4em;
    position: relative
}

.post_cont ol li::before {
    counter-increment: number;
    content: counter(number) ".";
    position: absolute;
    left: -1.2em;
    top: -.1em;
    font-style: italic;
    font-size: 2.6rem;
    color: #ff0071
}

.post_cont ol li a {
    color: #ff0071
}

.post_cont ol li a:hover {
    text-decoration: underline
}

.post_cont ol li a[target]::after {
    content: '\f14c';
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: 50%;
    margin-right: .2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-left: .3em
}

.post_cont ol li dl {
    margin-bottom: 1.6em
}

.post_cont ol li dl dd {
    margin-top: .8em;
    margin-bottom: .8em;
    padding-left: 0
}

.post_cont dl {
    letter-spacing: 0;
    font-weight: 400
}

.post_cont dl dt {
    font-size: 2rem;
    line-height: 1.2;
    padding-bottom: .2em;
    display: inline-block;
    border-bottom: 1px solid #ccc
}

.post_cont dl dd {
    padding-left: 2em;
    margin-top: .4em;
    margin-bottom: 1.6em;
    line-height: 1.4;
    font-size: 1.4rem
}

.post_cont dl dd a {
    color: #ff0071
}

.post_cont dl dd a:hover {
    text-decoration: underline
}

.post_cont dl dd a[target]::after {
    content: '\f14c';
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: 50%;
    margin-right: .2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-left: .3em
}

.post_cont iframe {
    max-width: 100%
}

.post_cont table {
    font-weight: 400
}

.post_cont table td {
    word-break: break-all
}

.post_cont table td:first-child {
    word-break: keep-all
}

.post_cont table td a {
    color: #ff0071
}

.post_cont .privacy_mark_row_item img {
    width: 40px;
    margin: 0 6px;
    display: inline-block;
}

.post_cont .privacy_mark_row_item span {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    word-break: break-all;
}
.post_cont .privacy_mark_row_item span .inline-block {
    display: inline-block;
}

@media(min-width: 356px) and (max-width: 767px) {
    .post_cont .privacy_mark_row_item a {
        float: left;
    }
}

@media(max-width: 355px) {
    .post_cont .privacy_mark_row_item a {
        display: block;
    }
}

@media(min-width: 500px) {
    .post_cont .privacy_mark_row_item span {
        line-height: 40px;
    }
}

@media(min-width: 768px) {
    .post_cont .privacy_mark_row_item img {
        width: 71px;
        margin: 0 10px;
    }
    .post_cont .privacy_mark_row_item span {
        line-height: 70px;
    }
    .post_cont .privacy_mark_row_item span .only-sp {
        display: none;
    }
}

.post_cont table td a[target]::after {
    content: '\f14c';
    font: normal normal normal 14px/1 FontAwesome;
    color: inherit;
    font-size: 50%;
    margin-right: .2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    margin-left: .3em
}

.post_cont table td a.not_icon::after {
    content: '';
}

.post_cont table td a:hover {
    text-decoration: underline
}

@media screen and (max-width: 767px) {
    .post_cont h2::before {
        width:100%;
        margin-left: -50%
    }
}

.has_child {
    position: relative
}

.has_child::after {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-top: 40px solid #fff;
    border-left: 60px solid transparent;
    border-right: 60px solid transparent;
    position: absolute;
    bottom: -40px;
    margin-left: -60px;
    left: 50%
}

.add_section.has_child {
    margin: 40px 0 100px
}

.addsec_wrap .has_child:last-child::after {
    display: none
}

.child_links {
    margin-top: 80px;
    margin-bottom: 40px
}

.child_links.no_parent {
    margin-top: 0
}

.child_links .listview {
    padding: 20px;
    overflow: hidden;
    *zoom:1;background: #fff;
    margin-bottom: 20px
}

.child_links .thumb {
    width: 30%;
    float: left
}

.child_links .cont {
    width: 70%;
    float: left;
    padding: 0 20px
}

.child_links .ttl {
    font-size: 2rem;
    border-bottom: 1px solid #ccc;
    padding-bottom: .8em;
    margin-bottom: .8em;
    font-weight: 400
}

.child_links .ttl .fa {
    color: #ff0071
}

.child_links .lead {
    font-size: 1.6rem;
    margin-bottom: 1em;
    font-weight: 400
}

.child_links .btn {
    font-size: 1.6rem;
    color: #fff;
    background: #ff0071;
    padding: .4em 4em;
    font-weight: 400
}

.child_links .btn:hover {
    opacity: .7;
    filter: alpha(opacity=70)
}

.entry_area {
    margin-top: 100px;
    padding-top: 40px
}

.entry_area .post_cont {
    line-height: 2
}

.entry_area .post_cont .post_head {
    border-bottom: 2px solid #ccc
}

.entry_area .post_cont .post_ttl {
    margin-top: 0;
    font-size: 2rem;
    line-height: 1.4
}

@media screen and (max-width: 767px) {
    .entry_area {
        margin-top:53px;
        padding-top: 20px
    }
}

.recruit_wrap {
    overflow: hidden;
    *zoom:1}

.recruit_wrap .recruit_thumb {
    float: left;
    width: 45%
}

.recruit_wrap .recruit_cont {
    float: right;
    width: 100%
}

.recruit_wrap .recruit_cont table {
    font-size: 1.4rem;
    border: none
}

.recruit_wrap .recruit_cont table tr {
    background: none !important;
    border-bottom: 1px solid #ddd
}

.recruit_wrap .recruit_cont table th,.recruit_wrap .recruit_cont table td {
    border: none
}

.recruit_wrap .recruit_cont table th {
    width: 20%;
    font-weight: 700
}

.recruit_wrap .recruit_cont table td {
    padding: .8em 0;
    font-size: 1.4rem;
    font-weight: 400;
    line-height: 1.6
}

.recruit_wrap .jumpbtn {
    text-align: center
}

.recruit_wrap .jumpbtn a {
    background: #999;
    border: none;
    font-size: 1.8rem;
    padding: 10px 38px;
    font-weight: 500;
    width: 100%;
    max-width: 200px;
    position: relative;
    margin-top: 1em
}

.recruit_wrap .jumpbtn a:hover {
    color: #fff;
    opacity: .7
}

#entry_anchor {
    display: block;
    padding-top: 70px;
    margin-top: -70px
}

@media screen and (max-width: 767px) {
    .recruit_wrap .recruit_thumb,.recruit_wrap .recruit_cont {
        float:none;
        width: 100%
    }
}

.sidebar .ttl {
    font-size: 2rem;
    padding: 1em 0;
    margin-bottom: 1em;
    border-bottom: 2px solid #ccc
}

.sidebar ul {
    color: #ff0071
}

.sidebar ul li {
    font-size: 1.4rem;
    border-bottom: 1px solid #F4F4F4;
    margin-bottom: 2em
}

.sidebar ul li a {
    font-size: 1.4rem
}

.sidebar ul li a .post_date {
    display: block;
    color: #999;
    font-weight: 700;
    font-size: 1rem;
    transition: .15s all ease-in-out
}

.sidebar ul li a .post_date:hover {
    transition: .15s all ease-in-out
}

.sidebar ul li a .post_ttl {
    color: #333;
    font-weight: 500;
    transition: .15s all ease-in-out
}

.sidebar ul li a .post_ttl:hover {
    transition: .15s all ease-in-out
}

.sidebar ul li a:hover .post_ttl {
    color: #ff0071
}

.sidebar .btn {
    display: block;
    background: #ff0071;
    text-align: center;
    border-radius: 2px;
    border: none
}

.sidebar .btn:hover {
    background: #ff7f7f;
    color: #fff
}

.sidebar .faq_side li {
    font-size: 1.3rem;
    position: relative;
    padding-left: 1.4em
}

.sidebar .faq_side li::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #999;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    position: absolute;
    left: .3em;
    font-size: 1rem;
    top: 50%;
    margin-top: -.6em;
    transition: color .15s linear
}

.sidebar .faq_side li span {
    font-size: 1.8rem
}

.nav_below {
    clear: both;
    overflow: hidden;
    *zoom:1;border-top: 1px solid #ccc;
    padding-top: 1em;
    margin-bottom: 4em
}

.nav_below span {
    display: block;
    float: left;
    min-height: 10px
}

.nav_below span.prev {
    width: 20%;
    text-align: left
}

.nav_below span.navList {
    width: 60%;
    text-align: center
}

.nav_below span.next {
    width: 20%;
    text-align: right
}

.nav_below span a {
    display: inline-block;
    border: 1px solid #999;
    color: #555;
    padding: .4em .8em;
    font-weight: 500
}

.nav_below span a:hover {
    background: #ff0071;
    border-color: #ff0071;
    color: #fff
}

.post_cont .share_btn {
    text-align: center
}

.post_cont .share_btn li {
    width: 20%;
    display: inline-block;
    padding-left: 0;
    margin: 0 .2em;
    font-weight: 400
}

.post_cont .share_btn li::before {
    content: none
}

.post_cont .share_btn li a {
    display: block;
    background: #000;
    color: #fff;
    font-size: 1.6rem;
    padding: .8em 0;
    text-decoration: none
}

.post_cont .share_btn li a[target]::after {
    content: none
}

.post_cont .share_btn li a:hover {
    text-decoration: none;
    opacity: .7;
    filter: alpha(opacity=70)
}

.post_cont .share_btn li.ln a {
    background: #00C300
}

.post_cont .share_btn li.ln a::before {
    content: '';
    padding-right: .0em;
    width: 1.2em;
    height: 1.2em;
    display: inline-block;
    background: url(../img/common/icons/line-wh.svg);
    position: relative;
    top: .2em
}

.post_cont .share_btn li.ha a {
    background: #008FDE
}

.post_cont .share_btn li.ha a::before {
    content: 'B!';
    font-family: Verdana;
    padding-right: .0em;
    font-weight: bold
}

.post_cont .share_btn li.in a {
    background: #f09433;
    background: linear-gradient(45deg, #f09433 0%, #e6683c 25%, #dc2743 50%, #cc2366 75%, #bc1888 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f09433', endColorstr='#bc1888',GradientType=1 )
}

.post_cont .share_btn li.in a::before {
    content: '\f16d';
    padding-right: .0em;
    font-family: FontAwesome
}

.post_cont .share_btn li.tw a {
    background: #55ACEE
}

.post_cont .share_btn li.tw a::before {
    content: '\f099';
    padding-right: .0em;
    font-family: FontAwesome
}

.post_cont .share_btn li.fb a {
    background: #315096
}

.post_cont .share_btn li.fb a::before {
    content: '\f09a';
    padding-right: .0em;
    font-family: FontAwesome
}

.post_cont .share_btn li.pk a {
    background: #F03E51
}

.post_cont .share_btn li.pk a::before {
    content: '\f265';
    padding-right: .0em;
    font-family: FontAwesome
}

.post_cont .share_btn_small {
    float: right;
    text-align: left
}

.post_cont .share_btn_small li {
    width: 40px
}

.post_cont .share_btn_small li a {
    text-align: center;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    line-height: 40px;
    padding: 0
}

.post_cont .share_btn_small li a span {
    display: none
}

.post_cont .post_ttl {
    clear: both
}

@media screen and (max-width: 767px) {
    .post_cont .share_btn {
        float:right;
        text-align: left
    }

    .post_cont .share_btn li {
        width: 30px
    }

    .post_cont .share_btn li a {
        text-align: center;
        border-radius: 50%;
        width: 30px;
        height: 30px;
        line-height: 30px;
        padding: 0
    }

    .post_cont .share_btn li a span {
        display: none
    }
}

.archive_area {
    font-weight: 400
}

.archive_area .section_head {
    text-align: center;
    margin-bottom: 60px
}

.archive_area .section_head .ttl {
    font-weight: 500
}

.archive_area .section_head .ttl span {
    display: block;
    font-size: 3rem
}

.archive_area .section_head .ttl span:after {
    content: "";
    display: block;
    width: 200px;
    height: 1px;
    margin: 10px auto;
    background: rgba(153,153,153,0.5)
}

.archive_area .section_head .ttl .headding {
    font-size: 1.6rem
}

.archive_area .section_head .lead {
    font-weight: 400;
    margin-top: 1.2em
}

.archive_area .post {
    border-bottom: 1px solid #ccc;
    padding: 1em 0;
    overflow: hidden;
    *zoom:1}

.archive_area .post .thumb {
    width: 25%;
    float: left
}

.archive_area .post .post_wrap {
    width: 73%;
    float: right
}

.archive_area .post .post_date {
    display: block;
    padding: .4em 0;
    font-size: 1.2rem;
    font-weight: 700;
    color: #999
}

.archive_area .post .post_date::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #999;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.archive_area .post .product_info {
    display: block;
    padding: .4em 0;
    font-size: 1.2rem;
    font-weight: 700;
    color: #999
}

.archive_area .post .post_ttl {
    font-size: 1.7rem;
    letter-spacing: .05em
}

.archive_area .post .post_ttl::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #ff0071;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.archive_area .post .post_cont {
    font-size: 1.2rem;
    letter-spacing: 0;
    line-height: 1.6
}

.archive_area .post .post_cont a {
    color: #666
}

.archive_area .post .post_cont a:hover {
    color: #ff0071
}

.archive_area.archive_area_works .post_wrap {
    overflow: hidden;
    *zoom:1}

.archive_area.archive_area_works .listview2 {
    width: 32%;
    float: left;
    margin-right: 2%
}

.archive_area.archive_area_works .listview2:nth-child(3n) {
    margin-right: 0
}

.archive_area.archive_area_works .listview2 .cont {
    margin: 10px 0 20px;
    border-bottom: 1px solid #ccc
}

.archive_area.archive_area_works .listview2 .ttl {
    font-size: 1.4rem;
    padding: .4em 0;
    font-weight: 700
}

.archive_area.archive_area_works .listview2 .ttl::before {
    content: "";
    font: normal normal normal 14px/1 FontAwesome;
    color: #ff0071;
    font-size: inherit;
    margin-right: 0.2em;
    display: inline-block;
    text-rendering: auto;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.archive_area.archive_area_works .listview2 .lead {
    font-size: 1.2rem;
    margin-bottom: 1.2em
}

@media screen and (max-width: 767px) {
    .archive_area .post .thumb {
        margin-right:.8em
    }

    .archive_area .post .post_wrap {
        width: 100%;
        float: none
    }

    .archive_area .post .post_ttl {
        padding: .4em 0
    }
}

@media screen and (max-width: 767px) {
    .archive_area.archive_area_works .listview2 {
        width:100%;
        float: none;
        margin-right: 0
    }
}

.pagenavi_below {
    width: 100%;
    margin-bottom: 2em;
    padding: 2em 0
}

.pagenavi_below .wp-pagenavi {
    text-align: center;
    font-size: 1.6rem
}

.pagenavi_below .wp-pagenavi span,.pagenavi_below .wp-pagenavi a {
    display: inline-block;
    padding: .2em .6em;
    border: 1px solid #999;
    transition: all 0.15s linear;
    font-weight: 400
}

.pagenavi_below .wp-pagenavi .pages {
    border: 1px solid #999;
    background: #999;
    color: #fff
}

.pagenavi_below .wp-pagenavi .current {
    border: 1px solid #ff0071;
    background: #ff0071;
    color: #fff
}

.pagenavi_below .wp-pagenavi .first,.pagenavi_below .wp-pagenavi .last,.pagenavi_below .wp-pagenavi .page,.pagenavi_below .wp-pagenavi .nextpostslink,.pagenavi_below .wp-pagenavi .previouspostslink {
    border: 1px solid #999;
    color: #666
}

.pagenavi_below .wp-pagenavi a:hover {
    background: #ff0071;
    border: 1px solid #ff0071;
    color: #fff
}