﻿body {
    margin: 0;
    color: #696969;
    /*;文字色：グレー*/
    width: 100%;
    height: 100vh;
    background: linear-gradient(90deg, #f9ffff, #b0c4de);
    /*    background: linear-gradient(90deg, #bee0ce, #00984f);*/
    /*background-image: url("img/top-page/image-bg1.png");*/
    /*background-color: #ffe5cc;*/
    /*background-image: url("https://www.transparenttextures.com/patterns/45-degree-fabric-light.png");*/
    /* This is mostly intended for prototyping; please download the pattern and re-host for production environments. Thank you! */
}

blockquote {
    margin: 1.5%;
}

h1 {
    font-size: 24px;
    margin-bottom: 50px;
    font-family: Century;
}

h2 {
    font-size: 30px;
    font-weight: bold;
    font-family: Georgia;
    margin: 1em auto;
    border-bottom: 2px #19448e dashed;
    clear: both;
    width: 90%;
}

h2:first-letter {
    font-size: 1.5em;
    color: #19448e;
}

h3 {
    border-left: 15px #4b92f5 solid;
    border-bottom: 2px #4b92f5 solid;
    background-color: transparent
        /*!important*/
    ;
    border-radius: 0px;
    box-shadow: none;
    padding-left: 0.5em;
    /*margin: 1em auto;*/
    width: 95%;
}

h4.linktitle {
    font-size: 130%;
    color: #4169e1;
    margin: 0px;
    padding-left: 2.5%;
}

table {
    border-collapse: collapse;
    width: 100%;
}

table th,
table td {
    padding: 5px;
    border: 1px solid #cccccc;
}

table th {
    font-weight: bold;
    letter-spacing: 1px;
    white-space: nowrap;
    color: #fff;
    background: #005c98;
}


/*メニューボタン*/
/*.menu >a {
    height: 52.4px;   
    background-color:#fff;
    display: block;
    color: #696969;
    text-decoration: none;
    vertical-align:bottom;
}*/

.menu-container {
    position: relative;
    display: block;
    margin-left: auto;
    margin-right: auto;
    clear: both;
    font-family: Georgia;
    font-size: 0.85em;
}

.menu-item span {
    color: #ffffff;
    font-size: 12px;
    vertical-align: top;
    font-family: Georgia;
}

.menu-container .menu {
    list-style: none;
    margin: 0;
    padding: 0;
}

.menu-container .menu .menu-item {
    flex: 1;
}

.menu-container .menu>li>a {
    padding-top: 0.6em;
    padding-bottom: 0.5em;
    display: block;
    text-align: center;
    text-decoration: none;
    color: #696969;

}

/*メニューボタンにカーソル合わせた時*/
.menu-container a:hover,
.menu a:hover,
.menu-item a:hover {
    text-decoration: none;
    color: #ffffff;
}

/*↑必要*/

ul.menu li:hover {
    background-color: #c0c0c0;
    /*必要　これがないとsubmenu hover時にmenuの背景色がグレーにならない*/
    color: #ffffff;
    text-decoration: none;
}

li.menu-item a:hover {
    color: #ffffff;
    /*menuの日本語部分をhover時に白色にする*/
}

/* SubMenu 開始 */
ul .submenu {
    position: absolute;
    background-color: #c0c0c0;
    padding: 0;
}

ul.submenu li a {
    display: block;
    border-bottom: 1px #fff solid;
    box-sizing: border-box;
    color: white;
    text-decoration: none;
    height: 2rem;
    line-height: 2rem;
    padding-left: 0.5em;
    padding-right: 0.5em;
}

/*↑必要*/

ul .submenu li {
    height: 0;
    display: none;
}

.menu li:hover>ul>li {
    height: 2rem;
    display: block;
}

/*これがないとhover時にsubmenu出てこない*/

ul.submenu li a:hover {
    background-color: #037;
    height: 2rem;
}

/*submenuにhover時、背景色を紺色にする*/

/* SubMenu 終了 */


/*pagetopへのリンク用スタイル*/
#page-top {
    position: fixed;
    bottom: 20px;
    right: 20px;
    font-size: 15px;
    font-size: 1.05em;
    z-index: 20;
}

#page-top a {
    /*background:#ffb383;*/
    text-decoration: none;
    /*color: #EEE;*/
    width: 130px;
    height: 22px;
    padding: 5px 0;
    text-align: center;
    display: block;
    border-radius: 5px;
    border: none;
    color: #fff;
    background-color: #0865bf;
}

#page-top a:before {
    font-family: "Font Awesome 5 Free";
    content: "\f35b";
}

