@charset "UTF-8";

body {
    font-family: "メイリオ", Meiryo, sans-serif;
}

/* タイトル文 */
.inner_box, ul.faq_box, ul.faq_box2, ul.faq_box3 {
    margin: 0 auto;
}

ul.faq_box, ul.support_box, ul.faq_box2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

ul.faq_box, ul.faq_box2, ul.faq_box3 { margin-bottom: 24px; }

ul.faq_box, ul.faq_box2 {
    width: 804px;
    justify-content: space-between;
}

ul.faq_box > li { width: 390px; }

ul.faq_box > li.faq_box_last {
    border: none;
    margin-left: auto;
    padding-right: 0;
    text-align: right;
}

ul.faq_box2 > li,
ul.faq_box3 > li {
    text-align: left;
    margin: 8px 0;
}

ul.faq_box2 > li {
    width: 370px;
    padding: 6px 0 4px 20px;
    border-radius: 100vh;
    background: #f7e2e7;
}

ul.faq_box2 > li a { color: black; }

ul.faq_box3 { width: 780px; }

ul.faq_box3 > li { font-size: 83.3%; }

ul.support_box {
    margin: 12px auto;
}

.color_box p.color_box_big {
    font-size: 3em;
}

.color_box p.color_box_big a {
    pointer-events:none;
}

/* ニュースボックス */
.scroll {
    width: 750px;
    margin: 10px auto 15px;
    padding: 6px 24px;
    border: 1px solid #9b7474;
}

.scroll .scroll_category {
    margin-bottom: 24px;
}

/* ニュースの一行 */
.scroll .scroll_item {
    display: flex;
    flex-wrap: wrap;
    font-size: 85.7%;
    background: url(/common/img/share/line.gif) repeat-x left bottom;
    padding: 7px 0;
}

.scroll .scroll_item:last-child { background: none; }

/* ニュースの日付欄 */
.scroll .scroll_item div:first-child {
    width: 6em;
    margin-right: 16px;
}

/* ニュースのカテゴリ欄 */
.scroll .scroll_item div:nth-child(2) {
    width: 72px;
    font-size: 83.3%;
    line-height: 1.1;
    text-align: center;
    margin: 2px 25px 0 0;
    padding-top: 1px;
}

.scroll .scroll_item div:nth-child(2) a,
.scroll .scroll_item div:nth-child(2) span {
    color: #FFFFFF;
    padding-bottom: 2px;
    display: block;
}
.scroll .scroll_item div:nth-child(2).cat01   { background: url(/common/img/home/cat01Bg.gif) no-repeat left top; }
.scroll .scroll_item div:nth-child(2).cat01 a,
.scroll .scroll_item div:nth-child(2).cat01 span { background: url(/common/img/home/cat01Bg_bot.gif) no-repeat left bottom; }

.scroll .scroll_item div:nth-child(2).cat02   { background: url(/common/img/home/cat02Bg.gif) no-repeat left top; }
.scroll .scroll_item div:nth-child(2).cat02 a,
.scroll .scroll_item div:nth-child(2).cat02 span { background: url(/common/img/home/cat02Bg_bot.gif) no-repeat left bottom; }

.scroll .scroll_item div:nth-child(2).cat03   { background: url(/common/img/home/cat03Bg.gif) no-repeat left top; }
.scroll .scroll_item div:nth-child(2).cat03 a,
.scroll .scroll_item div:nth-child(2).cat03 span { background: url(/common/img/home/cat03Bg_bot.gif) no-repeat left bottom; }

.scroll .scroll_item div:nth-child(2).cat04   { background: url(/common/img/home/cat04Bg.gif) no-repeat left top; }
.scroll .scroll_item div:nth-child(2).cat04 a,
.scroll .scroll_item div:nth-child(2).cat04 span { background: url(/common/img/home/cat04Bg_bot.gif) no-repeat left bottom; }

.scroll .scroll_item div:nth-child(2).cat05   { background: url(/common/img/home/cat05Bg.gif) no-repeat left top; }
.scroll .scroll_item div:nth-child(2).cat05 a,
.scroll .scroll_item div:nth-child(2).cat05 span { background: url(/common/img/home/cat05Bg_bot.gif) no-repeat left bottom; }

.scroll .scroll_item div:nth-child(2).cat06   { background: url(/common/img/home/cat06Bg.jpg) no-repeat left top; }
.scroll .scroll_item div:nth-child(2).cat06 a,
.scroll .scroll_item div:nth-child(2).cat06 span { background: url(/common/img/home/cat06Bg_bot.jpg) no-repeat left bottom; }

.scroll .scroll_item div:nth-child(2).cat07   { background: url(/common/img/home/cat07Bg.png) no-repeat left top; }
.scroll .scroll_item div:nth-child(2).cat07 a,
.scroll .scroll_item div:nth-child(2).cat07 span { background: url(/common/img/home/cat07Bg_bot.png) no-repeat left bottom; }

/* ニュースのタイトル欄 */
.scroll .scroll_item div:last-child {
    text-align: left;
    padding: 1px 0 0 19px;
    line-height: 1.4;
    background: url(/common/img/share/arrow_r.gif) no-repeat left 0.5em;
}

