@charset "UTF-8";

.faq-contents {
    width: 780px;
    position: relative;
    margin-bottom:80px;
    box-sizing: border-box;
}
li.p-local-menu__item.is-current {
    background-color: #ddd8c9;
}
li.p-local-menu__item.is-current:hover {
    background-color: #ddd8c9;
}
li.p-local-menu__item:hover {
    background-color: #e9e6dd;
}
li.p-local-menu__item a {
    height: 60px;
    line-height: 20px;
    padding: 10px 5px 10px 25px;
    display: flex;
    align-items: center;
}
.faq-menu {
    width: 200px;
    float:left;
    margin-right:20px;
}
.faq-menu-list {
    border-width: 1px 1px 0 1px;
    border-style: solid;
    border-color: #dfdfdf;
}
.faq-menu .current {
    background-color: #ddd8c9;
}
.faq-menu li {
    border-bottom: 1px solid #dfdfdf;
    font-weight: bold;
    background-position: 10px center;
    background-repeat: no-repeat;
    background-image: url(https://www.aoyamahanamohonten.jp/images/sepia-arrow_2x.png);
    background-size: 5px 7px;
}
.faq-menu li a {
    font-weight:bold;
    height: 60px;
    line-height: 20px;
    text-decoration: none;
    padding: 10px 5px 10px 26px;
    display: flex;
    align-items: center;
}
.faq-menu li a:link, .faq-menu li a:visited, .faq-menu li a:hover, .faq-menu li a:active {
    color: #282727;
}
.faq-menu li:hover {
    background-color: rgba(221, 216, 201, 0.5);
}
.faq-contents h2 {
    font-size: 16px;
    padding-bottom: 15px;
    margin-bottom: 25px;
    border-bottom: 1px solid #b7b5af;
}
.faq-contents ul.aoyamahanamo-faq .question {
    position: relative;
    margin: 0;
    padding: 16px 16px 16px 50px;
    font-size: 15px;
    cursor: pointer;
    border-bottom: 1px solid #DDD;
}
.faq-contents ul.aoyamahanamo-faq .answer {
    padding: 16px 16px 16px 50px;
    font-size: 15px;
    position: relative;
}
.faq-contents ul.aoyamahanamo-faq .answer::before {
    line-height: 1;
    position: absolute;
    left: 20px;
    display: block;
    content: 'A.';
    font-weight: bold;
    color: #3285bf;
    font-size: 14px;
    margin-top: 5px;
}
.faq-contents ul.aoyamahanamo-faq .answer a:link {
    text-decoration: underline !important;
}
.faq-contents ul.aoyamahanamo-faq .answer p + p {
    margin-top:15px;
}
.faq-contents .answer-list {
    margin-left: 20px;
}
.faq-contents .answer-list li {
    list-style: disc !important;
    margin-top: 5px !important;
}
.faq-contents .answer-list li:first-child {
    margin-top: 15px !important;
}

/* 改行スタイル */
.faq-contents .br::before {
    content: "\A" ;
    white-space: pre ;
}

/* よくある質問エリア */
.faq-contents ul.aoyamahanamo-faq {
    width: 780px;
    margin:40px auto 0;
    text-align:left;
}
.faq-contents ul.aoyamahanamo-faq li {
    list-style:none;
    margin-top:30px;
}
.faq-contents ul.aoyamahanamo-faq li:first-child {
    margin-top: 0;
}
.faq-contents ul.aoyamahanamo-faq .question:hover {
    text-decoration:underline;
}
.faq-contents ul.aoyamahanamo-faq .question::before {
    line-height: 1;
    position: absolute;
    top: 20px;
    left: 20px;
    display: block;
    content: 'Q.';
    color: #ae986e;
}
.faq-contents ul.aoyamahanamo-faq .question:after {
    content: "";
    position: absolute;
    right: 25px;
    top: 38%;
    transition: all 0.2s ease-in-out; /* 要素の動きを指定 */  
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg); /* 要素の角度を指定 */  
}
.faq-contents ul.aoyamahanamo-faq .question.open:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 45%; /* .openクラスがついた時の要素の角度を指定 */
}

