@charset "UTF-8";
/*---------------------------------------------------------
Theme Name: astronaut_20260522
Theme URI: http://theme.aerospacebiz.jaxa.jp
Description:
Author: JAXA
Author URI: http://jaxa.jp
Text Domain: astronaut
Version: 1.0
---------------------------------------------------------*/
@font-face {
    font-family: 'din_regular';
    src: url("fonts/dinreg-webfont.woff2") format('woff2'), url("fonts/dinreg-webfont.woff") format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
@font-face {
    font-family: 'klavika_regular';
    src: url("fonts/klavikaregular-tf-webfont.woff2") format('woff2'), url("fonts/klavikaregular-tf-webfont.woff") format('woff');
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}
.axis-light {
    font-family: 'AxisStd-Light', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.axis-regular {
    font-family: 'AxisStd-Regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.axis-medium {
    font-family: 'AxisStd-Medium', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.din-regular {
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.klavika-regular {
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
*, *:before, *:after {
    box-sizing: border-box;
}
body {
    margin: 0;
    min-width: 320px;
    font-family: 'AxisStd-Light', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 12px;
    font-weight: normal;
    letter-spacing: 0.6px;
    word-wrap: break-word;
    color: #041020;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: 300;
}
a {
    color: inherit;
    text-decoration: none;
}
a:link, a:visited {
    color: inherit;
    text-decoration: none;
}
a:hover {
    text-decoration: none;
    cursor: pointer;
}
a:focus {
    text-decoration: underline;
}
img, video, object {
    max-width: 100%;
    height: auto;
    border: none;
    vertical-align: top;
}
br {
    display: none;
}


@media all and (min-width: 768px) {
br {
    display: block;
}
}
ul {
    margin: 0;
    padding: 0;
}
li {
    list-style: none;
}
ul.list, ol.list {
    margin: 0;
    padding-left: 0;
}
ul.list li, ol.list li {
    list-style: none;
}
.link a:hover, a.link:hover {
    opacity: 0.7;
    text-decoration: underline;
}
.link_underline, .link_underline a {
    text-decoration: underline;
}
.link_underline:hover {
    text-decoration: none;
}
.link_underline a:hover {
    text-decoration: none;
    opacity: 0.7;
}
.btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
}
.read-more {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    margin-top: 60px;
    text-align: center;
}
.read-more a {
    display: block;
    position: relative;
}
.read-more .button-icon {
    display: inline-block;
    position: relative;
    width: 42px;
    height: 42px;
    background-image: url("images/ui/button-more-plus.png");
    background-repeat: no-repeat;
    background-size: 12px;
    background-position: center;
}
.read-more .button-icon:after {
    content: '';
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 42px;
    height: 42px;
    background-image: url("images/ui/button-more.png");
    background-repeat: no-repeat;
    background-size: 42px 42px;
    background-position: center;
    -webkit-animation-name: rotateOut;
    animation-name: rotateOut;
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    z-index: 50;
}
.read-more:hover .button-icon:after {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn;
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    -webkit-animation-iteration-count: fill;
    animation-iteration-count: fill;
}
.read-more .button-text {
    font-family: 'AxisStd-Regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    margin-top: 15px;
    font-size: 12px;
}

@media all and (max-width: 768px) {
.read-more {
    margin-top: 30px;
}
.read-more .button-icon {
    width: 21px;
    height: 21px;
    background-size: 6px;
}
.read-more .button-icon:after {
    width: 21px;
    height: 21px;
    background-size: 21px;
}
.read-more .button-icon .button-text {
    font-size: 7px;
}
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-center {
    text-align: center;
}
.text-alert {
    color: #f00;
}
.bg-eee {
    background: #eee;
}
.bg-white {
    background: #fff;
}
.bg-navy {
    background: #0a2a54;
}
.fadein, .fadeinOnload {
    opacity: 0.1;
    -webkit-transform: translate(0, 100px);
    transform: translate(0, 100px);
    -webkit-transition: opacity 1s ease, -webkit-transform 1.5s ease;
    transition: opacity 1s ease, -webkit-transform 1.5s ease;
    transition: transform 1.5s ease, opacity 1s ease;
    transition: transform 1.5s ease, opacity 1s ease, -webkit-transform 1.5s ease;
}
.fadein.scrollIn, .fadeinOnload.scrollIn {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}
.i-block {
    display: inline-block;
}

@media all and (max-width: 768px) {
.fadein.spFadeSupport, .fadeinOnload.spFadeSupport {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}
}
.kvZoom {
    -webkit-transition: -webkit-transform 20s linear;
    transition: -webkit-transform 20s linear;
    transition: transform 20s linear;
    transition: transform 20s linear, -webkit-transform 20s linear;
}
.kvZoom.zoomIn {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
.imgZoom {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.3s linear;
    transition: -webkit-transform 0.3s linear;
    transition: transform 0.3s linear;
    transition: transform 0.3s linear, -webkit-transform 0.3s linear;
}
.imgZoom:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
li .listZoom {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.3s linear;
    transition: -webkit-transform 0.3s linear;
    transition: transform 0.3s linear;
    transition: transform 0.3s linear, -webkit-transform 0.3s linear;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
}
li:hover .listZoom {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
}
article .articleZoom {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.3s linear;
    transition: -webkit-transform 0.3s linear;
    transition: transform 0.3s linear;
    transition: transform 0.3s linear, -webkit-transform 0.3s linear;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
}
article:hover .articleZoom {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
}
.pc-hide {
    display: none;
}

@media all and (max-width: 768px) {
.pc-hide {
    display: block;
}
.sp-hide {
    display: none;
}
}
.notfound-text {
    font-size: 25px;
    font-weight: 500;
    margin-bottom: 80px;
}
.table-wrapper {
    width: 100%;
    overflow-x: scroll;
    overflow-y: auto;
}

@media all and (max-width: 768px) {
.table-wrapper table {
    width: 768px !important;
}
}

.editor a {
    color: #165dba;
}
.editor a:hover {
    text-decoration: underline;
}
.editor ul, .editor ol {
    padding-left: 20px;
}
.editor ul li, .editor ol li {
    list-style-type: disc;
}
.button-plus {
    position: absolute;
    display: block;
    right: 25px;
    bottom: 25px;
    background-image: url("images/ui/button-detail.png");
    background-size: 25px;
    background-repeat: no-repeat;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
}
.button-plus:hover {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
}
@-webkit-keyframes rotateIn {
 to {
 -webkit-transform: rotate(360deg);
 transform: rotate(360deg);
}
}
@keyframes rotateIn {
 to {
 -webkit-transform: rotate(360deg);
 transform: rotate(360deg);
}
}
@-webkit-keyframes rotateOut {
 to {
 -webkit-transform: rotate(-360deg);
 transform: rotate(-360deg);
}
}
@keyframes rotateOut {
 to {
 -webkit-transform: rotate(-360deg);
 transform: rotate(-360deg);
}
}
.wrap {
    position: relative;
}
.inner {
    padding: 0 20px;
}

@media all and (min-width: 1000px) {
.inner {
    padding: 0 50px;
}
}
.container {
    width: 950px;
    max-width: 100%;
    margin: 0 auto;
    padding: 0 25px;
}

@media all and (min-width: 1000px) {
.container {
    padding: 0 10px;
}
}
.sub-container {
    width: 1050px;
    margin: 0 auto;
}

@media all and (max-width: 1050px) {
.sub-container {
    width: 100%;
}
}
.row:after {
    clear: both;
    content: '';
    display: table;
}
.row [class*="col-"] {
    padding: 30px;
}
.row .col-1, .row .col-2, .row .col-3, .row .col-4, .row .col-5, .row .col-6, .row .col-7, .row .col-8, .row .col-9, .row .col-10, .row .col-11, .row .col-12 {
    position: relative;
    float: left;
}
.row .col-12 {
    width: 100%;
}
.row .col-11 {
    width: 91.66666667%;
}
.row .col-10 {
    width: 83.33333333%;
}
.row .col-10-2 {
    float: left;
    width: 83.33333333%;
}
.row .col-9 {
    width: 75%;
}
.row .col-8 {
    width: 66.66666667%;
}
.row .col-7 {
    width: 58.33333333%;
}
.row .col-6 {
    width: 50%;
}
.row .col-5 {
    width: 41.66666667%;
}
.row .col-4 {
    width: calc(100% / 3);
}
.row .col-3 {
    width: 25%;
}
.row .col-2 {
    width: 16.66666667%;
}
.row .col-1 {
    width: 8.33333333%;
}
.row .col-left {
    float: left;
}
.row .col-right {
    float: right;
}
.row .col-1-2 {
    float: left;
    width: 50%;
}
.row .col-1-3 {
    float: left;
    width: 33.333333333333%;
}

@media all and (max-width: 768px) {
.row [class*="col-"] {
    padding: 15px;
}
.row .col-1-2 {
    float: none;
    width: 100%;
}
.row .col-1-3 {
    float: none;
    width: 100%;
}
.row .col-10-2 {
    float: none;
    width: 100%;
}
.row .col-4 {
    width: 100%;
}
}


.float-left {
    float: left;
}
.float-right {
    float: right;
}
.float-50 {
    width: 50%;
}
.full-width {
    width: 100%;
}
.full-height {
    height: 100vh;
}
.half-height {
    height : 50vh;
}
.strike {
    position: relative;
}

@media all and (max-width: 768px) {
.sp-circle {
    height: 100vw;
}
}
*, *:before, *:after {
    box-sizing: border-box;
}
body {
    margin: 0;
    min-width: 320px;
    font-family: 'AxisStd-Light', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 12px;
    font-weight: normal;
    letter-spacing: 0.6px;
    word-wrap: break-word;
    color: #041020;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}
h1, h2, h3, h4, h5, h6 {
    font-weight: 300;
}
a {
    color: inherit;
    text-decoration: none;
}
a:link, a:visited {
    color: inherit;
    text-decoration: none;
}
a:hover {
    text-decoration: none;
    cursor: pointer;
}
a:focus {
    text-decoration: underline;
}
img, video, object {
    max-width: 100%;
    height: auto;
    border: none;
    vertical-align: top;
}
br {
    display: none;
}

@media all and (min-width: 768px) {
br {
    display: block;
}
}
ul {
    margin: 0;
    padding: 0;
}
li {
    list-style: none;
}
ul.list, ol.list {
    margin: 0;
    padding-left: 0;
}
ul.list li, ol.list li {
    list-style: none;
}
.link a:hover, a.link:hover {
    opacity: 0.7;
    text-decoration: underline;
}
.link_underline, .link_underline a {
    text-decoration: underline;
}
.link_underline:hover {
    text-decoration: none;
}
.link_underline a:hover {
    text-decoration: none;
    opacity: 0.7;
}
.btn {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
}
.read-more {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    margin-top: 60px;
    text-align: center;
}
.read-more a {
    display: block;
    position: relative;
}
.read-more .button-icon {
    display: inline-block;
    position: relative;
    width: 42px;
    height: 42px;
    background-image: url("images/ui/button-more-plus.png");
    background-repeat: no-repeat;
    background-size: 12px;
    background-position: center;
}
.read-more .button-icon:after {
    content: '';
    display: block;
    position: absolute;
    top: 0px;
    left: 0px;
    width: 42px;
    height: 42px;
    background-image: url("images/ui/button-more.png");
    background-repeat: no-repeat;
    background-size: 42px 42px;
    background-position: center;
    -webkit-animation-name: rotateOut;
    animation-name: rotateOut;
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    z-index: 50;
}
.read-more:hover .button-icon:after {
    -webkit-animation-name: rotateIn;
    animation-name: rotateIn;
    -webkit-animation-duration: 0.3s;
    animation-duration: 0.3s;
    -webkit-animation-iteration-count: fill;
    animation-iteration-count: fill;
}
.read-more .button-text {
    font-family: 'AxisStd-Regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    margin-top: 15px;
    font-size: 12px;
}

@media all and (max-width: 768px) {
.read-more {
    margin-top: 30px;
}
.read-more .button-icon {
    width: 21px;
    height: 21px;
    background-size: 6px;
}
.read-more .button-icon:after {
    width: 21px;
    height: 21px;
    background-size: 21px;
}
.read-more .button-icon .button-text {
    font-size: 7px;
}
}
.text-left {
    text-align: left;
}
.text-right {
    text-align: right;
}
.text-center {
    text-align: center;
}
.text-alert {
    color: #f00;
}
.bg-eee {
    background: #eee;
}
.bg-white {
    background: #fff;
}
.bg-navy {
    background: #0a2a54;
}
.fadein, .fadeinOnload {
    opacity: 0.1;
    -webkit-transform: translate(0, 100px);
    transform: translate(0, 100px);
    -webkit-transition: opacity 1s ease, -webkit-transform 1.5s ease;
    transition: opacity 1s ease, -webkit-transform 1.5s ease;
    transition: transform 1.5s ease, opacity 1s ease;
    transition: transform 1.5s ease, opacity 1s ease, -webkit-transform 1.5s ease;
}
.fadein.scrollIn, .fadeinOnload.scrollIn {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

@media all and (max-width: 768px) {
.fadein.spFadeSupport, .fadeinOnload.spFadeSupport {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}
}
.kvZoom {
    -webkit-transition: -webkit-transform 20s linear;
    transition: -webkit-transform 20s linear;
    transition: transform 20s linear;
    transition: transform 20s linear, -webkit-transform 20s linear;
}
.kvZoom.zoomIn {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
.imgZoom {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.3s linear;
    transition: -webkit-transform 0.3s linear;
    transition: transform 0.3s linear;
    transition: transform 0.3s linear, -webkit-transform 0.3s linear;
}
.imgZoom:hover {
    -webkit-transform: scale(1.1);
    transform: scale(1.1);
}
li .listZoom {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.3s linear;
    transition: -webkit-transform 0.3s linear;
    transition: transform 0.3s linear;
    transition: transform 0.3s linear, -webkit-transform 0.3s linear;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
}
li:hover .listZoom {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
}
article .articleZoom {
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.3s linear;
    transition: -webkit-transform 0.3s linear;
    transition: transform 0.3s linear;
    transition: transform 0.3s linear, -webkit-transform 0.3s linear;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
}
article:hover .articleZoom {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
}
.pc-hide {
    display: none;
}

@media all and (max-width: 768px) {
.pc-hide {
    display: block;
}
}
.notfound-text {
    font-size: 25px;
    font-weight: 500;
    margin-bottom: 80px;
}
.table-wrapper {
    width: 100%;
    overflow-x: scroll;
    overflow-y: auto;
}

@media all and (max-width: 768px) {
.table-wrapper table {
    width: 768px !important;
}
}
.editor a {
    color: #165dba;
}
.editor a:hover {
    text-decoration: underline;
}
.editor ul, .editor ol {
    padding-left: 20px;
}
.editor ul li, .editor ol li {
    list-style-type: disc;
}
.button-plus {
    position: absolute;
    display: block;
    right: 25px;
    bottom: 25px;
    background-image: url("images/ui/button-detail.png");
    background-size: 25px;
    background-repeat: no-repeat;
    -webkit-transition: -webkit-transform 0.3s;
    transition: -webkit-transform 0.3s;
    transition: transform 0.3s;
    transition: transform 0.3s, -webkit-transform 0.3s;
}
.button-plus:hover {
    -webkit-transform: rotate(15deg);
    transform: rotate(15deg);
}
@-webkit-keyframes rotateIn {
 to {
 -webkit-transform: rotate(360deg);
 transform: rotate(360deg);
}
}
@keyframes rotateIn {
 to {
 -webkit-transform: rotate(360deg);
 transform: rotate(360deg);
}
}
@-webkit-keyframes rotateOut {
 to {
 -webkit-transform: rotate(-360deg);
 transform: rotate(-360deg);
}
}
@keyframes rotateOut {
 to {
 -webkit-transform: rotate(-360deg);
 transform: rotate(-360deg);
}
}
.smp-section .body_tbl {
    width: 900px;
    margin: 0 auto;
    padding-bottom: 30px;
    background: #fff;
}
.smp-section h1 {
    margin: 0;
    padding: 10px 10px 10px 10px;
    background: #333;
    color: #fff;
    font-size: 153.9%;
    font-weight: bold;
    text-align: center;
}
.smp-section .header_img_smartphone {
    display: none;
}
.smp-section .header_img_tablet {
    display: none;
}
.smp-section .header_img_pc {
    display: block;
}
.smp-section .header_text {
    margin: 0;
    padding: 20px 70px 20px 70px;
    background: #f1f1f1;
    color: #111;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
}
.smp-section .header_rmesg {
    margin: 0;
    padding: 30px 70px 10px 70px;
    color: #111;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
}
.smp-section .header_emesg {
    width: 720px;
    margin: 30px auto;
    padding: 20px 20px 20px 20px;
    border: 2px solid #f00;
    color: #f00;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
}
.smp-section dl {
    position: relative;
    margin: 0;
    padding: 13px 0 0 0;
    width: 760px;
    border-bottom: 1px solid #ddd;
}
.smp-section dl.top {
    border-top: 1px solid #ddd;
}
.smp-section dt.title {
    display: inline-block;
    width: 220px;
    margin: 0;
    padding: 23px 15px 18px 0;
    color: #333;
    font-size: 108%;
    font-weight: bold;
    text-align: left;
    line-height: 1.2;
    vertical-align: top;
}
.smp-section dt.title .caution {
    display: block;
    width: 220px;
    color: #5f5f5f;
    font-size: 85%;
    font-weight: normal;
    padding: 10px 0 0 0;
    line-height: 1.2;
    text-align: left;
}
.smp-section dd.data {
    display: inline-block;
    width: 520px;
    margin: 0;
    padding: 18px 0;
    color: #5f5f5f;
    font-size: 100%;
    font-weight: bold;
    text-align: left;
}
.smp-section .input {
    width: 420px;
    margin-bottom: 8px;
    padding: 5px;
    color: #333;
    border: 1px solid #999;
    border-radius: 3px 3px 3px 3px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.2) inset;
    font-size: 108%;
    text-align: left;
}
.smp-section .zipcode li.code01 input {
    width: 30px;
}
.smp-section .zipcode li.code02 input {
    width: 40px;
}
.smp-section .phone li.num01 input {
    width: 50px;
}
.smp-section .phone li.num02 input {
    width: 40px;
}
.smp-section .phone li.num03 input {
    width: 40px;
}
.smp-section .price input {
    width: 200px;
}
.smp-section .num input {
    width: 60px;
}
.smp-section .integer input {
    width: 90px;
}
.smp-section .real input {
    width: 170px;
}
.smp-section .pass input {
    width: 150px;
}
.smp-section .epass input {
    width: 160px;
}
.smp-section .time input {
    width: 20px;
}
.smp-section .time .year {
    width: 40px;
}
.smp-section ul, .smp-section li {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.smp-section .zipcode ul li, .smp-section .phone ul li, .smp-section .time ul li {
    width: auto;
    float: left;
    margin: 0 3px 0 0;
    padding: 0;
    height: 35px;
    line-height: 35px;
}
.smp-section .multi1 label {
    display: block;
    float: left;
    min-width: 135px;
    margin: 0 0 7px 0;
    padding: 0 10px;
    text-align: left;
}
.smp-section .multi1 label input {
    display: block;
    float: left;
    width: 1em;
    height: 1em;
    margin: 0.4em 0 0 0;
    padding: 0;
    box-shadow: 0 0 0 0 rgba(0,0,0,0) inset;
    border-radius: 0 0 0 0;
    overflow: hidden;
}
.smp-section .multi1 label span {
    display: block;
    margin: 0 0 0 30px;
    font-size: 100%;
    font-weight: normal;
}
.smp-section .multi1 .radio input {
    border-radius: 1em;
}
.smp-section .multi2 li {
    display: inline;
    float: left;
    min-width: 135px;
    margin: 0 0 0 0;
    padding: 0 5px 2px 10px;
    text-align: left;
    clear: both;
}
.smp-section .multi2 label input {
    display: block;
    float: left;
    width: 1em;
    height: 1em;
    box-shadow: 0 0 0 0 rgba(0,0,0,0) inset;
    margin: 0.2em 0 0 0;
    padding: 0;
    border-radius: 0 0 0 0;
    overflow: hidden;
}
.smp-section .multi2 label span {
    display: block;
    margin: 0 0 0 30px;
    font-size: 100%;
    font-weight: normal;
}
.smp-section .multi2 .radio input {
    border-radius: 1em;
}
.smp-section textarea {
    width: 510px;
    padding: 5px;
    border: 1px solid #999;
    border-radius: 3px 3px 3px 3px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.2) inset;
    font-size: 108%;
    text-align: left;
}
.smp-section .image input {
    width: 100%;
}
.smp-section .file input {
    width: 100%;
}
.smp-section input.clear {
    width: 55px;
    text-align: center;
}
.smp-section input.submit {
    width: 270px;
    height: 42px;
    margin: 40px 0 40px 0;
    border: hidden;
    border-radius: 3px 3px 3px 3px;
    /* other browser */
    background: #303030;
    /* for old webkit */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #606060), color-stop(1, #303030));
    /* for modern browser */
    background: -webkit-linear-gradient(top, #606060 0%, #303030 100%);
    background: linear-gradient(to bottom, #606060 0%, #303030 100%);
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.4);
    color: #fff;
    font-size: 153.9%;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
}
.smp-section input.submit:hover {
    opacity: 0.9;
}
.smp-section input.image {
    margin: 40px 0 40px 0;
    width: auto;
    border: none;
    padding: 0;
    vertical-align: middle;
}
.smp-section .sample {
    color: #555;
    font-size: 93%;
    font-weight: normal;
    text-align: left;
    line-height: 1.2;
}
.smp-section .suffix {
    color: #111;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
    height: 35px;
    line-height: 35px;
}
.smp-section .need {
    font-size: 100%;
    text-align: left;
}
.smp-section .msg {
    display: block;
    margin: 5px 45px;
    color: #d00;
    font-size: 100%;
    font-weight: bold;
    margin-bottom: 5px;
    text-align: left;
}
.smp-section .data-radio .msg {
    margin: 0;
}
.smp-section .data-gender .msg, .smp-section .data-select .msg {
    margin: 5px;
}
.smp-section .data-2col .msg {
    float: left;
    width: 50%;
}
.smp-section .sub_text {
    width: 760px;
    font-size: 123.1%;
    font-weight: bold;
    padding: 150px 0;
    text-align: center;
    color: #111;
}
.smp-section .error {
    background: #ffe4e4;
}
.smp-section .spiralSeal {
    width: 80%;
    overflow: hidden;
    margin: 0;
    background-color: #fff;
    border: 1px solid #ccc;
}
.smp-section .spiralSeal tr td.description {
    display: table-cell;
    text-align: left;
    overflow: auto;
}
.smp-section .spiralSeal tr td.img {
    display: table-cell;
    margin-left: 0px;
    margin-right: 0px;
    overflow: auto;
    text-align: center;
}
.smp-section .footer_text {
    width: 760px;
    font-size: 100%;
    margin: 30px 0 0 0;
    font-weight: normal;
    text-align: left;
}
.smp-section .cf:before, .smp-section .cf:after {
    content: "";
    display: table;
}
.smp-section .cf:after {
    clear: both;
}
.smp-section .cf {
 *zoom: 1;
}

@media screen and (min-width: 726px) and (max-width: 981px) {
.smp-section .body {
    margin: 0;
    padding: 0;
    font-size: 13px;
 *font-size: small;
 *font: x-small;
    font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
    background: #fff;
}
.smp-section .body_tbl {
    width: 100%;
    margin: 0 auto;
    padding: 0 0 30px 0;
    border: none;
    background: #fff;
}
.smp-section h1 {
    margin: 0;
    padding: 10px 10px 10px 10px;
    background: #333;
    color: #fff;
    font-size: 153.9%;
    font-weight: bold;
    text-align: center;
}
.smp-section .header_img_smartphone {
    display: none;
}
.smp-section .header_img_tablet {
    display: block;
}
.smp-section .header_img_pc {
    display: none;
}
.smp-section .header_text {
    margin: 0;
    padding: 15px 70px 15px 70px;
    background: #f1f1f1;
    color: #111;
    font-size: 93%;
    font-weight: normal;
    text-align: left;
}
.smp-section .header_rmesg {
    margin: 0;
    padding: 30px 70px 10px 70px;
    color: #111;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
}
.smp-section .header_emesg {
    margin: 20px auto;
    border: 2px solid #f00;
    font-size: 15px;
    line-height: 2.1;
    letter-spacing: 0.8px;
    width: 100%;
    color: #f00;
    font-size: 100%;
    font-weight: normal;
    text-align: center;
}
.smp-section dl {
    display: table;
    margin: 0;
    position: relative;
    width: 100%;
}
.smp-section dl.top {
    border-top: 1px solid #ddd;
}
.smp-section dt.title {
    display: inline-block;
    width: 20%;
    margin: 0;
    padding: 23px 15px 28px 0;
    color: #333;
    font-size: 108%;
    font-weight: bold;
    text-align: left;
    line-height: 1.2;
    vertical-align: top;
}
.smp-section dt.title .caution {
    display: block;
    width: 100%;
    color: #5f5f5f;
    font-size: 85%;
    font-weight: normal;
    padding: 10px 0 0 0;
    line-height: 1.2;
    text-align: left;
}
.smp-section dd.data {
    display: inline-block;
    width: 70%;
    margin: 0;
    padding: 18px 0 18px 0;
    color: #5f5f5f;
    font-size: 100%;
    font-weight: bold;
    text-align: left;
}
.smp-section .input {
    width: 70%;
    margin-bottom: 8px;
    padding: 5px;
    color: #333;
    border: 1px solid #999;
    border-radius: 3px 3px 3px 3px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.2) inset;
    font-size: 108%;
    text-align: left;
}
.smp-section .zipcode li.code01 input {
    width: 30px;
}
.smp-section .zipcode li.code02 input {
    width: 40px;
}
.smp-section .phone li.num01 input {
    width: 50px;
}
.smp-section .phone li.num02 input {
    width: 40px;
}
.smp-section .phone li.num03 input {
    width: 40px;
}
.smp-section .price input {
    width: 200px;
}
.smp-section .num input {
    width: 60px;
}
.smp-section .integer input {
    width: 90px;
}
.smp-section .real input {
    width: 170px;
}
.smp-section .pass input {
    width: 50%;
}
.smp-section .epass input {
    width: 50%;
}
.smp-section .time input {
    width: 20px;
}
.smp-section .time .year {
    width: 40px;
}
.smp-section .time .new_line {
    clear: both;
}
.smp-section ul, .smp-section li {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.smp-section .zipcode ul li, .smp-section .phone ul li, .smp-section .time ul li {
    width: auto;
    float: left;
    margin: 0 3px 0 0;
    padding: 0;
    height: 35px;
    line-height: 35px;
}
.smp-section .multi1 label {
    display: block;
    float: left;
    min-width: 126px;
    margin: 0 10px 7px 0;
    padding: 10px 10px 0 10px;
    border-radius: 4px 4px 4px 4px;
    background: #f1f1f1;
    text-align: left;
}
.smp-section .multi1 label input {
    display: block;
    float: left;
    width: 20px;
    margin: 0.2em 0 0 0;
    padding: 0;
    box-shadow: 0 0 0 0 rgba(0,0,0,0) inset;
    border-radius: 3px 3px 3px 3px;
    text-align: left;
    overflow: hidden;
}
.smp-section .multi1 label span {
    display: block;
    margin: 0 0 10px 30px;
    font-size: 100%;
}
.smp-section .multi1 .radio input {
    border-radius: 1em;
}
.smp-section .multi2 li {
    display: inline;
    float: left;
    width: 100%;
    margin: 0 0 7px 0;
    padding: 10px 10px 10px 10px;
    border-radius: 4px 4px 4px 4px;
    background: #eee;
    text-align: left;
    clear: both;
}
.smp-section .multi2 label input {
    display: block;
    float: left;
    width: 20px;
    margin: 0.2em 0 0 0;
    padding: 0;
    text-align: left;
    box-shadow: 0 0 0 0 rgba(0,0,0,0) inset;
    border-radius: 3px 3px 3px 3px;
    overflow: hidden;
}
.smp-section .multi2 label span {
    display: block;
    margin: 0 0 0 30px;
    font-size: 100%;
}
.smp-section .multi2 .radio input {
    border-radius: 1em;
}
.smp-section select {
    margin-bottom: 8px;
    font-size: 100%;
    width: 180px;
}
.smp-section textarea {
    width: 100%;
    padding: 5px;
    border: 1px solid #999;
    border-radius: 3px 3px 3px 3px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.2) inset;
    font-size: 108%;
    text-align: left;
}
.smp-section .image input {
    width: 100%;
}
.smp-section .file input {
    width: 100%;
}
.smp-section input.clear {
    width: 55px;
    text-align: center;
}
.smp-section input.submit {
    width: 40%;
    height: 42px;
    margin: 40px 0 40px 0;
    border: hidden;
    border-radius: 3px 3px 3px 3px;
    /* other browser */
    background: #303030;
    /* for old webkit */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #606060), color-stop(1, #303030));
    /* for modern browser */
    background: -webkit-linear-gradient(top, #606060 0%, #303030 100%);
    background: linear-gradient(to bottom, #606060 0%, #303030 100%);
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.4);
    color: #fff;
    font-size: 153.9%;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
}
.smp-section input.submit:hover {
    opacity: 0.9;
}
.smp-section input.image {
    margin: 40px 0 40px 0;
    width: auto;
    border: none;
    padding: 0;
    vertical-align: middle;
}
.smp-section .sample {
    color: #555;
    font-size: 93%;
    font-weight: normal;
    text-align: left;
    line-height: 1.2;
}
.smp-section .suffix {
    color: #111;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
    height: 35px;
    line-height: 35px;
}
.smp-section .need {
    /*color: #c00;*/
    font-size: 100%;
    /*font-weight: bold;*/
    text-align: left;
}
.smp-section .msg {
    display: block;
    font-weight: bold;
    color: #d00;
    text-align: left;
}
.smp-section .sub_text {
    width: 80%;
    font-size: 123.1%;
    font-weight: bold;
    padding: 150px 0;
    text-align: center;
    color: #111;
}
.smp-section .error {
    background: #ffe4e4;
}
.smp-section .spiralSeal {
    width: 80%;
    overflow: hidden;
    margin: 0;
    background-color: #fff;
    border: 1px solid #ccc;
}
.smp-section .spiralSeal tr td.description {
    display: table-cell;
    text-align: left;
    overflow: auto;
}
.smp-section .spiralSeal tr td.img {
    display: table-cell;
    margin-left: 0px;
    margin-right: 0px;
    overflow: auto;
    text-align: center;
}
.smp-section .footer_text {
    width: 80%;
    font-size: 93%;
    margin: 30px 0 0 0;
    font-weight: normal;
    text-align: left;
}
.smp-section .cf:before, .smp-section .cf:after {
    content: "";
    display: table;
}
.smp-section .cf:after {
    clear: both;
}
.smp-section .cf {
 *zoom: 1;
}
}

@media screen and (max-width: 725px) {
.smp-section .body {
    margin: 0;
    padding: 0;
    font-size: 13px;
 *font-size: small;
 *font: x-small;
    font-family: "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
    background: #fff;
}
.smp-section .body_tbl {
    width: 100%;
    margin: 0 auto;
    padding-bottom: 30px;
    border: none;
    background: #fff;
}
.smp-section h1 {
    margin: 0;
    padding: 10px 10px 10px 10px;
    background: #333;
    color: #fff;
    font-size: 153.9%;
    font-weight: bold;
    text-align: center;
}
.smp-section .header_img_smartphone {
    display: block;
}
.smp-section .header_img_tablet {
    display: none;
}
.smp-section .header_img_pc {
    display: none;
}
.smp-section .header_text {
    margin: 0;
    padding: 15px 15px 15px 15px;
    background: #f1f1f1;
    color: #111;
    font-size: 85%;
    font-weight: normal;
    text-align: left;
}
.smp-section .header_rmesg {
    margin: 0 0 0 0;
    padding: 30px 15px 10px 15px;
    color: #111;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
}
.smp-section .header_emesg {
    width: 240px;
    margin: 10px auto 10px;
    padding: 15px 15px 15px 15px;
    border: 2px solid #f00;
    color: #f00;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
}
.smp-section dl {
    display: block;
    margin: 0 0 10px 0;
    padding: 20px 0 0 0;
    position: relative;
    width: 100%;
    border-bottom: 1px solid #ddd;
}
.smp-section dl.top {
    border-top: 1px solid #ddd;
}
.smp-section dt.title {
    display: block;
    width: 270px;
    margin: 0;
    padding: 0 0 0 0;
    color: #333;
    font-size: 108%;
    font-weight: bold;
    text-align: left;
    vertical-align: middle;
}
.smp-section dt.title .caution {
    display: block;
    width: 270px;
    color: #5f5f5f;
    font-size: 85%;
    font-weight: normal;
    padding: 10px 0 0 0;
    line-height: 1.2;
    text-align: left;
}
.smp-section dd.data {
    position: relative;
    display: block;
    width: 270px;
    margin: 0 0 10px 0;
    padding: 18px 0 10px 0;
    color: #5f5f5f;
    font-size: 100%;
    font-weight: bold;
    text-align: left;
}
.smp-section .input {
    width: 170px;
    margin-bottom: 8px;
    padding: 5px;
    color: #333;
    border: 1px solid #999;
    border-radius: 3px 3px 3px 3px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.2) inset;
    font-size: 108%;
    text-align: left;
}
.smp-section .zipcode li.code01 input {
    width: 30px;
}
.smp-section .zipcode li.code02 input {
    width: 40px;
}
.smp-section .phone li.num01 input {
    width: 50px;
}
.smp-section .phone li.num02 input {
    width: 40px;
}
.smp-section .phone li.num03 input {
    width: 40px;
}
.smp-section .price input {
    width: 150px;
}
.smp-section .num input {
    width: 60px;
}
.smp-section .integer input {
    width: 90px;
}
.smp-section .real input {
    width: 170px;
}
.smp-section .pass input {
    width: 150px;
}
.smp-section .epass input {
    width: 160px;
}
.smp-section .time input {
    width: 20px;
}
.smp-section .time .year {
    width: 40px;
}
.smp-section .time .new_line {
    clear: both;
}
.smp-section ul, .smp-section li {
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.smp-section .zipcode ul li, .smp-section .phone ul li, .smp-section .time ul li {
    width: auto;
    float: left;
    margin: 0 3px 0 0;
    padding: 0;
    height: 35px;
    line-height: 35px;
}
.smp-section .multi1 label {
    display: block;
    min-width: 250px;
    margin: 0 10px 10px 0;
    padding: 10px;
    border-radius: 4px 4px 4px 4px;
    background: #f1f1f1;
    text-align: left;
}
.smp-section .multi1 label input {
    display: block;
    float: left;
    width: 20px;
    margin: 0.2em 0 0 0;
    padding: 0;
    box-shadow: 0 0 0 0 rgba(0,0,0,0) inset;
    border-radius: 3px 3px 3px 3px;
    text-align: left;
    overflow: hidden;
}
.smp-section .multi1 label span {
    display: block;
    margin: 0 0 0 25px;
    font-size: 100%;
}
.smp-section .multi1 .radio input {
    border-radius: 1em;
}
.smp-section .multi2 li {
    display: block;
    min-width: 250px;
    margin: 0 10px 10px 0;
    padding: 10px;
    border-radius: 4px 4px 4px 4px;
    background: #f1f1f1;
    text-align: left;
    width: auto;
}
.smp-section .multi2 label input {
    display: block;
    float: left;
    width: 20px;
    margin: 0.2em 0 0 0;
    padding: 0;
    box-shadow: 0 0 0 0 rgba(0,0,0,0) inset;
    border-radius: 3px 3px 3px 3px;
    text-align: left;
    overflow: hidden;
}
.smp-section .multi2 label span {
    display: block;
    margin: 0 0 0 25px;
    font-size: 100%;
}
.smp-section .multi2 .radio input {
    border-radius: 1em;
}
.smp-section select {
    margin-bottom: 8px;
    font-size: 100%;
    width: 180px;
}
.smp-section textarea {
    width: 260px;
    padding: 5px;
    border: 1px solid #999;
    border-radius: 3px 3px 3px 3px;
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.2) inset;
    font-size: 108%;
    text-align: left;
}
.smp-section .image input {
    width: 100%;
}
.smp-section .file input {
    width: 100%;
}
.smp-section input.clear {
    width: 55px;
    text-align: center;
}
.smp-section input.submit {
    width: 150px;
    height: 42px;
    margin: 20px 0 40px 0;
    border: hidden;
    border-radius: 3px 3px 3px 3px;
    /* other browser */
    background: #303030;
    /* for old webkit */
    background: -webkit-gradient(linear, left top, left bottom, color-stop(0, #606060), color-stop(1, #303030));
    /* for modern browser */
    background: -webkit-linear-gradient(top, #606060 0%, #303030 100%);
    background: linear-gradient(to bottom, #606060 0%, #303030 100%);
    box-shadow: 0 1px 1px 0 rgba(0,0,0,0.4);
    color: #fff;
    font-size: 153.9%;
    font-weight: bold;
    text-align: center;
    cursor: pointer;
}
.smp-section input.submit:hover {
    opacity: 0.9;
}
.smp-section input.image {
    margin: 40px 0 40px 0;
    width: auto;
    border: none;
    padding: 0;
    vertical-align: middle;
}
.smp-section .sample {
    color: #555;
    font-size: 93%;
    font-weight: normal;
    text-align: left;
    line-height: 1.2;
}
.smp-section .suffix {
    color: #111;
    font-size: 100%;
    font-weight: normal;
    text-align: left;
    height: 35px;
    line-height: 35px;
}
.smp-section .need {
    font-size: 100%;
    text-align: left;
}
.smp-section .msg {
    display: block;
    color: #d00;
    font-size: 100%;
    font-weight: bold;
    margin-bottom: 5px;
    text-align: left;
}
.smp-section .sub_text {
    width: 270px;
    font-size: 123.1%;
    font-weight: bold;
    padding: 150px 0;
    text-align: center;
    color: #111;
}
.smp-section .error {
    background: #ffe4e4;
}
.smp-section .spiralSeal {
    width: 270px;
    overflow: hidden;
    margin: 0;
    background-color: #fff;
    border: 1px solid #ccc;
}
.smp-section .spiralSeal tr td.description {
    display: block;
    text-align: left;
    overflow: auto;
}
.smp-section .spiralSeal tr td.img {
    display: block;
    margin-left: 60px;
    margin-right: 60px;
    overflow: auto;
    text-align: center;
}
.smp-section .footer_text {
    width: 270px;
    font-size: 85%;
    margin: 30px 0 0 0;
    font-weight: normal;
    text-align: left;
}
.smp-section .cf:before, .smp-section .cf:after {
    content: "";
    display: table;
}
.smp-section .cf:after {
    clear: both;
}
.smp-section .cf {
 *zoom: 1;
}
}
.language-chooser {
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    text-transform: uppercase;
    vertical-align: top;
}
.language-chooser:after {
    clear: both;
    content: '';
    display: table;
}
.language-chooser li {
    float: left;
}
.language-chooser li+li:before {
    position: relative;
    top: 2px;
    content: '';
    display: inline-block;
    width: 1px;
    height: 15px;
    margin: 0 20px;
    background-color: #fff;
}
.language-chooser .lang-en span {
    position: relative;
    display: inline-block;
    top: -1px;
}

@media all and (max-width: 768px) {
.language-chooser {
    display: none;
}
}
.footer-links .language-chooser {
    display: inline-block;
}
.footer-links .qtranxs_widget_end {
    display: inline;
}
.leadline {
    margin: 20px 0;
    height: 60px;
    text-align: center;
}
.leadline span {
    display: inline-block;
    width: 2px;
    height: 60px;
    background-color: #041020;
}
.leadline.active span {
    height: 60px;
}
.detail {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    -webkit-transform: rotateZ(0deg);
    transform: rotateZ(0deg);
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.1s linear;
    transition: -webkit-transform 0.1s linear;
    transition: transform 0.1s linear;
    transition: transform 0.1s linear, -webkit-transform 0.1s linear;
    margin: 0;
    padding: 0;
}
.detail:hover {
    -webkit-transform: rotateZ(360deg);
    transform: rotateZ(360deg);
    cursor: pointer;
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
}
@-webkit-keyframes sdb {
 0% {
 -webkit-transform: translate(0, 0);
 transform: translate(0, 0);
 opacity: 0;
}
 40% {
 opacity: 1;
}
 80% {
 -webkit-transform: translate(0, 12px);
 transform: translate(0, 12px);
 opacity: 0;
}
 100% {
 opacity: 0;
}
}
@keyframes sdb {
 0% {
 -webkit-transform: translate(0, 0);
 transform: translate(0, 0);
 opacity: 0;
}
 40% {
 opacity: 1;
}
 80% {
 -webkit-transform: translate(0, 12px);
 transform: translate(0, 12px);
 opacity: 0;
}
 100% {
 opacity: 0;
}
}
.swp-container {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    z-index: 1;
}
.swp-top-pagination {
    position : absolute;
    text-align : center;
    z-index : 5;
    bottom : 25px !important;
}

.hero-01 .swiper-button-prev.swiper-button-white{
  background-image : url('css/img/arrow_left_s.svg');
}
.hero-01 .swiper-button-next.swiper-button-white{
  background-image : url('css/img/arrow_right_s.svg');
}
.hero-01 .swiper-button-prev,.hero-01 .swiper-button-next {
  width : 32px;
  height : 50px !important;
  background-size : 27px !important;
}
.hero-01 .swiper-pagination-bullet {
    opacity : .8;
    box-shadow: 0px 0px 3px 2px rgba(0,0,0,0.6);
}
.hero-01 .swiper-pagination-bullet-active {
    background : #fff;
    opacity : 1;
}
.news_blocks .row [class*="col-"] {
    padding: 0;
}
.news_blocks .news-block {
    position: relative;
    height: 350px; /*340px*/
    color: #fff;
}
.news_blocks .news-block-s {
    position: relative;
    color: #fff;
}
.news_blocks .news-block .news-block-catTitle {
    position: absolute;
    top: 40px;
    left: 42px;/*  left: 50px;*/
    margin: 0;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-weight: normal;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-size: 21px;
    letter-spacing: 1.6px;
    z-index: 2;
}
.news_blocks .news-block .swp-news-pagination {
    z-index: 2;
}
.news_blocks .news-block .swp-news-pagination .swiper-pagination-bullet.swiper-pagination-bullet {
    margin-left: 10px;
}
.news_blocks .col-topics {
    background-color: #0a2a54;
}
.news_blocks .col-events {
    background-color: #114588;
}
.news_blocks .col-koubo {
    background-color: #165dba;
}
.news_blocks .col-txt-box {
    width: 100%;
    padding: 30px;
    text-align: center;
}
.news_blocks .col-exhibition {
    background-color: #0d356e;
}
.news_blocks .col-mas {
    background-image: url(images/top/top_mas.png);
}
.news_blocks .col-list {
    background-color: #134ea1;
}
.news_blocks .news-slider-block {
    text-align: center;
}
.news_blocks .bx-pager {
    position: absolute;
    top: -20px;
    right: -20px;
}
.news_blocks article {
    margin: 0;
}
.news_blocks article a {
    display: block;
    padding: 90px 40px 5px;/*  padding: 80px 100px 0;*/
}
.news_blocks article a:hover {
    text-decoration: none;
}
.news_blocks article .datetime {
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 14px;
    color: rgba(255,255,255,0.2);
}
.news_blocks article h1 {
    font-family: 'AxisStd-Regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 18px;
    line-height: 30px;
    height: 85px;
    /* height: 60px;*/
    overflow: hidden;
}
.news_blocks article .excerpt {
    height: 48px;
    overflow: hidden;
    margin: 5px 0 30px;/*: 20px 0 30px;*/
    display: block;
    font-size: 12px;
    font-weight: lighter;
    line-height: 24px;
}
.news_blocks article .excerpt p {
    margin: 0;
    font-size: 12px;
    font-weight: lighter;
    line-height: 24px;
}

@media all and (max-width: 768px) {
.news_blocks .news-block {
    height: auto;  /*  : 220px;*/
}
.news_blocks .news-block .news-block-catTitle {
    top: 18px;
    left: 24px;
    font-size: 12px;
}
.news_blocks .news-block .swp-news-pagination {
    top: 18px;
    right: 24px;
    padding-bottom: 20px;
}
.news_blocks .news-block .swp-news-pagination .swiper-pagination-bullet.swiper-pagination-bullet {
    margin-left: 6px;
    width: 4px;
    height: 4px;
}
.news_blocks article a {
    padding: 30px 40px 10px 40px;
}
.news_blocks article .datetime {
    font-size: 10px;
}
.news_blocks article h1 {
    font-size: 12px;
    line-height: 17px;
    height: auto;/*height: 34px;*/
    margin-bottom: 20px;
}
.news_blocks article .excerpt {
    height: auto;
    margin-bottom: 1.3em;
    font-size: 8px;
    line-height: 17px;
}
.news_blocks article .excerpt p {
    font-size: 8px;
    line-height: 17px;
}
}
.more-detail {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    overflow: hidden;
    text-indent: -9999em;
    display: inline-block;
    width: 25px;
    height: 25px;
    background-image: url("images/ui/button-detail.png");
    background-repeat: no-repeat;
    background-size: 25px 25px;
    background-position: center;
}

@media all and (max-width: 768px) {
.more-detail {
    width: 13px;
    height: 13px;
    background-size: 13px;
}
}

.section-topics {
    color: #fff;
    background: center / cover no-repeat url("./images/top/top_topics.png");
    margin-top: -2px;
    padding: 80px 0;
}
.topics-block {
    width: 84%;
    max-width: 1470px;
    margin: 0 auto;
}
.topics-block .section-title {
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    margin: 0;
    text-transform: uppercase;
}
.topics-post-list {
    padding: 60px 2.6%;
    line-height: 2.7;
}
.topics-post-list a {
    display: flex;
}
.topics-post-date {
    flex-basis: 10em;
    flex-shrink: 0;
}
.topics-more {
    text-align: center;
}
.topics-more a {
    text-decoration: underline;
}

@media all and (max-width: 768px) {
    .topics-post-list {
        padding: 2.7em 2.6%;
    }
    .topics-post-list a {
        flex-direction: column;
        flex-wrap: wrap;
        margin-bottom: 1em;
    }
    .topics-post-date {
        flex-basis: auto;
    }
}

.page-header {
    position: relative;
    width: 100%;
    height: 530px;
    background-color: #041020;
    overflow: hidden;
}
.page-header .head-kv {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}
.page-header .head-title {
    position: absolute;
    bottom: 60px;
    left: 54px;
    color: #fff;
}
.page-header .head-title p {
    margin: 0 0 10px 0;
    font-size: 21px;
    letter-spacing: 0.6px;
    font-family: 'klavika_regular';
    text-transform: uppercase;
    color: #fff;
}
.page-header .head-title p a {
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    cursor: pointer;
}
.page-header .head-title p a:hover {
    text-decoration: underline;
}
.page-header .head-title h1 {
    font-size: 44px;
    margin-top: 0;
    margin-bottom: 0;
    letter-spacing: 1.1px;
}
.page-header-blank {
    height: 400px !important; /*300px */
}
.page-header-blank .head-title {
    bottom: 40px;
}
.page-header-blank .head-title h1 {
    margin: 0;
    font-size: 36px;
}
.subhead {
    text-align: center;
    width: 100%;
    margin-top: 0px;
    margin-bottom: 20px;
    font-size: 46px;
    font-family: 'klavika_regular';
}
.subcatch {
    text-align: center;
    width: 100%;
    margin-top: 0;
    font-size: 16px;
    margin-bottom: 55px;
    font-weight: 100;
}
.catch-block {
    padding: 80px 0;
    /* margin-top: 150px; */
    margin-top: 70px;
}
.catch-block .subhead {
    margin-bottom: 40px;
    margin-bottom: 20px;
    font-family: 'klavika_regular';
}
.catch-block .text-center {
    font-size: 15px;
    line-height: 2.1;
    letter-spacing: 0.8px;
    width: 100%;
}
.catch-block .mode {
    margin-top: 50px;
}
.catch-block .mode p {
    font-size: 12px;
    margin-top: 0px;
}
.catch-block.catch-block-404 {
    margin-top: 0;
    padding: 120px 0;
}
.catch-block.catch-block-404 .subhead {
    font-size: 32px;
}

.w3eden {
    max-width : 990px;
    margin : 0 auto;
}
.w3eden h3 a {
    display: inline-block;
    pointer-events: none;
}
.w3eden .btn-primary {
    background-color : #4A8EFF;
    border-color : #4A8EFF;
}
.w3eden .btn-primary:hover {
    background-color: #0069d9;
    border-color: #0062cc;
}

.page-intro {
    margin-top: 110px;
}
.page-intro h2 {
    font-size: 36px;
    line-height: 1.8;
    letter-spacing: 0.9px;
    margin-top: 0;
}
.page-intro h2:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background-color: #040420;
    margin-top: 20px;
}
.page-intro hr {
    width: 60px;
}
.page-intro p {
    width: 100%;
    font-size: 15px;
    line-height: 2.1;
    letter-spacing: 0.8px;
}

@media all and (max-width: 768px) {
.page-header {
    height: 480px !important;
}
.page-header .head-title {
    bottom: 50px;
    left: 40px;
}
.page-header .head-title p {
    font-size: 20px;
}
.page-header .head-title h1 {
    font-size: 32px;
}
.subhead {
    font-size: 32px;
}
.catch-block {
    padding: 50px 20px;
}
.catch-block .subhead {
    font-size: 32px;
}
.page-intro h2 {
    font-size: 32px;
}
.page-intro p {
    font-size: 15px;
}
}

@media all and (max-width: 480px) {
.page-header {
    height: 320px !important;
}
.page-header .head-title {
    bottom: 20px;
    left: 20px;
}
.page-header .head-title p {
    font-size: 14px;
}
.page-header .head-title h1 {
    font-size: 22px;
}
}

@media all and (max-width: 768px) {
.page-header-blank {
    height: 240px !important;
}
.catch-block {
    margin-top: 50px;
    padding: 50px 20px;
}
.catch-block .subhead {
    font-size: 16px;
}
.catch-block .text-center {
    font-size: 8px;
}
.page-intro {
    margin-top: 110px;
}
.page-intro .col-6 {
    width: 100%;
}
.page-intro h2 {
    font-size: 25px;
}
.page-intro p {
    font-size: 15px;
}
}
#topic {
    position: relative;
    border-bottom: 1px solid #ccc;
    overflow: hidden;
}
#topic .topic-title-box {
    width: 230px;
    height: 230px;
    position: absolute;
    top: 0;
    letf: 0;
    z-index: 100;
    vertical-align: middle;
}
#topic .topic-title-box h6 {
    text-align: center;
    color: #fff;
    margin: 85px 0 10px;
}
#topic .topic-title-box h2 {
    text-align: center;
    color: #fff;
    margin: 0;
}
#topic .topic-slider {
    width: 100%;
    height: 229px;
    margin: 0px auto;
    padding-left: 230px;
}
#topic .topic-slider:hover {
    cursor: ew-resize;
}
#topic .topic-slider .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    width: 60%;
    /* Center slide text vertically */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-right: 1px solid #ccc;
}
#topic .topic-slider .swiper-slide .swiper-slide:nth-child(2n) {
    width: 40%;
}
#topic .topic-slider .swiper-slide .swiper-slide:nth-child(3n) {
    width: 20%;
}
#topic .topic-slider .swiper-slide p.date {
    text-align: center;
    width: 100%;
    float: left;
    color: rgba(4,16,32,0.5);
    font-size: 13px;
    margin-top: 10px;
}
#topic .topic-slider .swiper-slide h1 {
    text-align: center;
    width: 70%;
    margin: 0 15% 10px;
    float: left;
    font-size: 15px;
}
.fixed {
    position: fixed !important;
    top: 120px;
}
.stop-top {
    position: absolute;
}
.stop-bottom {
    position: absolute;
    bottom: 0;
}
.active-nav {
    background-color: #0a2a54;
    color: #fff !important;
}
#scroll-area {
    position: relative;
    margin-top: 180px;
    height: auto;
    width: 100%;
}
#scroll-area #sub-nav {
    width: 340px;
    left: 0;
    border: 1px solid #ccc;
    position: absolute;
	z-index: 8888;
}
#scroll-area #sub-nav li {
    width: 100%;
    float: left;
    text-align: center;
    border-bottom: 1px solid #ccc;
}
#scroll-area #sub-nav li:last-child {
    border: none;
}
#scroll-area #sub-nav li a {
    padding: 30px;
    float: left;
    width: 100%;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    font-size: 15px;
}
#scroll-area #sub-nav li a:hover {
    background: #0a2a54 !important;
    color: #fff !important;
    text-decoration: none;
}
#scroll-area .scroll-contents {
    width: calc(100% - 400px);
    margin-left: 400px;
    padding: 0 80px;
    overflow: hidden;
    position: relative;
    font-size: 12px;
}
#scroll-area .scroll-contents blockquote {
    font-size: 12px;
    padding: 50px;
    width: 100%;
    border: 1px solid #ccc;
    margin: 0;
    line-height: 2.1;
    letter-spacing: 0.8px;
    margin-top: 50px;
}
#scroll-area .scroll-contents .show-block {
    opacity: 1 !important;
    z-index: 1 !important;
}
#scroll-area .scroll-contents .hide-block {
    opacity: 0;
    z-index: 0;
}
#scroll-area .scroll-contents #question .faqSection {
    margin-top: 50px;
}
#scroll-area .scroll-contents article {
    padding-top: 100px;
    position: absolute;
    width: calc(100% - 160px);
    top: 0;
    -webkit-transition: all 1s;
    transition: all 1s;
    opacity: 0;
    height: auto;
    line-height: 2.1;
    letter-spacing: 0.8px;
    font-size: 13px;
}
#scroll-area .scroll-contents article .sc-head {
    font-size: 31px;
    line-height: 2;
    letter-spacing: 0.8px;
    color: #040420;
    width: 100%;
    margin-bottom: 40px;
}
#scroll-area .scroll-contents article .sc-head:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background: #041020;
    margin-top: 35px;
}
#scroll-area .scroll-contents article .w100 {
    border: none;
    box-shadow: none;
    width: 100%;
    border-bottom: 1px solid #ccc;
    margin: 50px 0 30px;
}
#scroll-area .scroll-contents article .mt-0 {
    margin-top: 0;
}
#scroll-area .scroll-contents article .blue-font {
    color: #114588;
}
#scroll-area .scroll-contents article p {
    width: 100%;
    font-size: 13px;
    line-height: 2.1;
    letter-spacing: 0.8px;
    color: #040420;
}
#scroll-area .scroll-contents article p.text-alert {
    color: #f00;
}
#scroll-area .scroll-contents article img {
    margin-top: 60px;
    width: 100%;
    height: auto;
}
#scroll-area .scroll-contents article .flow-table {
    margin-top: 50px;
}
#scroll-area .scroll-contents article .flow-table tr {
    margin-bottom: 30px;
    float: left;
}
#scroll-area .scroll-contents article .flow-table tr th {
    font-size: 13px;
    font-weight: 100;
    text-align: left;
}
#scroll-area .scroll-contents article .flow-table tr th:first-child {
    width: 80px;
    border-right: 1px solid #ccc;
    text-align: center;
}
#scroll-area .scroll-contents article .flow-table tr th:first-child p {
    margin: 0;
    font-size: 12px;
    color: #114588;
    font-weight: 500;
}
#scroll-area .scroll-contents article .flow-table tr th:first-child img {
    margin-top: 10px;
    width: auto;
    height: auto;
}
#scroll-area .scroll-contents article .flow-table tr th:last-child {
    padding-left: 30px;
}
#scroll-area .scroll-contents article .flow-table tr th .blue-font {
    font-size: 18px;
    margin: 0 0 5px;
}
#scroll-area .scroll-contents:first-child {
    width: 100%;
    max-width: 1470px;
    margin-left: auto;
    margin-right: auto;
}
#scroll-area .scroll-contents:first-child article {
    width: 100%;
    position: relative;
}
#system {
    width: 100%;
    margin-top: 150px;
}
.grad-slider {
    position: relative;
}
.grad-slider .grad-pagenation {
    width: 450px;
    float: left;
    position: relative;
    z-index: 10;
    height: 581px;
}
.grad-slider .grad-pagenation ul li {
    padding: 0 40px;
    text-align: center;
    float: left;
    width: 100%;
    height: 83px;
    line-height: 83px;
    color: rgba(255,255,255,0.3);
    text-align: left;
    font-size: 15px;
    cursor: pointer;
}
.grad-slider .grad-pagenation ul li:nth-child(1) {
    background-color: #041020;
}
.grad-slider .grad-pagenation ul li:nth-child(2) {
    background-color: #071d3b;
}
.grad-slider .grad-pagenation ul li:nth-child(3) {
    background-color: #0a2954;
}
.grad-slider .grad-pagenation ul li:nth-child(4) {
    background-color: #0d356e;
}
.grad-slider .grad-pagenation ul li:nth-child(5) {
    background-color: #104287;
}
.grad-slider .grad-pagenation ul li:nth-child(6) {
    background-color: #134ea1;
}
.grad-slider .grad-pagenation ul li:nth-child(7) {
    background-color: #1658b5;
}
.grad-slider .grad-pagenation ul li span {
    color: #fff;
    margin-left: 20px;
}
.grad-slider .grad-slider-container {
    width: calc(100% - 450px);
    padding: 0;
    overflow: hidden;
    background-color: #000;
    height: 581px;
    float: left;
    position: relative;
}
.grad-slider .grad-slider-container .swiper-pagination {
    left: 0;
    bottom: 20px;
}
.grad-slider .grad-slider-container .swiper-pagination-bullet {
    background: rgba(0,0,0,0);
    border: 1px solid #fff;
}
.grad-slider .grad-slider-container .swiper-pagination-bullet:before {
    content: e 900;
    float: left;
}
.grad-slider .grad-slider-container .grad-slider .grad-slider-container .swiper-pagination-bullet {
    background: #fff;
    border: 1px solid #fff;
}
.grad-slider .grad-slider-container .swiper-wrapper {
    float: left;
    width: 100%;
    position: relative;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide {
    text-align: center;
    font-size: 18px;
    background: #fff;
    min-width: 0 !important;
    /* Center slide text vertically */
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100% !important;
    height: 581px;
    overflow: hidden;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide * {
    width: 100%;
    float: left;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide div {
    padding: 0 70px;
    width: 100%;
    min-width: 0 !important;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide div h2 {
    font-size: 21px;
    line-height: 2.1;
    letter-spacing: 0.5px;
    /*width 100%
                        float left*/
    margin-top: 0;
    margin-bottom: 30px;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide div p {
    font-size: 13px;
    line-height: 1.9;
    letter-spacing: 0.6px;
    margin: 0;
    width: auto;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide div p span {
    letter-spacing: 1.6px;
    width: auto;
    vertical-align: bottom;
    margin-top: 25px;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide div p .fs-32 {
    font-size: 32px;
    margin-top: 0;
    margin-left: 15px;
    font-weight: bold;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide:nth-child(1) {
    background-color: #041020;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide:nth-child(2) {
    background-color: #071d3b;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide:nth-child(3) {
    background-color: #0a2954;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide:nth-child(4) {
    background-color: #0d356e;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide:nth-child(5) {
    background-color: #104287;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide:nth-child(6) {
    background-color: #134ea1;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide:nth-child(7) {
    background-color: #1658b5;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide * {
    color: #fff;
    text-align: left;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide a.color-yellow  {
    color: yellow;
    text-decoration:underline;
    margin-top: 15px;
}
.grad-slider .grad-slider-container .swiper-wrapper .swiper-slide a:hover.color-yellow  {
    text-decoration: none;
}
#example {
    margin-top: 200px;
    overflow: hidden;
    width: 100%;
}
#example .example-cats {
    width: 100%;
    text-align: center;
    margin-bottom: 80px;
    letter-spacing: -0.5em;
}
#example .example-cats ul {
    margin-left: 0.5px;
}
#example .example-cats ul li {
    display: inline-block;
    padding: 20px 30px;
    border: 1px solid #ccc;
    letter-spacing: normal;
    margin-top: -1px;
    margin-left: -1px;
    cursor: pointer;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    line-height: 20px;
}
#example .example-cats ul li:hover {
    background: #0a2a54 !important;
    color: #fff !important;
}
#example .example-cats ul li:first-child {
    border-left: 1px solid #ccc;
}
#example .example-slider {
    width: 100%;
    background-color: #041020;
}
#example .example-slider .swiper-wrapper {
    margin-top: 0;
}
#example .example-slider .swiper-wrapper .swiper-slide {
    background-color: #041020;
    width: 100%;
}
#example .example-slider .swiper-wrapper .swiper-slide article {
    float: left;
    width: 33.3333333%;
    height: 340px;
    position: relative;
    overflow: hidden;
}
#example .example-slider .swiper-wrapper .swiper-slide article a {
    font-size: 11px;
    line-height: 2;
    letter-spacing: 0.6px;
    color: #fff;
    position: relative;
    padding: 40px;
    width: 100%;
    height: 100%;
    display: block;
}
#example .example-slider .swiper-wrapper .swiper-slide article p {
    position: relative;
    z-index: 1;
}
#example .example-slider .swiper-wrapper .swiper-slide article h1 {
    font-size: 19px;
    line-height: 1.6;
    letter-spacing: 0.9px;
    color: #fff;
    margin: 10px 0 0 0;
    position: relative;
    z-index: 1;
}
#example .example-slider .swiper-wrapper .swiper-slide article img {
    position: absolute;
    right: 30px;
    bottom: 30px;
    z-index: 1;
}
.que-head {
    font-size: 18px;
    letter-spacing: 0.4px;
    color: #040420;
    width: 100%;
    margin-top: 50px;
}
.w100 {
    border: none;
    box-shadow: none;
    width: 100%;
    border-bottom: 1px solid #ccc;
    margin: 50px 0 30px;
}
.w60 {
    width: 60px;
    float: left;
}
.pt-15 {
    padding-top: 15px !important;
}
.pb-15 {
    padding-bottom: 15px !important;
}