/* お問い合わせ欄 */
.contact_box {
    width: 800px;
    margin: 0 auto;
}
.contact_box > div {
    display: flex;
    padding: 1em 0;
    border-top: 1px solid #9b7474;
}
.contact_box .contact_box_title { width: 55%; }

/* 検索ボックス */
.search_box {
    padding: 6px 0px;
    text-align: center;
}

.search_box input[type="search"] {
    width: 60%;
    padding: 6px;
    font-size: 1.2rem;
}

.search_box button {
    background: #868686;
    color: white;
    padding: 4px 12px;
    border: none;
    cursor: pointer;
    font-size: 1.2rem;
}

/* カテゴリタイトル */
.faq_box_category {
    margin-top: 20px;
    position: relative;
    background: #be1818;
    font-size: 1.4em;
    padding: 8px;
    text-align: center;
    color: white;
}

/* FAQ内リンク */
.search_link { text-align: right; }

.faq_box_category .search_link {
    font-size: 0.8em;
    position: absolute;
    margin-right: 1.5em;
    top: 50%;
    right: 0%;
    transform: translateY(-50%);
}

.faq_box_category .search_link a { color: white; }
.faq_box_category .search_link a.print::before {
    content: url(/common/img/faq/print.svg);
    display: inline-block;
    vertical-align: middle;
    margin-top: 2px;
}

/* カテゴリ一覧 */
ul.faq_box_categories {
    margin-top: 12px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: start;
}

ul.faq_box_categories>li {
    background: #f7e2e7;
    border: none;
    width: calc((100% - 16px) / 3);
    height: 48px;
    margin-top: 4px;
    margin-bottom: 4px;
}

ul.faq_box_categories>li a {
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #211201;
    font-size: 1rem;
    text-align: center;
}
ul.faq_box_categories > li:nth-child(3n+2) {
    margin-left: 8px;
    margin-right: 8px;
}

/* FAQ一覧 */
.faq_list {
    position: relative;
    border: 1px solid #cfcfcf;
    margin: 12px 0px;
    text-align: left;
}

.faq_list .question {
    display: block;
    list-style: none;
    cursor: pointer;
    padding: 8px 44px;
    pointer-events: auto;
}

.faq_list .question::before {
    content: url(/common/img/faq/question.png);
    position: absolute;
    top: 8px;
    left: 8px;
}

.faq_list .question::after {
    content: url(/common/img/faq/details_off.png);
    position: absolute;
    top: 8px;
    right: 8px;
}

.faq_list .question:hover {
    background: #dfdfdf;
}

.faq_list .question .new {
    color: #ff0000;
    font-size: small;
    font-weight: bold;
    margin-left: 10px;
}

.faq_list.detail_open .question::after {
    content: url(/common/img/faq/details_on.png);
    position: absolute;
    top: 8px;
    right: 8px;
}

.faq_list .answer {
    line-height: 0;
    padding: 0 48px;
    background: #dfdfdf;
    opacity: 0;
    visibility: hidden;
    transition: line-height .2s ease-out, padding-top .2s ease-out, padding-bottom .2s ease-out, opacity .2s linear, visibility .2s linear;
}

.faq_list.detail_open .answer {
    padding: 16px 48px 12px;
    line-height: 1.5;
    opacity: 1;
    visibility: visible;
}

.faq_list .answer::before {
    display: block;
    content: url(/common/img/faq/answer.png);
    position: absolute;
    left: 8px;
    line-height: 0;
    opacity: 0;
    visibility: hidden;
    transition: line-height .2s ease-out, opacity .2s linear, visibility .2s linear;
}

.faq_list.detail_open .answer::before {
    line-height: 1.5;
    opacity: 1;
    visibility: visible;
}

.faq_list .answer img {
    height: 0px;
}

.faq_list.detail_open .answer img {
    height: auto;
}

.faq_list.detail_open .answer img[alt="Google play"],
.faq_list.detail_open .answer img[alt="App store"] {
    margin-top: 7px;
}

div.popup_content {
    position: fixed;
    overflow: auto;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 1;
    opacity: 0;
    box-sizing: border-box;
    visibility: hidden;
    transition: .2s;
}

div.popup_content.popup_show {
    opacity: 1;
    visibility: visible;
}

div.popup_content .popup_close,
div.popup_content .popup_back {
    cursor: pointer;
    position: absolute;
}

div.popup_content .popup_back {
    z-index: 1;
    inset: 0;
    pointer-events: none;
    transition: background-color .2s;
}

div.popup_content.popup_show .popup_back {
    pointer-events: auto;
    background: rgba(0, 0, 0, .3);
}

div.popup_content .popup_close {
    z-index: 3;
    top: 0;
    right: 0;
    width: 48px;
    height: 48px;
}

div.popup_content .popup_close span,
div.popup_content .popup_close::before,
div.popup_content .popup_close::after {
    content: "";
    position: absolute;
    top: 40%;
    left: 40%;
    width: 40%;
    border-bottom: 2px solid black;
}

div.popup_content .popup_close span {
    transform: scaleX(0);
}

div.popup_content .popup_close::before {
    transform: rotate(135deg) scaleX(1.2);
}

div.popup_content .popup_close::after {
    transform: rotate(-135deg) scaleX(1.2);
}

div.popup_content .popup_inner {
    position: absolute;
    z-index: 2;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    max-height: 90vh;
    overflow: auto;
}