#page-top a:after {
    content: 'PageTop';
    padding-left: 0.5em;
}

#page-top a:hover {
    background-color: #00008b;
    color: white;
}



/*メルマガ*/
.linktext {
    text-align: center;
}

/* 製品用スタイル */

dl.product-list {
    margin-left: 1em;
}

dl.product-list dt {
    padding-top: 1.25em;
    margin-left: 0px;
    padding-left: 0px;
    font-weight: bold;
}

dl.product-list dt:before {
    font-family: "Font Awesome 5 Free";
    content: '\f0eb';
    font-weight: 400;
    margin-right: 0.25em;
    color: #febc06;
}

dl.product-list dd {
    padding-bottom: 0.25em;
    padding-top: 0.75em;
    border-bottom: dotted 1px #cccccc;
    margin-left: 3.25%;
}

dl newsystem dt:after {
    content: "";
    background-image: url(img/top-page/new.gif);
    display: inline-block;
    background-size: contain;
}

div.contents-product h4 {
    margin: 0;
    /* デフォルトCSS打ち消し */
    font-size: 110%;
    /* 文字サイズ指定 */
    position: relative;
    /* 位置調整 */
    font-weight: normal;
    /* 文字の太さ調整 */
    display: inline-block;
    /* インラインブロックにする */
    background-color: #feeaac;
    /* 背景色指定 */
    padding: 10px;
    /* 余白指定 */
    margin-bottom: 15px;
    /* 周りの余白指定 */
    border-radius: 2px;
    /* 角丸指定 */
}

div.contents-product h4:before {
    content: '';
    /* 空白の要素を作る */
    background-color: #b3b3b3;
    /* 背景色指定 */
    display: block;
    /* ブロック要素にする */
    position: absolute;
    /* 位置調整 */
    left: 50%;
    /* 位置調整 */
    height: 60%;
    /* 高さ指定 */
    top: 26%;
    /* 位置調整 */
    z-index: -1;
    /* 重なり調整 */
    width: 46%;
    /* 幅指定 */
    box-shadow: 0 0 8px 8px #b3b3b3;
    /* 影指定 */
    transform: rotate(3deg);
    /* 回転 */
}

.product-box {
    position: relative;
    padding: 0.5em 1em;
    /*border: double 4px #4b92f5;*/
    border-radius: 8px;
    width: 700px;
    margin-top: 2.5em;
    margin-left: 1.4%;
    margin-right: 1.4%;
    margin-bottom: 2.5%;
    flex-grow: 1;
}

.product-box-libra {
    border: double 4px #ffea00;
}

.product-box-wage {
    border: double 4px #4169e1;
}

.product-box-trust {
    border: double 4px #800080;
}

.product-box-care {
    border: double 4px #1e90ff;
}

.product-box-aid {
    border: double 4px #00ff00;
}

.product-box-self {
    border: double 4px #00bfff;
}

.product-box-ass {
    border: double 4px #87cefa;
}

.product-box-food {
    border: double 4px #ffa500;
}

.product-box-reward {
    border: double 4px #00ffff;
}

.product-box-silver {
    border: double 4px #32cd32;
}

.product-box-charity {
    border: double 4px #ff69b4;
}

.product-box-map {
    border: double 4px #adff2f;
}

.product-box-attend {
    border: double 4px #ff00ff;
}

.product-box-ftp {
    border: double 4px #dcdcdc;
}

.product-box-hp {
    border: double 4px #ff7f50;
}

.product-box-tyouhyou {
    border: double 4px #ffd700;
}

.product-box .box-title {
    position: absolute;
    display: inline-block;
    top: -13px;
    left: 10px;
    padding: 0 9px;
    line-height: 1;
    background: #FFF;
    /*color: #95ccff;*/
    font-weight: bold;
    font-size: 115%;
}

.product-box p {
    margin: 0;
    padding: 0;
}

.product-box img {
    position: relative;
    display: block;
    max-width: 100%;
}

.product-service-table {
    max-width: 700px;
    margin: auto;
}

.product-service-table tr th,
.product-service-table tr td {
    width: 50%;
}

.product-service-table tr td {
    font-size: 80%;
}

h4.service-flex-title {
    margin: 0;
}

.service-flex {
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    margin: 0 0 1em 0;
    padding: 0;
}

.service-flex li {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 0.25em;
    width: 220px !important;
    padding: 0.25em;
    text-align: center;
    border-radius: 5px;
}

.service-flex-left li {
    text-align: left;
}

.service-flex .libra {
    border: 1px #ffea00 solid;
}

.service-flex .care {
    border: 1px #1e90ff solid;
}