@media all and (max-width: 768px) {
#topic .topic-title-box {
    width: 150px;
}
#topic .topic-slider {
    padding-left: 150px;
}
#scroll-area {
    position: relative;
    margin-top: 80px;
    height: auto;
    width: 100%;
}
#scroll-area #sub-nav {
    width: 100%;
    position: relative;
}
#scroll-area #sub-nav li {
    width: 50%;
    border-bottom: 1px solid #ccc;
}
#scroll-area #sub-nav li:last-child {
    border-bottom: 1px solid #ccc;
}
#scroll-area #sub-nav li:nth-child(n) {
    border-right: 1px solid #ccc;
}
#scroll-area .scroll-contents {
    width: 100%;
    margin-left: 0px;
    padding: 0 30px;
    overflow: hidden;
    position: relative;
}
#scroll-area .scroll-contents article {
    padding-top: 250px;
    margin-top: -200px;
    width: calc(100% - 60px);
}
#system {
    display: none;
}
#example .example-slider .swiper-wrapper .swiper-slide {
    background-color: #041020;
    width: 100%;
}
#example .example-slider .swiper-wrapper .swiper-slide article {
    width: 100%;
    background-size: cover;
    position: relative;
}
#example .example-slider .swiper-wrapper .swiper-slide article a {
    font-size: 11px;
    line-height: 2;
    letter-spacing: 0.6px;
    color: #fff;
    z-index: 1;
}
#example .example-slider .swiper-wrapper .swiper-slide article h1 {
    font-size: 19px;
    line-height: 1.9;
    letter-spacing: 0.9px;
    color: #fff;
    margin: 10px 0 0 0;
}
#example .example-slider .swiper-wrapper .swiper-slide article img {
    position: absolute;
    right: 30px;
    bottom: 30px;
    z-index: 1;
}
}

@media all and (max-width: 480px) {
#scroll-area #sub-nav {
    width: 100%;
    position: relative;
}
#scroll-area #sub-nav li {
    width: 100%;
    float: left;
    border-bottom: 1px solid #ccc;
}
#scroll-area #sub-nav li:last-child {
    border-bottom: 1px solid #ccc;
}
#scroll-area #sub-nav li:nth-child(n) {
    border-right: 1px solid #ccc;
}
#scroll-area .scroll-contents blockquote {
    padding: 20px;
}
}
.interview {
    margin-top: 150px;
}
.interview .interview-sentence .column-interview {
    margin-top: 80px;
    width: 100%;
    float: left;
}
.interview .interview-sentence .column-interview h2 {
    font-size: 24px;
    margin-top: 0;
}
.interview .interview-sentence .column-interview h2 span {
    font-size: 42px;
}
.interview .interview-sentence .column-interview .w60 {
    margin-bottom: 50px;
}
.interview .interview-sentence .column-interview .interview-sec {
    margin-bottom: 60px;
    float: left;
}
.interview .interview-sentence .column-interview .interview-sec .col-4, .interview .interview-sentence .column-interview .interview-sec .col-8 {
    padding: 0;
}
.interview .interview-sentence .column-interview .interview-sec:nth-child(even) .col-8 {
    padding-left: 0px;
    padding-right: 50px;
}
.interview .interview-sentence .column-interview .interview-sec:nth-child(odd) .col-4, .interview .interview-sentence .column-interview .interview-sec:nth-child(odd) .col-8 {
    float: right;
}
.interview .interview-sentence .column-interview .interview-sec:nth-child(odd) .col-8 {
    padding-right: 0px;
    padding-left: 50px;
}
.interview .interview-sentence .column-interview .interview-sec .blue-font {
    font-size: 15px;
    color: #165dba;
    margin-top: 0;
}
.interview .interview-sentence .column-interview .interview-sec .interview-content {
    margin-top: 10px;
    font-size: 14px;
}
.interview .interview-title-block {
    background-color: #041020;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
    width: 100%;
    padding: 100px 0;
}
.interview .interview-title-block * {
    color: #fff;
}
.interview .interview-title-block h1 {
    font-size: 36px;
    line-height: 1.8;
    letter-spacing: 1.8px;
}
.interview .interview-title-block p {
    font-size: 18px;
    line-height: 1.9;
    letter-spacing: 0.9px;
}
.interview .interview-sentence h2 {
    width: 100%;
    font-size: 21px;
    line-height: 1.9;
    letter-spacing: 1px;
    margin-bottom: 35px;
    margin-top: 120px;
}
.interview .interview-sentence p {
    width: 100%;
    font-size: 15px;
    line-height: 2.1;
    letter-spacing: 0.8px;
    margin-top: 35px;
}
.product-middle {
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    background-image: url("./images/resonance/product-single-middle.png");
    text-align: center;
    padding: 100px 0;
    margin-top: 150px;
}
.product-middle .license {
    font-size: 13px;
    line-height: 1.9;
    letter-spacing: 0.6px;
    color: #040420;
    margin-top: 0;
}
.product-middle h2 {
    font-size: 28px;
    line-height: 2;
    letter-spacing: 1.4px;
    color: #040420;
}
.product-middle .middle-inner-block {
    width: 100%;
}
.product-middle .middle-inner-block.bg-navy p {
    color: #fff;
}
.product-middle .middle-inner-block p {
    width: 80%;
    margin: 0 10%;
    padding: 50px 0;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 0.8px;
    text-align: left;
}
.product-middle .application-arrow {
    background-image: url("./images/ui/down-arrow.png");
    background-position: center 0;
    background-repeat: no-repeat;
    background-size: 24px 50px;
    padding-top: 60px;
    font-size: 14px;
    margin: -10px 0 20px;
}

@media all and (max-width: 480px) {
.interview .interview-sentence .column-interview .interview-sec {
    margin-bottom: 60px;
    float: left;
}
.interview .interview-sentence .column-interview .interview-sec .col-4, .interview .interview-sentence .column-interview .interview-sec .col-8 {
    width: 100%;
}
.interview .interview-sentence .column-interview .interview-sec:nth-child(even) .col-8 {
    padding-left: 0px;
    padding-right: 0px;
}
.interview .interview-sentence .column-interview .interview-sec:nth-child(odd) .col-8 {
    padding-right: 0px;
    padding-left: 0px;
}
.interview .interview-sentence .column-interview .interview-sec .blue-font {
    font-size: 15px;
    color: #165dba;
    margin-top: 0;
}
.interview .interview-sentence .column-interview .interview-sec .interview-content {
    margin-top: 10px;
    font-size: 14px;
}
}
.load-buttons {
    width: 100%;
    table-layout: fixed;
    display: table;
}
.load-buttons.mt-40 {
    margin-top: 40px;
}
.load-buttons li.col-6 {
    background-color: #eee;
    display: table-cell;
    vertical-align: middle;
    float: none;
    border-bottom: 1px solid #fff;
    padding: 0;
}
.load-buttons li.col-6:nth-child(n) {
    border-right: 1px solid #fff;
}
.load-buttons li.col-6 a {
    display: block;
    font-size: 13px;
    letter-spacing: 0.6px;
    padding: 30px;
}
.load-buttons li.col-6 a .load-label {
    font-size: 10px;
    width: 62px;
    padding: 2px 7px;
    margin-right: 10px;
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 10px;
    color: #fff;
    float: left;
    width: 73px;
    text-align: center;
}
.load-buttons li.col-6 a .load-label:before {
    content: "";
    width: 12px;
    height: 13px;
    float: left;
    margin-right: 5px;
    margin-top: 3px;
    background-image: url("./images/ui/icon-download.png");
}
.load-buttons li.col-6 a .load-label span {
    float: left;
}
.word {
    background-color: #165dba;
    color: #fff;
    padding: 5px 10px;
    font-size: 10px;
}
.pdf {
    background-color: #f00;
    color: #fff;
    padding: 5px 10px;
    font-size: 10px;
}
.excel {
    background-color: #1e8e52;
    color: #fff;
    padding: 5px 10px;
    font-size: 10px;
}
.zip {
    background-color: #666;
    color: #fff;
    padding: 5px 10px;
    font-size: 10px;
}

