.message {
    background: linear-gradient(
        to bottom,
        #FFFCE6 0%,
        #FFF5AF 50%,
        #FFEF7E 100%
      );    
    border-radius: 8px;
    padding: 2rem;
    position: relative;
    margin: auto;
}
@media only screen and (min-width: 768px) {
    .message {
        width: 65%;
    }
}
.message__inner {
    background: #FFF;
    border-radius: 8px;
    padding: 3rem 3rem 3rem 25%;
}
.message__text {
    margin: 0;
    font-weight: bold;
    font-size: 1.8rem;
    color: #402B0C;
}
.message__img img {
    position: absolute;
    top: 0;
    height: 100%;
    left: 1%;
}
@media only screen and (max-width: 767.98px) {
    .message {
        padding: 1.5rem;
    }
    .message__inner {
        padding: 1.5rem;
    }
    .message__text {
        font-size: 1.4rem;
    }
    .message__img img {
        display: none;
    }
}
.util-large .larger {
    font-size: 1.6em;
    line-height: 0.8em;
}
.joken-wrap {
    position: relative;
}
.joken-wrap .fukidashi {
    background:#FFFCE3 ;
    border: 1px solid #BEAC2C;
    border-radius: 8px;
}
.joken-wrap .fukidashi .text {
    margin: 0;
}
.joken-wrap .fukidashi .fukidashi-inner {
    padding: 2.5rem;
}
.joken-wrap .img {
    position: absolute;
    bottom: 0;
    right: 0;
}
@media only screen and (min-width: 768px) {
    .joken-wrap .fukidashi {
        margin-right: 18%;
    }
}
@media only screen and (max-width: 767.98px) {
    .joken-wrap .fukidashi .fukidashi-inner {
        padding: 1.5rem;
    } 
    .joken-wrap .img {
        max-width: 50%;
        bottom: -7rem;
    }
}
.table.campaign [class*="__cell"][class*="--lv1"]:not([class*="__cell__sub"]) {
    background-color: #0b3190;
    color: #FFF;
}
.accordion__head::after, .faq__head::after {
	content: "";
	position: absolute;
	inset: 0;
	pointer-events: none;
	opacity: 0;
	transition: opacity .25s;
}
.accordion[open] .accordion__head::after, .faq[open] .faq__head::after {
	opacity: 1;
}
.accordion__head .accordion__title, 
.faq__head .faq__title {
    color: #0b3190;
}
.accordion__head:hover .accordion__title,
.faq__head:hover .faq__title {
    color: #d32700;
}
.accordion__title:after, .accordion__title:before, .faq__title:after, .faq__title:before {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 21px;
	height: 3px;
	margin: -1.5px 0 0;
	background: #ec6b15;
	transition: transform .25s cubic-bezier(.4, 0, .2, 1);
}
.accordion__title:after, .faq__title:after {
	transform: rotate(0);
}
.accordion__title:before, .faq__title:before {
	transform: rotate(90deg);
}
.accordion[open] .accordion__title:before, .faq[open] .faq__title:before {
	transform: rotate(0);
}
.accordion[open] .accordion__head,
.faq[open] .faq__head {
    box-shadow: none;
}