/* 汎用的ボタン */
.btn_link {
    margin: 25px 0;
    width: 100%;
    clear:both;
}
.btn_link a {
    position: relative;
    box-sizing: border-box;
    width: 280px;
    height: 55px;
    margin: 0 auto;
    background-color: #6b644e;
    border: none;
    color: #fff;
    font-size: 14px;
    line-height: 55px;
    letter-spacing: 0.1rem;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    transition: all 600ms;
    display: block;
    border-radius: 4px;
}
.btn_link a::after {
    content: "";
    width: calc(0.8em / 1.3);
    height: calc(0.8em / 1.3);
    display: block;
    border-left: 2px solid #fff;
    border-top: 2px solid #fff;
    top: calc(0.4em / 2 - 0.5px + 50% - 1em / 2);
    right: calc(0.2907801418em / 2 - 0.5px + 1.3em);
    position: absolute;
    transition-duration: 0.3s;
}
.btn_link a::after {
    transform: rotate(
135deg
);
}
.btn_link a:hover, .btn_link a:active {
    background: #7a7259;
}

/* ふわっと表示させるjqueryのための記述 */
.fadeIn {
    opacity: 0;
    transition: 2s;
}
.fadeIn.is-show {
    opacity: 1;
}


/*---------- モバイル ----------*/
@media not screen and (min-width: 520px) {
#faq-wrapper {
    margin:20px 10px 40px;
    overflow:hidden;
}
.faq-contents {
    width:auto;
    position: relative;
    margin-bottom:40px;
}
.faq-contents h2 {
    font-size: 16px;
    padding-bottom: 15px;
    margin-bottom: 25px;
    border-bottom: 1px solid #b7b5af;
}
/* 改行スタイル */
.faq-contents .br::before {
    content: "\A" ;
    white-space: pre ;
}

/* よくある質問エリア */
.faq-contents ul.aoyamahanamo-faq {
    width:auto;
    margin: 20px auto 0;
    text-align:left;
}
.faq-contents ul.aoyamahanamo-faq li {
    list-style:none;
    margin-top:30px;
}
.faq-contents ul.aoyamahanamo-faq li:first-child {
    margin-top: 0;
}
.faq-contents ul.aoyamahanamo-faq .question {
    position: relative;
    margin: 0;
    padding: 16px 46px 16px 40px;
    font-size: 15px;
    cursor: pointer;
    border-bottom: 1px solid #DDD;
}
.faq-contents ul.aoyamahanamo-faq .question:hover {
    text-decoration:underline;
}
.faq-contents ul.aoyamahanamo-faq .question::before {
    line-height: 1;
    position: absolute;
    top: 22px;
    left: 12px;
    display: block;
    content: 'Q.';
    color: #ae986e;
}
.faq-contents ul.aoyamahanamo-faq .question:after {
    content: "";
    position: absolute;
    right: 25px;
    top: 38%;
    transition: all 0.2s ease-in-out; /* 要素の動きを指定 */  
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #000;
    border-right: solid 2px #000;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg); /* 要素の角度を指定 */
    visibility: inherit;
}

.faq-contents ul.aoyamahanamo-faq .question.open:after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
    top: 45%; /* .openクラスがついた時の要素の角度を指定 */
}
.faq-contents ul.aoyamahanamo-faq .answer {
    padding: 16px 16px 16px 50px;
    font-size: 15px;
    position: relative;
}
.faq-contents ul.aoyamahanamo-faq .answer::before {
    line-height: 1;
    position: absolute;
    left: 20px;
    display: block;
    content: 'A.';
    font-weight: bold;
    color: #3285bf;
    font-size: 14px;
    margin-top: 5px;
}
.faq-contents ul.aoyamahanamo-faq .answer a:link {
    text-decoration: underline !important;
}
.faq-contents ul.aoyamahanamo-faq .answer p + p {
    margin-top: 15px;
}

/* 汎用的ボタン */
.btn_link {
    margin: 20px 0;
    width: 100%;
    clear:both;
}
.btn_link a {
    position: relative;
    box-sizing: border-box;
    width: 280px;
    height: 55px;
    margin: 0 auto;
    background-color: #6b644e;
    border: none;
    color: #fff;
    font-size: 14px;
    line-height: 55px;
    letter-spacing: 0.1rem;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    transition: all 600ms;
    display: block;
    border-radius: 4px;
}
.btn_link a::after {
    content: "";
    width: calc(0.8em / 1.3);
    height: calc(0.8em / 1.3);
    display: block;
    border-left: 2px solid #fff;
    border-top: 2px solid #fff;
    top: calc(0.4em / 2 - 0.5px + 50% - 1em / 2);
    right: calc(0.2907801418em / 2 - 0.5px + 1.3em);
    position: absolute;
    transition-duration: 0.3s;
}
.btn_link a::after {
    transform: rotate(
135deg
);
}
.btn_link a:hover, .btn_link a:active {
    background: #7a7259;
}
}