@media all and (max-width: 480px) {
.load-buttons {
    width: 100%;
    display: block;
}
.load-buttons li.col-6 {
    display: block;
    float: left;
    width: 100%;
    padding: 0;
}
.load-buttons li.col-6 a {
    padding: 15px;
}
}
.page-hero {
    height: 530px;
    background-color: bg-navy;
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
    position: relative;
}
.page-hero .head-title {
    position: absolute;
    bottom: 60px;
    left: 54px;
}
.page-hero .head-title p, .page-hero .head-title h1 {
    color: #fff;
}
.page-hero .head-title p {
    font-size: 18px;
    font-family: 'klavika_regular';
}
.page-hero .head-title p a {
    display: inline-block;
    vertical-align: middle;
    color: #fff;
    cursor: pointer;
}
.page-hero .head-title p a:hover {
    text-decoration: underline;
}
.page-hero .head-title h1 {
    font-size: 44px;
    margin-top: 0;
}
.links-container {
    width: 950px;
    max-width: 100%;
    margin: 0 auto;
}
.link-block {
    margin: 80px;
}
.link-block h2 {
    margin: 30px 0;
    font-size: 21px;
}
.link-block ul {
    border-color: #ccc;
    border-style: solid;
    border-width: 1px 0 0 1px;
}
.link-block ul:after {
    clear: both;
    content: '';
    display: table;
}
.link-block ul li {
    float: left;
    width: 33.333333333333333334%;
    height: 80px;
    border-color: #ccc;
    border-style: solid;
    border-width: 0 1px 1px 0;
}
.link-block ul li:after {
    content: '';
    display: table;
    table-layout: fixed;
    width: 100%;
}
.link-block ul li a {
    position: relative;
    display: table-cell;
    width: 100%;
    height: 80px;
    padding: 0 25px 0 68px;
    text-overflow: ellipsis;
    line-height: 1.4;
    font-size: 14px;
    color: #040420;
    vertical-align: middle;
}
.link-block ul li a:before {
    position: absolute;
    content: '';
    display: inline-block;
    top: 28px;
    left: 30px;
    width: 24px;
    height: 24px;
    margin-right: 14px;
    background-image: url("images/ui/link-square.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 17px;
    vertical-align: middle;
}

@media all and (max-width: 768px) {
.link-block {
    margin: 30px;
}
.link-block ul li {
    float: none;
    width: 100%;
    height: auto;  /*40px;*/
}
.link-block ul li a {
    padding: 20px 20px 20px 54px;
    font-size: 12px;
    line-height: 1;
    height: auto;
}
.link-block ul li a:before {
    width: 12px;
    height: 12px;
    background-size: 10px 8px;
}
.link-block ul li a:before {
    top: auto;
    bottom: auto;
    background-size: 10px 9px;
}
}
.trans-border, .trans-border_mm, .trans-border_kibou {
    text-align: center;
    position: relative;
    float: left;
}
.trans-border a, .trans-border_mm a, .trans-border_kibou a {
    padding: 20px 30px;
    float: left;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    line-height: 25px;
    position: relative;
    color: #041020 !important;
}
.trans-border_mm a {
    padding: 27px 30px;
}
.trans-border a:hover, .trans-border_mm a:hover, .trans-border_kibou a:hover {
    background: #f2f2f2;
    text-decoration: none;
}
.trans-border a:before {
    content: "";
    height: 25px;
    width: 20px;
    background-image: url("./images/ui/link-square.png");
    background-position: center center;
    background-repeat: no-repeat;
    float: left;
    margin-right: 20px;
}
.trans-border_mm a:before {
    content: "";
    height: 46px;
    width: 20px;
    background-image: url("./images/ui/link-square.png");
    background-position: center top 12px;
    background-repeat: no-repeat;
    float: left;
    margin-right: 20px;
}
.trans-border .note {
    clear: both;
    font-size: 0.785em;
    margin-top: 2em;
}

@media all and (max-width: 413px) {
.trans-border_mm a:before {
    display: block;
    float: none;
    margin: 0 auto;
}
}
.trans-border_kibou a:before {
    content: "";
    height: 60px;
    width: 60px;
    background-image: url("./images/ui/link-kibou.png");
    background-position: center center;
    background-repeat: no-repeat;
    float: left;
    margin-right: 15px;
    vertical-align: middle;
}

@media all and (max-width: 413px) {
.trans-border_kibou a:before {
    display: block;
    float: none;
    margin: 0 auto;
}
}
.bd div {
    background: #000;
    position: absolute;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
}
.bd div.tl1 {
    width: 50%;
    height: 1px;
    top: 0;
    left: 0;
}
.bd div.br1 {
    width: 50%;
    height: 1px;
    bottom: 0;
    right: 0;
}
.bd div.tr1 {
    height: 50%;
    width: 1px;
    right: 0;
    top: 0;
}
.bd div.bl1 {
    height: 50%;
    width: 1px;
    left: 0;
    bottom: 0;
}
.bd div.tl2 {
    height: 50%;
    width: 1px;
    top: 0;
    left: 0;
}
.bd div.br2 {
    height: 50%;
    width: 1px;
    bottom: 0;
    right: 0;
}
.bd div.tr2 {
    width: 50%;
    height: 1px;
    right: 0;
    top: 0;
}
.bd div.bl2 {
    width: 50%;
    height: 1px;
    left: 0;
    bottom: 0;
}
.borders div {
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    background: none;
}
.borders div:before, .borders div:after {
    content: '';
    background: #000;
    position: absolute;
    -webkit-transition: all 0.2s;
    transition: all 0.2s;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}
.borders div.tl1:after, .borders div.tl1:before {
    width: 10px;
    height: 1px;
    top: 0;
    left: 0;
}
.borders div.br1:after, .borders div.br1:before {
    width: 10px;
    height: 1px;
    bottom: 0;
    right: 0;
}
.borders div.tr1:after, .borders div.tr1:before {
    height: 10px;
    width: 1px;
    right: 0;
    top: 0;
}
.borders div.bl1:after, .borders div.bl1:before {
    height: 10px;
    width: 1px;
    left: 0;
    bottom: 0;
}
.borders div.tl2:after, .borders div.tl2:before {
    width: 1px;
    height: 10px;
    top: 0;
    left: 0;
}
.borders div.br2:after, .borders div.br2:before {
    width: 1px;
    height: 10px;
    bottom: 0;
    right: 0;
}
.borders div.tr2:after, .borders div.tr2:before {
    height: 1px;
    width: 10px;
    right: 0;
    top: 0;
}
.borders div.bl2:after, .borders div.bl2:before {
    height: 1px;
    width: 10px;
    left: 0;
    bottom: 0;
}
.trans-border:hover .borders div.tl1:before, .trans-border_mm:hover .borders div.tl1:before, .trans-border_kibou:hover .borders div.tl1:before {
    width: 100%;
    -webkit-transform: translate(10px, 0);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.br1:before, .trans-border_mm:hover .borders div.br1:before, .trans-border_kibou:hover .borders div.br1:before {
    width: 100%;
    -webkit-transform: translate(-10px, 0);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.tr1:before, .trans-border_mm:hover .borders div.tr1:before, .trans-border_kibou:hover .borders div.tr1:before {
    height: 100%;
    -webkit-transform: translate(0, -10px);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.bl1:before, .trans-border_mm:hover .borders div.bl1:before, .trans-border_kibou:hover .borders div.bl1:before {
    height: 100%;
    -webkit-transform: translate(0, 10px);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.tl1:after, .trans-border_mm:hover .borders div.tl1:after, .trans-border_kibou:hover .borders div.tl1:after {
    width: 100%;
    -webkit-transform: translate(-10px, 0);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.br1:after, .trans-border_mm:hover .borders div.br1:after, .trans-border_kibou:hover .borders div.br1:after {
    width: 100%;
    -webkit-transform: translate(10px, 0);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.tr1:after, .trans-border_mm:hover .borders div.tr1:after, .trans-border_kibou:hover .borders div.tr1:after {
    height: 100%;
    -webkit-transform: translate(0, 10px);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.bl1:after, .trans-border_mm:hover .borders div.bl1:after, .trans-border_kibou:hover .borders div.bl1:after {
    height: 100%;
    -webkit-transform: translate(0, -10px);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.tl2:before, .trans-border_mm:hover .borders div.tl2:before, .trans-border_kibou:hover .borders div.tl2:before {
    height: 100%;
    -webkit-transform: translate(0, 100px);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.br2:before, .trans-border_mm:hover .borders div.br2:before, .trans-border_kibou:hover .borders div.br2:before {
    height: 100%;
    -webkit-transform: translate(-100px, 0);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.tr2:before, .trans-border_mm:hover .borders div.tr2:before, .trans-border_kibou:hover .borders div.tr2:before {
    width: 100%;
    -webkit-transform: translate(0, -100px);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.bl2:before, .trans-border_mm:hover .borders div.bl2:before, .trans-border_kibou:hover .borders div.bl2:before {
    width: 100%;
    -webkit-transform: translate(0, 100px);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.tl2:after, .trans-border_mm:hover .borders div.tl2:after, .trans-border_kibou:hover .borders div.tl2:after {
    height: 100%;
    -webkit-transform: translate(-100px, 0);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.br2:after, .trans-border_mm:hover .borders div.br2:after, .trans-border_kibou:hover .borders div.br2:after {
    height: 100%;
    -webkit-transform: translate(100px, 0);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.tr2:after, .trans-border_mm:hover .borders div.tr2:after, .trans-border_kibou:hover .borders div.tr2:after {
    width: 100%;
    -webkit-transform: translate(0, 100px);
    transform: translate(0, 0);
}
.trans-border:hover .borders div.bl2:after, .trans-border_mm:hover .borders div.bl2:after, .trans-border_kibou:hover .borders div.bl2:after {
    width: 100%;
    -webkit-transform: translate(0, -100px);
    transform: translate(0, 0);
}
.smp-section .body_tbl table {
    /*width: 100%;*/
    table-layout: fixed;
    border-collapse: collapse;
}
.smp-section .body_tbl table table {
    table-layout: fixed;
    border-collapse: collapse;
}
.smp-section .body_tbl table table tr {
    position: relative;
}
.smp-section .body_tbl table table tr:after {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    display: block;
    content: '';
    width: 100%;
    height: 1px;
    background-color: #fff;
}
.smp-section .body_tbl table table tr td {
    width: 735px;
    height: 80px;
    padding: 0;
    background-color: #eee;
    border: 0;
    font-size: 15px;
    line-height: 1.4;
    vertical-align: middle;
    border-width: 1px 0;
    border-style: solid;
    border-color: #fff;
}
.smp-section .body_tbl table table tr td.title {
    width: 215px;
    padding: 0 15px;
    background-color: #0a2a54;
    font-weight: normal;
    color: #fff;
}
.smp-section .body_tbl table table tr td.data:after {
    clear: both;
    content: '';
    display: table;
}
.smp-section .body_tbl table table tr td.data input:not([type="radio"]), .smp-section .body_tbl table table tr td.data textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 100%;
    background-color: #eee;
    border: none;
    box-shadow: none;
    font-weight: 300;
    color: #222;
}
.smp-section .body_tbl table table tr td.data input:not([type="radio"]):placeholder-shown, .smp-section .body_tbl table table tr td.data textarea:placeholder-shown {
 color: #666;
}
.smp-section .body_tbl table table tr td.data input:not([type="radio"])::-webkit-input-placeholder, .smp-section .body_tbl table table tr td.data textarea::-webkit-input-placeholder {
 color: #666;
}
.smp-section .body_tbl table table tr td.data input:not([type="radio"])::-moz-placeholder, .smp-section .body_tbl table table tr td.data textarea::-moz-placeholder {
 color: #666;
 opacity: 1;
}
.smp-section .body_tbl table table tr td.data input:not([type="radio"]):-moz-placeholder, .smp-section .body_tbl table table tr td.data textarea:-moz-placeholder {
 color: #666;
 opacity: 1;
}
.smp-section .body_tbl table table tr td.data input:not([type="radio"]):-ms-input-placeholder, .smp-section .body_tbl table table tr td.data textarea:-ms-input-placeholder {
 color: #666;
}
.smp-section .body_tbl table table tr td.data input:not([type="radio"])::placeholder, .smp-section .body_tbl table table tr td.data textarea::placeholder {
    color: #999;
}
.smp-section .body_tbl table table tr td.data.data-gender {
    padding: 0px 45px;
}
.smp-section .body_tbl table table tr td.data.data-radio {
    padding: 30px 45px;
}
.smp-section .body_tbl table table tr td.data .radio {
    display: block;
    float: left;
    width: 50%;
    padding-bottom: 10px;
    padding-right: 1em;
    text-indent: -1.7em;
    padding-left: 1.7em;
}
.smp-section .body_tbl table table tr td.data .radio input[type="radio"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 15px;
    height: 15px;
    margin-right: 10px;
    background-color: #fff;
    border: 1px solid #999;
    vertical-align: middle;
}
.smp-section .body_tbl table table tr td.data .radio input[type="radio"]:checked {
    background-color: #999;
    border: 2px solid #ccc;
}
.smp-section .body_tbl table table tr td.data input:not([type="radio"]) {
    padding: 0 45px;
}
.smp-section .body_tbl table table tr td.data input[type="text"], .smp-section .body_tbl table table tr td.data textarea {
    display: block;
    width: 98%;
    margin: 0 auto;
    background-color: #fff;
}
.smp-section .body_tbl table table tr td.data input[type="text"] {
    line-height: 28px;
}
.smp-section .body_tbl table table tr td.data.data-2col:after {
    clear: both;
    content: '';
    display: table;
}
.smp-section .body_tbl table table tr td.data.data-2col input[type="text"] {
    display: block;
    width: 47%;
    float: left;
    margin-left: 1%;
}
.smp-section .body_tbl table table tr td.data.data-2col input[type="text"]+input {
    width: calc(50% - 1px);
    border-left: 1px solid #fff;
}
.smp-section .body_tbl table table tr td.data.data-inline input[type="text"] {
    display: inline;
    width: 140px;
}
.smp-section .body_tbl table table tr td.data.data-inline input[type="text"]:first-child {
    margin-left: 1%;
}
.smp-section .body_tbl table table tr td.data.data-select {
    padding: 20px 50px;
}
.smp-section .body_tbl table table tr td.data.data-select:placeholder-shown {
 color: #666;
}
.smp-section .body_tbl table table tr td.data.data-select::-webkit-input-placeholder {
 color: #666;
}
.smp-section .body_tbl table table tr td.data.data-select::-moz-placeholder {
 color: #666;
 opacity: 1;
}
.smp-section .body_tbl table table tr td.data.data-select:-moz-placeholder {
 color: #666;
 opacity: 1;
}
.smp-section .body_tbl table table tr td.data.data-select:-ms-input-placeholder {
 color: #666;
}
.smp-section .body_tbl table table tr td.data.data-select select {
    position: relative;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 200px;
    height: 40px;
    margin: 0;
    padding: 0 30px;
    border-radius: 0;
    border: 1px solid #ccc;
    vertical-align: middle;
    font-size: inherit;
    color: inherit;
    background-image: url("images/ui/selector.png");
    background-repeat: no-repeat;
    background-position: top 14px right 14px;
    background-size: 13px 10px;
}
.smp-section .body_tbl table table tr td.data textarea {
    max-width: 100%;
    height: 250px;
    padding: 30px 45px;
    margin: 8px;
}
.smp-section .body_tbl table table tr td.data .confirm {
    padding: 30px 50px;
}
.smp-section .body_tbl table table tr.space-row {
    width: 100%;
}
.smp-section .body_tbl table table tr.space-row td {
    background-color: #fff;
}
.smp-section .body_tbl table table tr.space-row.notice-row {
    text-align: center;
}
.smp-section .body_tbl table table tr.submit-row {
    width: 100%;
}
.smp-section .body_tbl table table tr.submit-row td {
    padding: 60px 0;
    background-color: #fff;
}
.smp-section .body_tbl table table tr.submit-row .btn {
    width: 200px;
    height: 60px;
    background-color: #0a2a54;
    color: #fff;
}
.smp-section .body_tbl table table tr.submit-row input[type="reset"] {
    display: none;
}

@media all and (max-width: 768px) {
.smp-section .body_tbl table table tr td {
    display: block;
    width: 100%;
    height: auto;
    padding: 15px 20px;
}
.smp-section .body_tbl table table tr td.title {
    width: 100%;
    padding: 15px;
}
.smp-section .body_tbl table table tr td.data input:not([type="radio"]), .smp-section .body_tbl table table tr td.data textarea {
    padding: 0 10px;
    line-height: 20px;
}
.smp-section .body_tbl table table tr td.data .radio {
    width: 100%;
    float: none;
}
.smp-section .body_tbl table table tr td.data.data-2col input[type="text"] {
    width: 100%;
    float: none;
    margin: 20px 0;
}
.smp-section .body_tbl table table tr td.data.data-inline input[type="text"] {
    width: 24%;
}
.smp-section .body_tbl table table tr td.data textarea {
    height: 140px;
}
.smp-section .body_tbl table table tr td.data.data-gender .radio {
    margin: 10px 0;
    padding: 10px 0;
}
.smp-section .body_tbl table table tr.submit-row td {
    padding: 30px;
}
}
.powered-by {
    margin: 20px 0 100px;
}
.powered-by_mail {
    margin: 20px 0 40px;
}
.powered-by .table-wrap, .powered-by_mail .table-wrap {
    padding: 30px;
    border: 1px solid #ccc;
    border-radius: 5px;
}
.powered-by table, .powered-by_mail table {
    width: 97%;/*  width: 750px;   171227_右側のスパイラルマーク掲載しないので幅100% に設定→でないと文字がはみ出す*/
    margin: 0 auto;
    background-color: #fff;
    border: none;
}
.powered-by table td, .powered-by_mail table td {
    font-size: 11px;
    padding: 5px;
}

@media all and (max-width: 768px) {
.powered-by {
    margin: 20px 0 50px;
}
.powered-by_mail {
    margin: 20px 0 30px;
}
.powered-by .table-wrap, .powered-by_mail .table-wrap {
    padding: 15px;
}
.powered-by table, .powered-by_mail table {
    width: 100%;
}
}
.push-menu-navigator {
    position: fixed;
    top: 0px;
    left: auto;
    right: 50px;
    bottom: auto;
    padding: 39px 0;
    z-index: 1100;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
}
.push-menu-navigator.unpinned {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp;
}
.push-menu-navigator.pinned {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
}
.push-menu-navigator .push-menu-button {
    display: block;
    width: 30px;
    height: 25px;
    z-index: inherit;
    cursor: pointer;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    position: relative;
}
.push-menu-navigator .push-menu-button span {
    display: inline-block;
    -webkit-transition: all 0.8s;
    transition: all 0.8s;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #fff;
}
.push-menu-navigator .push-menu-button span:nth-of-type(1) {
    top: 0;
}
.push-menu-navigator .push-menu-button span:nth-of-type(2) {
    top: 11px;
}
.push-menu-navigator .push-menu-button span:nth-of-type(3) {
    bottom: 0;
}
.push-menu-navigator .push-menu-button span:nth-of-type(2)::after {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 3px;
    background-color: #fff;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    display: none;
}
.push-menu-navigator .push-menu-button p {
    display: inline-block;
    color: #707070;
    font-size: 8px;
    margin: 0;
    text-align: center;
    position: absolute;
    left: 50%;
    bottom: -14px;
    transform: translateX(-50%);
    white-space: nowrap;
    visibility: hidden;
}
.push-menu-navigator.is-active {
    z-index: z-pushMenuButton-active;
}
.push-menu-navigator.is-active .push-menu-button span {
    /* background-color: #000; */
    background-color: #707070;
}
.push-menu-navigator.is-active .push-menu-button span:nth-of-type(1) {
    -webkit-transform: translateY(20px) scale(0);
    transform: translateY(20px) scale(0);
}
.push-menu-navigator.is-active .push-menu-button span:nth-of-type(2) {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.push-menu-navigator.is-active .push-menu-button span:nth-of-type(2)::after {
    display: block;
    /* background-color: #000; */
    background-color: #707070;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.push-menu-navigator.is-active .push-menu-button span:nth-of-type(3) {
    -webkit-transform: translateY(-20px) scale(0);
    transform: translateY(-20px) scale(0);
}
.push-menu-navigator.is-active .push-menu-button p {
    visibility: visible;
}
.push-menu-navigator.headerPinned span {
    background-color: #000;
}
.push-menu-navigator.headerPinned span:nth-of-type(2):after {
    display: block;
    background-color: #000;
}
.push-menu {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #fff;
    opacity: 0;
    z-index: 1000;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
    -webkit-animation-name: menuFadeOut;
    animation-name: menuFadeOut;
}
.push-menu.is-active {
    display: block;
    opacity: 1;
    -webkit-animation-name: menuFadeIn;
    animation-name: menuFadeIn;
}
.push-menu:after {
    clear: both;
    content: '';
    display: table;
}
.push-menu .col-55 {
    position: absolute;
    top: 0;
    left: 0;
    right: 60%;
    bottom: 0;
    width: 40%;
    border-right: 1px solid #ccc;
}
.push-menu .col-89 {
    position: absolute;
    top: 0;
    left: 40%;
    right: 0;
    bottom: 0;
    width: 60%;
}
.push-menu .logo {
    position: relative;
}
.push-menu .logo a {
    display: inline-block;
    width: 348px;
    height: 63px;
    background-image: url("images/logo.png");
    background-size: 348px 63px;
    background-position: 0 0;
    background-repeat: no-repeat;
    overflow: hidden;
    text-indent: -9999em;
}
.push-menu .logo.logo-en a {
    width: 285px;
    height: 62px;
    background-image: url("images/logo_en.png");
    background-size: 285px 62px;
}
.push-menu .pm-solutions .solution {
    position: relative;
    height: 16.666666vh;
    height: calc(100vh / 6);
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-transform: translate3d(-200%, 0, 0);
    transform: translate3d(-200%, 0, 0);
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.push-menu .pm-solutions .solution a {
    display: block;
}
.push-menu .pm-solutions .solution .solution-title {
    width: 100%;
    height: 16.666666vh;
    height: calc(100vh / 6);
    padding-left: 50px;
    font-size: 11px;
    color: #fff;
    vertical-align: top;
    letter-spacing: 1px;
}
.push-menu .pm-solutions .solution .solution-title span {
    display: inline-block;
    height: 16.666666vh;
    height: calc(100vh / 6);
}
.push-menu .pm-solutions .solution .solution-title span.label {
    margin-right: 15px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 21px;
    line-height: 16.666666vh;
    text-transform: uppercase;
}
.push-menu .pm-solutions .solution .solution-title span.caption {
    line-height: 16.666666vh;
    vertical-align: top;
    letter-spacing: 1px;
}
.push-menu .pm-solutions .solution .solution-title_stl {
    display: table;
    width: 100%;
    height: 16.66666vh;
    padding-left: 50px;
    font-size: 11px;
    color: #fff;
    vertical-align: top;
    letter-spacing: 1px;
}
.push-menu .pm-solutions .solution .solution-title_stl span {
    display: table-cell;
    vertical-align: middle;
    height: 20;
}
.push-menu .pm-solutions .solution .solution-title_stl span.label {
    width: 120px;
    margin-right: 15px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 21px;
    line-height: 16.666666vh;
    text-transform: uppercase;
}
.push-menu .pm-solutions .solution .solution-title_stl span.caption {
    letter-spacing: 1px;
}
.push-menu .pm-solutions .solution.solution-openlabo {
    background-image: url("images/pushmenu/1-openlabo.jpg");
    -webkit-animation-name: solutionPullLeft01;
    animation-name: solutionPullLeft01;
}
.push-menu .pm-solutions .solution.solution-jsparc {
    background-image: url("images/pushmenu/1-jsparc.jpg");
    -webkit-animation-name: solutionPullLeft01;
    animation-name: solutionPullLeft01;
}
.push-menu .pm-solutions .solution.solution-spinoff {
    background-image: url("images/pushmenu/2-spinoff.jpg");
    -webkit-animation-name: solutionPullLeft02;
    animation-name: solutionPullLeft02;
}
.push-menu .pm-solutions .solution.solution-facility {
    background-image: url("images/pushmenu/3-facility.jpg");
    -webkit-animation-name: solutionPullLeft03;
    animation-name: solutionPullLeft03;
}
.push-menu .pm-solutions .solution.solution-satellite {
    background-image: url("images/pushmenu/4-satellite.jpg");
    -webkit-animation-name: solutionPullLeft04;
    animation-name: solutionPullLeft04;
}
.push-menu .pm-solutions .solution.solution-kibo {
    background-image: url("images/pushmenu/5-kibo.jpg");
    -webkit-animation-name: solutionPullLeft05;
    animation-name: solutionPullLeft05;
}
.push-menu .pm-solutions .solution.solution-others {
    background-image: url("images/pushmenu/6-others.jpg");
    -webkit-animation-name: solutionPullLeft06;
    animation-name: solutionPullLeft06;
}
.push-menu .pm-solutions .solution.solution-en {
    height: 100vh;
    background-image: url("images/pushmenu/7-en.png");
    -webkit-animation: none;
    animation: none;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.push-menu .pm-solutions .solution.solution-en a .keyphrase {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    margin: 0;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 32px;
    color: #fff;
    text-align: center;
}
/*START1804 menu
==========================================================================================
==========================================================================================*/
.push-menu .pm-solutions_test .solution {
    position: relative;
    height: 16.666666vh;
    height: calc(100vh / 6);
    background-size: cover;
    background-repeat: no-repeat;
    -webkit-transform: translate3d(-200%, 0, 0);
    transform: translate3d(-200%, 0, 0);
    -webkit-animation-duration: 0.8s;
    animation-duration: 0.8s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.push-menu .pm-solutions_test .solution a {
    display: block;
}
.push-menu .pm-solutions_test .solution .solution-title {
    width: 100%;
    height: 16.666666vh;
    height: calc(100vh / 6);
    padding-left: 50px;
    font-size: 11px;
    color: #fff;
    vertical-align: top;
    letter-spacing: 1px;
}
.push-menu .pm-solutions_test .solution .solution-title span {
    display: inline-block;
    height: 16.666666vh;
    height: calc(100vh / 6);
}
.push-menu .pm-solutions_test .solution .solution-title span.label {
    margin-right: 15px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 21px;
    line-height: 16.666666vh;
    text-transform: uppercase;
}
.push-menu .pm-solutions_test .solution .solution-title span.caption {
    line-height: 16.666666vh;
    vertical-align: top;
    letter-spacing: 1px;
}
.push-menu .pm-solutions_test .solution .solution-title_stl {
    display: table;
    width: 100%;
    height: 16.66666vh;
    padding-left: 50px;
    font-size: 11px;
    color: #fff;
    vertical-align: top;
    letter-spacing: 1px;
}
.push-menu .pm-solutions_test .solution .solution-title_stl span {
    display: table-cell;
    vertical-align: middle;
    height: 20;
}
.push-menu .pm-solutions_test .solution .solution-title_stl span.label {
    width: 120px;
    margin-right: 15px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 21px;
    line-height: 16.666666vh;
    text-transform: uppercase;
}
.push-menu .pm-solutions_test .solution .solution-title_stl span.caption {
    letter-spacing: 1px;
}
.push-menu .pm-solutions_test .solution.solution-openlabo {
    background-image: url("images/pushmenu/1-openlabo.jpg");
    -webkit-animation-name: solutionPullLeft01;
    animation-name: solutionPullLeft01;
}
.push-menu .pm-solutions_test .solution.solution-jsparc {
    background-image: url("images/pushmenu/1-jsparc.jpg");
    -webkit-animation-name: solutionPullLeft01;
    animation-name: solutionPullLeft01;
}
.push-menu .pm-solutions_test .solution.solution-spinoff {
    background-image: url("images/pushmenu/2-spinoff.jpg");
    -webkit-animation-name: solutionPullLeft02;
    animation-name: solutionPullLeft02;
}
.push-menu .pm-solutions_test .solution.solution-facility {
    background-image: url("images/pushmenu/3-facility.jpg");
    -webkit-animation-name: solutionPullLeft03;
    animation-name: solutionPullLeft03;
}
.push-menu .pm-solutions_test .solution.solution-satellite {
    background-image: url("images/pushmenu/4-satellite.jpg");
    -webkit-animation-name: solutionPullLeft04;
    animation-name: solutionPullLeft04;
}
.push-menu .pm-solutions_test .solution.solution-kibo {
    background-image: url("images/pushmenu/5-kibo.jpg");
    -webkit-animation-name: solutionPullLeft05;
    animation-name: solutionPullLeft05;
}
.push-menu .pm-solutions_test .solution.solution-others {
    background-image: url("images/pushmenu/6-others.jpg");
    -webkit-animation-name: solutionPullLeft06;
    animation-name: solutionPullLeft06;
}
.push-menu .pm-solutions_test .solution.solution-en {
    height: 100vh;
    background-image: url("images/pushmenu/7-en_test.png");
    -webkit-animation: none;
    animation: none;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.push-menu .pm-solutions_test .solution.solution-en a .keyphrase {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    margin: 0;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 32px;
    color: #fff;
    text-align: center;
}
/*
==========================================================================================
==========================================================================================*/







.push-menu .pm-head {
    padding: 30px 40px;
}
.push-menu .pm-body .pm-title {
    display: none;
}
.push-menu .pm-links {
    width: 600px;
    max-width: 100%;
    margin: 70px auto;
}
.push-menu .pm-links:after {
    clear: both;
    content: '';
    display: table;
}
.push-menu .pm-links ul li a {
    font-size: 20px;
    line-height: 2.3;
    letter-spacing: 1px;
    color: #041020;
}
.push-menu .pm-links.pm-links-en ul li a {
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.push-menu .links-left {
    float: left;
    width: 55%;  /*元は50%*/
}
.push-menu .links-right {
    float: left;
    width: 45%;  /*元は50%*/
}
.push-menu .links-sns {
    clear: both;
    font-size: 0;
    padding: 30px 0 0;
}
.push-menu .links-sns .sns-share-list {
}
.push-menu .links-sns .sns-share-list .sns-share-item {
    margin-left: 50px;
}
.push-menu .links-sns .sns-share-list .sns-share-item .sns-share-btn {
    font-size: 0;
    line-height: 56px;
    letter-spacing: 0;
    width: 56px;
    height: 56px;
}
.push-menu .links-sns .sns-share-list .sns-share-item .sns-share-btn.fb::after {
    width: 15px;
    height: 28px;
    margin: -14px 0 0 -7.5px;
}
.push-menu .links-sns .sns-share-list .sns-share-item .sns-share-btn.tw::after {
    width: 27px;
    height: 21px;
    margin: -10.5px 0 0 -13.5px;
}
.push-menu .pm-foot {
    position: absolute;
    top: auto;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 30px 40px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.push-menu .pm-foot .col-left {
    float: left;
}
.push-menu .pm-foot .col-right {
    float: right;
}
.push-menu .pm-foot .copyright {
    margin: 0;
}

@media all and (min-width: 769px) {
    .push-menu-navigator {
        display: none;
    }
}

@media all and (max-width: 768px) {
.push-menu-navigator {
    top: 25px;
    right: 25px;
}
.push-menu-navigator .push-menu-button {
    width: 20px;
    height: 16px;
}
.push-menu-navigator .push-menu-button span {
    height: 2px;
}
.push-menu-navigator .push-menu-button span:nth-of-type(2) {
    top: 7px;
}
.push-menu-navigator .push-menu-button span:nth-of-type(2)::after {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    height: 2px;
}
.push-menu .col-55 {
    display: none;
}
.push-menu .col-89 {
    left: 0;
    width: 100%;
}
.push-menu .col-89 .pm-head {
    margin: 20px 0 16px;
    padding: 0 20px;
}
.push-menu .col-89 .pm-head .logo a {
    width: 200px;
    height: 36px;
    background-size: 200px 36px;
}
.push-menu .col-89 .pm-body {
    padding: 0 20px 0 40px;
　/*元は 0 50px */
}
.push-menu .col-89 .pm-body .pm-title {
    display: block;
    margin: 20px 0; /*元は50px*/
    font-size: 24px;
}
.push-menu .col-89 .pm-title {
    display: block;
    margin: 30px 0;
    font-size: 24px;
}
.push-menu .col-89 .pm-body .pm-title:after {
    display: inline-block;
    content: '';
    width: 50px;
    height: 1px;
    background-color: #000;
}
.push-menu .col-89 .pm-foot {
    padding: 20px;
    font-size: 8px;
}
.push-menu .pm-links {
    margin: 20px auto 50px; /*元は 50px auto */
}
.push-menu .pm-links ul li a {
    font-size: 12px;
}
.push-menu .links-sns {
    padding: 45px 0 0;
}
.push-menu .links-sns .sns-share-list .sns-share-item {
    margin-left: 20px;
}
.push-menu .links-sns .sns-share-list .sns-share-item .sns-share-btn {
    line-height: 40px;
    width: 40px;
    height: 40px;
}
.push-menu .links-sns .sns-share-list .sns-share-item .sns-share-btn.fb::after {
    width: 11px;
    height: 21px;
    margin: -10.5px 0 0 -5.5px;
}
.push-menu .links-sns .sns-share-list .sns-share-item .sns-share-btn.tw::after {
    width: 19px;
    height: 15px;
    margin: -7.5px 0 0 -9.5px;
}
}
@-webkit-keyframes menuFadeIn {
 from {
 display: none;
 opacity: 0;
}
 to {
 display: block;
 opacity: 1;
}
}
@keyframes menuFadeIn {
 from {
 display: none;
 opacity: 0;
}
 to {
 display: block;
 opacity: 1;
}
}
@-webkit-keyframes menuFadeOut {
 from {
 display: block;
 opacity: 1;
}
 to {
 opacity: 0;
}
}
@keyframes menuFadeOut {
 from {
 display: block;
 opacity: 1;
}
 to {
 opacity: 0;
}
}
@-webkit-keyframes solutionPullLeft01 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 16.6% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@keyframes solutionPullLeft01 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 16.6% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@-webkit-keyframes solutionPullLeft02 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 16.6% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 33.3% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@keyframes solutionPullLeft02 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 16.6% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 33.3% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@-webkit-keyframes solutionPullLeft03 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 33.3% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 49.9% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@keyframes solutionPullLeft03 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 33.3% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 49.9% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@-webkit-keyframes solutionPullLeft04 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 49.9% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 66.6% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@keyframes solutionPullLeft04 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 49.9% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 66.6% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@-webkit-keyframes solutionPullLeft05 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 66.6% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 83.3% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@keyframes solutionPullLeft05 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 66.6% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 83.3% {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@-webkit-keyframes solutionPullLeft06 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 83.3% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}
@keyframes solutionPullLeft06 {
 from {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 83.3% {
 -webkit-transform: translate3d(-200%, 0, 0);
 transform: translate3d(-200%, 0, 0);
}
 to {
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
}
}

.push-menu .col-89 {
    overflow-y: auto;
}
.pm-wrap {
    padding-bottom: 140px;
    position: relative;
    width: 100%;
    height: auto;
    min-height: 100vh;
}
.pm-wrap .pm-head {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.pm-wrap .home-button {
    display: block;
    color: #707070;
    background: top center / contain no-repeat url("./images/ui/icon-home.png");
    font-size: 8px;
    padding-top: 26px;
}
.pm-wrap .pm-head .language-chooser {
    display: flex;
    flex-direction: row-reverse;
    align-items: center;
    padding-right: 40px;
}
.pm-wrap .pm-head .language-chooser::after {
    display: none;
}
.pm-wrap .pm-head .language-chooser li {
    float: none;
    position: relative;
}
.pm-wrap .pm-head .language-chooser li+li:before {
    display: none;
}
.pm-wrap .pm-head .language-chooser li:nth-of-type(2)::after {
    display: inline-block;
    content: "/";
    margin: 0 0.25em;
}
.pm-wrap .pm-head .language-chooser li a {
    color: #707070;
}
.pm-wrap .pm-head .language-chooser li a:hover {
    text-decoration: underline;
}
.pm-wrap .pm-head .language-chooser li a span {
    font-size: 0;
}
.pm-wrap .pm-head .language-chooser li a span::before {
    font-size: 15px;
}
.pm-wrap .pm-head .language-chooser li.lang-ja a span::before {
    content: "JP";
}
.pm-wrap .pm-head .language-chooser li.lang-en a span::before {
    content: "EN";
}
.pm-wrap .pm-head .search-form-sp {
    margin: 0 25px;
    position: relative;
    flex: 1;
}
.pm-wrap .pm-head .search-form-sp input[type="text"] {
    width: 100%;
    font-family: inherit;
    font-size: 10px;
    padding: 1em;
    border: 0;
    border-bottom: 1px solid#707070;
    line-height: 1;
    text-align: center;
}
.pm-wrap .pm-head .search-form-sp input[type="text"]::placeholder {
    color: #868686;
}
.pm-wrap .pm-head .search-form-sp input[type="reset"] {
	background: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 1em;
    height: 1em;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
}
.pm-wrap .pm-head .search-form-sp label {
    display: inline-block;
    content: "";
    width: 17px;
    height: 17px;
    background: center / contain no-repeat url("./images/ui/icon-search2.png");
    position: absolute;
    top: 50%;
    left: 0.25em;
    transform: translateY(-50%);
}
.pm-wrap .pm-head .search-form-sp input[type="text"]:focus + span label {
    display: none;
}
.pm-wrap .pm-head .search-form-sp input[type="text"]:focus + span input[type="reset"] {
    background: center / contain no-repeat url("images/ui/icon-search-reset.png");
}
.pm-menu {
    font-size: 15px;
}
.pm-menu .pm-menu-list a, .pm-menu .pm-menu-list span {
    display: block;
    padding: 1em;
    text-align: center;
    cursor: pointer;
    line-height: 1;
}
.pm-menu .pm-secondary {
    background: #225AB5;
    font-size: 12px;
    display: none;
}
.pm-menu .pm-secondary a, .pm-menu .pm-secondary span {
    color: #fff;
}
.pm-menu .pm-secondary a:hover {
    color: #000;
}
.pm-menu .pm-third {
    background: #B1B1B1;
}
.pm-menu .pm2-toggle {
    background: #fff;
}
.pm-menu .pm2-toggle, .pm-menu .pm3-toggle {
    position: relative;
}
.pm-menu .pm2-toggle a {
    display: inline-block;
    color: #041020;
    padding: 0;
}
.pm-menu .pm3-toggle {
    background: #225AB5;
}
.pm-menu .pm3-toggle a {
    display: inline-block;
    position: relative;
    padding: 0 0 0 1.5em;
}
.pm-menu .pm2-toggle-icon, .pm-menu .pm3-toggle-icon {
    display: inline-block !important;
    content: "";
    width: 10px;
    height: 10px;
    margin-top: -0.25em;
    padding: 0 !important;
    border: 3px solid;
    position: absolute;
    top: 50%;
    right: 2em;
    transform: rotate(-45deg) translateY(-50%);
}
.pm-menu .pm2-toggle-icon {
    border-color: transparent transparent #041020 #041020;
}
.pm-menu .pm3-toggle-icon {
    border-color: transparent transparent #fff #fff;
}
.pm-menu .pm-third {
    display: none;
}
.pm-menu .push-menu-navigator {
    position: relative;
    top: auto;
    right: auto;
    text-align: center;
}
.pm-menu .push-menu-navigator .push-menu-button {
    display: inline-block;
}
.pm-foot .links-sns {
    padding: 20px 0;
    text-align: right;
}

.header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;
    /* height: 100px; */
    min-height: 100px;
    z-index: 100;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.home .header {
  background : #000;
}
.home #content {
  /* padding-top : 100px; */
  padding-top: 141px;
}
.logged-in.home #content {
  padding-top : 68px;
}
.header a {
    opacity: 0.3;
    color: #fff;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
}
.header a:hover {
    opacity: 1;
}
.header.pinned {
    -webkit-animation-name: fadeInDown;
    animation-name: fadeInDown;
    background-color: #fff;
}
.header.unpinned {
    -webkit-animation-name: fadeOutUp;
    animation-name: fadeOutUp;
    background-color: #fff;
}
.header .row [class*="col-"] {
    padding: 0;
}
.header .logo {
    position: relative;
    margin: 20px 0 16px;
    line-height: 1;
}
.header .logo a {
    display: inline-block;
    width: 348px;
    height: 63px;
    background-image: url("images/logo-white.png");
    background-size: 348px 63px;
    background-position: 0 0;
    background-repeat: no-repeat;
    overflow: hidden;
    text-indent: -9999em;
    opacity: 1;
}
.header .logo.logo-en a {
    width: 285px;
    height: 62px;
    background-image: url("images/logo_en-white.png");
    background-size: 285px 62px;
}
.header .header-menu.col-right {
    padding: 44px 60px 42px 0;
    color: #fff;
}
.header .header-menu.col-right .sns-share-list {
    display: inline-block;
    vertical-align: middle;
    font-size: 0;
    margin-top: -3px;
    padding: 0 20px 0 0;
}
.header .header-menu.col-right .sns-share-list .sns-share-item {
    margin-left: 10px;
}
.header .header-menu.col-right .sns-share-list .sns-share-item .sns-share-btn {
    width: 25px;
    height: 25px;
}
.header .header-menu.col-right .sns-share-list .sns-share-item .sns-share-btn.fb::after {
    width: 7px;
    height: 14px;
    margin: -7px 0 0 -3.5px;
}
.header .header-menu.col-right .sns-share-list .sns-share-item .sns-share-btn.tw::after {
    width: 13px;
    height: 10px;
    margin: -5px 0 0 -6.5px;
}
.header .header-menu.col-right .language-chooser {
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    text-transform: uppercase;
    display: inline-block;
}
.header .header-menu.col-right .language-chooser .active a {
    opacity: 1;
}

@media all and (min-width: 769px) {
    .header .row .col-right {
        padding: 1em 0;
    }
}

@media all and (max-width: 768px) {
.header .header-menu.col-right .language-chooser {
    display: none !important;
}
}
.header.pinned {
    background-color: #fff;
}
/* .header.pinned .logo a {
    background-image: url("images/logo.png");
}
.header.pinned .logo.logo-en {
    background-image: url("images/logo_en.png");
} */
.header.pinned .language-chooser a {
    color: #041020;
    -webkit-transition: opacity 0.5s ease;
    transition: opacity 0.5s ease;
}

@media all and (max-width: 768px) {
.header {
    height: 70px;
    min-height: auto;
}
.home #content {
  padding-top : 70px;
}
.logged-in.home #content {
  padding-top : 24px;
}
.header .logo a {
    width: 200px;
    height: 36px;
    background-size: 200px 36px;
}
}
@-webkit-keyframes fadeInDown {
 from {
 -webkit-transform: translate3d(0, -100%, 0);
 transform: translate3d(0, -100%, 0);
}
 to {
 -webkit-transform: none;
 transform: none;
}
}
@keyframes fadeInDown {
 from {
 -webkit-transform: translate3d(0, -100%, 0);
 transform: translate3d(0, -100%, 0);
}
 to {
 -webkit-transform: none;
 transform: none;
}
}
@-webkit-keyframes fadeOutUp {
 to {
 -webkit-transform: translate3d(0, -100%, 0);
 transform: translate3d(0, -100%, 0);
}
}
@keyframes fadeOutUp {
 to {
 -webkit-transform: translate3d(0, -100%, 0);
 transform: translate3d(0, -100%, 0);
}
}

.header .logo {
    margin: 20px 0;
}
.header .logo a.logo-mark {
    width: 104px;
    height: 63px;
    background-image: url("images/logo-mark-white.png");
    background-size: 104px 63px;
}
.header .logo a.logo-text {
    width: 246px;
    height: 63px;
    background-image: url("images/logo-text-white.png");
    background-size: 246px 63px;
}
.header .logo.logo-en a.logo-mark {
    width: 104px;
    height: 62px;
    background-image: url("images/logo_en-mark-white.png");
    background-size: 104px 62px;
}
.header .logo.logo-en a.logo-text {
    width: 181px;
    height: 62px;
    background-image: url("images/logo_en-text-white.png");
    background-size: 181px 62px;
}
.header.pinned .logo a.logo-mark {
    background-image: url("images/logo-mark.png");
}
.header.pinned .logo a.logo-text {
    background-image: url("images/logo-text.png");
}
.header.pinned .logo.logo-en a.logo-mark {
    background-image: url("images/logo_en-mark.png");
}
.header.pinned .logo.logo-en a.logo-text {
    background-image: url("images/logo_en-text.png");
}
.header .row {
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    flex-wrap: wrap;
}
.header .row:after {
    display: none;
}
.header .row .col-left, .header .row .col-right {
    float: none;
    flex-shrink: 0;
}
.header .row .col-right {
    display: flex;
    justify-content: right;
    align-items: center;
    padding: 0;
}
.header-menu-logo {
    width: 82px;
    height: 64px;
    background-image: url("images/logo-jsparc-white.png");
    background-size: 82px 64px;
    background-position: 0 0;
    background-repeat: no-repeat;
    overflow: hidden;
    text-indent: -9999em;
    opacity: 1 !important;
    margin-left: 10px;
}
.header.pinned .header-menu-logo {
    background-image: url("images/logo-jsparc-black.png");
}
.header-menu-unit {
    display: flex;
    flex-direction: column;
    justify-content: center;
    height: 100%;
    flex: 1;
}
.header-menu-utility {
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.header .header-menu.col-right .language-chooser {
    display: flex;
    justify-content: space-between;
    flex: 1;
}
.header .header-menu.col-right .language-chooser li {
    float: none;
    flex: 1;
    text-align: center;
}
.header .header-menu.col-right .language-chooser li:not(:first-child) {
    border-left: 1px solid #FFF;
}
.header.pinned .header-menu.col-right .language-chooser li:not(:first-child) {
    border-left-color: #041020;
}
.header .header-menu.col-right .language-chooser li::before,  .header .header-menu.col-right .language-chooser li::after {
    display: none;
}
.header-menu-search {
    margin-top: 12px;
    position: relative;
}
.header-menu-search input[type="text"] {
    width: 100%;
    font-family: inherit;
    font-size: 10px;
    padding: 0.5em;
}
.header-menu-search input[type="reset"] {
	background: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 1em;
    height: 1em;
    position: absolute;
    top: 50%;
    right: 0.5em;
    transform: translateY(-50%);
}
.header-menu-search input[type="text"]:focus + input[type="reset"] {
	background: center / contain no-repeat url("images/ui/icon-search-reset.png");
}
.header-menu-search-button button {
    border: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 26px;
    height: 26px;
    background: center / contain no-repeat url("images/ui/icon-search-white.png");
}
.header.pinned .header-menu-search-button button {
    background-image: url("images/ui/icon-search.png");
}

.header .global {
    font-size: 17px;
}
.header .global .inner {
    padding: 0;
}
.header .global ul li a, .header .global ul li span {
    display: block;
    opacity: 1;
    line-height: 1;
    white-space: nowrap;
    cursor: pointer;
    text-decoration: none !important;
}
.header .global-primary {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
}
.header .global-primary > li {
    position: relative;
    margin-right: 1em;
}
.header .global-primary > li:last-child {
    margin-right: 0;
}
.header .global-primary > li a, .header .global-primary > li span {
    color: #fff;
    font-weight: bold;
    padding: 0 0 20px;
}
.header .global-primary > li a:hover, .header .global-primary > li span:hover {
    color: #3485EB;
}
.header.pinned .global-primary > li a, .header.pinned .global-primary > li span {
    color: #000;
}
.header .global-secondary {
    background: #333;
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    display: none;
}
.header .global-secondary.is-active {
    display: inline-block;
}
.header .global-secondary > li {
    position: relative;
    border-bottom: 1px solid #707070;
}
.header .global-secondary > li:last-child {
    border-bottom: 0;
}
.header .global-secondary > li a, .header .global-secondary > li span {
    color: #fff !important;
    padding: 0.6em 1.5em;
    line-height: 1.2;
}
.header .global-secondary > li a:hover, .header .global-secondary > li span:hover {
    color: #000 !important;
}
.header .global-primary > li:first-child .global-secondary {
    left: 0;
    transform: translateX(0);
    margin-left: calc(-1 * (20px - 5px));
}
.header .global-primary > li:last-child .global-secondary {
    left: auto;
    right: 0;
    transform: translateX(0);
    margin-right: calc(-1 * (20px - 5px));
}
.header .global-third {
    background: #fff;
    position: absolute;
    top: 0;
    left: 100%;
    display: none;
}
.header .global-third.is-active {
    display: inline-block;
}
.header .global-third > li {
    border-bottom: 1px solid #707070;
}
.header .global-third > li:last-child {
    border-bottom: 0;
}
.header .global-third > li a, .header .global-third > li span {
    color: #848484 !important;
    padding: 0.6em 1.5em 0.6em 1.5em;
    position: relative;
}
.header .global-third > li a:hover, .header .global-third > li span:hover {
    color: #000 !important;
}
.header .global-third > li a:hover::before, .header .global-third > li span:hover::before {
    display: inline-block;
    content: "";
    width: 0.8em;
    height: 0.8em;
    margin-top: -0.1em;
    background: center / contain no-repeat url("images/ui/icon-caret-right.png");
    position: absolute;
    top: 50%;
    left: 0.6em;
    transform: translateY(-50%);
}

@media all and (min-width: 769px) {
    .header .row .col-left {
        flex-basis: 356px;
    }
    .header .row .col-right {
        flex-basis: 360px;
    }
    .header .global {
        flex-basis: 100%;
    }
    .header-menu-search-button {
        display: none;
    }
}

@media all and (min-width: 1000px) {
    .header .global-primary > li:first-child .global-secondary {
        margin-left:calc(-1 * (50px - 5px));
    }
    .header .global-primary > li:last-child .global-secondary {
        margin-right: calc(-1 * (50px - 5px));
    }
}

@media all and (min-width: 1300px) {
    .header .global {
        flex-basis: calc(100% - 410px);
        max-width: 1154px;
    }
    .header .row {
        align-items: flex-end;
    }
}

@media all and (min-width: 1920px) {
    .header .row .col-right {
        flex-basis: 480px;
    }
    .header .global {
        flex-basis: calc(100% - 530px);
    }
}

@media all and (min-width: 769px) and (max-width: 1300px) {
    .header .global {
        font-size: 14px;
        margin-top: 3px;
    }
}

@media all and (max-width: 768px) {
    .header .logo a.logo-mark {
        width: 60px;
        height: 36px;
        background-size: 60px 36px;
    }
    .header .logo a.logo-text {
        width: 140px;
        height: 36px;
        background-size: 140px 36px;
    }
    .header .logo.logo-en a.logo-mark {
        width: 60px;
        height: 36px;
        background-size: 60px 36px;
    }
    .header .logo.logo-en a.logo-text {
        width: 106px;
        height: 36px;
        background-size: 106px 36px;
    }
    .header .row .col-left .logo {
        display: flex;
    }
    .header .row .col-right {
        padding: 0 36px 0 0;
    }
    .header-menu-search, .header-menu-logo {
        display: none;
    }
    .header-menu-utility {
        display: flex;
        align-items: center;
    }
    .header .header-menu.col-right .sns-share-list {
        padding-right: 6px;
    }
    .header .global {
        display: none;
    }
}

.footer-nav h2, .footer-nav h3 {
    font-weight: normal;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.footer-copy p {
    margin: 0;
}
.footer {
    width: 100%;
    max-width: 100%;
    color: #fff;
}
.footer .inner {
    padding: 30px 60px;
}
.footer a {
    color: #fff;
}
.footer a:hover {
    text-decoration: none;
}
.footer a:hover {
    text-decoration: underline;
}
.footer .footer-connect {
    text-align: center;
}
.footer .footer-connect h3 {
    margin: 20px 0;
    font-size: 28px;
    text-transform: uppercase;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.footer .footer-connect .footer-mailMag {
    height: 200px;
    background-color: #0a2a54;
}
.footer .footer-connect .footer-mailMag input.formEmail {
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 356px;
    height: 44px;
    padding: 8px;
    background-color: #114588;
    border: none;
    color: #fff;
    letter-spacing: 1.8px;
}
.footer .footer-connect .footer-mailMag input.formEmail::-webkit-input-placeholder {
 color: #fff;
 opacity: 0.5;
 font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
 letter-spacing: 1px;
}
.footer .footer-connect .footer-mailMag input.formEmail::-moz-placeholder {
 color: #fff;
 opacity: 0.5;
 font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
 letter-spacing: 1px;
}
.footer .footer-connect .footer-mailMag input.formEmail:-ms-input-placeholder {
 color: #fff;
 opacity: 0.5;
 font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
 letter-spacing: 1px;
}
.footer .footer-connect .footer-mailMag input.formEmail::placeholder {
 color: #fff;
 opacity: 0.5;
 font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
 letter-spacing: 1px;
}
.footer .footer-connect .footer-mailMag input.formSubmit {
    height: 44px;
    margin-left: 30px;
    padding: 8px 24px;
    background-color: #114588;
    color: #fff;
}
.footer .footer-connect .footer-contact {
    height: 200px;
    background-color: #114588;
    background-image: url("images/ui/button-detail.png");
    background-size: 25px;
    background-position: right 25px bottom 25px;
    background-repeat: no-repeat;
}
.footer .footer-connect .footer-contact a {
    display: block;
    width: 100%;
    height: 100%;
}
.footer .footer-connect .footer-contact a:hover {
    text-decoration: none;
}
.footer .footer-connect .footer-contact a p {
    line-height: 1.9;
    letter-spacing: 0.6px;
}
.footer .footer-nav {
    font-size: 12px;
    background-color: #041020;
}
.footer .footer-nav:after {
    clear: both;
    content: '';
    display: table;
}
.footer .footer-nav h2, .footer .footer-nav h3 {
    font-size: 12px;
}
.footer .footer-nav h2 {
    margin-bottom: 20px;
    font-size: 16px;
    text-transform: uppercase;
}
.footer .footer-nav .footer-nav-left, .footer .footer-nav .footer-nav-right, .footer .footer-nav .footer-nav-col {
    float: left;
}
.footer .footer-nav .footer-nav-left {
    width: 460px;/*  border-right: 1px solid rgba(255,255,255,0.15);*/
}
.footer .footer-nav .footer-nav-right {
    width: calc(100% - 460px);
    border-left: 1px solid rgba(255,255,255,0.15);
}
.footer .footer-nav .footer-nav-col {
    width: 50%;
}
.footer .footer-nav .footer-nav-left ul {
    margin-bottom: 20px;
}
.footer .footer-nav .footer-nav-left ul li {
    margin: 5px 0;
    padding: 5px 0;
}
.footer .footer-nav .footer-nav-left ul li a:hover {
    text-decoration: none;
}
.footer .footer-nav .footer-nav-left h3 {
    margin: 10px 0;
    font-weight: lighter;
}
.footer .footer-nav .footer-nav-right {
    padding-left: 40px;
}
.footer .footer-nav .footer-updates {
    margin-bottom: 40px;
}
.footer .footer-nav .footer-updates ul li {
    margin: 10px 0;
    width: 100%;
    overflow: hidden;
    height: 18px;
}
.footer .footer-nav .footer-updates ul li .footer-news-date {
    margin-right: 30px;
    opacity: 0.3;
}
.footer .footer-nav .footer-updates ul li .footer-news-title {
    line-height: 18px;
    height: 18px;
}
.footer .footer-links {
    background-color: #041020;
}
.footer .footer-links .inner:after {
    clear: both;
    content: '';
    display: table;
}
.footer .footer-links .links-left {
    float: left;
    margin-top: 50px;
}
.footer .footer-links .links-left a {
    opacity: 0.3;
}
.footer .footer-links .links-left .language-chooser {
    margin-right: 30px;
}
.footer .footer-links .links-left>span {
    display: inline-block;
    height: 18px;
    line-height: 18px;
}
.footer .footer-links .links-right {
    position: relative;
    float: right;
    margin-top: 50px;
}
.footer .footer-links .links-right .footer-logo {
    position: absolute;
    top: -72px;
    right: 0;
}
.footer .footer-links .links-right p {
    margin: 0;
}
.footer .footer-nav2:after {
    display: none;
}
.footer .footer-nav2 .footer-nav-left, .footer .footer-nav2 .footer-nav-right, .footer .footer-nav2 .footer-nav-col {
    float: none;
}
.footer .footer-nav2 .inner {
    display: flex;
    flex-wrap: wrap;
    padding: 30px;
}
.footer .footer-nav2 .footer-nav-left, .footer .footer-nav2 .footer-nav-right {
    flex: 1;
}
.footer .footer-nav2 .footer-nav-left ul {
    margin-bottom: 0;
}
.footer .footer-nav2 .footer-nav-left ul li {
    margin: 1em 0;
    padding: 0;
}
.footer .footer-nav2 .footer-nav-unit {
    display: flex;
}
.footer .footer-nav2 .footer-nav-col {
    margin-right: 1em;
    flex: 1;
}
.footer .footer-nav2 .footer-nav-col:last-of-type {
    margin-right: 0;
}
.footer .footer-nav-list > li::before {
    content: "-";
    margin-right: 0.5em;
}
.footer .footer-nav-list .fnav-secondary, .footer .footer-nav-list .fnav-third {
    margin: 0 0 0 1em !important;
}
.footer .footer-nav-list .fnav-secondary {
    padding-left: 1em;
}
.footer .footer-nav2 .footer-nav-right {
    border-color: #fff;
}
.footer .footer-nav2 .footer-updates .topics-list li {
    margin: 30px 0;
    line-height: 1;
}

@media all and (max-width: 768px) {
.footer .inner {
    padding: 30px;
}
.footer .footer-connect h3 {
    marign: 10px 0;
    font-size: 14px;
}
.footer .footer-connect .footer-mailMag {
    height: 140px;
}
.footer .footer-connect .footer-mailMag input.formEmail {
    width: 60%;
}
.footer .footer-connect .footer-mailMag input.formSubmit {
    margin-left: 15px;
}
.footer .footer-connect .footer-contact {
    height: 140px;
    background-size: 15px;
    background-position: right 15px bottom 15px;
}
.footer .footer-connect .footer-contact p {
    font-size: 8px;
}
.footer .footer-nav .footer-nav-left, .footer .footer-nav .footer-nav-right {
    width: 100%;
    float: none;
}
.footer .footer-nav .footer-nav-left {
    border-right: 0;
}
.footer .footer-nav .footer-nav-right {
    display: none;
}
.footer .footer-nav .footer-nav-col {
    font-size: 10px;
}
}
@media all and (max-width: 480px) {
    .footer .footer-nav2 .footer-nav-unit {
        flex-wrap: wrap;
    }
    .footer .footer-nav2 .footer-nav-col {
        flex-basis: 50%;
        margin-right: 0;
    }
}
.hero .keyphrase {
    position: absolute;
    width: 100%;
    text-align: center;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.hero .keyphrase .hero-message {
    margin: 0;
    font-size: 36px;
    font-weight: normal;
    line-height: 66px;
    text-transform: uppercase;
    font-family: 'AxisStd-Light', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.hero .keyphrase .hero-description {
    margin: 20px 0;
    font-size: 15px;
    font-family: 'AxisStd-Light', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    line-height: 2.1;
    letter-spacing: 0.8px;
}
.hero-01 {
/* position: relative;
  width: 100%;
  min-height: 400px;
  overflow: hidden; */
}
.top_slider {
/* width : 100%; */
}
.top_slider img {
    width : 100%;
    min-height : 50vh;
    max-height : 80vh;
    object-fit: cover;
}
.hero-01 .keyVisual {
    position: relative;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-image: url("images/hero/space.png");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.hero-01 .keyphrase {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
}
.hero-01 .keyphrase .hero-title {
    margin: 20px 0;
    font-size: 66px;
    font-weight: normal;
    line-height: 80px;
    text-transform: uppercase;
    color: #fff;
}
.hero-01 .scroll-down {
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    height: 80px;
    margin-top: 60px;
    font-size: 11px;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    position: absolute;
    left: 0;
    right: 0;
    z-index: 10;
}
.hero-01 .scroll-down div {
    position: relative;
    display: block;
    top: 0;
    left: 50%;
    width: 20px;
    height: 38px;
    margin: 0 0 20px -10px;
    border: 2px solid #fff;
    border-radius: 50px;
}
.hero-01 .scroll-down div:before {
    position: absolute;
    top: 10px;
    left: 50%;
    content: '';
    width: 2px;
    height: 7px;
    margin-left: -1px;
    background-color: #fff;
    border-radius: 50%;
    -webkit-animation: sdb 2s infinite;
    animation: sdb 2s infinite;
}
.hero-01 .scroll-down span {
    display: block;
    margin-left: 2px;
    text-align: center;
}

@media all and (max-width: 768px) {
.hero-01 .keyphrase .hero-title {
    font-size: 32px;
    line-height: 48px;
}
.hero-01 .keyphrase .hero-title span {
    display: block;
}
.hero-01 .keyphrase .hero-title br {
    display: none;
}
.hero-01 .keyphrase .scroll-down {
    margin-top: 0;
}
}
.hero-02 {
    position: relative;
    width: 100%;
    min-height: 400px;
    background-image: url("images/hero/second-back.jpg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}

@media all and (max-width: 768px) {
.hero.hero-02 .keyphrase {
    padding: 20px;
}
.hero.hero-02 .keyphrase .hero-message {
    font-size: 16px;
    line-height: 1.4;
}
.hero.hero-02 .keyphrase .hero-description {
    font-size: 7px;
    line-height: 16px;
}
}
.followingLine {
    display: block;
    height: 80px;
}
.followingLine span {
    display: block;
    width: 1px;
    height: 1px;
    margin: 0 auto;
    background-color: #041020;
    -webkit-transform: translate3d(0, -180px, 0);
    transform: translate3d(0, -180px, 0);
    -webkit-transition: -webkit-transform 1.2s ease-out;
    transition: -webkit-transform 1.2s ease-out;
    transition: transform 1.2s ease-out;
    transition: transform 1.2s ease-out, -webkit-transform 1.2s ease-out;
    -webkit-animation-duration: 1.2s;
    animation-duration: 1.2s;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
    -webkit-animation-fill-mode: both;
    animation-fill-mode: both;
}
.followingLine.active span {
    height: 60px;
    -webkit-animation-name: takeOn;
    animation-name: takeOn;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

@media all and (max-width: 768px) {
.followingLine {
    height: 40px;
}
.followingLine span {
    height: 40px;
}
.followingLine.active span {
    height: 30px;
    -webkit-animation-name: takeOnSp;
    animation-name: takeOnSp;
}
}
.section-head {
    height: 340px;
    padding: 120px 0 0;
    text-align: center;
}
.section-head h2, .section-head .section-title {
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    margin: 10px 0;
    font-size: 46px;
    line-height: 46px;
    text-transform: uppercase;
}
.section-head p {
    margin: 10px 0;
    font-size: 17px;
    color: #041020;
}
.section-body:after {
    clear: both;
    content: '';
    display: table;
}

@media all and (max-width: 768px) {
.section-head {
    height: 170px;
    padding: 60px 0 0;
}
.section-head h2, .section-head .section-title {
    font-size: 27px;
    margin: 10px 0 5px;
    line-height: 1;
}
.section-head p {
    margin-top: 5px;
    font-size: 9px;
}
}
.section-solutions .section-body {
    /* height: 100vh; */
    display: flex;
    flex-wrap: wrap;
}
.section-solutions .section-body.solution-body-en {
    position: relative;
    width: 100%;
    height: 600px;
    max-height: 60vh;
    background-image: url("images/home/solution-set.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.section-solutions .section-body.solution-body-en a {
    display: block;
    width: 100%;
    height: 100%;
}
.section-solutions .section-body.solution-body-en .keyphrase {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    margin: 0;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 36px;
    color: #fff;
    text-align: center;
}
.section-solutions .section-body .section-solution {
    position: relative;
    /* float: left; */
    /* width: 16.666666%; */
    /*width: calc(100% / 6);*/
    /* height: 100vh; */
    text-align: center;
    color: #fff;
    overflow: hidden;
    width: calc(100% / 4);
	height: 26vw;
}
.section-solutions .section-body .section-solution a {
    display: block;
    width: 100%;
    height: 100%;
}
.section-solutions .section-body .section-solution .solution-cover {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.section-solutions .section-body .section-solution.solution-openLabo .solution-cover {
    background-image: url("images/solutions/1-openlabo.jpg");
}
.section-solutions .section-body .section-solution.solution-jsparc .solution-cover {
    background-image: url("images/solutions/1-jsparc.jpg");
}
.section-solutions .section-body .section-solution.solution-spinOff .solution-cover {
    background-image: url("images/solutions/2-spinoff.jpg");
}
.section-solutions .section-body .section-solution.solution-facility .solution-cover {
    background-image: url("images/solutions/3-facility.jpg");
}
.section-solutions .section-body .section-solution.solution-satellite .solution-cover {
    background-image: url("images/solutions/4-satellite.jpg");
}
.section-solutions .section-body .section-solution.solution-kibo .solution-cover {
    background-image: url("images/solutions/5-kibo.jpg");
}
.section-solutions .section-body .section-solution.solution-others .solution-cover {
    background-image: url("images/solutions/6-others.jpg");
}
.section-solutions .section-body .section-solution.solution-expansion .solution-cover {
    background-image: url("images/solutions/7-expansion.jpg");
}
.section-solutions .section-body .section-solution.solution-jaxalabel .solution-cover {
    background-image: url("images/solutions/8-jaxalabel.jpg");
}
.section-solutions .section-body .section-solution.solution-jichitai .solution-cover {
    background-image: url("images/solutions/9-jichitai.jpg");
}
.section-solutions .section-body .section-solution.solution-global .solution-cover {
    background-image: url("images/resonance/20170925_capacity-building-top.png");
}
.section-solutions .section-body .section-solution .keyphrase {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
}
.section-solutions .section-body .section-solution .keyphrase .solution-title {
    margin-bottom: 10px;
    font-size: 21px;
    letter-spacing: 1px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.section-solutions .section-body .section-solution .keyphrase p {
    font-size: 11px;
}
.section-solutions .section-body .section-solution.solution-expansion .solution-title {
    text-shadow: #000 1px 0 3px;
}

@media all and (max-width: 768px) {
.section-solutions .section-body {
    height: auto;
}
.section-solutions .section-body .section-solution {
    width: 50%;
    height: 50vw;
}
.section-solutions .section-body .section-solution .keyphrase .solution-title {
    margin-bottom: 4px;
    font-size: 13px;
}
.section-solutions .section-body .section-solution .keyphrase p {
    margin-top: 4px;
    font-size: 7px;
}
}
/*START
==================================================================*/
.section-solutions_test .section-body {
    height: 100vh;
}
.section-solutions_test .section-body.solution-body-en {
    position: relative;
    width: 100%;
    height: 600px;
    max-height: 60vh;
    background-image: url("images/home/solution-set_test.png");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
}
.section-solutions_test .section-body.solution-body-en a {
    display: block;
    width: 100%;
    height: 100%;
}
.section-solutions_test .section-body.solution-body-en .keyphrase {
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    margin: 0;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 36px;
    color: #fff;
    text-align: center;
}
.section-solutions_test .section-body .section-solution {
    position: relative;
    float: left;
    width: 16.666666%;
    width: calc(100% / 6);
    height: 100vh;
    text-align: center;
    color: #fff;
    overflow: hidden;
}
.section-solutions_test .section-body .section-solution a {
    display: block;
    width: 100%;
    height: 100%;
}
.section-solutions_test .section-body .section-solution .solution-cover {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.section-solutions_test .section-body .section-solution.solution-openLabo .solution-cover {
    background-image: url("images/solutions/1-openlabo.jpg");
}
.section-solutions_test .section-body .section-solution.solution-jsparc .solution-cover {
    background-image: url("images/solutions/1-jsparc.jpg");
}
.section-solutions_test .section-body .section-solution.solution-spinOff .solution-cover {
    background-image: url("images/solutions/2-spinoff.jpg");
}
.section-solutions_test .section-body .section-solution.solution-facility .solution-cover {
    background-image: url("images/solutions/3-facility.jpg");
}
.section-solutions_test .section-body .section-solution.solution-satellite .solution-cover {
    background-image: url("images/solutions/4-satellite.jpg");
}
.section-solutions_test .section-body .section-solution.solution-kibo .solution-cover {
    background-image: url("images/solutions/5-kibo.jpg");
}
.section-solutions_test .section-body .section-solution.solution-others .solution-cover {
    background-image: url("images/solutions/6-others.jpg");
}
.section-solutions_test .section-body .section-solution .keyphrase {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
}
.section-solutions_test .section-body .section-solution .keyphrase .solution-title {
    margin-bottom: 10px;
    font-size: 21px;
    letter-spacing: 1px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.section-solutions_test .section-body .section-solution .keyphrase p {
    font-size: 11px;
}

@media all and (max-width: 768px) {
.section-solutions_test .section-body {
    height: auto;
}
.section-solutions_test .section-body .section-solution {
    width: 50%;
    height: 50vw;
}
.section-solutions_test .section-body .section-solution .keyphrase .solution-title {
    margin-bottom: 4px;
    font-size: 13px;
}
.section-solutions_test .section-body .section-solution .keyphrase p {
    margin-top: 4px;
    font-size: 7px;
}
}
/*==
=====================================================
====================*/

.section-partners .section-body {
    height: 680px;
    color: #fff;
    text-align: center;
}
.section-partners .section-body a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.section-partners .section-body .pickUp {
    height: 340px;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    text-transform: uppercase;
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
}
.section-partners .section-body .pickUp .keyphrase {
    position: absolute;
    /* left: 60px;
    right: 60px;
    padding-top: 25px; */
    top: 50% !important;
    left: 50%;
    transform: translate(-50%, -50%);
}
.section-partners .section-body h3 {
    margin-top: 15px;
    font-family: 'AxisStd-Regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 26px;
}
.section-partners .section-body p {
    margin-bottom: 25px;
}
.section-partners .section-body .space-company {
    position: relative;
    height: 50vw;
    height: 680px;
    background-image: url("images/resonance/space-company.png");
    background-size: cover;
    background-position: center;
}
.section-partners .section-body .space-company .followingLine {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.section-partners .section-body .space-company .followingLine span {
    background-color: #fff;
}
.section-partners .section-body .space-company .followingLine.active span {
    -webkit-animation: none;
    animation: none;
}
.section-partners .section-body .space-company .keyphrase {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
}
.section-partners .section-body .space-company .keyphrase h3 {
    margin-bottom: 15px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 46px;
}
.section-partners .section-body .space-company .keyphrase p {
    font-size: 17px;
    margin-bottom: 20px;
}

.section-partners .section-body .project-partners{
    position: relative;
    height: 50vw;
    height: 680px;
    background-image: url("images/resonance/project-partners.png");
    background-size: cover;
    background-position: center;
}
.section-partners .section-body .project-partners .followingLine {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.section-partners .section-body .project-partners .followingLine span {
    background-color: #fff;
}
.section-partners .section-body .project-partners .followingLine.active span {
    -webkit-animation: none;
    animation: none;
}
.section-partners .section-body .project-partners .keyphrase {
    position: absolute;
    left: 0;
    right: 0;
    text-align: center;
}
.section-partners .section-body .project-partners .keyphrase h3 {
    margin-bottom: 15px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 46px;
}
.section-partners .section-body .project-partners .keyphrase p {
    font-size: 17px;
    margin-bottom: 20px;
}
.section-partners .section-body .row {
    display: flex;
    flex-wrap: wrap;
}
.section-partners .section-body .row {
    display: flex;
    flex-wrap: wrap;
}
.section-partners .section-body .row .col-2-3 {
    width: calc(100% / 3);
}

@media all and (max-width: 768px) {
.section-partners .float-left {
    float: none;
}
.section-partners .float-50 {
    width: 100%;
}
.section-partners .section-body {
    height: auto;
    color: #fff;
    text-align: center;
}
.section-partners .section-body .pickUp {
    height: 170px;
    /* padding: 30px; */
    padding: 0 !important;
}
.section-partners .section-body .pickUp div {
    font-size: 8px;
}
.section-partners .section-body .pickUp h3 {
    font-size: 13px;
}
.section-partners .section-body .pickUp p {
    font-size: 7px;
}
.section-partners .section-body .space-companies {
    height: 100vw;
}
.section-partners .section-body .row .col-2-3 {
    width: calc(100% / 2);
}
}
.section-products .section-nav {
    height: 180px;
    padding: 60px 0;
    background-image: url("images/products/p-cat-bg.png");
    color: #fff;
}
.section-products .section-nav ul {
    text-align: center;
}
.section-products .section-nav ul li {
    position: relative;
    display: inline-block;
    width: 158px;
}
.section-products .section-nav ul li .pictogram {
    display: block;
    height: 58px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: 58px;
}
.section-products .section-nav ul li .cat-product-count {
    position: absolute;
    top: -20px;
    right: -20px;
    width: 18px;
    height: 18px;
    background-color: #165dba;
    font-size: 11px;
    color: #fff;
}
.section-products .section-nav .p-food .pictogram {
    background-image: url("images/products/p-01-food.png");
}
.section-products .section-nav .p-car .pictogram {
    background-image: url("images/products/p-02-car.png");
}
.section-products .section-nav .p-bookshelf .pictogram {
    background-image: url("images/products/p-03-bookshelf.png");
}
.section-products .section-nav .p-digital .pictogram {
    background-image: url("images/products/p-04-digital.png");
}
.section-products .section-nav .p-cloth .pictogram {
    background-image: url("images/products/p-05-cloth.png");
}
.section-products .section-nav .p-cosmode .pictogram {
    background-image: url("images/products/p-06-cosmode.png");
}
.section-products .section-body {
    margin: 60px 0;
}

@media all and (max-width: 768px) {
.section-products .section-body {
    margin: 30px 0;
}
}
.product-container {
    width: 1120px;
    max-width: 100%;
    margin: 0 auto;
}
.product-container .ss-list:after {
    clear: both;
    content: '';
    display: table;
}
.product-container .ss-item {
    float: left;
    width: 33.3333333%;
    margin: 15px 0;
    text-align: center;
}
.product-container .ss-item a {
    position: relative;
    display: inline-block;
    width: 290px;
}
.product-container .ss-item a:hover {
    text-decoration: none;
}
.product-container .ss-item a .image-circle {
    width: 290px;
    height: 290px;
    padding: 2px;
}
.product-container .ss-item a .image-circle .product-image {
    position: relative;
    width: 290px;
    height: 290px;
    padding: 2px;
    border-radius: 50%;
    overflow: hidden;
    z-index: 40;
}
.product-container .ss-item a .image-circle .circle {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;
    width: 290px;
    height: 290px;
    background-image: url("images/products/circle.png");
    background-repeat: no-repeat;
    background-size: 290px;
    background-position: center;
    z-index: 50;
}
.product-container .ss-item a .image-circle .fadeCircle {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;
    width: 290px;
    height: 290px;
    border-radius: 50%;
    box-shadow: 0px 0px 6px 3px #eee;
    z-index: 45;
    opacity: 0;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
}
.product-container .ss-item a .image-circle .fadeCircle:after {
    display: block;
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: auto;
    width: 290px;
    height: 290px;
    border-radius: 50%;
    box-shadow: 0px 0px 6px 3px #eee inset;
    z-index: 45;
    opacity: 0;
    -webkit-transition: all 0.6s ease;
    transition: all 0.6s ease;
}
.product-container .ss-item a:hover .fadeCircle {
    top: 10px;
    left: 10px;
    opacity: 1;
}
.product-container .ss-item a:hover .fadeCircle:after {
    opacity: 1;
}
.product-container .ss-item a .product-title {
    height: 40px;
    margin: 15px 0;
}
.product-container .ss-item.cosmode a .image-circle .circle:after {
    position: absolute;
    display: block;
    top: 18px;
    right: 18px;
    content: '';
    z-index: 55;
    width: 59px;
    height: 53px;
    background-image: url("images/products/cosmode.png");
    background-repeat: no-repeat;
    background-size: 59px 53px;
}

@media all and (max-width: 768px) {
.product-container .ss-item {
    width: 100%;
    float: none;
}
}
@-webkit-keyframes takeOn {
 from {
 height: 1px;
}
 40% {
 height: 72px;
}
 50% {
 height: 80px;
}
 80% {
 height: 64px;
}
 to {
 height: 60px;
}
}
@keyframes takeOn {
 from {
 height: 1px;
}
 40% {
 height: 72px;
}
 50% {
 height: 80px;
}
 80% {
 height: 64px;
}
 to {
 height: 60px;
}
}
@-webkit-keyframes takeOnSp {
 from {
 height: 1px;
}
 40% {
 height: 36px;
}
 50% {
 height: 40px;
}
 80% {
 height: 32px;
}
 to {
 height: 30px;
}
}
@keyframes takeOnSp {
 from {
 height: 1px;
}
 40% {
 height: 36px;
}
 50% {
 height: 40px;
}
 80% {
 height: 32px;
}
 to {
 height: 30px;
}
}
.section-follow {
    background: #d8e9ff;
    padding-bottom: 90px;
}
.section-follow .section-body {
    max-width: 1120px;
    margin: 0 auto;
    padding: 60px 0 0;
}
.follow-container {
    padding: 0 3.75%;
    box-sizing: border-box;
    font-size: 0;
}
/* IE11 */
_:-ms-lang(x)::-ms-backdrop, .follow-item-body {
    font-size: 14px;
}
.follow-container .follow-item {
    margin: 0;
    display: inline-block;
    vertical-align: top;
    width: 45.94594594594595%;
    margin-left: 7.722007722007722%;
}
.follow-container .follow-item:first-child {
    margin-left: 0;
}
.follow-container .follow-item .follow-item-ttl {
    font-size: 30px;
    font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    text-transform: uppercase;
    line-height: 30px;
    text-align: center;
    margin-bottom: 20px;
    color: #114588;
}
.follow-container .follow-item .follow-item-body {
    margin: 0;
    min-height: 772px;
    width: auto;
    max-width: 478px;
    text-align: center;
}

@media all and (max-width: 768px) {
.section-follow {
    padding-bottom: 45px;
}
.section-follow .section-body {
    max-width: 100%;
    padding-top: 35px;
}
/* .follow-container {
    padding: 0 25px;
} */
.follow-container .follow-item {
    display: block;
    width: 100%;
    margin-left: 0;
    margin-bottom: 40px;
}
.follow-container .follow-item:last-child {
    margin-bottom: 0;
}
.follow-container .follow-item .follow-item-ttl {
    font-size: 20px;
    line-height: 20px;
}
.follow-container .follow-item .follow-item-body {
    max-width: 476px;
    margin: 0 auto;
}
.follow-container .follow-item .follow-item-body iframe {
    width: 100% !important;
}
}
.scroll-down {
    display: block;
    margin: 0 auto;
}
.hero .keyphrase {
    position: absolute;
    width: 100%;
    text-align: center;
}
.hero .keyphrase .hero-message {
    margin: 0;
    font-size: 36px;
    font-weight: normal;
    line-height: 66px;
    text-transform: uppercase;
}
.hero .keyphrase .hero-description {
    margin: 20px 0;
    font-size: 15px;
}
.about-head {
    position: relative;
    width: 100%;
    min-height: 400px;
}
.about-head .keyVisual {
    background-color: #0a2a54;
    background-image: url("images/about/about-hero.jpg");
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
}
.about-head .keyphrase {
    position: absolute;
    width: 100%;
    text-align: center;
}
.about-head .keyphrase .hero-subhead {
    font-size: 30px;
    letter-spacing: 0.8px;
    text-transform: uppercase;
    color: #fff;
}
.about-head .keyphrase .hero-message {
    margin: 20px 0;
    font-size: 64px;
    font-weight: normal;
    line-height: 80px;
    text-transform: uppercase;
    color: #fff;
}
.about-head .keyphrase .scroll-down {
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    height: 80px;
    margin-top: 60px;
    font-size: 11px;
    color: #fff;
    cursor: pointer;
}
.about-head .keyphrase .scroll-down div {
    position: relative;
    display: block;
    top: 0;
    left: 50%;
    width: 20px;
    height: 38px;
    margin: 0 0 20px -10px;
    border: 2px solid #fff;
    border-radius: 50px;
}
.about-head .keyphrase .scroll-down div:before {
    position: absolute;
    top: 10px;
    left: 50%;
    content: '';
    width: 2px;
    height: 7px;
    margin-left: -1px;
    background-color: #fff;
    border-radius: 50%;
    -webkit-animation: sdb 2s infinite;
    animation: sdb 2s infinite;
}
.about-head .keyphrase .scroll-down span {
    display: block;
    margin-left: 2px;
    text-align: center;
}
.catch-block-about {
    margin-top: 0;
    padding: 230px 0 80px !important;
}
.about-block {
    margin-top: 150px;
    width: 100%;
}
.about-block .row {
    width: 100%;
    display: table;
}
.about-block .row * {
    color: #fff;
}
.about-block .row h3 {
    font-size: 22px;
    letter-spacing: 1.1px;
}
.about-block .row p {
    font-size: 12px;
    line-height: 2;
    letter-spacing: 0.6px;
    color: #fff;
}
.about-block .row .col-bese {
    background-image: url("images/resonance/base.png");
    background-color: #0a2a54;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    display: table-cell;
    float: none;
}
.about-block .row .col-community {
    background-image: url("images/resonance/community.png");
    background-color: #0a2a54;
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    display: table-cell;
    float: none;
}
.purpose {
    margin-top: 120px;
    width: 100%;
}
.purpose .row .col-1-2 h6 {
    font-size: 15px;
    letter-spacing: 1.5px;
    margin: 0;
}
.purpose .row .col-1-2 .parallax-text {
    font-weight: 800;
    font-family: "din_regular";
    font-size: 50px;
    letter-spacing: 1.5px;
    color: #fff;
    margin: 0;
    background: url("images/hero/purpose.png") no-repeat;
    background-repeat: repeat;
    font-weight: bold;
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-attachment: fixed;
    margin-bottom: 35px;
}
.purpose .row .col-1-2 .parallax-text:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background-color: #040420;
    margin-top: 30px;
}
.purpose .row .col-1-2 p {
    font-size: 13px;
    line-height: 2;
    letter-spacing: 0.6px;
    color: #041020;
    margin-top: 30px;
}
.purpose .row .col-1-2 ul li {
    padding: 30px 0;
    border-top: 1px solid #ccc;
}
.purpose .row .col-1-2 ul:last-child {
    border-bottom: 1px solid #ccc;
}
.system {
    padding: 0 0 200px;
    background-image: url("images/about/system.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    background-attachment: fixed;
}
.system .system-container {
    width: 950px;
    max-width: 950px;
    margin: 0 auto;
}
.system .s-region {
    position: relative;
    margin: 1px 0;
    background-color: #fff;
    border-left-width: 11px;
    border-left-style: solid;
    -webkit-transition: height 0.3s ease, -webkit-transform 1s ease;
    transition: height 0.3s ease, -webkit-transform 1s ease;
    transition: height 0.3s ease, transform 1s ease;
    transition: height 0.3s ease, transform 1s ease, -webkit-transform 1s ease;
}
.system .s-region:before {
    display: block;
    position: absolute;
    content: '';
    top: 60px;
    right: 40px;
    width: 16px;
    height: 16px;
    background-image: url("images/about/panel-arrow.png");
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0.3;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.system .s-region.opened:before {
    opacity: 1;
}
.system .s-region h2 {
    display: block;
    margin: 0;
    padding: 40px;
    cursor: pointer;
}
.system .s-region h2:before {
    display: inline-block;
    width: 50px;
    height: 50px;
    margin-right: 20px;
    padding: 13px 0;
    border-radius: 50%;
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    text-align: center;
    color: #fff;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
}
.system .s-region h2:after {
    display: none;
    content: '';
    width: 60px;
    height: 1px;
    margin: 30px 0 20px;
    background-color: #000;
}
.system .s-region h3 {
    margin-bottom: 5px;
}
.system .s-region p {
    font-size: 12px;
}
.system .s-region ul li {
    display: block;
    font-size: 12px;
}
.system .s-region ul li:before {
    content: '・';
}
.system .s-region .region-inner {
    height: 0;
    padding: 0 40px;
    -webkit-transition: height 0.3s ease;
    transition: height 0.3s ease;
    overflow: hidden;
}
.system .s-region.accordionblock.opened:before {
    -webkit-transform: scale(1, -1);
    transform: scale(1, -1);
    -webkit-filter: FlipV;
    filter: FlipV;
}
.system .s-region.accordionblock.opened h2 {
    padding-bottom: 0;
}
.system .s-region.accordionblock.opened h2:after {
    display: block;
}
.system .s-region.accordionblock.opened .region-inner {
    height: auto;
    padding: 0 40px 40px;
}
.system .s-region-01 {
    border-color: #041020;
}
.system .s-region-01 h2 {
    color: #041020;
}
.system .s-region-01 h2:before {
    content: '01';
    background-color: #041020;
}
.system .s-region-02 {
    border-color: #0a2a54;
}
.system .s-region-02 h2 {
    color: #0a2a54;
}
.system .s-region-02 h2:before {
    content: '02';
    background-color: #0a2a54;
}
.system .s-region-03 {
    border-color: #104487;
}
.system .s-region-03 h2 {
    color: #104487;
}
.system .s-region-03 h2:before {
    content: '03';
    background-color: #104487;
}
.system .s-region-04 {
    border-color: #165dba;
}
.system .s-region-04 h2 {
    color: #165dba;
}
.system .s-region-04 h2:before {
    content: '04';
    background-color: #165dba;
}
.access {
    margin-top: 150px;
}
.access .access-place {
    width: 100%;
    margin-bottom: 100px;
}
.access .access-place .row .col-12 {
    display: table;
}
.access .access-place .row .col-left.col-1-2 {
    padding: 0;
    display: table-cell;
    float: none;
    width: 50%;
    position: relative;
}
.access .access-place .row .col-left.col-1-2 img {
    position: absolute;
    top: 0;
}
.access .access-place .row .col-left.col-1-2 #tokyo-map, .access .access-place .row .col-left.col-1-2 #osaka-map {
    height: 340px;
    width: 100%;
    float: left;
}
.access .access-place .row .col-12 h4 {
    font-size: 21px;
    letter-spacing: 0.5px;
    position: relative;
}
.access .access-place .row .col-12 h4:before {
    content: "";
    background-image: url("./images/ui/pin_black.png");
    width: 14px;
    height: 20px;
    position: absolute;
    margin-left: -30px;
    margin-top: 5px;
}
.access .access-place .row .col-12 p {
    font-size: 13px;
    letter-spacing: 0.6px;
}
.access .access-place .row .col-12 .nearest {
    font-size: 11px;
    letter-spacing: 0.6px;
    margin-bottom: 30px;
}
.access .access-place .row .col-12 .w60 {
    float: none;
}
.access .access-place .row .col-12 .access-desc {
    margin-top: 25px;
    font-size: 13px;
    line-height: 2.1;
    letter-spacing: 0.6px;
}

@media all and (max-width: 768px) {
.about-block .row .col-bese {
    width: 100%;
    display: block;
}
.about-block .row .col-community {
    width: 100%;
    display: block;
}
.purpose .sub-container {
    width: 100%;
}
.purpose .sub-container .row .col-1-2 {
    width: 100%;
}
.access .access-place .row .col-left.col-1-2 {
    width: 100%;
    display: block;
}
.access .access-place .row .col-left.col-1-2 img {
    position: relative;
    top: 0;
    width: 100%;
}
.access .access-place .row .col-left.col-1-2 #tokyo-map, .access .access-place .row .col-left.col-1-2 #osaka-map {
    display: none;
}
.access .access-place .row .col-12 h4 {
    font-size: 21px;
    letter-spacing: 0.5px;
    position: relative;
}
.access .access-place .row .col-12 h4:before {
    content: "";
    background-image: url("./images/ui/pin_black.png");
    width: 14px;
    height: 20px;
    position: absolute;
    margin-left: -30px;
    margin-top: 5px;
}
.access .access-place .row .col-12 p {
    font-size: 13px;
    letter-spacing: 0.6px;
}
.access .access-place .row .col-12 .nearest {
    font-size: 11px;
    letter-spacing: 0.6px;
    margin-bottom: 30px;
}
.access .access-place .row .col-12 .w60 {
    float: none;
}
.access .access-place .row .col-12 .access-desc {
    margin-top: 25px;
    font-size: 13px;
    line-height: 2.1;
    letter-spacing: 0.6px;
}
}
#search-modal {
    position: fixed;
    z-index: 1100;
    width: 100%;
    height: 100vh;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #fff;
    display: none;
}
#search-modal header .row [class*="col-"] {
    padding: 0;
}
#search-modal header .logo {
    position: relative;
    margin: 20px 0 16px;
}
#search-modal header .logo a {
    display: inline-block;
    width: 348px;
    height: 63px;
    background-image: url("images/logo.png");
    background-size: 348px 63px;
    background-position: 0 0;
    background-repeat: no-repeat;
    overflow: hidden;
    text-indent: -9999em;
}
#search-modal header .col-right {
    padding: 44px 60px 42px 0 !important;
}
#search-modal header .col-right .en-link {
    font-family: 'din_regular';
    text-transform: uppercase;
    opacity: 0.25;
    color: #040920;
    float: left;
}
#search-modal .sub-container {
    position: relative;
    height: 100%;
}
#search-modal #search-form {
    position: absolute;
    width: 100%;
    top: 50%;
    margin-top: -91px;
    border-bottom: 1px solid #ccc;
}
#search-modal #search-form #search-input {
    border: none;
    box-shodow: none;
    width: calc(100% - 80px);
    height: 80px;
    font-size: 23px;
    padding-left: 10px;
    float: left;
    outline: none;
}
#search-modal #search-form label {
    display: block;
    background-image: url("./images/ui/search.png");
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 48px 48px;
    width: 80px;
    height: 80px;
    float: left;
}
.search-navigator {
    position: fixed;
    top: 39px;
    left: auto;
    right: 50px;
    bottom: auto;
    z-index: 1100;
}
.search-navigator .search-button {
    display: block;
    width: 30px;
    height: 25px;
    z-index: inherit;
    cursor: pointer;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
    position: relative;
}
.search-navigator .search-button span {
    display: inline-block;
    -webkit-transition: all 0.8s;
    transition: all 0.8s;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    /* background-color: #000; */
    background-color: #707070;
}
.search-navigator .search-button span:nth-of-type(1) {
    top: 0;
    -webkit-transform: translateY(20px) scale(0);
    transform: translateY(20px) scale(0);
}
.search-navigator .search-button span:nth-of-type(2) {
    top: 11px;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}
.search-navigator .search-button span:nth-of-type(2)::after {
    display: block;
    /* background-color: #000; */
    background-color: #707070;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
}
.search-navigator .search-button span:nth-of-type(3) {
    bottom: 0;
    -webkit-transform: translateY(-20px) scale(0);
    transform: translateY(-20px) scale(0);
}
.search-navigator .search-button span:nth-of-type(2)::after {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    width: 100%;
    height: 3px;
    /* background-color: #000; */
    background-color: #707070;
    -webkit-transition: all 0.4s;
    transition: all 0.4s;
}
.search-navigator .search-button p {
    display: inline-block;
    color: #707070;
    font-size: 8px;
    margin: 0;
    text-align: center;
    position: absolute;
    left: 50%;
    bottom: -14px;
    transform: translateX(-50%);
    white-space: nowrap;
    visibility: hidden;
}
.search-navigator .search-button p {
    visibility: visible;
}

.search-navigator.headerPinned span {
    background-color: #000;
}
.search-navigator.headerPinned span:nth-of-type(2):after {
    display: block;
    background-color: #000;
}

@media all and (min-width: 767px) {
    #search-modal .search-form-sp {
        display: none;
    }
}

@media all and (max-width: 768px) {
.search-navigator {
    top: 25px;
    right: 25px;
}
.search-navigator .search-button {
    width: 20px;
    height: 16px;
}
.search-navigator .search-button span {
    height: 2px;
}
.search-navigator .search-button span:nth-of-type(2) {
    top: 7px;
}
.search-navigator .search-button span:nth-of-type(2)::after {
    position: absolute;
    top: 0;
    left: 0;
    content: '';
    height: 2px;
}
#search-modal .sub-container {
    height: 140px;
}
#search-modal header {
    height: 70px;
}
#search-modal header .logo a {
    width: 200px;
    height: 36px;
    background-size: 200px 36px;
}
#search-modal .sub-container {
    width: calc(100% - 40px);
}
#search-modal .col-right {
    display: none;
}
#search-modal {
    height: auto;
    bottom: auto;
}
#search-modal .row, #search-modal .sub-container {
    display: none;
}
#search-modal .search-form-sp {
    padding: 20px 50px 0 25px;
    position: relative;
}
#search-modal .search-form-sp input[type="text"] {
    width: 100%;
    font-family: inherit;
    font-size: 10px;
    padding: 1em;
    border: 0;
    border-bottom: 1px solid#707070;
    line-height: 1;
    text-align: center;
}
#search-modal .search-form-sp input[type="text"]::placeholder {
    color: #868686;
}
#search-modal .search-form-sp input[type="reset"] {
	background: none;
    border: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    width: 1em;
    height: 1em;
    position: absolute;
    top: 50%;
    right: 1em;
    transform: translateY(-50%);
    margin-top: calc(20px / 2);
    margin-right: 50px;
}
#search-modal .search-form-sp label {
    display: inline-block;
    content: "";
    width: 17px;
    height: 17px;
    background: center / contain no-repeat url("./images/ui/icon-search2.png");
    position: absolute;
    top: 50%;
    right: 0.25em;
    transform: translateY(-50%);
    margin-top: calc(20px / 2);
    margin-right: 50px;
}
#search-modal .search-form-sp input[type="text"]:focus + span label {
    display: none;
}
#search-modal .search-form-sp input[type="text"]:focus + span input[type="reset"] {
    background: center / contain no-repeat url("images/ui/icon-search-reset.png");
}
}
.project-sec {
    width: 100%;
    margin-top: 130px;
}
.project-sec:last-child {
    margin-bottom: 100px;
}
.project-sec h6 {
    font-size: 13px;
    margin-top: 0;
    margin-bottom: 10px;
}
.project-sec h1 {
    font-size: 34px;
    margin-top: 0;
}
.project-sec p {
    width: 100%;
    float: left;
    margin-top: 30px;
    line-height: 2.1;
    letter-spacing: 0.8px;
    font-size: 14px;
}
.project-sec .project-image-caption {
    margin-top: 10px;
    line-height: 1.5;
}
.project-sec .trans-border {
    float: left;
    margin-top: 30px;
}
.project-sec .trans-border a {
    padding: 20px 30px;
}
.project-sec .trans-border a:before {
    display: none;
}
.project-sec .trans-border a img {
    margin-right: 7px;
}
.project-sec .trans-border a span {
    font-size: 13px;
}
.project-sec .link-wrap {
    float: left;
    overflow: hidden;
}
.project-sec .link-wrap .trans-border {
    width: 100%;
}
.slide-right {
    opacity: 0.1;
    -webkit-transform: translate(-100%, 0);
    transform: translate(-100%, 0);
    -webkit-transition: all 2000ms;
    transition: all 2000ms;
}
.slide-right .col-5, .slide-right .col-7 {
    float: left;
}
.slide-left {
    opacity: 0.1;
    -webkit-transform: translate(100%, 0);
    transform: translate(100%, 0);
    -webkit-transition: all 2000ms;
    transition: all 2000ms;
}
.slide-left .col-5, .slide-left .col-7 {
    float: right;
}
.slide-right.scroll-side, .slide-left.scroll-side {
    opacity: 1;
    -webkit-transform: translate(0, 0);
    transform: translate(0, 0);
}

@media all and (max-width: 768px) {
.project-sec {
    width: 100%;
    margin-top: 130px;
}
.project-sec h6 {
    font-size: 13px;
    margin-top: 0;
    margin-bottom: 10px;
}
.project-sec h1 {
    font-size: 25px;
    margin-top: 0;
}
.project-sec p {
    width: 100%;
    float: left;
    margin-top: 30px;
    line-height: 2.1;
    letter-spacing: 0.8px;
}
.project-sec .trans-border {
    float: left;
    margin-top: 30px;
}
.project-sec .trans-border a {
    padding: 20px 30px;
}
.project-sec .trans-border a:before {
    display: none;
}
.project-sec .trans-border a img {
    margin-right: 7px;
}
.project-sec .trans-border a span {
    font-size: 13px;
}
}

@media all and (max-width: 480px) {
.project-sec {
    width: 100%;
    margin-top: 130px;
}
.project-sec h6 {
    font-size: 13px;
    margin-top: 0;
    margin-bottom: 10px;
}
.project-sec h1 {
    font-size: 25px;
    margin-top: 0;
}
.project-sec p {
    width: 100%;
    float: left;
    margin-top: 30px;
    line-height: 2.1;
    letter-spacing: 0.8px;
}
.project-sec .col-5 {
    width: 100%;
}
.project-sec .col-7 {
    width: 100%;
}
.project-sec .trans-border {
    text-align: center;
}
}
.solution-header {
    background-image: url("./images/solutions/solution-head.png");
}
.zoom-back {
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: auto 100%;
}
.zoom-back:hover {
    background-size: auto 150%;
}
.wrap {
    width: 100% !important;
}
.comp-header {
    height: 530px;
    background-image: url("./images/compornents/header.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
    position: relative;
}
.comp-header .head-title {
    position: absolute;
    bottom: 60px;
    left: 54px;
}
.comp-header .head-title * {
    color: #fff;
}
.comp-header .head-title h1 {
    font-size: 44px;
    margin-top: 0;
}

@media all and (max-width: 768px) {
.page-header {
    height: 480px !important;
}
.page-header .head-title {
    bottom: 50px;
    left: 40px;
}
.page-header .head-title p {
    font-size: 20px;
}
.page-header .head-title h1 {
    font-size: 32px;
}
.subhead {
    font-size: 32px;
}
.catch-block {
    padding: 50px 20px;
}
.catch-block .subhead {
    font-size: 32px;
}
.page-intro h2 {
    font-size: 32px;
}
.page-intro p {
    font-size: 15px;
}
}
.comp-feature {
    margin-top: 150px;
}
.comp-feature h3 {
    text-align: center;
    font-size: 24px;
    margin-top: 8px;
    margin-bottom: 55px;
}
.comp-feature h6 {
    text-align: center;
    font-size: 14px;
    margin-bottom: 0;
    font-family: 'klavika_regular';
}
.comp-feature ul {
    display: table;
}
.comp-feature li {
    padding: 0;
    border-right: 1px solid #fff;
    width: 25%;
    display: table-cell;
}
.comp-feature li:last-child {
    border: none;
}
.comp-feature li h3.comp-featre-title {
    background-color: #0a2a54;
    color: #fff;
    text-align: center;
    padding: 30px 0;
    margin: 0;
    letter-spacing: 0.4px;
    font-size: 18px;
}
.comp-feature li p {
    font-size: 12px;
    line-height: 2;
    letter-spacing: 0.6px;
    width: 80%;
    margin: 10%;
}
.comp-feature .text-center.full-width {
    width: 100%;
    margin-top: 30px;
}
.comp-feature .text-center.full-width .trans-border {
    float: none;
    margin-top: 20px;
}
.comp-feature .text-center.full-width .trans-border:nth-child(1) {
    margin-right: 20px;
}
.comp-conpany {
    width: 100%;
}
.partnar-project-lists {
    overflow: hidden;
    margin-top: 150px;
}
.entry-list {
    width: 100%;
    padding: 0;
    margin: 0;
    float: left;
}
.entry-list .zoom-cover {
    overflow: hidden;
    float: left;
}
.entry-list .zoom-cover .entry-list-thum h2 {
    font-size: 24px;
    margin-top: 0;
}
.entry-list .zoom-cover .entry-list-thum p.tag {
    font-size: 12px;
    opacity: 0.3;
    margin: 0 0 5px 0;
}
.entry-list:nth-child(1) {
    background-color: #0a2a54;
}
.entry-list:nth-child(2) {
    background-color: #114588;
}
.entry-list * {
    color: #fff;
}
.entry-list-thum {
    width: 470px;
    height: 355px;
    vertical-align: top;
    padding: 40px;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    float: left;
    position: relative;
    overflow: hidden;
}
.entry-list-thum h2 {
    font-size: 24px;
    margin: 0;
    z-index: 1;
    position: relative;
}
.entry-list-thum p.tag {
    z-index: 1;
    position: relative;
}
.entry-list-thum .imgZoom {
    position: absolute;
    width: 100%;
    height: 100%;
    z-index: 0;
}
.comp-project article {
    background-color: #0a2a54;
}
.comp-project article:nth-child(1) .entry-list-thum .articleZoom {
    background-image: url("./images/compornents/cpl-thum1.png");
}
.comp-project article:nth-child(3n-1) {
    background-color: #114588;
}
.comp-project article:nth-child(2) .entry-list-thum .articleZoom {
    background-image: url("./images/compornents/cpl-thum2.jpg");
}
.comp-project article:nth-child(3n) {
    background-color: #165dba;
}
.comp-project article:nth-child(3) .entry-list-thum .imgZoom {
    background-image: url("./images/compornents/cpl-thum3.jpg");
}
.entry-list-content {
    width: calc(100% - 470px);
    height: 355px;
    line-height: 1.9;
    letter-spacing: 0.6px;
    overflow: hidden;
    position: relative;
    float: left;
}
.entry-list-content .swiper-wrapper li.swiper-slide {
    padding: 70px 50px;
}
.entry-list-content .swiper-pagination {
    right: 10px !important;
    left: auto !important;
    top: 30px;
    width: 100px !important;
}
.entry-list-content h1 {
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.5px;
    margin: 0 0 0 0;
    padding-bottom: 25px;
    width: 100%;
    float: left;
}
.entry-list-content p.tag {
    font-size: 12px;
    margin: 0 0 0px 0;
    padding-bottom: 5px;
    width: 100%;
}
.entry-list-content p.text {
    font-size: 13px;
    padding-bottom: 40px;
    padding-top: 10px;
    margin: 0;
    width: 560px;
    width: 100%;
}
.entry-list-content a.show-detail {
    font-size: 13px;
    float: left;
    margin-right: 40px;
}
.entry-list-content a.show-detail:before {
    content: "";
    width: 23px;
    height: 23px;
    background-image: url("./images/compornents/detail.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    float: left;
    margin-right: 13px;
}
.entry-list-content a.show-list {
    font-size: 13px;
    float: left;
}
.entry-list-content a.show-list:before {
    content: "";
    width: 23px;
    height: 18px;
    background-image: url("./images/compornents/list.png");
    background-repeat: no-repeat;
    background-size: 100% 100%;
    background-position: center;
    float: left;
    margin-right: 13px;
}
.entry-list-content .entry-list-tag {
    font-size: 11px;
}
.entry-list-content .entry-list-tag a {
    font-size: 11px;
}
.comp-conpany {
    font-size: 11px;
    float: none;
}
.comp-conpany .project-icons {
    text-align: center;
    width: 100%;
    float: left;
    margin: 38px 0 60px;
}
.comp-conpany .project-icons ul {
    margin: 0 auto;
    width: 400px;
}
.comp-conpany .project-icons ul li {
    width: 100px;
    text-align: center;
    float: left;
    margin-left: 50px;
}
.comp-conpany .project-icons ul li:nth-child(1) {
    margin-left: 0;
}
.comp-conpany .project-icons ul li img {
    margin-top: 30px;
    margin-left: 20px;
}
.comp-conpany .project-icons ul li .count {
    width: 20px;
    height: 20px;
    float: right;
    background-color: #165dba;
    border-radius: 10px;
    font-size: 11px;
    text-align: color;
    color: #fff;
    line-height: 20px;
}
.comp-conpany .project-icons ul li p {
    font-size: 12px;
    text-align: center;
    margin: 5px 0 0;
}
section#example.comp-lists.suquare-lists {
    margin-top: 0;
}
.suquare-lists {
    width: 100%;
    margin-top: 0px !important;
    overflow: hidden;
}
.suquare-lists ul li {
    width: 25%;
    float: left;
    overflow: hidden;
    position: relative;
}
.suquare-lists ul li:before {
    content: "";
    padding-top: 100%;
    display: block;
}
.suquare-lists ul li .suquare-inner {
    width: 100%;
    height: 100%;
}
.suquare-lists ul li .comp-lists-data {
    top: 50%;
    margin-top: -37px;
    width: 100%;
    position: absolute;
}
.suquare-lists ul li a {
    text-align: center;
    width: 100%;
    color: #fff;
    float: left;
    font-size: 11px;
    text-decoration: none;
}
.suquare-lists ul li h2 {
    text-align: center;
    color: #fff;
    width: 80%;
    margin: 10px 10%;
    color: center;
    font-size: 19px;
}
.suquare-lists ul li .buttons {
    width: 100%;
    position: absolute;
    bottom: 0;
}
.suquare-lists ul li .buttons a {
    width: 50%;
    float: left;
    padding: 20px;
    opacity: 0.9;
    margin: 0;
}
.suquare-lists ul li .buttons .interview {
    background-color: #0a2a54;
}
.suquare-lists ul li .buttons .interview:before {
    content: "";
    width: 18px;
    height: 18px;
    background-image: url("./images/compornents/interview.png");
    background-position: center;
    background-repeat: no-repeat;
    float: left;
}
.suquare-lists ul li .buttons .report {
    background-color: #114588;
}
.suquare-lists ul li .buttons .report:before {
    content: "";
    width: 18px;
    height: 18px;
    background-image: url("./images/compornents/report.png");
    background-position: center;
    background-repeat: no-repeat;
    float: left;
}
.comp-venture::after {
  content : '';
  display : block;
  clear : both;
}
.comp-venture article:nth-child(odd) {
    background-color: #0a2a54;
}
.comp-venture article:nth-child(even) {
    background-color: #114588;
}
.comp-venture article:last-child { margin-bottom : 100px; }

@media all and (max-width: 768px) {
.comp-feature {
    margin-top: 150px;
}
.comp-feature ul {
    display: block;
    overflow: hidden;
}
.comp-feature li {
    width: 50%;
    float: left;
    display: block;
    height: 330px;
}
.comp-feature li:nth-child(2) {
    border: none;
}
.suquare-lists ul li {
    width: 50%;
}
}

@media all and (max-width: 480px) {
.comp-feature {
    margin-top: 150px;
}
.comp-feature ul {
    display: block;
}
.comp-feature li {
    width: 100%;
    float: left;
    display: block;
    height: auto;
    border: none;
}
.entry-list-content .swiper-wrapper li.swiper-slide {
    padding: 40px 20px;
}
.suquare-lists ul li {
    width: 100%;
}
.comp-conpany .project-icons {
    text-align: center;
    width: 100%;
    float: left;
    margin: 38px 0 60px;
}
.comp-conpany .project-icons ul {
    margin: 0 auto;
    width: 280px;
}
.comp-conpany .project-icons ul li {
    width: 80px;
    text-align: center;
    float: left;
    margin-left: 20px;
}
.comp-conpany .project-icons ul li:nth-child(1) {
    margin-left: 0;
}
.comp-conpany .project-icons ul li img {
    width: 30px;
    height: 30px;
}
.comp-conpany .project-icons ul li p {
    font-size: 10px;
}
}
a .detail {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    -webkit-transform: rotateZ(0deg);
    transform: rotateZ(0deg);
    margin: 0;
    padding: 0;
}
a .detail:hover {
    -webkit-transform: rotateZ(360deg);
    transform: rotateZ(360deg);
}
.product-header {
    background-image: url("./images/product/header.png");
}
.products-block {
    position: relative;
    margin-top: 100px;
    overflow: hidden;
}
.products-block .product-container {
    overflow: hidden;
}
.products-block .product-container .swiper-button-prev {
    background-image: url("./images/ui/prev_black.png");
    width: 50px;
    height: 24px;
    background-size: 50px 24px;
}
.products-block .product-container .swiper-button-next {
    background-image: url("./images/ui/next_black.png");
    width: 50px;
    height: 24px;
    background-size: 50px 24px;
}
#product-lists .product-categories {
    width: 100%;
    float: left;
    background-image: url("./images/product/cat-bg.png");
    background-size: 100% auto;
    background-color: #041020;
}
#product-lists .product-categories .product-icons {
    text-align: center;
    width: 100%;
    float: left;
    margin: 38px 0 60px;
}
#product-lists .product-categories .product-icons ul {
    margin: 0 auto;
    width: 850px;
}
#product-lists .product-categories .product-icons ul li {
    width: 100px;
    text-align: center;
    float: left;
    margin-left: 50px;
}
#product-lists .product-categories .product-icons ul li:nth-child(1) {
    margin-left: 0;
}
#product-lists .product-categories .product-icons ul li p {
    font-size: 12px;
    margin: 0;
    color: #fff;
}
#product-lists .product-categories .product-icons ul li img {
    margin-top: 30px;
    margin-left: 20px;
}
#product-lists .product-categories .product-icons ul li .count {
    width: 20px;
    height: 20px;
    float: right;
    background-color: #165dba;
    border-radius: 10px;
    font-size: 11px;
    text-align: color;
    color: #fff;
    padding-top: 2px;
}
#product-lists .product-categories .product-icons ul li p.text {
    font-size: 12px;
    text-align: center;
    margin: 5px 0 0;
    color: #fff;
}
#cosmode {
    margin-top: 200px;
    width: 100%;
}
#cosmode h2 {
    font-size: 36px;
    line-height: 1.8;
    letter-spacing: 0.9px;
    margin-top: 0;
}
#cosmode hr {
    width: 60px;
    float: left;
}
#cosmode p {
    width: 100%;
    float: left;
    font-size: 15px;
    line-height: 2.1;
    letter-spacing: 0.8px;
}
#attachment {
    width: 100%;
    margin-top: 150px;
}
#attachment h3 {
    text-align: center;
    font-size: 24px;
    margin-top: 8px;
    margin-bottom: 55px;
}
#attachment h6 {
    text-align: center;
    font-size: 14px;
    margin-bottom: 0;
}
#attachment .dp-table {
    display: table;
    table-layout: fixed;
    width: 100%;
}
#attachment .dp-table li.atac-list {
    width: 33.333333%;
    width: 33.333333vw;
    width: calc(100% / 3);
    display: table-cell;
    position: relative;
    border-right: 1px solid #ccc;
}
#attachment .dp-table li.atac-list:nth-child(3n) {
    border: none;
}
#attachment .dp-table li.atac-list .atac-head {
    padding: 30px 40px;
    width: 100%;
    position: relative;
    background-color: #041020;
    overflow: hidden;
}
#attachment .dp-table li.atac-list .atac-head .listZoom {
    position: absolute;
    width: 100%;
    height: 100%;
    left: 0px;
    top: 0px;
    z-index: 0;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center;
}
#attachment .dp-table li.atac-list .atac-head h6 {
    text-align: left;
    font-size: 11px;
    color: #fff;
    margin-top: 0;
}
#attachment .dp-table li.atac-list .atac-head h2 {
    /*height: 62px;*/
    height: 84px;
    vertical-align: middle;
    display: table-cell;
    font-size: 18px;
    text-align: left;
    color: #fff;
    margin-top: 5px;
    margin-bottom: 0;
}
#attachment .dp-table li.atac-list .atac-head a img, #attachment .dp-table li.atac-list .atac-head span img {
    position: absolute;
    right: 30px;
    top: 50%;
    width: 23px;
    height: 23px;
    margin-top: -11px;
}
#attachment .dp-table li.atac-list .atac-head h6, #attachment .dp-table li.atac-list .atac-head h2 {
    position: relative;
    z-index: 1;
}
#attachment .dp-table li.atac-list:hover .atac-head {
    background-size: 150% auto;
}
#attachment .dp-table li.atac-list .attc-cont {
    padding: 40px;
    position: relative;
}
#attachment .dp-table li.atac-list .attc-cont p {
    margin-bottom: 80px;
    font-size: 12px;
    line-height: 2;
    letter-spacing: 0.6px;
}
#attachment .dp-table li.atac-list .count {
    position: absolute;
    bottom: 30px;
    right: 30px;
    margin-bottom: 0;
    font-size: 11px;
}
#attachment .dp-table li.atac-list .count span {
    font-size: 24px;
    font-weight: 700;
    margin-left: 10px;
}
.other-block {
    margin-top: 100px;
}
.other-block .suquare-lists {
    margin-top: 0;
}

