@charset "utf-8";

@font-face {
    src: url("../fonts/NotoSansJP-Regular.woff") format("woff");
    font-family: "Noto Sans JP";
    font-style: normal;
    font-display: swap;
}
.font-NotoSansJP {
    font-family : "Noto Sans JP" !important;
}

.digital-visual {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
    margin: 40px 0;
}
.digital-visual1 {
    width : 30%;
}
.digital-visual2 {
    width : 70%;
}
.digital-visual2 li {
    font-size: 157%;
    text-indent : -1em;
    padding-left : 1em;
    margin-bottom : 1em;
}
.digital-visual2 li:last-child {
    margin-bottom : 0;
}
.digital-visual2 li:before {
    content : '\f00c\0020';
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    color: #4caf50;
}
.card-name {
    font-size: 3.1em;
    text-align: center;
    margin-top: 1em;
}
.pc {
    display: block;
}
.smp {
    display: none;
}
.comment {
    font-size: 113%;
    margin-left: 1em;
    text-indent: -1em; 
    margin-bottom : 0.4em;
}
.info-list {
    font-size: 134%;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-items: center;
    padding: 0.5em 0;
    background-color: #f5f5f5;
}
.info-list div {
}
.info-list div:hover {
    color : #aaa;
    cursor: pointer;
}
#lnk_info6 {
    display: none;
}
.info1 {
    padding : 2em 0;
}
.info2 {
    background-color: #f5f5f5;
    padding : 2em 0;
}
.info3 {
    padding : 2em 0;
}
.info4 {
    background-color: #f5f5f5;
    padding : 2em 0;
}
.info5 {
    padding : 2em 0;
}
.info6 {
    padding : 2em 0;
}
.info-area {
    margin: 3em auto;
    width: 980px;
}
.info-title {
    font-size: 2.2em;
}
.info-content1 {
    margin : 2em 4em 5em;
}
.info-content1 > div > div {
    display : flex;
    border-top : 1px solid #ddd;
}
.info-content1 > div > div:last-child {
    border-bottom : 1px solid #ddd;
}
.info-content1 > div > div > div:nth-child(1) {
    background-color : #f5f5f5;
    padding : 1.5em 1em;
    min-width: 200px;
}
.info-content1 > div > div > div:nth-child(2) {
    padding : 1.5em 1em;
    width: 100%;
}
.img_flex {
    display: flex;
    align-items: center;
    flex-direction: row;
}
.img_flex img {
    max-width : 100px;
}
.info-content2 {
    margin : 2em 4em;
    padding : 1.2em;
    background-color: #fff;
    border-radius : 10px;
}
.info-content2 > p {
    background-color: #0b5d9e;
    display :inline-block;
    color :#fff;
    padding : 0.5em 1em;
    border-radius : 5px;
    margin-right: 1em
}
.info-content2 > span {
    color :#0b5d9e;
    font-size: 134%;
}
.info-content2 > div {
    margin : 2em;
}
.info-content2 a {
    text-decoration : none;
}
.info-content3 {
    margin : 2em 4em;
    padding : 1.2em;
    background-color: #fff;
    border-radius : 10px;
    border: 3px solid #0b5d9e;
}
.info-content3 > p {
    background-color: #0b5d9e;
    display :inline-block;
    color :#fff;
    padding : 0.5em 1em;
    border-radius : 5px;
    margin-right: 1em
}
.info-content3 > span {
    color :#0b5d9e;
    font-size: 134%;
}
.info-content3 > div {
    margin : 2em;
}
.info-content3 a {
    text-decoration : none;
}
.info-content4 {
    margin : 2em 4em;
    padding : 1.2em;
    background-color: #fff;
    border-radius : 10px;
}
.info-content4 > p {
    padding : 0.5em 1em;
    margin-right: 1em;
    font-size: 165%;
    text-align : center;
    color : #0b5d9e;
    font-weight : 600;
}
.info-content4 > div > div {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-content: center;
}
.info-content4 > div > div > div {
    border: 3px solid #0b5d9e;
    margin: 1em;
    padding: 1em 1em 0 1em;
    border-radius: 10px;
    width : 50%;
}
.info-content4-inner {
    position: relative;
    top: -1.8em;
}
.info-content4-inner-content p {
    padding-top : 0.5em;
}
.info-content4-inner-title > span {
    margin-left : 1em;
    background-color : #fff;
    z-index : 100;
    padding : 0.5em 1em;
    font-size: 134%;
    color : #0b5d9e;
}
.info-content4-inner-flex {
    display: flex;
    align-items: center;
    flex-direction: column;
}
.info-content5 {
    margin : 2em 4em 5em;
    padding : 1.2em;
}
.info-content5 > div {
    margin : 2em;
}
.info-content5 a {
    text-decoration : none;
}
.btn {
    font-size: 174%;
    color: #0b5d9e;
    background-color: #fff;
    border : 1px solid #0b5d9e;
    text-align: center;
    min-width: 200px;
    padding: 0.5em 0;
    border-radius: 5px;
    box-shadow: 0px 10px 10px -5px #c2c2c2;
    
}
.btn:hover {
    font-size: 174%;
    color: #fff;
    background-color: #0b5d9e;
    border : 1px solid #0b5d9e;
    text-align: center;
    min-width: 200px;
    padding: 0.5em 0;
    border-radius: 5px;
    box-shadow: 0px 10px 10px -5px #c2c2c2;
    transition: 0.6s;
    opacity: 0.7;
    cursor: pointer;
}
.btn2 {
    font-size: 174%;
    color: #fff;
    background-color: #FD3252;
    border : 1px solid #FD3252;
    text-align: center;
    min-width: 320px;
    padding: 0.5em 0;
    border-radius: 5px;
    box-shadow: 0px 10px 10px -5px #c2c2c2;
}
.btn2:hover {
    color: #FD3252;
    background-color: #fff;
    padding: 0.5em 0;
    transition: 0.6s;
    opacity: 0.7;
    cursor: pointer;
}
.lnk-inner {
    text-decoration : underline !important;
    color : #00e;
}
.lnk-inner:hover {
    opacity: 0.5;
}
.lnk-ext {
    text-decoration : none;
    color : #00e;
}
.lnk-ext:hover {
    opacity: 0.5;
}
.lnk-ext:after {
    font-family: "Font Awesome 5 Free";
    font-weight: 900;
    content : '\0020\f35d';
    font-size : 75%;
}
.step-content {
    display: flex;
    align-items: center;
    flex-direction: column;
}
.step-content > div{
    margin : 0.5em 0;
}
.step-img {
    height:100px;
}
.use-img {
    max-width : 100px;
}
.markup {
    text-decoration: underline !important;
    color : #00f;
}
.markup:hover {
    text-decoration: none !important;
}
.sEtc {
    border : 2px solid #b04ea5;
    padding : 0.2em 0.8em;
    margin: 0 0.2em 0 0;
}
.sApplePay {
    border : 2px solid #fd8cbb;
    padding : 0.2em 0.8em;
    margin: 0 0.2em 0 0;
}
.sGooglePay {
    border : 2px solid #ffc107;
    padding : 0.2em 0.8em;
    margin: 0 0.2em 0 0;
}
.sQUICPay {
    border : 2px solid #37addc;
    padding : 0.2em 0.8em;
    margin: 0 0.2em 0 0;
}
/* フローティングバナー
------------------------------------------------------------------------------- */
.floating-banner {
    position: fixed;
    z-index: 99999;
    bottom: 50px;
    right: 10px;
    overflow: hidden;
    border-radius: 50%;
    box-shadow : 
        1px 1.9px 2.5px rgba(0, 0, 0, 0.057),
        2px 5px 6.1px rgba(0, 0, 0, 0.076),
        5px 10.1px 11.4px rgba(0, 0, 0, 0.086),
        10px 19.2px 19.8px rgba(0, 0, 0, 0.11),
        20px 38.4px 34.8px rgba(0, 0, 0, 0.15),
        50px 101px 74px rgba(0, 0, 0, 0.2);
    transition: all 1s;
}
.floating-banner img.pc {
	width : 150px;
	display : block;
}
.floating-banner img.smp {
	display : none;
}
.floating-banner:hover {
    opacity: .6; /* ホバーで少し透過 */
    transition: all 1s;
}