.service-flex .aid {
    border: 1px #00ff00 solid;
}

.service-flex .report {
    border: 1px #ffd700 solid;
}

.service-flex .food {
    border: 1px #ffa500 solid;
}

/* 対応OS一覧のスタイル 開始 */


.table-system {
    border-collapse: collapse;
    vertical-align: middle;
    max-width: 88%;
    margin: auto;
}

.table-system th,
.table-system td {
    border: 1px solid #dbe1e8;
    padding: 8px;
}

.table-system th {
    font-size: 1.2vw;
}

.table-system td:nth-child(n+2) {
    font-size: 200%;
    text-align: center;
}

.table-system-os td:nth-child(2) {
    text-align: left;
}

.table-system-os td:nth-child(n+2) {
    font-size: 100%;
}

.table-system label {
    line-height: 34px;
    margin: 0;
}


.column {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    list-style-type: none;
    margin: 0 auto;
    padding-left: 0;
}

.column li {
    position: relative;
    width: 270px;
    height: 200px;
    border: 1px #ccc solid;
    margin: 0.5em;
    box-shadow: 0px 2px 2px rgba(0, 0, 0, .2);
    overflow: hidden;
}

/* .column li img{
    
} */
.column li p {
    /*pタグを画像の真ん中に*/
    position: absolute;
    /*top: 90%;
          left: 50%;*/
    left: 0px;
    bottom: 0px;
    /*-ms-transform: translate(-50%,-50%);
          -webkit-transform: translate(-50%,-50%);
          transform: translate(-50%,-50%);*/
    margin: 0;
    /*余計な隙間を除く*/
    padding: 0;
    /*余計な隙間を除く*/
    width: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    color: white;
    text-align: center;
    /*pタグ内で更に中央寄せ*/
    font-family: 'Quicksand', sans-serif;
}

.column li a {
    display: block;
    text-decoration: none;
    color: white;
}

.column li div:hover {
    background-color: rgba(255, 255, 255, 0.8);
    opacity: 0.5;
}

h2.magazine-title br {
    display: none;
}

#list-number {
    margin-top: 1.5em;
    display: inline-block;
    padding: 0.5em 1.5em;
    text-decoration: none;
    background: #f7f7f7;
    border-left: solid 6px #6198ff;
    /*左線*/
    border-right: solid 6px #6198ff;
    /*左線*/
    color: #6182ff;
    /*文字色*/

    box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.29);
    border-radius: 5px;
}

#list-number:active {
    box-shadow: inset 0 0 2px rgba(128, 128, 128, 0.1);
    transform: translateY(2px);
}

.ma-pr-ne-link a {
    border-top: 1px #ddd solid;
    border-bottom: 1px #ddd solid;
    display: block;
    text-decoration: none;
    /*padding: 14px 30px;*/
    padding: 10px 10px;
    color: #696969;
}

.ma-pr-ne-link a:hover {
    background-color: #f6f6f6;
}

.ma-pr-ne-link a:first-child {
    border-top: 1px #ddd solid;
}

.ma-pr-ne-label {
    font-size: .825rem;
    color: #000;
    margin-bottom: 10px;
}

table.table-nonborder {
    border-style: none;
}

table.table-nonborder th,
table.table-nonborder td {
    border-style: none;
}

.column li .columndisp {
    text-align: center;
}

/* Larger devices */
@media (min-width: 600px) {
    .ma-pr-ne-link {
        display: flex;
    }

    .ma-pr-ne-link a {
        flex: 1;
    }

    .ma-pr-ne-link a,
    .ma-pr-ne-link a:first-child {
        /*border: none;*/
        border-bottom: none;
    }

    .next-link {
        text-align: right;
    }
}

/* 221122追加 */
.interview__wrap {
    width: 80%;
    min-width: 80%;
    margin: 0 auto 10%;
}

.interview__container {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 5%;
}

.interview__container:nth-child(1) {
    position: relative;
    background-color: #dff3f7;
}

.interview__container:nth-child(1)::before {
    content: "";
    display: block;
    position: absolute;
    top: -10px;
    left: -10px;
    width: 100%;
    height: 100%;
    border: 2px solid #9f9f9f;
}

.interview__box1 {
    margin-right: 3%;
}

.interview__box2 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.interview__pic {
    width: 35%;
    max-width: 350px;
    min-width: 260px;
    padding: 3%;
}

.interview__img {
    width: 100%;
    object-fit: cover;
}

.interview__txt {
    font-size: 0.8em;
}

.interview__box4 {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.interview__pic1 {
    width: 30%;
    max-width: 400px;
    min-width: 350px;
    padding: 5%;
}