@media all and (max-width: 1140px) {
#attachment {
    width: 100%;
    margin-top: 150px;
}
#attachment .dp-table {
    display: block;
}
#attachment .dp-table li.atac-list {
    width: 100%;
    display: block;
    position: relative;
    border-right: none;
}
#attachment .dp-table li.atac-list .atac-head {
    padding: 40px;
    width: 100%;
    position: relative;
    background-size: 100% auto;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: #041020;
}
#attachment .dp-table li.atac-list .atac-head h6 {
    text-align: left;
    font-size: 13px;
    color: #fff;
    margin-top: 0;
}
#attachment .dp-table li.atac-list .atac-head h2 {
    font-size: 23px;
    text-align: left;
    color: #fff;
    margin-top: 5px;
    margin-bottom: 0;
}
#attachment .dp-table li.atac-list .atac-head a img {
    position: absolute;
    right: 30px;
    top: 50%;
    width: 23px;
    height: 23px;
    margin-top: -11px;
}
}

@media all and (max-width: 768px) {
#attachment {
    width: 100%;
    margin-top: 150px;
}
#attachment h3 {
    text-align: center;
    font-size: 24px;
    margin-top: 8px;
    margin-bottom: 55px;
}
#attachment h6 {
    text-align: center;
    font-size: 14px;
    margin-bottom: 0;
}
#attachment .dp-table {
    display: block;
}
#attachment .dp-table li.atac-list {
    width: calc(100%);
    display: block;
    position: relative;
    border-right: none;
}
#attachment .dp-table li.atac-list .atac-head {
    padding: 40px;
    width: 100%;
    position: relative;
    background-size: 100% auto;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
    background-repeat: no-repeat;
    background-position: center center;
    background-color: #041020;
}
#attachment .dp-table li.atac-list .atac-head h6 {
    text-align: left;
    font-size: 13px;
    color: #fff;
    margin-top: 0;
}
#attachment .dp-table li.atac-list .atac-head h2 {
    font-size: 23px;
    text-align: left;
    color: #fff;
    margin-top: 5px;
    margin-bottom: 0;
}
#attachment .dp-table li.atac-list .atac-head a img {
    position: absolute;
    right: 30px;
    top: 50%;
    width: 23px;
    height: 23px;
    margin-top: -11px;
}
#attachment .dp-table li.atac-list .attc-cont {
    padding: 40px;
    position: relative;
}
#attachment .dp-table li.atac-list .attc-cont p {
    margin-bottom: 80px;
    font-size: 12px;
    line-height: 2;
    letter-spacing: 0.6px;
}
#attachment .dp-table li.atac-list .count {
    position: absolute;
    bottom: 30px;
    right: 30px;
    margin-bottom: 0;
    font-size: 11px;
}
#attachment .dp-table li.atac-list .count span {
    font-size: 24px;
    font-weight: 700;
    margin-left: 10px;
}
}

@media all and (max-width: 480px) {
#attachment {
    margin-top: 150px;
}
#attachment h3 {
    font-size: 24px;
}
#attachment h6 {
    font-size: 14px;
}
#attachment .dp-table {
    display: block;
}
#attachment .dp-table li.atac-list {
    width: 100%;
    border-right: none;
}
#attachment .dp-table li.atac-list .atac-head h6 {
    font-size: 13px;
}
#attachment .dp-table li.atac-list .atac-head h2 {
    font-size: 23px;
}
#attachment .dp-table li.atac-list .attc-cont p {
    font-size: 12px;
}
#attachment .dp-table li.atac-list .count {
    font-size: 11px;
}
#attachment .dp-table li.atac-list .count span {
    font-size: 24px;
}
#cosmode {
    margin-top: 200px;
    width: 100%;
}
#cosmode .sub-container h2 {
    font-size: 25px;
    line-height: 1.8;
    letter-spacing: 0.9px;
    margin-top: 0;
    margin-bottom: 20px;
}
#cosmode .sub-container h2:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background-color: #040420;
    margin-top: 30px;
}
#cosmode .sub-container h6 {
    font-weight: 13px;
}
#cosmode .sub-container .col-6 {
    width: 100%;
}
}
.company-info {
    margin-top: 100px;
}
.company-info h2 {
    font-size: 23px;
    letter-spacing: 1.1px;
    color: #041020;
    margin-bottom: 35px;
}
.company-info table {
    width: 100%;
    float: left;
}
.company-info table tr {
    border-top: 1px solid #ccc;
}
.company-info table tr:last-child {
    border-bottom: 1px solid #ccc;
}
.company-info table tr th {
    padding: 20px 0;
    text-align: left;
    font-size: 13px;
    line-height: 1.8;
    letter-spacing: 0.6px;
    margin: 10px 0;
    float: left;
    font-weight: 300;
}
.company-info table tr th:nth-child(1) {
    width: 150px;
    border-right: 1px solid #ccc;
}
.company-info table tr th:nth-child(2) {
    padding-left: 30px;
}
.page-intro.product-intro {
    margin-bottom: 110px;
}

@media all and (max-width: 1050px) {
.product-middle .sub-container {
    padding: 0 20px;
}
}

@media all and (max-width: 768px) {
.product-intro .col-7 {
    width: 100%;
}
.product-intro .col-5 {
    width: 100%;
}
}
.project-block {
    margin-top: 100px;
}
.project-block .project-block-container {
    position: relative;
    width: 680px;
    margin: 0 auto;
    height: 500px;
}
.project-block .project-block-container .machine-background-image {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
}
.project-block .project-block-container .machine-background-image img {
    width: 100%;
    height: auto;
}
.project-block .project-block-container .pl {
    position: relative;
}
.project-block .project-block-container .project-block-comment {
    position: absolute;
    z-index: 1;
}
.project-block .project-block-container .project-block-comment:hover {
    z-index: 10;
}
.project-block .project-block-container .project-block-comment:hover .comment {
    opacity: 1;
    display: block;
}
.project-block .project-block-container .project-block-comment:hover .number {
    -webkit-transform: scale(1.5);
    transform: scale(1.5);
    background-color: #114588;
}
.project-block .project-block-container .project-block-comment .number {
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background-color: #0a2a54;
    float: left;
    -webkit-transform: scale(1);
    transform: scale(1);
    -webkit-transition: -webkit-transform 0.1s linear;
    transition: -webkit-transform 0.1s linear;
    transition: transform 0.1s linear;
    transition: transform 0.1s linear, -webkit-transform 0.1s linear;
    line-height: 30px;
    text-align: center;
    color: #fff;
    font-weight: 800;
    font-family: 'din_regular';
    font-size: 12px;
}
.project-block .project-block-container .project-block-comment .comment {
    -webkit-transition: -webkit-transform 0.1s linear;
    transition: -webkit-transform 0.1s linear;
    transition: transform 0.1s linear;
    transition: transform 0.1s linear, -webkit-transform 0.1s linear;
    padding: 20px 20px;
    position: absolute;
    background: #eee;
    margin: 0 0 0 45px;
    left: 0;
    top: 0;
    opacity: 0;
    display: none;
    width: 220px;  /*200px 180608変更*/
}
.project-block .project-block-container .project-block-comment .comment strong {
    font-size: 15px;
    font-weight: 800;
    margin-bottom: 10px;
    width: 100%;
    float: left;
}
.project-block .project-block-container .project-block-comment .comment span {
    width: 100%;
    font-size: 12px;
    float: left;
}
.pj-intro .subhead:after {
    display: none;
}
.project-comments {
    margin-top: 80px;
    display: none;
}
.company-links {
    margin-top: 150px;
}
.company-links h6 {
    font-size: 16px;
    width: 100%;
    text-align: center;
    margin: 0;
    font-family: 'klavika_regular';
}
.company-links h2 {
    font-size: 30px;
    width: 100%;
    text-align: center;
    margin-top: 5px;
}

@media all and (max-width: 768px) {
.project-block {
    margin-top: 100px;
}
.project-block .project-block-container {
    width: 100%;
}
.project-block .project-block-container .machine-background-image {
    padding: 50px;
}
.project-block .project-block-container .project-block-comment:hover .comment {
    opacity: 0;
}
.project-block .project-block-container .project-block-comment:hover .number {
    -webkit-transform: scale(1);
    transform: scale(1);
    background-color: #0a2a54;
}
.project-comments {
    display: block;
    margin-top: 100px;
}
.project-comments .row .col-6 {
    padding: 0 80px;
}
.project-comments .row .col-6 .project-comment-list {
    margin-bottom: 50px;
    width: 100%;
    font-family: 'din_regular';
}
.project-comments .row .col-6 .project-comment-list strong {
    font-size: 18px;
}
.project-comments .row .col-6 .project-comment-list p {
    font-size: 15px;
}
}

@media all and (max-width: 480px) {
.project-block {
    margin-top: 100px;
}
.project-block .project-block-container .machine-background-image {
    padding: 20px;
}
.project-block .project-block-container .project-block-comment .number {
    width: 24px;
    height: 24px;
    line-height: 24px;
    font-size: 10px;
}
.project-comments {
    display: block;
    margin-top: 100px;
}
.project-comments .row .col-6 {
    padding: 0 20px;
    width: 100%;
}
.project-comments .row .col-6 .project-comment-list {
    text-align: center;
    margin-bottom: 30px;
}
.project-comments .row .col-6 .project-comment-list p {
    margin-top: 5px;
}
}
.head-kv.topics-header {
    background-image: url("./images/hero/topics-head.png");
}
a .detail {
    -webkit-transition: 0.2s;
    transition: 0.2s;
    -webkit-transform: rotateZ(0deg);
    transform: rotateZ(0deg);
    margin: 0;
    padding: 0;
}
a .detail:hover {
    -webkit-transform: rotateZ(360deg);
    transform: rotateZ(360deg);
}
header.product-header {
    background-color: #041020;
    background-image: url("./images/product/header.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
    position: relative;
}
#topic-lists {
    overflow: hidden;
}
.entry-list {
    position: relative;
    background-color: #041020;
}
.entry-list.koubo {
    background-color: #165dba !important;
}
.entry-list.news {
    background-color: #0a2a54 !important;
}
.entry-list.event {
    background-color: #114588 !important;
}
.entry-list .tag.topic-tag {
    margin-top: 0px;
}
.entry-list .detail {
    position: absolute;
    right: 30px;
    bottom: 30px;
}
.entry-topic-content {
    padding: 70px 50px;
}
#infscr-loading {
    margin: 0 auto;
    text-align: center;
    background-color: #fff;
    display: block;
}
#infscr-loading .load-block {
    display: inline-block;
    padding: 20px 0;
    width: 200px;
}
#infscr-loading img {
    float: left;
    margin-right: 20px;
    -webkit-animation: loadspin 1s linear infinite;
    animation: loadspin 1s linear infinite;
}
#infscr-loading p {
    color: #ccc;
    font-size: 18px;
    font-weight: bold;
    float: left;
    margin: 0;
    margin-top: 5px;
}
@-webkit-keyframes loadspin {
 0% {
 -webkit-transform: rotate(0deg);
}
 100% {
 -webkit-transform: rotate(360deg);
}
}
.topics-cat-block {
    width: 100%;
    text-align: center;
    padding: 80px 0;
    letter-spacing: -0.4em;
}
.topics-cat-block ul li {
    display: inline-block;
    height: 52px;
    oveflow: hidden;
}
.topics-cat-block ul li a {
    font-size: 16px;
    color: #fff;
    letter-spacing: normal;
    padding: 15px 50px;
    float: left;
}
.topics-cat-block ul li:nth-child(1) {
    background-color: #041121;
}
.topics-cat-block ul li:nth-child(2) {
    background-color: #0a2a54;
}
.topics-cat-block ul li:nth-child(3) {
    background-color: #114588;
}
.topics-cat-block ul li:nth-child(4) {
    background-color: #165dba;
}

@media all and (max-width: 768px) {
.entry-list-thum {
    display: none;
}
.entry-list-content {
    width: 100%;
    height: auto;
}
}

@media all and (max-width: 768px) {
.entry-list-content {
    padding: 30px 20px;
}
.topics-cat-block {
    display: none;
}
}
@-webkit-keyframes loadspin {
 0% {
 -webkit-transform: rotate(0deg);
 transform: rotate(0deg);
}
 100% {
 -webkit-transform: rotate(360deg);
 transform: rotate(360deg);
}
}
@keyframes loadspin {
 0% {
 -webkit-transform: rotate(0deg);
 transform: rotate(0deg);
}
 100% {
 -webkit-transform: rotate(360deg);
 transform: rotate(360deg);
}
}
.single-topic-block {
    margin-bottom: 150px;
    margin-top: 80px;
}
.single-topic-block .topic-time {
    font-size: 16px;
    margin-bottom: 10px;
    display: inline-block;
    vertical-align: middle;
}
.single-topic-block .topic-time a {
    color: #165dba;
    margin-left: 10px;
}
.single-topic-block .sns-share-list.topic-sns-head {
    font-size: 16px;
    display: inline-block;
    vertical-align: middle;
    line-height: 16px;
    margin: 1em 0 10px 40px;
}
.single-topic-block .sns-share-list.topic-sns-head .sns-share-item {
    font-size: 0;
    margin-left: 10px;
}
.single-topic-block .sns-share-list.topic-sns-head .sns-share-item .sns-share-btn {
    width: 30px;
    height: 30px;
    box-sizing: border-box;
}
.single-topic-block .sns-share-list.topic-sns-head .sns-share-item .sns-share-btn.fb::after {
    width: 8px;
    height: 15px;
    margin: -7.5px 0 0 -4px;
}
.single-topic-block .sns-share-list.topic-sns-head .sns-share-item .sns-share-btn.tw::after {
    width: 14px;
    height: 11px;
    margin: -5.5px 0 0 -7px;
}
.single-topic-block .sns-share-list.topic-sns-foot {
    font-size: 0;
    display: block;
    vertical-align: middle;
    line-height: 16px;
    margin: 10px auto 10px;
    text-align: center;
}
.single-topic-block .sns-share-list.topic-sns-foot .sns-share-item {
    font-size: 0;
    margin-left: 50px;
}
.single-topic-block .sns-share-list.topic-sns-foot .sns-share-item .sns-share-btn {
    width: 56px;
    height: 56px;
    box-sizing: border-box;
    border-width: 2px;
}
.single-topic-block .sns-share-list.topic-sns-foot .sns-share-item .sns-share-btn.fb::after {
    width: 15px;
    height: 28px;
    margin: -14px 0 0 -7.5px;
}
.single-topic-block .sns-share-list.topic-sns-foot .sns-share-item .sns-share-btn.tw::after {
    width: 27px;
    height: 21px;
    margin: -10.5px 0 0 -13.5px;
}
.single-topic-block .topic-title {
    font-size: 30px;
    margin-bottom: 50px;
}
.single-topic-block .single-topic-content {
    font-size: 14px;
    line-height: 2.1;
    letter-spacing: 0.8px;
}
.single-topic-block .single-topic-content img {
    margin-bottom: 50px;
}
.single-topic-block .topic-tags {
    margin-top: 50px;
}
.latest-articles {
    margin-top: 110px;
}
.latest-articles .swiper-slide {
    background: #fff;
}
.latest-articles .latest-head {
    padding: 20px 0;
    width: 100%;
    float: left;
}
.latest-articles .latest-head .latest-article-title {
    font-size: 24px;
    float: left;
    margin: 0;
}
.latest-articles .latest-head .latest-pagenation {
    float: right;
    vertical-align: 0%;
    margin-top: 10px;
}
.latest-articles .latest-head .latest-pagenation li {
    float: left;
    width: auto;
    font-size: 13px;
    border: none;
    padding: 0 10px;
    cursor: pointer;
}
.latest-articles .latest-head .latest-pagenation li:before {
    content: "/";
    margin-right: 10px;
}
.latest-articles ul li {
    border-bottom: 1px solid #ccc;
    padding: 20px 0;
}
.latest-articles ul li:first-child {
    border-top: 1px solid #ccc;
}
.latest-articles ul li .time {
    font-size: 12px;
}
.latest-articles ul li .title {
    font-size: 15px;
    font-weight: bold;
}
.latest-articles ul li .excerpt {
    font-size: 12px;
}
.topic-pagenation {
    width: 100%;
    height: 80px;
    border-top: 1px solid #ccc;
}
.topic-pagenation .prev-nav, .topic-pagenation .next-nav {
    width: 50%;
    float: left;
    margin: 0;
    height: 80px;
    vertical-align: middle;
    position: relative;
    border-bottom: 1px solid #ccc;
    background: #fff;
}
.topic-pagenation .prev-nav {
    border-right: 1px solid #ccc;
}
.topic-pagenation .next-nav span {
    position: absolute;
    right: 50px;
    height: 100%;
    padding-left: 25px;
}
.topic-pagenation .prev-nav a, .topic-pagenation .next-nav a {
    height: 100%;
    width: 100%;
    line-height: 1.5;
    display: block;
    float: left;
    font-size: 13px;
    overflow: hidden;
    vertical-align: middle;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center; /* 縦方向中央揃え（Safari用） */
    align-items: center;
}
.topic-pagenation .prev-nav {
    padding-left: 100px;
    padding-right: 25px;
}
.topic-pagenation .prev-nav a:before {
    content: "";
    position: absolute;
    top: 0%;
    left: 60px;
    width: 25px;
    height: 100%;
    background-image: url("./images/ui/prev.png");
    background-repeat: no-repeat;
    background-position: center center;
}
.topic-pagenation .next-nav {
    text-align: right;
    padding-right: 100px;
    padding-left: 25px;
}
.topic-pagenation .next-nav a:before {
    content: "";
    position: absolute;
    top: 0%;
    right: 0px;
    width: 25px;
    height: 100%;
    background-image: url("./images/ui/next.png");
    background-repeat: no-repeat;
    background-position: center center;
}
.topic-pagenation .next-nav a {
    padding-right: 40px;
}
.topic-pagenation .archive-nav {
    height: 100%;
    width: 130px;
    clear: both;
    margin: 0 auto;
    line-height: 80px;
    text-align: center;
    background-image: url("./images/ui/lists.png");
    background-repeat: no-repeat;
    background-position: 0 center;
}
.topic-pagenation .archive-nav a {
    height: 100%;
    width: 100%;
    line-height: 80px;
    display: block;
    float: left;
}

@media all and (max-width: 768px) {
.topic-bx br {
    display: block;
}
.single-topic-block .topic-title {
    clear: both;
}
.single-topic-block .sns-share-list.topic-sns-head {
    float: right;
    margin: 12px 0 10px 10px;
}
.single-topic-block .sns-share-list.topic-sns-head .sns-share-item {
    margin-left: 15px;
}
.single-topic-block .sns-share-list.topic-sns-head .sns-share-item .sns-share-btn {
    width: 32px;
    height: 32px;
}
.single-topic-block .sns-share-list.topic-sns-head .sns-share-item .sns-share-btn.fb::after {
    width: 8.5px;
    height: 16px;
    margin: -8px 0 0 -4.25px;
}
.single-topic-block .sns-share-list.topic-sns-head .sns-share-item .sns-share-btn.tw::after {
    width: 15px;
    height: 12px;
    margin: -6px 0 0 -7.5px;
}
.single-topic-block .sns-share-list.topic-sns-foot {
    font-size: 0;
    display: block;
    line-height: 16px;
    margin: 10px auto 10px;
    text-align: center;
}
.single-topic-block .sns-share-list.topic-sns-foot .sns-share-item {
    font-size: 0;
    margin-left: 40px;
}
.single-topic-block .sns-share-list.topic-sns-foot .sns-share-item .sns-share-btn {
    width: 45px;
    height: 45px;
    box-sizing: border-box;
    border-width: 2px;
}
.single-topic-block .sns-share-list.topic-sns-foot .sns-share-item .sns-share-btn.fb::after {
    width: 12px;
    height: 22.5px;
    margin: -11.25px 0 0 -6px;
}
.single-topic-block .sns-share-list.topic-sns-foot .sns-share-item .sns-share-btn.tw::after {
    width: 20.5px;
    height: 16.5px;
    margin: -8.25px 0 0 -10.25px;
}
.topic-pagenation {
    width: 100%;
    height: auto;
    border-top: 1px solid #ccc;
    clear: both;
}
.topic-pagenation .archive-nav {
    height: 100%;
    width: 100%;
    line-height: 80px;
}
.topic-pagenation .archive-nav {
    height: 100%;
    width: 100%;
    clear: both;
    margin: 0 auto;
    line-height: 80px;
    text-align: center;
    background-image: none;
}
.topic-pagenation .prev-nav {
    padding-left: 0;
    padding-right: 0;
}
.topic-pagenation .prev-nav a:before {
    left: 25px;
}
.topic-pagenation .prev-nav a {
    padding-left: 60px;
    padding-right: 45px;
}
.topic-pagenation .next-nav {
    text-align: right;
    padding-right: 25px;
    padding-left: 25px;
}
.topic-pagenation .next-nav a:before {
    content: "";
    position: absolute;
    top: 0%;
    right: 25px;
    width: 25px;
    height: 100%;
    background-image: url("./images/ui/next.png");
    background-repeat: no-repeat;
    background-position: center center;
}
.topic-pagenation .next-nav a {
    padding-right: 55px;
    padding-left: 50px;
}
.topic-pagenation .next-nav span {
    position: absolute;
    right: 0px;
    height: 100%;
    padding-left: 0;
}
.topic-pagenation .archive-nav a {
    height: 100%;
    width: 100%;
    line-height: 80px;
    display: block;
    float: none;
    text-align: center;
}
.topic-pagenation .archive-nav a span {
    background: url("./images/ui/lists.png") no-repeat;
    padding-left: 30px;
}
}

@media all and (max-width: 480px) {
.topic-pagenation .prev-nav {
    border-right: none;
}
.topic-pagenation .prev-nav, .topic-pagenation .next-nav {
    float: none;
    width: 100%;
}
.archive-topics.topic-pagenation .prev-nav, .archive-topics.topic-pagenation .next-nav {
    float: left;
    width: 50%;
}
.archive-topics.topic-pagenation .prev-nav {
    border-right: 1px solid #ccc;
}
}

@media all and (max-width: 768px) {
.col-8.single-topic-block {
    width: 100%;
}
.col-4.latest-articles {
    width: 100%;
    margin-bottom: 50px;
    margin-top: 0px;
}
}
.left-image {
    padding-left: 0 !important;
    width: 100%;
    height: auto;
}
.right-image {
    padding-right: 0 !important;
    width: 100%;
    height: auto;
}
.center-image {
    padding-left: 15px !important;
    padding-right: 15px !important;
    width: 100%;
    height: auto;
}
.full-image {
    padding-left: 0px !important;
    padding-right: 0px !important;
    width: 100%;
    height: auto;
}
.threeoftwo-image {
    padding-left: 0 !important;
    padding-right: 0px !important;
    width: 100%;
    height: auto;
}
p.image-caption {
    font-size: 11px;
    line-height: 1.8;
    letter-spacing: 0.6px;
    margin: 10px 0 0;
}
.with-image-caption img {
    float: left;
    margin: 0 20px 20px 0;
}
.cp-intro .full-width {
    display: block;
    width: 100%;
    overflow: hidden;
}
.space-table {
    margin-top: 100px;
}
.space-table h2 {
    font-size: 23px;
    letter-spacing: 1.1px;
    color: #041020;
    margin-bottom: 35px;
}
.space-table table {
    width: 100%;
}
.space-table table tr {
    float: left;
    width: 100%;
    padding: 10px 0;
    border-top: 1px solid #ccc;
}
.space-table table tr:last-child {
    border-bottom: 1px solid #ccc;
}
.space-table table tr th {
    padding: 20px 0;
    text-align: left;
    font-size: 13px;
    line-height: 1.8;
    letter-spacing: 0.6px;
    float: none;
    font-weight: 300;
}
.space-table table tr th:nth-child(1) {
    width: 150px;
    padding-right: 20px;
    border-right: 1px solid #ccc;
}
.space-table table tr th:nth-child(2) {
    padding-left: 30px;
}

.open-labo-header.head-kv {
    background-image: url("./images/solutions/openlabo-head.png");
}
.open-labo-table {
    table-layout: fixed;
    width: 100%;
}
.open-labo-table th, .open-labo-table td {
    padding: 5px;
    border: 1px solid #ccc;
}
.no-example {
    margin-bottom: 120px;
}
.oib {
    width: 100%;
}
.oib .rib-image {
    width: 30%;
    float: left;
}
.oib .rib-image img {
    width: 100%;
    height: auto;
}
.oib .rib-content {
    width: 70%;
    float: left;
    padding: 0 30px;
    line-height: 2.1;
    letter-spacing: 0.8px;
    font-size: 13px;
}
.ol-intro-block {
    width: 100%;
    line-height: 2.1;
    letter-spacing: 0.8px;
    font-size: 13px;
    margin-top: 120px;
}
.ol-intro-block .col-4. img {
 width: 100%;
 height: auto;
}
.ol-intro-block .full-width {
    overflow: hidden;
}
.ol-intro-block .w100 {
    margin-bottom: 50px;
}
.ol-intro-block h1 {
    width: 100%;
}
.ol-intro-block p {
    width: 100%;
}
.ol-intro-block h3 {
    font-size: 24px;
    margin-top: 0;
}
.ol-intro-block .catch-title {
    font-size: 36px;
    margin-top: 0;
}
.ol-intro-block .catch-title:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background-color: #040420;
    margin-top: 30px;
}
.ol-intro-block .w60 {
    margin-bottom: 50px;
    float: left;
}
.ol-intro-block .blue-font {
    font-size: 24px;
    color: #041020;
    margin-top: 0;
    margin-bottom: 10px;
    line-height: 1;
}
.developper {
    margin-bottom: 100px;
}
.developper .developer-block {
    padding: 40px 0;
    border-top: 1px solid #ccc;
    float: left;
}
.developper .developer-block:last-child {
    border-bottom: 1px solid #ccc;
}
.developper .developer-block .col-6:nth-child(1) {
    padding-left: 0;
}
.developper .developer-block .col-6:nth-child(1) img {
    width: 136px;
    height: 136px;
    border-radius: 68px;
    float: left;
}
.developper .developer-block .col-6:nth-child(1) .name {
    margin-top: 55px;
    margin-left: 30px;
    font-size: 21px;
    float: left;
}
.developper .developer-block .col-6:nth-child(1) .name span {
    font-size: 13px;
}
.developper .developer-block .col-6:nth-child(2) {
    padding-right: 0;
}
.developper .developer-block .col-6:nth-child(2) table tr {
    padding: 10px 0;
    float: left;
    verticle-align: top;
}
.developper .developer-block .col-6:nth-child(2) table tr th {
    font-size: 11px;
    text-align: left;
    font-weight: 100;
    verticle-align: top;
}
.developper .developer-block .col-6:nth-child(2) table tr th:nth-child(1) {
    width: 70px;
}
.ol-detail-block {
    background-image: url("./images/hero/detail-back.png");
    padding: 50px 0;
}
.ol-detail-block .text-center {
    width: 100%;
    letter-spacing: 0.8px;
}
.ol-detail-block .text-center h6 {
    font-size: 13px;
    color: #fff;
}
.ol-detail-block .text-center h2 {
    font-size: 28px;
    color: #fff;
}
.ol-detail-block .detail-tables {
    padding: 0 20px;
}
.ol-detail-block .detail-tables .col-6 {
    padding: 0 20px;
}
.ol-detail-block .detail-tables .col-6 table {
    width: 100%;
    background-color: #fff;
}
.ol-detail-block .detail-tables .col-6 table tr {
    border-bottom: 1px solid #ccc;
}
.ol-detail-block .detail-tables .col-6 table tr:last-child {
    border: none;
}
.ol-detail-block .detail-tables .col-6 table tr th {
    padding: 40px 40px;
    text-align: left;
    font-size: 13px;
    font-weight: 100;
    letter-spacing: 0.8px;
    line-height: 1.6;
}
.ol-detail-block .detail-tables .col-6 table tr th:nth-child(1) {
    width: 220px;
    font-weight: 700;
}

@media all and (max-width: 768px) {
.developper .developer-block .col-6 {
    width: 100%;
}
.developper .developer-block .col-6:nth-child(1) {
    padding: 0;
    margin-bottom: 30px;
}
.developper .developer-block .col-6:nth-child(2) {
    padding: 0;
}
.ol-detail-block .detail-tables {
    padding: 0 20px;
}
.ol-detail-block .detail-tables .col-6 {
    width: 100%;
    padding: 0;
}
.ol-detail-block .detail-tables .col-6 table {
    width: 100%;
    background-color: #fff;
}
.ol-detail-block .detail-tables .col-6 table tr {
    border-bottom: 1px solid #ccc;
}
.ol-detail-block .detail-tables .col-6 table tr:last-child {
    border: none;
}
.ol-detail-block .detail-tables .col-6 table tr th {
    padding: 40px 40px;
    text-align: left;
    font-size: 13px;
    font-weight: 100;
    letter-spacing: 0.8px;
    line-height: 1.6;
}
.ol-detail-block .detail-tables .col-6 table tr th:nth-child(1) {
    width: 220px;
    font-weight: 700;
}
}

@media all and (max-width: 480px) {
.ol-intro-block .col-4 {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
}
.ol-intro-block .col-8 {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
    padding-bottom: 0;
}
.developper .developer-block .col-6:nth-child(1) {
    text-align: center;
}
.developper .developer-block .col-6:nth-child(1) img {
    float: none;
}
.developper .developer-block .col-6:nth-child(1) .name {
    margin-top: 20px;
    margin-left: 0px;
    width: 100%;
}
}
.satellite-header .head-kv {
    background-image: url("./images/solutions/satellite-head.png");
}
.satellite-links {
    display: flex;
    justify-content: space-between;
    max-width: 950px;
    margin: 0 auto -80px;
    padding: 0 5%;
}
.satellite-links .trans-border {
    flex-basis: 48%;
}
.satellite-links .trans-border a {
    float: none;
    width: 100%;
    height: 100%;
    padding-left: calc(20px + 40px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}
.satellite-links .trans-border a:before {
    float: none;
    margin-right: 0;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
}
#sl-scroll .que-head {
    margin-bottom: 10px;
}
#sl-scroll #launch h3 {
    font-size: 28px;
    margin-bottom: 10px;
}
#sl-scroll #launch strong {
    margin-top: 40px;
    width: 100%;
    float: left;
    margin-bottom: 20px;
}
#sl-scroll .space-table {
    margin-top: 20px;
}
#sl-scroll .space-table.half-table table tr th {
    float: left;
}
#sl-scroll .space-table.half-table table tr th:nth-child(1) {
    width: 40%;
    padding-right: 30px;
}
#sl-scroll .space-table.half-table table tr th:nth-child(2) {
    width: 60%;
}
.text-red {
    color: #f00 !important;
}
.text-blue {
    color: #00f;
}
.s-text {
    font-size: 18px;
}
.sl-intro-block {
    margin-top: 120px;
}
.sl-intro-block h2 {
    font-size: 24px;
    font-weight: 500;
    margin-bottom: 20px;
}
.sl-intro-block h2:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background-color: #040420;
    margin-top: 40px;
}
.sl-intro-block .sl-intro {
    width: 100%;
    overflow: hidden;
}
.sl-intro-block .sl-intro .col-6:nth-child(1) {
    padding-left: 0;
    padding-right: 20px;
}
.sl-intro-block .sl-intro .col-6:nth-child(1) img {
    width: 100%;
    height: auto;
}
.sl-intro-block .sl-intro .col-6:nth-child(2) {
    padding-left: 20px;
    padding-right: 0;
}
.sl-intro-block .sl-intro .col-6:nth-child(2) p {
    margin-top: 0;
    line-height: 2.1;
    letter-spacing: 0.8px;
}
.sl-intro-block .suporters {
    width: 100%;
    overflow: hidden;
}
.sl-intro-block .suporters .full-width {
    overflow: hidden;
    margin-top: 50px;
}
.sl-intro-block .suporters .full-width article {
    width: 50%;
    float: left;
}
.sl-intro-block .suporters .full-width article:nth-child(1) {
    padding-left: 0;
    padding-right: 20px;
}
.sl-intro-block .suporters .full-width article:nth-child(2) {
    padding-left: 20px;
    padding-right: 0;
}
.sl-intro-block .suporters .full-width article h3 {
    width: 100%;
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 25px;
}
.sl-intro-block .suporters .full-width article h3:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background-color: #040420;
    margin-top: 20px;
}
.sl-intro-block .suporters .full-width article img {
    width: 70px;
    hidden: auto;
    float: left;
}
.sl-intro-block .suporters .full-width article .suport-data {
    width: calc(100% - 70px);
    float: left;
    padding-left: 30px;
}
.sl-intro-block .suporters .full-width article .suport-data .blue-font {
    color: #165dba;
    font-size: 15px;
    margin-top: 0;
}

@media all and (max-width: 768px) {
.sl-intro-block {
    margin-top: 50px;
}
.sl-intro-block .suporters .full-width {
    margin-top: 0;
}
.sl-intro-block .suporters .full-width article {
    width: 100%;
    float: left;
    margin-top: 50px;
}
.sl-intro-block .suporters .full-width article:nth-child(1) {
    padding-left: 0;
    padding-right: 0px;
}
.sl-intro-block .suporters .full-width article:nth-child(2) {
    padding-left: 0px;
    padding-right: 0;
}
}

@media all and (max-width: 480px) {
.sl-intro-block .sl-intro .col-6 {
    width: 100%;
    padding-bottom: 0;
}
.sl-intro-block .sl-intro .col-6:nth-child(1) {
    padding-left: 0;
    padding-right: 0px;
}
.sl-intro-block .sl-intro .col-6:nth-child(2) {
    padding-left: 0px;
    padding-right: 0;
}
}
.spinoff-header .head-kv {
    background-image: url("./images/solutions/spinoff-head.png");
}
.scroll-contents article .sc-area-subhead {
    font-size: 21px;
    letter-spacing: 1px;
    color: #041020;
    width: 100%;
    margin: 70px 0 20px;
}
.scroll-contents article .sc-area-table {
    width: 100%;
    table-layout: fixed;
    font-weight: 100;
}
.scroll-contents article .sc-area-table thead {
    background-color: #eee;
    line-height: 4.1;
    letter-spacing: 0.6px;
    color: #114588;
    font-size: 13px;
}
.scroll-contents article .sc-area-table thead tr th {
    border-right: 1px solid #fff;
}
.scroll-contents article .sc-area-table thead tr th:last-child {
    border: none;
}
.scroll-contents article .sc-area-table tbody {
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: 0.7px;
    color: #041020;
}
.scroll-contents article .sc-area-table tbody tr {
    border-bottom: 1px solid #ccc;
}
.scroll-contents article .sc-area-table tbody tr th, .scroll-contents article .sc-area-table tbody tr td {
    padding: 25px 0;
    font-weight: 100;
}
.scroll-contents article .sc-area-table tbody tr th:nth-child(2), .scroll-contents article .sc-area-table tbody tr td:nth-child(2) {
    text-align: left;
    padding-left: 30px;
}
.scroll-contents #question h3.number-head {
    font-size: 28px;
    line-height: 2.1;
    letter-spacing: 0.7px;
    color: #040420;
    position: relative;
    width: 100%;
    margin-top: 80px;
    margin-bottom: 45px;
}
.scroll-contents #question h3.number-head span {
    position: absolute;
    top: -20px;
    left: -25px;
    font-size: 15px;
    letter-spacing: 0.8px;
    color: #041020;
}
.scroll-contents #question .row .col-6 {
    padding: 0;
}
.scroll-contents #question .row .col-6.pr-30 {
    padding-right: 30px;
}
.scroll-contents #question .row .col-6.pl-30 {
    padding-left: 30px;
}
.scroll-contents #question .row .col-6 .que-head {
    margin-top: 75px;
    margin-bottom: 25px;
    width: 100%;
}
.scroll-contents #question .row .col-6 .que-head:nth-child(1) {
    margin-top: 0;
}
.scroll-contents #question .row .col-6 .que-head:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background: #041020;
    margin-top: 25px;
}
.scroll-contents #question .row .col-6 p {
    font-size: 12px;
    line-height: 2.1;
    letter-spacing: 0.6px;
    color: #040420;
    margin-top: 25px;
    width: 100%;
}
.coordinator-block {
    margin-top: 50px;
}
.coordinator-block:first-child {
    margin-top: 0;
}
.coordinator-block img {
    width: 200px !important;
    float: left;
    margin-top: 0 !important;
    border-radius: 50%;
}
.coordinator-block .full-width {
    width: 100%;
    overflow: hidden;
}
.coordinator-block .coordinator-data {
    width: calc(100% - 240px);
    float: left;
    margin-left: 40px !important;
}
.coordinator-block .coordinator-data .name {
    font-size: 18px !important;
    margin-top: 10px;
    font-weight: 500;
    letter-spacing: 1px;
}
.coordinator-block .coordinator-data .name2 {
    font-size: 20px !important;
    margin-top: 5px;
    font-weight: 700;
    letter-spacing: 1px;
}/*spinoff特許コーディネーターのみ*/
#patent .text-center.full-width {
    margin-top: 50px;
}
#patent .text-center.full-width .trans-border {
    display: inline-block;
    float: none;
}

@media all and (max-width: 768px) {
.scroll-contents article .sc-area-table {
    width: 100%;
    oveflow-x: scroll;
}
.scroll-contents article .sc-area-table tbody {
    width: 700px;
}
}

@media all and (max-width: 480px) {
.coordinator-block {
    margin-top: 50px;
}
.coordinator-block:first-child {
    margin-top: 0;
}
.coordinator-block img {
    width: 200px !important;
    float: none;
    margin-top: 0 !important;
    border-radius: 50%;
    text-align: center;
}
.coordinator-block .full-width {
    text-align: center;
}
.coordinator-block .coordinator-data {
    width: 100%;
    float: left;
    margin-left: 0px !important;
}
.coordinator-block .coordinator-data .name {
    font-size: 18px !important;
    margin-top: 10px;
    font-weight: 500;
    letter-spacing: 1px;
}
}
.so-intro-block {
    width: 100%;
    line-height: 2.1;
    letter-spacing: 0.8px;
    font-size: 13px;
    margin-top: 120px;
    margin-bottom: 100px;
}
.so-intro-block h1 {
    width: 100%;
}
.so-intro-block h3 {
    width: 100%;
    margin-bottom: 10px;
    font-size: 24px;
}
.so-intro-block .so-use {
    font-size: 15px;
    font-weight: 100;
}
.so-intro-block p {
    width: 100%;
    margin-top: 0;
}
.so-intro-block .catch-title {
    font-size: 36px;
    line-height: 1.6;
    margin-top: 5px;
    margin-bottom: 10px;
}
.so-intro-block .catch-title:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background-color: #040420;
    margin-top: 40px;
}
.so-intro-block .col-4 {
    padding-left: 0;
    padding-top: 0;
}
.so-intro-block .col-8 {
    padding-right: 0;
    padding-top: 0;
}
.so-intro-block .space-table {
    margin-top: 50px;
}
.so-intro-block .full-width {
    width: 100%;
    margin-top: 30px;
    overflow: hidden;
}
.so-intro-block .full-width .trans-border {
    float: none;
    margin-top: 30px;
}
.so-intro-block .full-width .trans-border a span {
    color: #165dba;
}

@media all and (max-width: 480px) {
.so-intro-block .col-4 {
    padding-left: 0;
    padding-right: 0;
    width: 100%;
}
.so-intro-block .col-8 {
    padding-left: 0;
    padding-top: 0;
    width: 100%;
}
}
.facility-header .head-kv {
    background-image: url("./images/solutions/facility-head.png");
}
#guide .bottom-border {
    border-bottom: 1px solid #ccc;
    padding-bottom: 50px;
    width: 100%;
}
#guide .bottom-border .que-head {
    margin-bottom: 30px;
    margin-top: 55px;
}
#guide .bottom-border p {
    font-size: 14px;
    line-height: 2.1;
    letter-spacing: 0.7px;
    margin: 0;
}
.facility-nav {
    width: 100%;
    text-align: center;
    margin-bottom: 80px;
    letter-spacing: -0.5em;
    padding-top: 1px;
    margin-top: 50px;
    overflow: hidden;
}
.facility-nav ul {
    margin-left: 0.5px;
}
.facility-nav ul li {
    display: inline-block;
    padding: 10px 30px;
    border: 1px solid #ccc;
    letter-spacing: normal;
    float: left;
    margin-top: -1px;
    margin-left: -1px;
    cursor: pointer;
    -webkit-transition: all 0.5s ease;
    transition: all 0.5s ease;
}
.facility-nav ul li:hover {
    background: #0a2a54 !important;
    color: #fff !important;
}
.facility-nav ul li:first-child {
    border-left: 1px solid #ccc;
}
.facility-table {
    width: 100%;
    margin-top: 80px;
}
.facility-slider {
    overflow: hidden;
}
.facility-slider .swiper-slide {
    background: #fff;
}
.facility-slider .swiper-slide table {
    background: #fff !important;
}
.facility-slider .que-head {
    position: absolute;
    top: 0;
    left: 0;
    margin-top: 20px;
}
.faqSection a {
    border-bottom: 1px solid currentColor;
}
.faqSection a:hover {
    border-bottom-color: transparent;
}
.scroll-contents article .sc-area-table.facility-table tbody tr th:nth-child(2) {
    text-align: center;
}
.fc-intro-block {
    width: 100%;
    line-height: 2.1;
    letter-spacing: 0.8px;
    font-size: 13px;
    margin-top: 120px;
    margin-bottom: 100px;
}
.fc-intro-block h1 {
    width: 100%;
}
.fc-intro-block p {
    width: 100%;
    margin-top: 0;
}
.fc-intro-block .downloads {
    margin-top: 50px;
    margin-bottom: 70px;
}
.fc-intro-block .catch-title {
    font-size: 36px;
    line-height: 1.6;
    margin-bottom: 40px;
    margin-top: 0;
}
.fc-intro-block .catch-title:after {
    content: "";
    display: block;
    width: 60px;
    height: 1px;
    background: #041020;
    margin-top: 35px;
}
.fc-intro-block .company-info {
    margin-top: 70px;
    width: 100%;
}
.fc-intro-block .full-width {
    width: 100%;
    float: left;
    margin-top: 50px;
}
.fc-intro-block .full-width .trans-border {
    float: none;
}
.fc-intro-block .full-width .trans-border a span {
    color: #165dba;
}
.spacestation-header .head-kv {
    background-image: url("./images/solutions/spacestation-head.png");
}
.mb-100 {
    margin-bottom: 100px;
}
article#use .full-width, article#space-food .full-width {
    margin-top: 50px;
    width: 100%;
}
article#use .full-width .trans-border, article#use .full-width .trans-border_kibou, article#use .full-width .trans-border_mm, article#space-food .full-width .trans-border {
    float: none;
}
.ss-system {
    margin-bottom: 150px;
}
.other-organization-header.head-kv {
    background-image: url("./images/solutions/other-organization-head.png");
}
#special-system a {
    color: #165dba;
}
#special-system .load-buttons a {
    color: #041020;
}
.page-hero-links .head-kv {
    background-image: url("./images/pages/page-links.png");
}
.downloads-section {
    padding: 120px 0 200px;
    background-image: url("./images/links/distributions.png");
    background-size: cover;
    background-repeat: no-repeat;
    color: #fff;
}
.downloads-section .leadline span {
    background-color: #fff;
}
.downloads-section .dl-container {
    width: 1032px;
    max-width: 100%;
    margin: 0 auto;
}
.downloads-section .dl-container ul {
    overflow: hidden;
}
.downloads-section .dl-container ul li {
    float: left;
    position: relative;
    width: 50%;
    height: 300px;
    padding: 30px;
    background-color: #fff;
    color: #040420;
}
.downloads-section .dl-container ul li:nth-child(2n) {
    border-left: 1px solid #ccc;
}
.downloads-section .dl-container ul li:nth-child(n-2) {
    border-top: 1px solid #ccc;
}
.downloads-section .dl-container ul li:after {
    display: table;
    table-layout: fixed;
}
.downloads-section .dl-container ul li .dl-eyecatch {
    display: table-cell;
    width: 120px;
    padding: 15px;
}
.downloads-section .dl-container ul li .dl-eyecatch a {
    display: block;
}
.downloads-section .dl-container ul li .dl-info {
    display: table-cell;
    padding: 15px;
    vertical-align: top;
}
.downloads-section .dl-container ul li .dl-info .dl-info {
    padding: 15px;
}
.downloads-section .dl-container ul li .dl-info h3.dl-title {
    margin-top: 0;
    font-size: 18px;
}
.downloads-section .dl-container ul li .dl-info p.dl-caption {
    font-size: 12px;
    line-height: 2;
    height: 120px;
    overflow-y: scroll;
}
.downloads-section .dl-container ul li .dl-info .dl-link {
    position: absolute;
    right: 30px;
    bottom: 30px;
}
.downloads-section .dl-container ul li .dl-info .dl-link a:hover {
    text-decoration: none;
}
.downloads-section .dl-container ul li .dl-info .dl-link a span {
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    margin-right: 10px;
    font-size: 10px;
    line-height: 24px;
}
.downloads-section .dl-container ul li .dl-info .dl-link a button {
    width: 60px;
    height: 24px;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: transparent;
    border: none;
    background-image: url("./images/links/pdf-link.png");
    vertical-align: top;
}
.print-wrapper {
    text-align : right;
}
.print-wrapper a{
    display: inline-block;
    background: #114588;
    color: #fff;
    margin-bottom : 1em;
    padding: 8px 12px;
    transition: all .3s;
}
.print-wrapper a:hover {
    opacity : 0.85;
    transition: all .3s;
}
@media all and (max-width: 768px) {
.downloads-section {
    padding: 20px;
}
.downloads-section .dl-container ul li {
    float: none;
    width: 100%;
    padding: 15px;
}
.downloads-section .dl-container ul li .dl-eyecatch {
    width: 30%;
}
.downloads-section .dl-container ul li .dl-info {
    padding: 10px;
}
.downloads-section .dl-container ul li .dl-info h3.dl-title {
    font-size: 16px;
}
.downloads-section .dl-container ul li .dl-info .dl-caption {
    font-size: 8px;
}
}
.catch-block-faq {
    margin: 20px 0;
}
.scrollLinks {
    margin-bottom: 100px;
}
.scrollLinks:after {
    clear: both;
    content: '';
    display: table;
}
.scrollLinks .accordionLeft {
    float: left;
    width: 50%;
}
.scrollLinks .accordionRight {
    float: right;
    width: 50%;
}
.scrollLinks .accordionblock {
    padding: 30px 30px 0;
    color: #fff;
}
.scrollLinks .accordionblock p {
    display: none;
    margin: 0;
}
.scrollLinks .accordionblock.block-whole {
    background-color: #071d3b;
}
.scrollLinks .accordionblock.block-contact {
    background-color: #0a2954;
}
.scrollLinks .accordionblock.block-agree {
    background-color: #0d356e;
}
.scrollLinks .accordionblock.block-others {
    background-color: #134ea1;
}
.scrollLinks .accordionblock .navSetTitle {
    position: relative;
    margin: 0 0 30px;
    font-size: 16px;
    font-weight: normal;
    cursor: pointer;
    line-height: 20px;
}
.scrollLinks .accordionblock .navSetTitle span {
    display: inline-block;
    margin-right: 18px;
}
.scrollLinks .accordionblock .faqList {
    height: 0;
    padding: 0;
    font-weight: lighter;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
    overflow: hidden;
}
.scrollLinks .accordionblock .faqList ul li a {
    display: block;
    margin: 10px 0;
    font-weight: normal;
}
.scrollLinks .accordionblock.opened .faqList {
    -webkit-animation: accordion .3s ease;/*0.5*/
    animation: accordion .3s ease;
    height: auto;
    padding: 0 0 30px;
}
.faqSection {
    margin: 120px 0;
}
.faqSection .faqSectionTitle {
    position: relative;
    font-size: 28px;
}
.faqSection .faqSectionTitle span {
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    position: absolute;
    top: -10px;
    left: -20px;
    display: inline-block;
    font-size: 15px;
}
.faqSection .faqList ul {
    margin: 0 -30px;
    overflow: hidden;
}
.faqSection .faqList ul li {
    float: left;
    width: 50%;
    padding: 10px 30px;
}
.faqSection .faqList ul li h3 {
    position: relative;
    font-size: 18px;
}
.faqSection .faqList ul li h3:after {
    display: block;
    content: '';
    width: 60px;
    height: 1px;
    margin: 30px 0 20px;
    background-color: #000;
}

@media all and (max-width: 768px) {
.catch-block-faq {
    padding: 20px;
}
.faq-nav {
    display: none;
}
.faqSection {
    margin: 30px 0;
}
.faqSection .faqSectionTitle {
    font-size: 24px;
}
.faqSection .faqList ul li {
    float: none;
    width: 100%;
    padding: 10px 30px;
}
.faqSection .faqList ul li h3 {
    font-size: 16px;
}
.faqSection .faqList ul li h3:after {
    margin: 15px 0 10px;
}
.faqSection .faqList ul li p {
    font-size: 8px;
}
}
@-webkit-keyframes accordion {
 from {
 height: 0;
}
 to {
 height: auto;
}
}
@keyframes accordion {
 from {
 height: 0;
}
 to {
 height: auto;
}
}
.page-header-blank {
    background: #041020;
    background: -webkit-linear-gradient(45deg, #041020 0%, #0a2a54 100%);
    background: linear-gradient(45deg, #041020 0%, #0a2a54 100%);
}
.catch-block-static .subhead {
    float: left;
    margin-top: 0;
}
.catch-block-contact p a {
    color: link-blues;
}
.sitemap-body {
    margin: 120px 0;
}
.sitemap-body table {
    border: 0;
    table-layout: fixed;
    border-collapse: collapse;
    width: 100%;
}
.sitemap-body table tr td {
    padding: 0;
    border: 0;
}
.sitemap-body table tr td.lead {
    width: 44px;
    background-image: url("images/ui/lead.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 14px 1px;
}
.sitemap-body table tr td.leadblank {
    width: 44px;
}
.sitemap-body table tr td a {
    display: block;
    margin-top: -1px;
    padding: 22px 22px 22px 62px;
    border: 1px solid #ccc;
    background-image: url("images/ui/plus.png");
    background-repeat: no-repeat;
    background-position: 22px;
    background-size: 25px;
}
.sitemap-body table tr td a:hover {
    text-decoration: underline;
}
.sitemap-body table tr.space td {
    height: 50px;
}
.sitemap-body .sitemap_block {
    margin: 5px 0;
}
.sitemap-body .sitemap_block div a {
    display: block;
    margin-top: -1px;
    padding: 16px 16px 16px 48px;
    background-image: url("images/ui/plus.png");
    background-repeat: no-repeat;
    background-position: 16px;
    background-size: 16px;
    border: 1px solid #ccc;
}
.sitemap-body .sitemap_block div a:hover {
    text-decoration: underline;
}
.sitemap-body .sitemap_block div.children {
    padding: 5px 0;
}
.sitemap-body .sitemap_block div.children div {
    padding-left: 44px;
    background-image: url("images/ui/lead.png");
    background-repeat: no-repeat;
    background-position: top 25px left 10px;
    background-size: 14px 1px;
}

@media all and (max-width: 768px) {
.sitemap-body {
    margin: 60px 0;
}
}
/*exhibition*/
.exhibition-sec {
    width: 100%;
    margin-top: 130px;
}
.exhibition-sec:last-child {
    margin-bottom: 100px;
}
.exhibition-sec h6 {
    font-size: 13px;
    margin-top: 0;
    margin-bottom: 10px;
}
.exhibition-sec h1 {
    font-size: 34px;
    margin-top: 0;
}
.exhibition-sec .col-4 img {
    display: block;
    margin: 0 auto;
}
.exhibition-sec p {
    width: 100%;
    float: left;
    margin: 10px 0 40px 0;
    line-height: 2.1;
    letter-spacing: 0.8px;
    font-size: 14px;
}
.exhibition-block h3 {
    width: 100%;
    margin: 0 0 10px 0;
    font-size: 24px;
}
.exhibition-block h4 {
    font-size: 18px;
    letter-spacing: 0.5px;
    padding-top: 100px;
    margin-bottom: 0;
    display: block;
}
.exhibition-intro-block h3 {
    width: 100%;
    margin: 50px 0 10px 0;
    font-size: 24px;
}
.exhibition-intro-block p {
    font-size: 15px;
    line-height: 2.1;
    letter-spacing: 0.8px;
    width: 100%;
}
.exhibition-block-service { font-size: 16px; }
.exhibition-block-service h3,.exhibition-block-service h4,.exhibition-block-service h5 {
    font-weight: bold;
}
.exhibition-block-service h3{
    font-size: 20px;
    padding-top : 3em;
}
.exhibition-block-service h4{
    padding-top: 0;
}
.exhibition-block-service h5{
    font-size: 16px;
    padding-top: 0;
    margin: 10px 0 1.5em 0;
}
.exhibition-sec .exhibition-block-service p{
    float : none;
    margin: 10px 0 1.5em 0;
}
.exhibition-block-service li {
    line-height : 1.6;
    margin-bottom: 8px;
    padding-left: 1em;
    text-indent: -1em;
}
.exhibition-table-wrapper {
    width: 100%;
}
.exhibition-table-wrapper table {
    margin-bottom: 100px;
}
.exhibition-table-wrapper thead {
    background-color: #eee;
    line-height: 4.1;
    letter-spacing: 0.6px;
    color: #114588;
    font-size: 13px;
}
.exhibition-table-wrapper thead tr th {
    border-right: 1px solid #fff;
    padding: 0px 30px;
    text-align: left;
}
.exhibition-table-wrapper thead tr th:last-child {
    border: none;
}
.exhibition-table-wrapper tbody {
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: 0.7px;
    color: #041020;
}
.exhibition-table-wrapper tbody tr {
    border-top: 1px solid #ccc;
}
.exhibition-table-wrapper tbody tr:last-child {
    border-bottom: 1px solid #ccc;
}
.exhibition-table-wrapper tbody tr th, .exhibition-table-wrapper tbody tr td {
    padding: 25px 30px;
    font-weight: 100;
    text-align: left;
}
.exhibition-table-wrapper tbody tr th:nth-child(1), .exhibition-table-wrapper tbody tr td:nth-child(1) {
    text-align: left;
    width: 31%;
}
.exhibition-table-wrapper tbody tr th:nth-child(2), .exhibition-table-wrapper tbody tr td:nth-child(2) {
    text-align: left;
    width: 59%;
}
.exhibition-table-wrapper tbody tr th:nth-child(3), .exhibition-table-wrapper tbody tr td:nth-child(3) {
    width: 20%;
    text-align: center;
}
.exhibitors-list-link a {
    color: #0062cc;
    text-decoration: underline;
}

@media all and (max-width: 768px) {
.exhibition-intro-block p {
    font-size: 8px;
}
.exhibition-table-wrapper thead tr th, .exhibition-table-wrapper thead tr td {
    padding: 10px 15px;
    font-weight: 100;
    text-align: left;
}
.exhibition-table-wrapper tbody tr th:nth-child(1), .exhibition-table-wrapper tbody tr td:nth-child(1) {
    text-align: left;
    width: 20%;
}
.exhibition-table-wrapper tbody tr th:nth-child(2), .exhibition-table-wrapper tbody tr td:nth-child(2) {
    text-align: left;
    width: 55%;
}
.exhibition-table-wrapper tbody tr th:nth-child(3), .exhibition-table-wrapper tbody tr td:nth-child(3) {
    width: 25%;
    text-align: center;
}
}
.exhibition-table-wrapper a .load-label {
    font-size: 10px;
    padding: 2px 7px;
    margin-left: 20px;
    font-family: 'din_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
    font-size: 10px;
    color: #fff;
    width: 73px;
    text-align: center;
    display: inline-block;
}
.exhibition-table-wrapper a .load-label:before {
    content: "";
    width: 12px;
    height: 13px;
    margin-right: 5px;
    margin-top: 3px;
    background: url("./images/ui/icon-download.png") no-repeat center left;
    padding-left: 10px;
    float: left;
}
.sns-share-item {
    display: inline-block;
    vertical-align: middle;
}
.sns-share-item:first-child {
    margin-left: 0 !important;
}
.sns-share-item .sns-share-btn {
    border-radius: 50%;
    display: inline-block;
    position: relative;
    display: block;
    text-indent: -9999px;
    overflow: hidden;
    opacity: 1;
}
.sns-share-item .sns-share-btn::after {
    content: "";
    position: absolute;
    left: 50%;
    left: 50%;
    top: 50%;
}
.sns-share-item .sns-share-btn.fb {
    background-color: #3564a2;
}
.sns-share-item .sns-share-btn.fb::after {
    background: transparent no-repeat url("images/fb-icon.svg") center center;
    background-size: contain;
}
.sns-share-item .sns-share-btn.tw {
    background-color: #1da1f2;
}
.sns-share-item .sns-share-btn.tw::after {
    background: transparent no-repeat url("images/tw-icon.svg") center center;
    background-size: contain;
}
.sns-share-list.is-type-outline .sns-share-item .sns-share-btn {
    border-width: 1px;
    border-style: solid;
}
.sns-share-list.is-type-outline .sns-share-item .sns-share-btn.fb {
    border-color: #3564a2;
    background: #fff;
}
.sns-share-list.is-type-outline .sns-share-item .sns-share-btn.fb::after {
    background: transparent no-repeat url("images/topics/fb-color-icon.svg") center center;
    background-size: contain;
}
.sns-share-list.is-type-outline .sns-share-item .sns-share-btn.tw {
    border-color: #1da1f2;
    background: #fff;
}
.sns-share-list.is-type-outline .sns-share-item .sns-share-btn.tw::after {
    background: transparent no-repeat url("images/topics/tw-color-icon.svg") center center;
    background-size: contain;
}
/*J-SPARC*/
.jsparc-header .head-kv {
    background-image: url("images/solutions/jsparc-head.png");
}
.jsparc-feature {
    margin-top: 150px;
}
.jsparc-feature h3 {
    text-align: center;
    font-size: 24px;
    margin-top: 8px;
    margin-bottom: 55px;
}
.jsparc-feature h6 {
    text-align: center;
    font-size: 14px;
    margin-bottom: 0;
    font-family: 'klavika_regular';
}
.jsparc-feature-box {
    display: flex;
}
.jsparc-feature-box>li {
    padding: 0;
    border-right: 1px solid #fff;
    width: calc(100% / 3);
    box-sizing: border-box;
}
.jsparc-feature-box li:last-child {
    border: none;
}
.jsparc-feature-box li h4.ttl_js {
    height: 110px;
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #0a2a54;
    color: #fff;
    text-align: center;
    margin: 0;
    letter-spacing: 0.4px;
    font-size: 16px;
    box-sizing: border-box;
}
.jsparc-feature-box li .box_inner_js {
    font-size: 13px;
    line-height: 1.8;
    letter-spacing: 0.4px;
    padding: 8%;
}
.jsparc-feature-box li .box_inner_js ul {
    margin-bottom: 18px;
}
.jsparc-feature-box li .box_inner_js li:before {
    position: absolute;
    content: "●";
    top: 8px;
    left: 0;
    font-size: 8px;
    margin-top: -6px;
    color: #333
}
.jsparc-feature-box li .box_inner_js li {
    position: relative;
    font-size: 13px;
    margin-bottom: 10px;
    padding: 0 0 0 14px;
    font-weight: 600;
}

@media all and (max-width: 768px) {
.jsparc-feature-box {
    display: block;
}
.jsparc-feature-box>li {
    width: 100%;
}
}
.jsparc-feature .text-center.full-width {
    width: 100%;
    margin-top: 30px;
}
.jsparc-feature .text-center.full-width .trans-border {
    float: none;
    margin-top: 20px;
}
.jsparc-feature .text-center.full-width .trans-border:nth-child(1) {
    margin-right: 20px;
}
.jsparc-table-wrapper {
    width: 100%;
}
.jsparc-table-wrapper a {
    text-decoration: underline;
}
.jsparc-table-wrapper a:hover {
    text-decoration: none;
}
.jsparc-table-wrapper table {
    margin-bottom: 100px;
}
.jsparc-table-wrapper thead {
    background-color: #eee;
    line-height: 4.1;
    letter-spacing: 0.6px;
    color: #114588;
    font-size: 13px;
}
.jsparc-table-wrapper thead tr th {
    border-right: 1px solid #fff;
    padding: 0px 30px;
    text-align: left;
}
.jsparc-table-wrapper thead tr th:last-child {
    border: none;
}
.jsparc-table-wrapper tbody {
    font-size: 14px;
    line-height: 1.8;
    letter-spacing: 0.7px;
    color: #041020;
}
.jsparc-table-wrapper tbody tr {
    border-top: 1px solid #ccc;
}
.jsparc-table-wrapper tbody tr:last-child {
    border-bottom: 1px solid #ccc;
}
.jsparc-table-wrapper tbody tr th, .jsparc-table-wrapper tbody tr td {
    padding: 25px 30px;
    font-weight: 100;
    text-align: left;
}
.jsparc-table-wrapper tbody tr th:nth-child(1), .jsparc-table-wrapper tbody tr td:nth-child(1) {
    text-align: left;
    width: 15%;
}
.jsparc-table-wrapper tbody tr th:nth-child(2), .jsparc-table-wrapper tbody tr td:nth-child(2) {
    text-align: left;
    width: 85%;
}
.jsparc-table-wrapper a.out {
    position: relative;
    display: table-cell;
    width: 100%;
    height: 80px;
    padding: 0 25px 0 38px;
    text-overflow: ellipsis;
    line-height: 1.4;
    font-size: 14px;
    color: #040420;
    vertical-align: middle;
}
.jsparc-table-wrapper a.out:before {
    position: absolute;
    content: '';
    display: inline-block;
    top: 28px;
    left: 0px;
    width: 24px;
    height: 24px;
    margin-right: 14px;
    background-image: url("images/ui/link-square.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 17px;
    vertical-align: middle;
}
.jsparc-feature .link-block {
    margin: 0px;
}
/*　流用---------------------------------*/
li {
    list-style: none;
}
.text-center {
    text-align: center;
}
.bg-eee {
    background: #eee;
}
/*rs---------------------------------*/
.rs-intro-block {
    width: 100%;
    line-height: 2.1;
    letter-spacing: 0.8px;
    font-size: 13px;
}
.rs-intro-block p {
    margin: 0;
}
.rs-intro-block .link_underline {
    text-decoration: underline;
    color: blue;
}
.rs_dlbox {
    margin-bottom: 70px;
}
.rs_title02 {
    margin: 0 0 10px 0;
    font-size: 24px;
    font-weight: bold;
}
.rs_title03 {
    margin: 0;
    font-size: 18px;
}
.text15 {
    font-size: 15px;
}
/* /rs---------------------------------*/


/* partner---------------------------------*/

.sub-container_partner {
    width: 1050px;
    margin: 0 auto;
}

@media all and (max-width: 1050px) {
.sub-container_partner {
    width: 100%;
    padding: 0 15px;
    box-sizing: border-box;
}
}
.sub-container_partner h4 {
    font-size: 17px;/*font-weight: bold;*/
}
#reports {
    position: relative;
    top: -60px;
    display: block;
}
/* /partner---------------------------------*/


/* Links_page---------------------------------*/
.links-head-section {
    margin: 0 80px;
    padding: 15px 0;
}
.links-head-section .dl-container {
    width: 950px;
    max-width: 100%;
    margin: 0 auto;
    box-sizing: border-box;
}
.links-head-section .dl-container ul {
    width: 100%;
    display: table;
}
.links-head-section .dl-container ul li {
    width: 50%;
    padding: 30px;
    display: table-cell;
}
.links-head-section .dl-container ul li:nth-child(odd) {
    border: 1px solid #ccc;
}
.links-head-section .dl-container ul li:nth-child(even) {
    border-top: 1px solid #ccc;
    border-right: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
}
.links-head-section .dl-container ul li:after {
    display: table;
    table-layout: fixed;
}
.links-head-section .dl-container ul li h3.lh-title {
    margin-top: 0;
    font-size: 18px;
}
.links-head-section .dl-container ul li p.lh-caption {
    font-size: 12px;
    line-height: 2;
    overflow-y: scroll;
}

@media all and (max-width: 768px) {
.links-head-section {
    margin: 0 10px;
}
.links-head-section .dl-container ul li {
    width: 100%;
    padding: 15px;
    display: block;
}
.links-head-section .dl-container ul li:nth-child(even) {
    border-top: none;
    border-left: 1px solid #ccc;
}
.links-head-section .dl-container ul li h3.lh-title {
    font-size: 16px;
}
.links-head-section .dl-container ul li p.lh-caption {
    font-size: 8px;
}
}
/* /Links_page---------------------------------*/


/* Agreement_page---------------------------------*/
.agreement_contents {
    padding: 30px;
}
.agreement_contents h4 {
    padding: 20px;
    font-size: 20px;
    font-weight: bold;
    background: #eee;
    letter-spacing: 0.6px;
    color: #114588;
}
.agreement_contents h5 {
    margin: 0 0 15px 20px;
    font-size: 16px;
    font-weight: bold;
}
.agreement_contents>ul {
    margin: 0 0 40px 20px;
}
.agreement_contents>ul.last {
    margin-bottom: 60px;
}
.agreement_contents>ul.pbc {
    margin-left: 36px;
}
.agreement_contents>ul>li {
    margin-bottom: 15px;
}
.agreement_contents>ul>li:last-child {
    margin-bottom: 0px;
}
.agreement_contents ul li ul {
    margin: 0;
}
.agreement_contents>ul.pbc li ul {
    margin: 0 0 25px 14px;
}
.agreement_contents>ul>li>ul li {
    margin-bottom: 15px;
}
.agreement_contents ul li ul li a {
    margin-bottom: 15px;
}
.agreement_contents ul li a {
    margin-bottom: 15px;
    font-size: 14px;
    letter-spacing: 0.6px;
    color: #041020;
    text-decoration: underline;
}
.agreement_contents ul li a:hover {
    text-decoration: none;
}

@media all and (max-width: 768px) {
.agreement_contents h4, .agreement_contents ul li a {
    font-size: 13px;
}
}
/* Agreement_page---------------------------------*/

/*spacecompany---------------------------------*/
.catch-block_sc {
    margin-top: 150px;
}
.sc-intro {
    width: 100%;
    line-height: 2.1;
    letter-spacing: 0.8px;
    font-size: 13px;
}
.sc-intro p {
    font-size: 15px;
}
p.sc-image-caption {
    font-size: 11px;
    line-height: 1.8;
    letter-spacing: 0.6px;
    margin: 10px 0 0;
}
p.sc-lineup {
    line-height: 1.8;
    letter-spacing: 0.6px;
    margin: 0;
}
p.sc-lp-title {
    line-height: 1.8;
    letter-spacing: 0.6px;
    margin: 15px 0 0 0;
}
.sc_list > li {
    margin-left: 1em;
    text-indent: -1em;
    margin-bottom: 5px;
    font-size: 15px;
}
.sc_list > li::before {
    content : '・';
}
.sc_history > li {
    margin-left: 3.25em;
    text-indent: -3.25em;
    margin-bottom: 5px;
    font-size: 15px;
}
.sc_history02 > li {
    margin-left: 6.25em;
    text-indent: -6.25em;
    margin-bottom: 5px;
    font-size: 15px;
}

.sccomp-header {
    height: 530px;
    background-image: url("images/compornents/spacecompany_header.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
    position: relative;
}
.us-sccomp-header {
    height: 530px;
    background-image: url("images/compornents/us-company_header.jpg");
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
    position: relative;
}
.sccomp-header .head-title {
    position: absolute;
    bottom: 60px;
    left: 54px;
}
.sccomp-header .head-title * {
    color: #fff;
}
.sccomp-header .head-title h1 {
    font-size: 44px;
    margin-top: 0;
}

.sc-contact {
    text-align: center;
    font-size: 18px;
    margin: 50px 0 30px 0;
}
/*spacecompany---------------------------------*/

/* slick-------------------------------------- */
.slick-dotted.slick-slider {
    margin-bottom : 0 !important;
}
.slick-prev {
    left : 30px !important;
    z-index : 10 !important;
}
.slick-next {
    right : 30px !important;
    z-index : 10 !important;
}
.slick-dots {
    bottom : 20px !important;
}
.slick-dots li button:before {
    opacity : 0.4 !important;
    color : #fff !important;
}
.slick-dots li.slick-active button:before {
    opacity : 0.9 !important;
    color : #fff !important;
}

@media all and (max-width: 768px) {
.slick-dotted.slick-slider {
    margin-bottom : 30px !important;
}
.slick-prev {
    left : 15px !important;
}
.slick-next {
    right : 15px !important;
}
.slick-dots {
    bottom : -25px !important;
}
.slick-dots li button:before {
    opacity : 0.3 !important;
    color : #000 !important;
}
.slick-dots li.slick-active button:before {
    opacity : 0.6 !important;
    color : #000 !important;
}
}
/* /slick-------------------------------------- */


/* lauout--------------------------------- */

.indent {
    padding-left: 1em;
}
/* /lauout--------------------------------- */


/* font--------------------------------- */
/*size and more*/
.text9 {
    font-size: 9px;
}
.text10 {
    font-size: 10px;
}
.text11 {
    font-size: 11px;
}
.text12 {
    font-size: 12px;
}
.text13 {
    font-size: 13px;
}
.text14 {
    font-size: 14px;
}
.text15 {
    font-size: 15px;
}
.text16 {
    font-size: 16px;
}
.text17 {
    font-size: 17px;
}
.text18 {
    font-size: 18px;
}
.text19 {
    font-size: 19px;
}
.text20 {
    font-size: 20px;
}
.text22 {
    font-size: 22px;
}
.text23 {
    font-size: 23px;
}
.text26 {
    font-size: 26px;
}
.text32 {
    font-size: 32px !important;
}
.bold {
    font-weight: bold;
}
.u {
    text-decoration: underline;
}
/*style*/
.font_st_kla {
    font-family: 'klavika_regular', Helvetica !important;
}
/*Link*/
a.link_blue_underline {
    text-decoration: underline;
    color: #0000ff;
}
a.link_blue_underline:hover {
    text-decoration: none;
    opacity: 0.7;
}
/*外部ページへのリンク*/
a.outside {
    position: relative;
    display: table-cell;
    width: 100%;
    height: 80px;
    padding: 0 25px 0 68px;
    text-overflow: ellipsis;
    line-height: 1.4;
    font-size: 14px;
    color: #040420;
    vertical-align: middle;
}
a.outside:before {
    position: absolute;
    content: '';
    display: inline-block;
    top: 28px;
    left: 30px;
    width: 24px;
    height: 24px;
    margin-right: 14px;
    background-image: url("images/ui/link-square.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: 20px 17px;
    vertical-align: middle;
}
/*文字間*/
.ls-03 {
    letter-spacing: -0.3px;
}
.ls-04 {
    letter-spacing: -0.4px;
}
/* /font--------------------------------- */


/* width--------------------------------- */
.w10 {
    width: 10px;
}
.w15 {
    width: 15px;
}
.w20 {
    width: 20px;
}
.w25 {
    width: 25px;
}
.w30 {
    width: 30px;
}
.w35 {
    width: 35px;
}
.w40 {
    width: 40px;
}
.w45 {
    width: 45px;
}
.w50 {
    width: 50px;
}
.w55 {
    width: 55px;
}
.w60 {
    width: 60px;
}
.w150 {
    width: 150px;
}
.w205 {
    width: 205px;
}
.w210 {
    width: 210px;
}
.w230 {
    width: 230px;
}
.w100-10 {
    width: calc( 100% - 10px);
}
.w100-15 {
    width: calc( 100% - 15px);
}
.w100-20 {
    width: calc( 100% - 20px);
}
.w100-25 {
    width: calc( 100% - 25px);
}
.w100-30 {
    width: calc( 100% - 30px);
}
.w100-35 {
    width: calc( 100% - 35px);
}
.w100-40 {
    width: calc( 100% - 40px);
}
.w100-45 {
    width: calc( 100% - 45px);
}
.w100-50 {
    width: calc( 100% - 50px);
}
.w100-55 {
    width: calc( 100% - 55px);
}
.w100-60 {
    width: calc( 100% - 60px);
}
.w100p {
    width: 100%;
}
.w90p {
    width: 90%;
}
.w80p {
    width: 80%;
}
.w75p {
    width: 75%;
}
.w70p {
    width: 70%;
}
.w60p {
    width: 60%;
}
.w50p {
    width: 50%;
}
.w40p {
    width: 40%;
}
.w30p {
    width: 30%;
}
.w20p {
    width: 20%;
}
.w19p {
    width: 19%;
}
.w18p {
    width: 18%;
}
.w17p {
    width: 17%;
}
.w16p {
    width: 16%;
}
.w15p {
    width: 15%;
}
.w10p {
    width: 10%;
}
/* /width--------------------------------- */


/* margin--------------------------------- */

.b01 {
    margin-bottom: 1px;
}
.b04 {
    margin-bottom: 4px;
}
.b05 {
    margin-bottom: 5px;
}
.b10 {
    margin-bottom: 10px;
}
.b15 {
    margin-bottom: 15px;
}
.b20 {
    margin-bottom: 20px;
}
.b25 {
    margin-bottom: 25px;
}
.b30 {
    margin-bottom: 30px;
}
.b35 {
    margin-bottom: 35px;
}
.b40 {
    margin-bottom: 40px;
}
.b45 {
    margin-bottom: 45px;
}
.b50 {
    margin-bottom: 50px;
}
.b55 {
    margin-bottom: 55px;
}
.b60 {
    margin-bottom: 60px;
}
.b70 {
    margin-bottom: 70px;
}
.b80 {
    margin-bottom: 80px;
}
.b90 {
    margin-bottom: 90px;
}
.b100 {
    margin-bottom: 100px;
}
.r10 {
    margin-right: 10px;
}
.r15 {
    margin-right: 15px;
}
.r20 {
    margin-right: 20px;
}
.r25 {
    margin-right: 25px;
}
.r30 {
    margin-right: 30px;
}
.r35 {
    margin-right: 35px;
}
.r40 {
    margin-right: 40px;
}
.r45 {
    margin-right: 45px;
}
.r50 {
    margin-right: 50px;
}
.r55 {
    margin-right: 55px;
}
.r60 {
    margin-right: 60px;
}
.r1p {
    margin-right: 1%;
}
.r2p {
    margin-right: 2%;
}
.r3p {
    margin-right: 3%;
}
.r4p {
    margin-right: 4%;
}
.r5p {
    margin-right: 5%;
}
.r10p {
    margin-right: 10%;
}
.l10 {
    margin-left: 10px;
}
.l15 {
    margin-left: 15px;
}
.l20 {
    margin-left: 20px;
}
.l25 {
    margin-left: 25px;
}
.l30 {
    margin-left: 30px;
}
.l35 {
    margin-left: 35px;
}
.l40 {
    margin-left: 40px;
}
.l45 {
    margin-left: 45px;
}
.l50 {
    margin-left: 50px;
}
.l55 {
    margin-left: 55px;
}
.l60 {
    margin-left: 60px;
}
.t05 {
    margin-top: 5px;
}
.t10 {
    margin-top: 10px;
}
.t20 {
    margin-top: 20px;
}
.t30 {
    margin-top: 30px;
}
.t35 {
    margin-top: 35px;
}
.t150 {
    margin-top: 150px;
}
.t-05 {
    margin-top: -5px;
}
.t-10 {
    margin-top: -10px;
}
.t-20 {
    margin-top: -20px;
}
.t-30 {
    margin-top: -30px;
}
.t-35 {
    margin-top: -35px;
}
.t-40 {
    margin-top: -40px;
}
.t-45 {
    margin-top: -45px;
}
.t-50 {
    margin-top: -50px;
}
.t-55 {
    margin-top: -55px;
}
.t-60 {
    margin-top: -60px;
}
.pcr40 {
    margin-right: 40px;
}
.pcl30 {
    margin-left: 30px;
}

@media all and (max-width: 768px) {
.pcr40 {
    margin-right: 0px;
}
.pcl30 {
    margin-left: 0px;
}
}

/*padding*/
.p-0-40-5 {
    padding: 0 40% 5%;
}

@media all and (max-width: 320px) {

}

@media all and (max-width: 480px) {
    .p-0-25-5{
    padding: 0 25% 5% !important;
    margin: 0 0 5% 1% !important;
    }

   .trans-border .spacecompany_link{
        padding: 13px 27px;
        width: 100%;
       text-align: center;
    }
}

@media all and (max-width: 768px) and (max-height: 1024px) {
    .p-0-38-5{
    padding: 0 38% 5%;
    margin: 0 0 5% 0;
    }
}

.icon-circle:before {
    position: absolute;
    content: "●";
    top: 2px;
    left: 0;
    font-size: 12px;
    margin-top: -6px;
    color: #333
}
.icon-circle {
    position: relative;
    font-size: 13px;
    margin-bottom: 10px;
    padding: 3px 0 0 14px;
}
/* /margin--------------------------------- */


.d_b {
    display: block;
}
.d_ib {
    display: inline-block;
}
.va_t {
    vertical-align: top;
}
.va_m {
    vertical-align: middle;
}
img.va_b {
    vertical-align: bottom;
}
.clearof {
    overflow: hidden;
}
.clearbt {
    clear: both;
}
.clearL {
    clear: left;
}
.floatL {
    float: left;
}
.floatR {
    float: right;
}
.box_line_gray {
    border: 1px solid #eeeeee;
}

 @charset "UTF-8";
/*---------------------------------------------------------
Theme Name: Astronaut
Theme URI: http://theme.aerospacebiz.jaxa.jp
Description:
Author: JAXA
Author URI: http://jaxa.jp
Text Domain: astronaut
Version: 1.0
from grobal
---------------------------------------------------------*/


.swiper-button-white, .swiper-button-white {
    opacity: 0.6;
    height: 34px !important;
    margin-top: -17px !important;
    -moz-background-size: 17px 34px !important;
    -webkit-background-size: 17px 34px !important;
    background-size: 17px 34px !important;
}
.swiper-container {
    width: 100%;
    height: 100%;
}
.swiper-slide {
}


.exhibition-sec p.venture-caption {
    margin-top: 5px;
}
p.venture-linklist {
  position : absolute;
  bottom : 50px;
}
/* ベンチャー インタビュー */

.venture-interview-thum {
  clear : both;
  position : relative;
  display : block;
  text-align: center;
}
.venture-interview-thum > p {
  display : flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position : absolute;
  bottom : 0;
  left :0;
  width : 100%;
  height : auto;
  margin : 0;
  padding : 20px 0;
  font-size : 26px;
  color : #fff;
  line-height : 1.8;
  background : rgba(10,42,84,.8);
}
.venture-interview-thum > p span { display : block; font-size : 22px; }
.venture-interview-thum > p::after {
  content: "";
  display : block;
  position : absolute;
  bottom : 20px;
  right : 20px;
  width: 23px;
  height: 23px;
  background-image: url(./images/compornents/detail.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}
.interview-sec + .interview-sec { margin-top : 0; }
.interview-sec h3 {
  font-size : 44px;
  text-align: center;
}
.interview-sec hr{ width : calc(100% - 60px); margin : auto;}
.interviewee-img figcaption { text-align : center; margin : 12px 0; }
.interview-sec .interviewee p,.interview-sec .interviewer p{
  margin : 0 0 0.8em;
  line-height : 1.4;
}
.interview-sec .interviewee p { font-size : 24px; }
.interview-sec .interviewee p:nth-child(2) { margin-bottom : 3em; }
.interview-sec .interviewee a {
  display : flex;
  justify-content: center;
  align-items: center;
  width : 340px;
  height : 105px;
  /* background : url('images/ui/img-frame01.png') no-repeat; */
  /* background-size : contain; */
  font-size : 18px;
}
.interview-sec.interviewer-wrap {
  display : flex;
  align-items: center;
  flex-wrap: wrap;
}
.interview-sec .interviewer {
  display : flex;
  flex-direction: column;
  justify-content: flex-end;
}
.interview-sec .interviewer p:nth-child(1){ font-size : 24px; margin-bottom : 1.2em; }
.interview-sec .interviewer p:nth-child(2){ font-size : 20px; margin-bottom : 0; }
.interview-sec .interviewer p:nth-child(3){ font-size : 24px; margin-bottom : 0; }
.interview-sec .interviewer-img {
  width : 100%;
  min-height : 150px;
  background : #104588;
}
.interview-sec.interview_content {
  padding-top : 120px;
  margin-bottom : 100px;
}
/* インタビュー会話部分 */
.interview-sec p.interview-title {
  font-size : 24px;
  text-align: center;
}
.balloon {
  clear : both;
  display : flex;
  align-items: center;
  font-size : 14px;
}
.balloon.ba_right {
  flex-direction: row-reverse;
  align-items: flex-start;
  /* justify-content: flex-end; */
}
.balloon figure {
  width : 100px;
  height : 100px;
  border-radius : 50%;
  background : #ccc;
  flex-shrink: 0;
}
.balloon figure img {
  width : 100px;
  height : 100px;
  border-radius : 50%;
}
.balloon figure figcaption { text-align : center; }
.balloon-text {
  width : 600px;
}
.balloon-image-left { margin-right : 32px; }
.balloon-text-right {
  color : #165dba;
}
.balloon-image-right { margin-left : 32px; }

figure.interview-picture {
  max-width : 785px;
  display : flex;
  justify-content: space-between;
  margin : 65px auto 160px;
}

@media all and (max-width: 768px){
  .col-12.venture-feature { padding : 15px; }
  p.venture-linklist {
    position : static ;
    bottom : 0;
  }
  p.venture-linklist a.show-detail { margin-right : 25px; }
  .venture-sec .col-8 { width : 100%; }
  .venture-sec br { display : block; }
  .venture-interview-thum > p {
    padding : 8px 0;
    font-size : 18px;
    line-height : 1.6;
  }
  .venture-interview-thum > p span { display : block; font-size : 16px; }
  .venture-interview-thum > p::after { bottom : 12px; right : 12px; }
  .interview-link br {display : block;}
  .interview-sec .col-6, .interview-sec .col-8{ width : 100%; }
  .interview-sec .interviewee p { font-size : 20px; }
  .interview-sec .interviewee a { margin : 0 auto; }
  .interview-sec hr { width : calc(100% - 30px); }
  .interview-sec p.interview-title { font-size : 18px; }
  .balloon {
    margin-bottom : 40px;
  }
  .balloon figure {
    width : 80px;
    height : 80px;
    flex-basis : 80px;
    flex-shrink : 0;
  }
  .balloon figure img {
    width : 80px;
    height : 80px;
    border-radius : 50%;
  }
  .balloon-text {
    flex-basis : auto;
  }
  figure.interview-picture { flex-wrap : wrap; }
  figure.interview-picture img { margin-bottom : 20px; }
}


.th_left {
    border-collapse: collapse;
    border: 1px solid rgba(0,0,0,.1);
    table-layout: fixed;
    width: 100%;
}
.th_left th, .th_left td {
    border: 1px solid rgba(0,0,0,.1);
    padding: .6em;
    text-align: center;
    background: #fff;
}
.th_left th {
    font-weight: bold;
}
.th_left th:first-child {
    width: 80px;
}


/* NASA Ames-JAXA B2B Forum for Space Innovation */
.page-template-nasa-ames-jaxa-forum .comp-header {
    /* height: 530px; */
    background-image: url("./images/compornents/header_01.png");
    background-repeat: no-repeat;
    background-size: 100% auto;
    background-position: center;
    position: relative;
}
.space-table-forum h2 {
    font-size: 23px;
    letter-spacing: 1.1px;
    color: #041020;
    margin-bottom: 35px;
}
.space-table-forum table {
    width: 100%;
    margin-bottom: 100px;
}
.space-table-forum table tr {
    float: left;
    width: 100%;
    padding: 10px 0;
    border-top: 1px solid #ccc;
}
.space-table-forum table tr:last-child {
    border-bottom: 1px solid #ccc;
}
.space-table-forum table tr th {
    padding: 20px 10px;
    font-size: 13px;
    line-height: 1.8;
    letter-spacing: 0.6px;
    float: none;
    font-weight: 300;
}
.space-table-forum table tr th:nth-child(1), .space-table-forum table tr th:nth-child(2) {
    width: 100px;
    padding-right: 20px;
    border-right: 1px solid #ccc;
	text-align: center;
}
.space-table-forum table tr th:nth-child(3) {
	width: 670px;
	text-align: left;
	padding-left: 20px;
	border-right: 1px solid #ccc;
} 
.space-table-forum table tr th:nth-child(4) {
    padding-left: 20px;
	text-align: center;
}
.space-table-forum table tr td{
    padding: 20px 10px;
    font-size: 13px;
    line-height: 1.8;
    letter-spacing: 0.6px;
    float: none;
    font-weight: 300;
	background: #124587;
    color: #fff;
    text-align: center;
}
.space-table-forum table tr td:nth-child(1), .space-table-forum table tr td:nth-child(2) {
    width: 100px;
    padding-right: 20px;
    border-right: 1px solid #fff;
	text-align: center;
}
.space-table-forum table tr td:nth-child(3) {
	width: 670px;
	padding-left: 20px;
	border-right: 1px solid #ccc;
} 
.space-table-forum table tr td:nth-child(4) {
    padding-left: 100px;
}
.section-follow {
    background: #d8e9ff;
    padding-bottom: 90px;
}
.section-follow .section-body {
    max-width: 1120px;
    margin: 0 auto;
    padding: 60px 0 0;
}
.follow-container {
    padding: 0 3.75%;
    box-sizing: border-box;
    font-size: 0;
}
.follow-container .follow-item {
margin: 0;
display: inline-block;
vertical-align: top;
width: 46%;
margin-left: 7%;
}
.follow-container .follow-item:first-child {
margin-left: 0;
}

.forum-LinkList {
	padding: 30px 0;
    margin: 100px 0;
    background: #d8e9ff;
}
.forum-LinkList p {
	font-size: 16px;
	 line-height: 1;
	 margin-top: 20px;
}
.forum-LinkList a {
    color: #124587;
}
.forum-LinkList a:hover {
    text-decoration: underline;
}
.forum-LinkList ul {
	list-style-type: disc;
	font-size: 13px;
	line-height: 1.8;
}

.forum-LinkList-box {
	padding: 0 5%;
    box-sizing: border-box;
    font-size: 0;
	width: 48%;
    float: left;
}
.forum-LinkList-tit {
	text-align: left;
	width: 100%;
    margin-top: 0px;
    margin-bottom: 20px;
    font-size: 21px;
    font-family: 'klavika_regular';
    color: #0a2a54;
    line-height: 1;
}
.forum-btnLink {
	background: #124587;
    padding: 20px 40px;
    font-size: 14px;
    font-weight: bold;
    text-align: center;
    display: block;
    width: 400px;
    margin: 0 auto 200px;
}

.forum-dl {
    font-size: 16px;
    text-align: center;
    margin-bottom: 10px;
}
.forum-dl a {
    color: #d90404;
    text-decoration: underline;
}
.forum-dl a:hover {
    text-decoration: none;
}

.forum-btn_none {
    display: none;
}

.forum-upload {
    padding: 10px 40px;
    color: #fff;
    background-color: #0a2a54;
    cursor: pointer;
}

.forum-filename {
    padding-left: 10px;
    background-color: #eee;
    color: #0a2a54;
}

.forum-originalSendBtn input[type="submit"] {
    width: 200px;
    height: 60px;
    background-color: #0a2a54;
    color: #fff;
    border: none;
}

.forum-acd-check {
    display: none;
}
.forum-acd-label {
	background: #d90404;
	padding: 20px 40px;
	font-size: 24px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	display: block;
    cursor: pointer;
}
.forum-acd-content {
    border: 1px solid #ccc;
    height: 0;
    opacity: 0;
    padding: 0 10px;
    transition: .5s;
    visibility: hidden;
}
.forum-acd-check:checked + .forum-acd-label + .forum-acd-content {
    height: auto;
    opacity: 1;
    visibility: visible;
}

.forum-panel {
	width: 630px;
	display: flex;
	margin-top: 5px;
	padding: 10px;
	background-color: #d8e9ff;
}
.forum-panel-img {
	width: 25%;
}
.forum-panel-youtube {
	margin-top: 5px;
}
.forum-panel-position {
	padding-left: 10px;
	width: 75%;
}
.forum-panel-position .name {
	font-weight: bold; 
}

.forum-panel-check {
    display: none;
}
.forum-panel-label {
	background: #124587;
	font-size: 11px;
	padding: 5px;
	font-weight: bold;
	color: #fff;
	text-align: center;
    cursor: pointer;
}
.forum-panel-content {
    height: 0;
    opacity: 0;
    padding-top: 5px;
    transition: .5s;
    visibility: hidden;
}
.forum-panel-check:checked + .forum-panel-label + .forum-panel-content,
.forum-panel-check:checked + .forum-panel-label + a + .forum-panel-content{
    height: auto;
    opacity: 1;
    visibility: visible;
}
a.forum-panel-presentation {
	background: #d90404;
	font-size: 11px;
	padding: 5px;
	font-weight: bold;
	color: #fff;
	text-align: center;
	text-decoration: none;
}

.youtube {
  position: relative;
  height: 0;
  padding-bottom: 56.25%;
  overflow: hidden;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}


@media all and (max-width: 768px){
.space-table-forum table {
    width: 400px;
    margin-bottom: 30px;
}

.forum-acd-label {
	padding: 20px 20px;
	font-size: 18px;
    width: 100%;
}
.forum-LinkList {
    margin: 30px 0;
}
  .forum-LinkList-box {
	padding: 0 2%;
  }

.forum-btnLink {
    width: 90%;
    margin: 0 auto 50px;
}

.forum-panel {
	width: 300px;
	display: block;
}
.forum-panel-img {
	width: 30%;
}
.forum-panel-position {
	padding-left: 10px;
	width: 100%;
}
	padding-left: 0;
}
.sp {
    display:block;
}

/* JAXA JETRO Startup Web Seminar */
.jaxa-jetro-contents h3 {
	font-size: 1em;
	margin-top: 2em;
	margin-bottom: 0;
}
.jaxa-jetro-contents ul,
.jaxa-jetro-contents ol {
	margin: 0;
	padding-left: 0;
}
.jaxa-jetro-contents ul li,
.jaxa-jetro-contents ol li {
	margin-left: 1.5em;
	text-indent: -1.5em;
}
.jaxa-jetro-contents table {
	width: 100%;
	max-width: 800px;
	margin-top: 1em;
}
.jaxa-jetro-contents table td {
	padding: 0.5em;
	border: 1px solid #ccc;
	text-align: left;
}
.jaxa-jetro-contents table td:first-child {
	text-align: center;
}
.jaxa-jetro-contents table tr.session {
	background: #d9e2f3;
}

/* link blue */

.link-blue a{
	color:#2e75ad;
}

/* fadein first contents */
.fadein.catch-block, .page-intro .fadein, .single-topics .fadein {
    opacity: 1 !important;
    transform: translate(0, 0) !important;
}
.fadein.catch-block div:first-child,
.page-intro .fadein div:first-child {
    margin-top: 0;
    padding-top: 0;
}

/* Remote Sensing ---------------------------------*/
.remote-sensing {
    max-width: 1050px;
    margin: 50px auto 0;
}
.remote-sensing-list {
    width: 100%;
    background: #EEE;
    font-size: 13px;
}
.remote-sensing-list th, .remote-sensing-list td {
    padding: 20px 10px;
    border: 1px solid #FFF;
    border-top-color: #D6D6D6;
    border-bottom-color: #D6D6D6;
    text-align: center;
}
.remote-sensing-list th:not(:first-child), .remote-sensing-list td:not(:first-child) {
    width: calc(82% / 8);
}
.remote-sensing-list th:first-child, .remote-sensing-list td:first-child {
    width: 18%;
}
.remote-sensing select {
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: transparent;
    border: 0;
    border-radius: 0;
    color: inherit;
    cursor: pointer;
    font-family: inherit;
    font-size: 1em;
    padding: 0.4em 0.8em;
    width: 100%;
}
.remote-sensing select::-ms-expand {
    display: none;
}
.remote-sensing select:focus {
    border: 0;
    box-shadow: none;
    outline: none;
}
.remote-sensing select option {
    padding: 0;
}
.remote-sensing-select {
    color: #0A2A54;
    background: #FFF;
    border-radius: 2px;
    position: relative;
    z-index: 1;
}
.remote-sensing-select::before {
    content: "▼";
    display: inline-block;
    width: 2em;
    height: calc(100% - 2px);
    background: linear-gradient(#fff,  #eee);
    padding-top: 0.25em;
    padding-right: 0.25em;
    border-left: 1px solid currentColor;
    border-top-right-radius: 2px;
    border-bottom-right-radius: 2px;
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    z-index: 2;
}
.remote-sensing-select select {
    color: #0A2A54;
    padding-right: 3em;
    border: 1px solid currentColor;
    border-radius: 2px;
    position: relative;
    z-index: 4;
}
.remote-sensing-select select option {
    color: #FFF;
    background: #393A3B;
    text-align: center;
}
.remote-sensing-select select option:hover {
    background: #2965A0;
}
.remote-sensing-heading tr:first-of-type {
    color: #FFF;
    background: #0A2A54;
}
.remote-sensing-heading tr:last-of-type {
    color: #FFF;
    background: #1F426F;
}
.remote-sensing-list-wrap {
    position: relative;
    max-height: 80vh;
    overflow-y: auto;
}
.remote-sensing-heading {
    position: sticky;
    top: 0;
}
.remote-sensing-data th a {
    border-bottom: 1px solid currentColor;
}
.remote-sensing-data th a:hover {
    color: #3485EB;
    border-bottom-color: transparent;
}
@media all and (max-width: 768px){
    .remote-sensing-list-wrap {
        max-height: 70vh;
        overflow-x: auto;
    }
    .remote-sensing-list-wrap table {
        width: 726px;
    }
}
@media all and (max-width: 480px) {
    .remote-sensing-list-wrap table {
        font-size: 10px;
        width: 526px;
    }
    .remote-sensing-list th, .remote-sensing-list td {
        padding: 1.5em 0.5em;
    }
    .remote-sensing-data th a {
        display: inline-block;
        width: 6em;
        word-wrap: break-word;
    }
}
/* Remote Sensing ---------------------------------*/

/* Investment --------------------------------------*/
.investment-header .head-kv {
    background-image: url("./images/solutions/investment-head.png");
}
.catch-block-investment {
    margin-top: 0;
}
.investment-block {
    max-width: 1050px;
    margin: 0 auto 80px;
}
.investment-block .investment-list {
    counter-reset: item;
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.investment-block .investment-list li {
    background: #EEE;
    font-size: 15px;
    line-height: 2.1;
    letter-spacing: 0.8px;
    width: 100%;
    position: relative;
    text-indent: -1.5em;
    margin-bottom: 1px;
    padding: 1em;
    padding-left: calc(1em + 1.5em);
}
.investment-block .investment-list li::before {
    counter-increment: item;
    content: counter(item)'.';
    padding-right: .5em;
}
.investment-block .investment-list li .underline {
    border-bottom: 1px solid currentColor;
}
.investment-block .text-center,.investment-block .text-left {
    font-size: 15px;
    line-height: 2.1;
    letter-spacing: 0.8px;
    width: 100%;
    margin: 3em 0;
}
.investment-block .trans-border, .investment-block .trans-border a {
    display: inline-block;
    float: none;
    text-align:left;
    word-break:break-all;
}

/*20240610 追加*/
.investment-block dl{
	display: flex;
	align-items: center;
}
.investment-block dl dt{
	width: 20%;
	text-align: left !important;
}
.investment-block dl dd{
	width: 79%;
	margin-left: 1%;
	text-align: left!important;
}

@media all and (max-width: 768px){
    .investment-block .investment-list li {
        font-size: 13px;
        padding: 30px;
        padding-left: calc(30px + 1.5em);
    }
    .investment-block .text-center {
        font-size: 13px;
        padding: 0 30px;
    }

.investment-block dl{
	flex-wrap: wrap;
}
.investment-block dl dt{
	width: 100%;
	text-align: left !important;
}
.investment-block dl dd{
	width: 100%;
	margin-left: 0%;
	text-align: left !important;
}
}
/* Investment --------------------------------------*/

/* Capacity Building -------------------------------*/
.cb-list {
    width: 100%;
    margin-bottom: 1em;
    table-layout: fixed;
}
.cb-list tr:nth-of-type(even) {
    background: #eee;
}
.cb-list tr:nth-of-type(odd) {
    background: #d9e2f3;
}
.cb-list tr.cb-list-heading {
    color: #FFF;
    background: #0a2a54;
}
.cb-list th, .cb-list td {
    padding: 1.5em 1em;
    border: 1px solid #fff;
    overflow-wrap : break-word;
}
.cb-list-num {
    width: 8em;
    text-align: center;
}
.cb-list-name {
    width: 16em;
}
.cb-list-time {
    width: 7em;
    text-align: center;
}
.cb-list th {
    white-space: nowrap;
}
@media all and (max-width: 768px){
    .cb-list th {
        width: auto !important;
    }
}
@media all and (max-width: 414px){
	.cb-list th, .cb-list td {
		padding: 1.5em 0.5em;
	}
}
/* Capacity Building -------------------------------*/

/* Patent -------------------------------------------*/

@media all and (max-width: 768px){
    #system.patent-flow {
        display: block;
        margin: 0 0 -100px;
    }
    .patent-flow .grad-pagenation ul li {
        padding: 0 40px;
        text-align: center;
        width: 100%;
        color: #fff;
        text-align: left;
        font-size: 14px;
        cursor: pointer;
    }
    .patent-flow .grad-pagenation ul li:nth-child(1) {
        background-color: #041020;
    }
    .patent-flow .grad-pagenation ul li:nth-child(2) {
        background-color: #071d3b;
    }
    .patent-flow .grad-pagenation ul li:nth-child(3) {
        background-color: #0a2954;
    }
    .patent-flow .grad-pagenation ul li:nth-child(4) {
        background-color: #0d356e;
    }
    .patent-flow .grad-pagenation ul li:nth-child(5) {
        background-color: #104287;
    }
    .patent-flow .grad-pagenation ul li:nth-child(6) {
        background-color: #134ea1;
    }
    .patent-flow .grad-pagenation ul li:nth-child(7) {
        background-color: #1658b5;
    }
    .patent-flow .grad-pagenation ul li .patent-flow-menu {
        display: block;
        height: 64px;
        line-height: 64px;
    }
    .patent-flow .grad-pagenation ul li .patent-flow-menu span {
        margin-left: 20px;
    }
    .patent-flow .grad-pagenation ul li .patent-flow-contents {
        display: none;
        font-size: 13px;
        padding-bottom: 20px;
    }
}

/* Patent -------------------------------------------*/

#scroll-area .scroll-contents article .bigfont{font-size:120%;}

/* Alarm Box -------------------------------------------*/
.alarm-box {
    clear: both;
    background: #fff9f9;
    font-size: 15px;
    padding: 30px 40px;
    border: 1px solid #f00;
}
.alarm-box-title {
    color: #f00;
    font-size: 18px;
    border-bottom: 1px solid #f00;
    position: relative;
    margin: 0 0 30px;
    padding: 20px 40px;
    line-height: 1;
}
.alarm-box-title::before {
    content: "";
    display: inline-block;
    width: 30px;
    height: 26px;
    background: center / contain no-repeat url(images/ui/icon-alarm.png);
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.alarm-box-title span{
	font-size:80%;
	padding-left:20px;
}
.alarm-box-list {
    counter-reset: count 0;
    margin: 0;
    padding: 0;
}
.alarm-box-list li {
    margin-bottom:30px;
}
.alarm-box-list li:last-child {
    margin-bottom: 0;
}
.alarm-box-list li::before {
    content: "0" counter(count) ". ";
    counter-increment: count 1;
    display: block;
    color: #f00;
    font-size: 18px;
}

/*  contact  */

.border-block{
	border:1px solid #0a2a54;
	margin-bottom:40px;
	font-size:15px;
}
.border-block h3.border-block-title{
	background:#0a2a54;
	color:#fff;
	text-align:center;
	margin:0;
	padding:1em;
}
.border-block .content{
	padding:0 20px 0;
}
.contact-about-grid dt.title,.contact-about-grid dt.no{
	background:#0a2a54;
	color:#fff;
	text-align:center;
	margin:0.5px;
	padding:10px;
}
.contact-about-grid dd{
	background:#eeeeee;
	margin:0.5px;
	padding:10px;
}
.contact-about-grid{
	display:grid;
	grid-template-columns:10% 10% 80%;
	margin:0;
}
.contact-about-grid .clmn2{
	grid-column: 1 / 3;
}
.contact-about-grid .row4{
	grid-row: 1 / 5;
}
@media all and (max-width: 700px){
	.contact-about-grid{
		grid-template-columns:15% 85%;
	}
	.contact-about-grid dt.title{
		grid-column: 1 / 3;
	}
	.contact-about-grid .sp-clmn2{
		grid-column: 1 / 3;
	}
}

.faq-border-block{
	background:#eeeeee;
	font-size:15px;
	line-height:1.4;
	margin-bottom:40px;
}
.faq-border-block h3.border-block-title{
	background:#0a2a54;
	color:#fff;
	text-align:center;
	margin:0;
	padding:1em;
}
.faq-border-block .content{
	padding:20px 20px 20px;
}
.faq-border-block .accordion{
	background:#fff;
	margin:10px 10px 20px;
}
.faq-border-block .accordion:last-child{
	margin-bottom:0;
}
.faq-border-block .accordion .open{
	display:none;
}
.faq-border-block .accordion .title{
	border-bottom:2px solid #eeeeee;
	font-size:16px;
	padding:1em;
	margin:0;
}
.faq-border-block .accordion .open{
	padding:1em;
	margin:0;
}
.faq-border-block .accordion .open dt{
	margin-bottom:1em;
	display:flex;
}
.faq-border-block .accordion .open dd{
	margin:0;
	display:flex;
}
.faq-border-block .accordion .open dt>div:first-child,.faq-border-block .accordion .open dd>div:first-child{
	width:2em;
	text-align:left;
}
.faq-border-block .accordion .open dt>div,.faq-border-block .accordion .open dd>div{
	width:calc(100% - 2em);
}
.faq-border-block a{
	color:#0000ff;
}
.faq-border-block a:hover{
	text-decoration:underline;
}
a.contact-btn{
	background:#0a2a54;
	color:#fff;
	width:260px;
	display:block;
	margin-left:auto;
	margin-right:auto;
	padding:1em;
	font-size:15px;
	text-align:center;
	text-decoration:none;
}


/* add 202410 */

.smp-section ol.list-number li {
	list-style-type:decimal;
	margin-bottom: .5em;
}

.smp-section .body_tbl table table tr td.data .radio {
	float:none;
	width: 100%;
}

.smp-section ol.list-number li h3 {
	font-size: 1em;
	margin-bottom: .5em;
	margin-top: 0;
}

@media all and (max-width: 700px){
	.smp-section .body_tbl table table tr td.data.data-radio {
		padding: 30px 20px;
	}
}

/* add 202501 */

.follow-list {
	width: 95%;
	margin: 0 auto;
	max-width: 1080px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}

.follow-list li {
	width: 48%;
}

.follow-list li a {
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 2em;
	font-size: 30px;
	font-family: 'klavika_regular', Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "Meiryo", "メイリオ", sans-serif;
	text-transform: uppercase;
	line-height: 30px;
	text-align: center;
	background:  #114588;
	color: #fff;
	transition: .3s opacity;
}

.follow-list li a:hover {
	text-decoration: none;
	opacity: .7;
}

.follow-list li a span {
	font-size: .8em;
}

.follow-list li a::after {
	display: inline-block;
	margin-left: .2em;
	content: '\025b6';
	width: 1em;
	height: 1em;
	margin-top: -.1em;
	font-size: .8em;
	transform: scaleY(.6);
}