@charset "UTF-8";

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font: inherit;
    font-size: 100%;
    vertical-align: baseline
}

html {
    line-height: 1
}

ol, ul {
    list-style: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

caption, th, td {
    text-align: left;
    font-weight: normal;
    vertical-align: middle
}

q, blockquote {
    quotes: none
}

qbefore, qafter, blockquotebefore, blockquoteafter {
    content: "";
    content: none
}

a img {
    border: none
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block
}

img {
    vertical-align: bottom;
    border: none
}

button, input, select, textarea {
    vertical-align: middle
}

button, input {
    line-height: normal
}

button-moz-focus-inner, input-moz-focus-inner {
    padding: 0;
    border: 0
}

button, html input[type="button"], input[type="reset"], input[type="submit"] {
    cursor: pointer;
    -webkit-appearance: button
}

label, select, button, input[type="button"], input[type="reset"], input[type="submit"], input[type="search"], input[type="radio"], input[type="checkbox"] {
    cursor: pointer;
    outline: none
}

textarea {
    overflow: auto;
    vertical-align: top;
    font-family: sans-serif
}

* {
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

html {
    font-size: 62.5%
}

a {
    -webkit-tap-highlight-color: transparent;
}

a:link, a:visited {
    text-decoration: none
}

a, img {
    -webkit-touch-callout: none;
    -webkit-user-select: none
}

html, body {
    min-height: 100vh
}

body {
    color: #000;
    font-family: Helvetica, Arial, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, verdana, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", Sans-Serif;
    width: 100%;
    background: #fff026;
    word-wrap: break-word;
    overflow-wrap: break-word;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased
}

.main-contents {
    padding: 40px 10px 75px
}

input[type="button"], input[type="text"], input[type="password"], input[type="submit"], input[type="image"], textarea {
    -webkit-appearance: none;
    border-radius: 0
}

.js-section {
    display: none
}

.mod-fukidashi.js-tool-tip {
    display: none
}

.mod-btn__zipsearch {
    padding-bottom: 8px;
}

.mod-btn__zipsearch a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 85px;
    height: 20px;
    background-color: #fff026;
    border-radius: 2px;
}

.mod-btn__zipsearch a:active {
    background: #ffe626
}

.mod-btn__zipsearch a img {
    width: 40px
}

.mod-btn__list {
    margin-bottom: 50px
}

.mod-btn__2column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mod-btn__2column button, .mod-btn__2column a {
    width: 48%;
    height: 40px;
    margin: 0;
}

.mod-btn__2column button:active, .mod-btn__2column a:active {
    background: #ffe626
}

.mod-btn__2column button img, .mod-btn__2column a img {
    height: 15px
}

.mod-btn__2column, .mod-btn__500-80, .mod-btn__280-80, .mod-btn__280-60, .mod-btn__200-60 {
    position: relative;
    margin-bottom: 50px;
}

.mod-btn__list .mod-btn__2column, .mod-btn__list .mod-btn__500-80, .mod-btn__list .mod-btn__280-80, .mod-btn__list .mod-btn__280-60, .mod-btn__list .mod-btn__200-60 {
    margin-bottom: 20px
}

.mod-btn__2column .notes, .mod-btn__500-80 .notes, .mod-btn__280-80 .notes, .mod-btn__280-60 .notes, .mod-btn__200-60 .notes {
    margin: 8px auto 0;
    font-size: 1.5rem;
    line-height: 1.75
}

.mod-btn__2column.disabled a, .mod-btn__500-80.disabled a, .mod-btn__280-80.disabled a, .mod-btn__280-60.disabled a, .mod-btn__200-60.disabled a, .mod-btn__2column.disabled button, .mod-btn__500-80.disabled button, .mod-btn__280-80.disabled button, .mod-btn__280-60.disabled button, .mod-btn__200-60.disabled button {
    pointer-events: none;
    background: #e6e6e6;
}

.mod-btn__2column.disabled a img, .mod-btn__500-80.disabled a img, .mod-btn__280-80.disabled a img, .mod-btn__280-60.disabled a img, .mod-btn__200-60.disabled a img, .mod-btn__2column.disabled button img, .mod-btn__500-80.disabled button img, .mod-btn__280-80.disabled button img, .mod-btn__280-60.disabled button img, .mod-btn__200-60.disabled button img {
    opacity: .5
}

.mod-btn__2column button, .mod-btn__500-80 button, .mod-btn__280-80 button, .mod-btn__280-60 button, .mod-btn__200-60 button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none
}

.mod-btn__2column button, .mod-btn__500-80 button, .mod-btn__280-80 button, .mod-btn__280-60 button, .mod-btn__200-60 button, .mod-btn__2column a, .mod-btn__500-80 a, .mod-btn__280-80 a, .mod-btn__280-60 a, .mod-btn__200-60 a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: #fff026;
    border-radius: 2px;
    margin: 0 auto;
}

.mod-btn__2column button:active, .mod-btn__500-80 button:active, .mod-btn__280-80 button:active, .mod-btn__280-60 button:active, .mod-btn__200-60 button:active, .mod-btn__2column a:active, .mod-btn__500-80 a:active, .mod-btn__280-80 a:active, .mod-btn__280-60 a:active, .mod-btn__200-60 a:active {
    background: #ffe626
}

.mod-btn__500-80 a+a, .mod-btn__500-80 button+a, .mod-btn__500-80 a+button, .mod-btn__500-80 button+button {
    margin-top: 21px
}

.mod-btn__280-80 .notes {
    width: 140px
}

.mod-btn__280-80 button, .mod-btn__280-80 a {
    width: 140px;
    height: 40px;
}

.mod-btn__280-80 button img, .mod-btn__280-80 a img {
    height: 15px
}

.mod-btn__280-60 {
    margin-bottom: 32px;
}

.mod-btn__280-60 .notes {
    width: 140px
}

.mod-btn__280-60 button, .mod-btn__280-60 a {
    width: 140px;
    height: 30px;
}

.mod-btn__280-60 button img, .mod-btn__280-60 a img {
    height: 13px
}

.mod-btn__500-80 .notes {
    width: 100%
}

.mod-btn__500-80 button, .mod-btn__500-80 a {
    width: 100%;
    height: 40px;
}

.mod-btn__500-80 button img, .mod-btn__500-80 a img {
    height: 15px
}

.mod-btn__200-60 {
    margin-bottom: 32px;
}

.mod-btn__200-60 .notes {
    width: 100px
}

.mod-btn__200-60 button, .mod-btn__200-60 a {
    width: 100px;
    height: 30px;
}

.mod-btn__200-60 button img, .mod-btn__200-60 a img {
    height: 13px
}

.mod-column-detail {
    background: #fff;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    margin-bottom: 40px;
}

.mod-column-detail__mainpct img {
    width: 100%
}

.mod-column-detail__content {
    padding: 15px 20px 45px;
}

.mod-column-detail__content.no-pct {
    padding-top: 40px
}

.mod-column-detail__content__date {
    font-size: 1.2rem;
    line-height: 20px;
    margin-bottom: 10px
}

.mod-column-detail__content__title {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 27px;
    margin-bottom: 35px
}

.mod-column-detail__content__kidoku {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background: #fff026;
    width: 100%;
    height: 22px;
    border-radius: 100px;
    margin: -14px auto 40px;
}

.mod-column-detail__content__kidoku img {
    width: auto;
    height: 14px
}

.mod-column-detail__content__subtitle {
    font-size: 1.5rem;
    font-weight: bold;
    line-height: 27px;
    min-height: 35px;
    padding-top: 3px;
    padding-left: 10px;
    border-left: 3px solid #fff026;
    margin-bottom: 20px
}

.mod-column-detail__content__text {
    font-size: 1.4rem;
    line-height: 30px;
    margin-bottom: 32px
}

.mod-column-detail__content__pct {
    margin-bottom: 22px;
}

.mod-column-detail__content__pct img {
    width: 100%;
    border-radius: 3px
}

.mod-column-detail__content__info {
    font-size: 1.2rem;
    line-height: 19px;
    word-break: break-all;
    text-align: left;
    text-justify: auto;
    padding: 38px 20px;
    background: url("../images/bg-line-dot-yellow.svg") center top repeat-x;
    background-size: 12px 3px;
    margin: 0 -20px;
}

.mod-column-detail__content__info a {
    color: #000;
    text-decoration: underline
}

.mod-column-detail__content__btn {
    padding: 52px 20px 5px;
    background: url("../images/bg-line-dot-yellow.svg") center top repeat-x;
    background-size: 12px 3px;
    margin: 0 -20px;
}

.mod-column-detail__content__btn .mod-btn__500-80 {
    margin-bottom: 0
}

.mod-column-index__list {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 10px;
    color: #000;
    background: #fff;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    margin-bottom: 10px;
}

.mod-column-index__list.checked::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3)
}

.mod-column-index__list.checked::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("../images/icon-checked.svg") center center no-repeat;
    background-size: 53px
}

.mod-column-index__list__thumbnail {
    overflow: hidden;
    width: 90px;
    height: 90px;
    border-radius: 3px;
}

.mod-column-index__list__thumbnail img {
    width: 100%
}

.mod-column-index__list__detail {
    position: relative;
    width: calc(100% - 100px);
    padding: 15px 0;
}

.mod-column-index__list__detail__entrydate {
    height: 18px;
    font-size: 1rem;
    font-weight: bold;
    line-height: 14px
}

.mod-column-index__list__detail__title {
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 18px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 100%
}

.mod-column-index__list__detail__date {
    position: absolute;
    left: 0;
    bottom: 0;
    font-size: .9rem;
    color: #999;
}

.mod-column-index__list__detail__date-top {
    font-size: 1rem
}

.mod-confirm {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 5px;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
    margin-bottom: 30px;
}

.mod-confirm.vertical {
    display: block;
}

.mod-confirm.vertical .mod-confirm__title {
    width: 100%;
    margin-bottom: 10px
}

.mod-confirm.vertical .mod-confirm__detail {
    width: 100%;
    padding-left: 6px
}

.mod-confirm.last {
    margin-bottom: 70px
}

.mod-confirm__title {
    width: 29%;
    padding-left: 5px;
}

.mod-confirm__title span img {
    position: relative;
    top: 2px;
    height: 13px
}

.mod-confirm__detail {
    width: 67.4%;
    padding-bottom: 3px;
}

.mod-confirm__detail span {
    display: block;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.357142857142857;
    min-height: 18px
}

.mod-confirm__detail.add-unit {
    position: relative;
    padding-right: 40px;
}

.mod-confirm__detail.add-unit .unit {
    font-size: 1.2rem;
    font-weight: bold;
    position: absolute;
    bottom: 5px;
    right: 14px
}

.mod-confirm.title-wide .mod-confirm__title {
    width: 46%
}

.mod-confirm.title-wide .mod-confirm__detail {
    width: 50.6%
}

.mod-confirm.title-follow {
    overflow: hidden;
    display: block;
}

.mod-confirm.title-follow .mod-confirm__title {
    float: left;
    width: auto
}

.mod-confirm.title-follow .mod-confirm__detail {
    overflow: hidden;
    width: auto;
    padding-left: 20px
}

.mod-confirm+.mod-confirm.vertical {
    margin-top: -6px
}

.mod-contact__lead {
    font-size: 1.4rem;
    line-height: 1.785714285714286;
    padding-bottom: 37px;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
    margin: -15px 0 37px
}

.mod-contact__detail {
    padding-bottom: 40px;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
    margin-bottom: 40px;
}

.mod-contact__detail:nth-last-of-type(1) {
    background-image: none;
    padding-bottom: 0;
    margin-bottom: 30px
}

.mod-contact__detail__title {
    text-align: center;
    font-size: 1.5rem;
    font-weight: 600;
    margin-bottom: 20px
}

.mod-contact__detail__pct {
    text-align: center;
    margin-bottom: 20px
}

.mod-contact__detail__text-tel {
    font-size: 1.2rem;
    line-height: 1.5;
    padding: 15px 0 0;
    text-align: center
}

.mod-contact__detail__text-mail {
    display: inline-block;
    font-size: 1.4rem;
    line-height: 1.785714285714286;
    margin-left: calc((100% - 210px) / 2)
}

.mod-contact__detail .mod-btn__500-80 {
    margin-bottom: 0
}

.mod-contact__faq {
    margin: -15px 0 -10px
}

.mod-contents {
    color: #000;
    display: block;
    padding: 50px 24px 15px;
    background: #fff;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    margin-bottom: 40px;
}

.mod-contents:last-child {
    margin-bottom: 0
}

.mod-contents__list {
    margin-bottom: 40px;
}

.mod-contents__list:last-child {
    margin-bottom: 0
}

.mod-contents__list .mod-contents {
    margin-bottom: 20px;
}

.mod-contents__list .mod-contents:last-child {
    margin-bottom: 0
}

.mod-contents__list .mod-contents.set-point {
    margin-bottom: 10px
}

.mod-contents__block {
    margin: 0 -24px 40px;
    padding: 0 24px 1px;
    background-image: url("../images/bg-line-dot-yellow.svg");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-contents__block.last {
    margin-bottom: 0;
    padding-bottom: 0;
    background: none
}

.mod-contents__text {
    font-size: 1.4rem;
    line-height: 1.75;
    margin-bottom: 35px;
}

.mod-contents__text.no-info {
    margin-top: 30px
}

.mod-coupon-detail {
    margin: -14px 0 0;
}

.mod-coupon-detail__title {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.388888888888889;
    margin-bottom: 20px
}

.mod-coupon-detail__target {
    font-size: 1.2rem;
    line-height: 1.272727272727273;
    margin-bottom: 7px
}

.mod-coupon-detail__period {
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.272727272727273;
    margin-bottom: 35px
}

.mod-coupon-detail__info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 25px;
    border-radius: 13px;
    background-color: #f15679;
    margin-bottom: 46px;
}

.mod-coupon-detail__info img {
    height: 12px
}

.mod-coupon-detail__pct {
    margin: 0 -14px 30px;
}

.mod-coupon-detail__pct img {
    width: 100%
}

.mod-coupon-detail__text {
    font-size: 1.4rem;
    line-height: 2.142857142857143;
}

.mod-coupon-detail__text a {
    color: #000;
    text-decoration: underline
}

.mod-coupon-detail__modal--contents {
    margin-right: -3px
}

.mod-coupon-detail__modal-img {
    margin-bottom: 20px;
}

.mod-coupon-detail__modal-img img {
    width: 100%;
    height: auto
}

.mod-coupon-detail__modal-title {
    font-weight: bold;
    font-size: 1.8rem;
    line-height: 1.5;
    margin: 0 14px 25px
}

.mod-coupon-detail__modal-text {
    color: #f15679;
    font-size: 1.2rem;
    line-height: 1.6;
    margin: 0 14px;
    padding-bottom: 130px
}

.mod-coupon-detail__modal-btn.mod-modal__closebtn {
    left: 10px;
    right: 10px
}

.mod-coupon-detail .mod-confirm {
    margin-top: 37px
}

.mod-coupon-detail .mod-btn__500-80 {
    margin: -8px 0 35px;
}

.mod-coupon-detail .mod-btn__500-80.btn-bottom {
    margin: 50px 0 35px
}

.mod-coupon-index {
    padding-bottom: 25px;
}

.mod-coupon-index__item {
    margin-top: -40px;
}

.mod-coupon-index__item__thumbnail {
    margin: 0 -14px 15px;
}

.mod-coupon-index__item__thumbnail img {
    width: 100%
}

.mod-coupon-index__item__detail {
    margin-bottom: 23px;
}

.mod-coupon-index__item__detail__title {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 18px
}

.mod-coupon-index__item__detail__text {
    font-size: 1.2rem;
    line-height: 1.166666666666667;
    margin-bottom: 8px
}

.mod-coupon-index__item__detail__period {
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.166666666666667
}

.mod-coupon-index__item .mod-btn__500-80 {
    margin: 0 auto
}

.mod-enquete-detail {
    background: #fff;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    margin-bottom: 40px;
}

.mod-enquete-detail__mainpct img {
    width: 100%
}

.mod-enquete-detail__content {
    padding: 38px 20px 45px;
}

.mod-enquete-detail__content__date {
    font-size: 1.2rem;
    line-height: 14px;
    margin-bottom: 15px
}

.mod-enquete-detail__content__title {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 27px;
    margin-bottom: 17px
}

.mod-enquete-detail__content__id {
    font-size: .9rem;
    line-height: 12px;
    color: #999;
    margin-bottom: 29px
}

.mod-enquete-detail__content__icon {
    height: 48px;
}

.mod-enquete-detail__content__icon>span {
    display: inline-block;
    height: 20px;
    font-weight: 600;
    border-radius: 10px;
    padding: 1.5px 10px 0;
    margin-right: 10px;
}

.mod-enquete-detail__content__icon>span.bg-yellow {
    color: #000;
    background-color: #fff026
}

.mod-enquete-detail__content__icon>span.bg-blue {
    color: #fff;
    background-color: #007bbb
}

.mod-enquete-detail__content__icon>span.bg-orange {
    color: #fff;
    background-color: #f6931d
}

.mod-enquete-detail__content__icon>span .text {
    margin-right: 5px;
}

.mod-enquete-detail__content__icon>span .text img {
    vertical-align: middle;
    height: 11px
}

.mod-enquete-detail__content__icon>span .num {
    vertical-align: middle;
    font-size: 1.6rem;
    margin-right: 3px
}

.mod-enquete-detail__content__icon>span .unit {
    vertical-align: middle;
    font-size: 1.1rem
}

.mod-enquete-detail__content__text {
    font-size: 1.4rem;
    line-height: 1.785714285714286;
}

.mod-enquete-detail__content__text.closed {
    overflow: hidden;
    height: 9em;
}

.mod-enquete-detail__content__text.closed+.mod-enquete-detail__content__togglebtn img {
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1)
}

.mod-enquete-detail__content__togglebtn {
    text-align: center;
    margin-bottom: 22px;
}

.mod-enquete-detail__content__togglebtn span {
    display: block;
    cursor: pointer;
    padding: 5px 0 15px;
}

.mod-enquete-detail__content__togglebtn span img {
    height: 11px;
    -webkit-transform: scale(1, -1);
    -ms-transform: scale(1, -1);
    transform: scale(1, -1)
}

.mod-enquete-detail__content__form {
    padding: 38px 20px;
    background: url("../images/bg-line-dot-yellow.svg") center top repeat-x;
    background-size: 12px 3px;
    margin: 0 -20px;
}

.mod-enquete-detail__content__form__checkbox2col {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mod-enquete-detail__content__form__checkbox2col .mod-input-checkbox-normal {
    width: 50%;
    margin-top: 7px;
    margin-bottom: 6px
}

.mod-enquete-detail__content__form__radio1col {
    padding-top: 12px;
}

.mod-enquete-detail__content__form__radio1col .mod-input-radio {
    margin-bottom: 8px;
}

.mod-enquete-detail__content__form__radio1col .mod-input-radio__label {
    font-weight: normal
}

.mod-enquete-detail__content__btn {
    margin-top: -38px;
    margin-bottom: 5px;
}

.mod-enquete-detail__content__btn__caution {
    font-size: 1rem;
    margin-bottom: 18px
}

.mod-enquete-detail__content__btn__icon {
    text-align: center;
    margin-top: -30px;
}

.mod-enquete-detail__content__btn__icon>span {
    display: inline-block;
    height: 15px;
    font-weight: 600;
    border-radius: 10px;
    padding: 2px 8px 0;
    margin-right: 10px;
}

.mod-enquete-detail__content__btn__icon>span.bg-yellow {
    color: #000;
    background-color: #fff026
}

.mod-enquete-detail__content__btn__icon>span.bg-blue {
    color: #fff;
    background-color: #007bbb
}

.mod-enquete-detail__content__btn__icon>span .text {
    margin-right: 3px;
}

.mod-enquete-detail__content__btn__icon>span .text img {
    vertical-align: top;
    height: 11px
}

.mod-enquete-detail__content__btn__icon>span .num {
    vertical-align: middle;
    font-size: 1.2rem;
    margin-right: 2px
}

.mod-enquete-detail__content__btn__icon>span .unit {
    vertical-align: bottom;
    font-size: .8rem
}

.mod-enquete-detail__content__btn .mod-btn__500-80 {
    margin-bottom: 10px
}

.mod-enquete-index {
    padding-bottom: 30px;
}

.mod-enquete-index__list {
    position: relative;
    display: block;
    padding: 32px 10px 10px;
    color: #000;
    background: #fff;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    margin-bottom: 10px;
}

.mod-enquete-index__list.checked {
    pointer-events: none;
}

.mod-enquete-index__list.checked::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3)
}

.mod-enquete-index__list.checked::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url("../images/icon-checked.svg") center center no-repeat;
    background-size: 53px
}

.mod-enquete-index__list__head {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 6px;
}

.mod-enquete-index__list__head__period {
    font-size: 1rem;
    line-height: 12px
}

.mod-enquete-index__list__head__icon {
    position: absolute;
    left: 10px;
    top: 10px;
    right: 10px;
    height: 15px;
    text-align: right;
}

.mod-enquete-index__list__head__icon>span {
    display: inline-block;
    height: 15px;
    font-weight: 600;
    border-radius: 8px;
    padding: 2px 7px 0 11px;
    margin-left: 5px;
}

.mod-enquete-index__list__head__icon>span.bg-yellow {
    color: #000;
    background-color: #fff026
}

.mod-enquete-index__list__head__icon>span.bg-blue {
    color: #fff;
    background-color: #007bbb
}

.mod-enquete-index__list__head__icon>span.bg-orange {
    color: #fff;
    background-color: #f6931d
}

.mod-enquete-index__list__head__icon>span .num {
    font-size: 1.2rem;
    margin-right: 3px
}

.mod-enquete-index__list__head__icon>span .unit {
    font-size: .8rem
}

.mod-enquete-index__list__title {
    height: 52px;
    font-size: 1.3rem;
    line-height: 18px;
    font-weight: 600
}

.mod-enquete-index__list__foot {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    font-size: .9rem;
    color: #999;
}

.mod-enquete-index__list__foot__date {
    width: 50%
}

.mod-enquete-index__list__foot__id {
    width: 50%;
    text-align: right
}

.mod-error {
    width: 100%;
    margin-top: 20px;
    color: #f15679;
    font-size: 1.2rem;
    line-height: 1.75;
    font-weight: bold;
}

.mod-error p {
    position: relative;
    margin-top: 10px;
    padding-left: 1.5rem;
}

.mod-error p:before {
    content: "・";
    position: absolute;
    top: 0;
    left: 0
}

.mod-error p:first-child {
    margin-top: 0
}

.mod-error.list {
    margin-top: 0;
    margin-bottom: 45px;
}

.mod-error.list p {
    margin-top: 0;
    margin-bottom: 10px
}

.mod-exchange-point-detail {
    margin: -10px 0 0;
}

.mod-exchange-point-detail__title {
    font-size: 1.8rem;
    font-weight: 600;
    line-height: 1.388888888888889;
    margin-bottom: 28px
}

.mod-exchange-point-detail__thumbnail {
    text-align: center;
    margin: -13px -24px 27px;
}

.mod-exchange-point-detail__thumbnail img {
    width: 200px
}

.mod-exchange-point-detail__text {
    font-size: 1.4rem;
    line-height: 2.142857142857143;
}

.mod-exchange-point-detail__text a {
    color: #000
}

.mod-exchange-point-detail__annotation {
    margin-top: 12px;
    font-size: 1rem;
    line-height: 1.7;
}

.mod-exchange-point-detail__annotation a {
    color: #000
}

.mod-exchange-point-detail__caution {
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.583333333333333;
    color: #f15679;
    padding: 18px 0 45px
}

.mod-exchange-point-detail__border {
    margin: 25px -24px;
    padding: 50px 24px 15px;
    background-image: url("../images/bg-line-dot-yellow.svg"), url("../images/bg-line-dot-yellow.svg");
    background-size: 12px 3px, 12px 3px;
    background-position: left top, left bottom;
    background-repeat: repeat-x, repeat-x;
    margin-bottom: 28px
}

.mod-exchange-point-detail .mod-confirm {
    margin-top: 30px
}

.mod-exchange-point-detail__confirm {
    margin-top: 0 !important;
    margin-bottom: 25px;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: start;
}

.mod-exchange-point-detail__confirm .mod-confirm__title {
    width: 46%
}

.mod-exchange-point-detail__confirm .mod-confirm__detail {
    text-align: left;
    width: 90px;
}

.mod-exchange-point-detail__confirm .mod-confirm__detail span {
    font-size: 1.4rem;
}

.mod-exchange-point-detail__confirm .mod-confirm__detail span small {
    display: inline-block;
    width: 21px;
    font-size: 1.2rem
}

.mod-exchange-point-detail .mod-btn__2column {
    margin-bottom: 35px
}

.mod-exchange-point-index {
    margin: 0 -24px;
}

.mod-exchange-point-index__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 24px 40px;
    background-image: url("../images/bg-line-dot-yellow.svg");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
    margin: 38px 0;
}

.mod-exchange-point-index__item:nth-last-of-type(1) {
    background-image: none;
    padding-bottom: 25px;
    margin-bottom: 0
}

.mod-exchange-point-index__item__thumbnail {
    width: 80px;
    height: 80px;
    border: 1px solid #ccc;
    border-radius: 2px;
    margin-bottom: 23px;
}

.mod-exchange-point-index__item__thumbnail img {
    width: 100%
}

.mod-exchange-point-index__item__thumbnail.noimage {
    border: 0
}

.mod-exchange-point-index__item__detail {
    width: calc(100% - 98px);
    margin-bottom: 23px;
}

.mod-exchange-point-index__item__detail__title {
    height: 65px;
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.5
}

.mod-exchange-point-index__item__detail__point {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4
}

.mod-exchange-point-index__item .mod-btn__500-80 {
    width: 100%;
    margin: 0
}

.mod-exchange-point-top {
    text-align: center;
    margin: -28px 0 0;
}

.mod-exchange-point-top span {
    position: relative;
    display: inline-block;
    font-size: 3.6rem;
    font-weight: 600;
}

.mod-exchange-point-top span::after {
    position: absolute;
    right: -30px;
    bottom: 2px;
    content: "pt";
    font-size: 2.2rem;
    font-weight: 600
}

.mod-flash-msg {
    text-align: center;
    color: #f00;
    font-size: 1.4rem;
    line-height: 1.75;
    font-weight: bold;
    margin-bottom: 45px
}

.mod-footer-annotation {
    padding: 20px 10px 40px;
    font-size: 1rem;
    line-height: 1.7
}

.mod-form {
    margin-bottom: 38px;
}

.mod-form.last {
    margin-bottom: 68px
}

.mod-form__title {
    vertical-align: middle;
    padding-left: 5px;
    margin-bottom: 10px;
}

.mod-form__title span {
    display: inline-block;
    font-size: 1px;
}

.mod-form__title span img {
    height: 12px
}

.mod-form__title.required span::after {
    content: "";
    display: inline-block;
    position: relative;
    top: 2px;
    margin-left: 12px;
    background: url("../images/icon-require.svg");
    width: 40px;
    height: 15px
}

.mod-form__title-text {
    vertical-align: middle;
    margin-bottom: 14px;
}

.mod-form__title-text span {
    display: inline-block;
    font-size: 1.3rem;
    font-weight: 600;
    line-height: 21px;
    width: 100%;
}

.mod-form__title-text.required span::after {
    content: "";
    display: inline-block;
    position: relative;
    top: 3px;
    margin-left: 6px;
    background: url("../images/icon-require.svg");
    width: 40px;
    height: 15px
}

.mod-form__2column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
    margin-bottom: 38px;
}

.mod-form__2column-block {
    width: 44%
}

.mod-form__birthwrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mod-form__birthwrap-block {
    position: relative;
    width: 24%;
}

.mod-form__birthwrap-block:nth-of-type(1) {
    width: 32%
}

.mod-form__birthwrap-block:nth-of-type(1)::after, .mod-form__birthwrap-block:nth-of-type(2)::after {
    content: "/";
    position: absolute;
    bottom: 10px;
    right: -18%;
    text-align: center;
    font-size: 1.3rem;
    font-weight: 600
}

.mod-form__birthwrap-block:nth-of-type(2)::after {
    right: -25%
}

.mod-form__ym-d {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mod-form__ym-d-block {
    position: relative;
    width: 24%;
}

.mod-form__ym-d-block:nth-of-type(1) {
    width: 67%;
}

.mod-form__ym-d-block:nth-of-type(1) select {
    padding-left: 10px
}

.mod-form__ym-d-block:nth-of-type(1)::after {
    content: "/";
    position: absolute;
    bottom: 10px;
    right: -8.5%;
    text-align: center;
    font-size: 1.3rem;
    font-weight: 600
}

.mod-form__ym-d-block:nth-of-type(2)::after {
    right: -25%
}

.mod-form__genderwrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: 15px;
}

.mod-form__genderwrap-block {
    width: 50%;
}

.mod-form__genderwrap-block:nth-of-type(1) {
    padding-left: 5px
}

.mod-form__genderwrap .mod-input-radio {
    margin-bottom: 0
}

.mod-form__caution {
    padding-top: 7px;
    font-size: 1rem;
    line-height: 1.5
}

.mod-fukidashi {
    position: absolute;
    left: calc(50% - 115px);
    top: -80px;
    display: block;
    text-align: center;
    width: 230px;
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.416666666666667;
    padding: 15px 10px;
    color: #fff;
    background: #000;
    margin: 0 auto 12px;
    border-radius: 3px;
}

.mod-fukidashi:before {
    content: "";
    position: absolute;
    top: 100%;
    left: 50%;
    margin-left: -5px;
    border: 5px solid transparent;
    border-top: 9px solid #000
}

.mod-head-link {
    overflow: hidden;
    position: relative;
    height: 50px;
    background: #fff;
    margin: -40px -10px 40px;
}

.mod-head-link__back {
    position: absolute;
    top: 0;
    left: 0;
    text-indent: -9999px;
    width: 40px;
    height: 50px;
    background: url("../images/icon-link-black.svg") center center no-repeat;
    background-size: 10px 14px;
    -webkit-transform: scale(-1, 1);
    -ms-transform: scale(-1, 1);
    transform: scale(-1, 1)
}

.mod-head-link__forward {
    position: absolute;
    top: 0;
    right: 0;
    text-indent: -9999px;
    width: 40px;
    height: 50px;
    background: url("../images/icon-link-black.svg") center center no-repeat;
    background-size: 10px 14px
}

.mod-head-link span {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 100%;
    height: 50px;
    font-size: 1.5rem;
    font-weight: 600
}

.mod-head-year-month-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 50px;
    padding: 0 10px;
    background: #fff;
    margin: -40px -10px 30px;
}

.mod-head-year-month-link__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 70px;
    height: 25px;
    border: 2px solid #fff026;
    border-radius: 2px;
}

a.mod-head-year-month-link__btn {
    background: #fff026
}

.mod-head-year-month-link__btn img {
    width: 10px;
    height: auto
}

.mod-head-year-month-link__title {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    height: 50px;
    line-height: 50px;
    font-size: 1.6rem;
}

.mod-head-year-month-link__title small {
    display: inline-block;
    font-size: .9rem;
    margin: 0 2px
}

.mod-head-year-month-select {
    position: relative;
    background: #fff;
    height: 50px;
    margin: -40px -10px 40px;
}

.mod-head-year-month-select .label {
    position: relative;
    display: block;
    width: 100%;
    height: 100%
}

.mod-head-year-month-select .wrap {
    position: relative;
    display: block;
    text-align: center;
    height: 100%;
    padding-left: 20px;
    margin: auto
}

.mod-head-year-month-select .unit {
    position: relative;
    top: 3px;
    display: inline-block;
    font-size: .9rem;
    font-weight: bold;
    padding: 2px 16px 0 0;
    background: url("../images/icon-select.svg") right top no-repeat;
    background-size: 10px 7px;
    margin-right: 20px;
    margin-left: -30px;
    pointer-events: none
}

.mod-head-year-month-select select {
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: .3rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    outline: 0;
    border-radius: 0;
    height: 100%;
    padding-right: 30px;
    background: transparent
}

.mod-head-year-select {
    position: relative;
    background: #fff;
    height: 50px;
    margin: -40px -10px 40px;
}

.mod-head-year-select label {
    position: relative;
    display: block;
    width: 100%;
    height: 100%
}

.mod-head-year-select .wrap {
    position: relative;
    display: block;
    width: 140px;
    height: 100%;
    margin: auto;
    padding-left: 30px;
    background: #fff url("../images/icon-select.svg") right 8px center no-repeat;
    background-size: 10px 7px
}

.mod-head-year-select .unit {
    font-size: .9rem;
    letter-spacing: .1em;
    font-weight: bold;
    position: absolute;
    right: 50%;
    bottom: 18px;
    margin-right: -37px;
    pointer-events: none
}

.mod-head-year-select select {
    font-size: 1.6rem;
    font-weight: bold;
    letter-spacing: .3rem;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: 0;
    outline: 0;
    border-radius: 0;
    padding-right: 50px;
    height: 100%;
    background: transparent
}

.mod-heading {
    text-align: center;
    margin-bottom: 27px;
}

.mod-heading img {
    height: 19px
}

.mod-heading.asmile img {
    height: 31px
}

.mod-heading.row2 img {
    height: 50px
}

.mod-health-promotion-equipment-detail__pct {
    margin-bottom: 18px;
}

.mod-health-promotion-equipment-detail__pct img {
    width: 100%
}

.mod-health-promotion-equipment-detail__title {
    font-size: 1.8rem;
    font-weight: 600;
    padding: 0 15px;
    margin-bottom: 21px
}

.mod-health-promotion-equipment-detail__price {
    font-size: 1.2rem;
    padding: 0 15px;
    margin-bottom: 6px;
}

.mod-health-promotion-equipment-detail__price span {
    font-size: 1.7rem;
    font-weight: 600
}

.mod-health-promotion-equipment-detail__icon {
    display: inline-block;
    height: 20px;
    border-radius: 10px;
    padding: 3px 10px 0;
    background-color: #fff026;
    margin: 0 0 20px 15px;
}

.mod-health-promotion-equipment-detail__icon img {
    height: 12px
}

.mod-health-promotion-equipment-detail .mod-btn__500-80 {
    margin-bottom: 25px
}

.mod-health-promotion-equipment-detail__text {
    font-size: 1.4rem;
    line-height: 1.785714285714286;
    padding: 0 15px;
    margin-bottom: 85px
}

.mod-health-promotion-equipment-index {
    padding-bottom: 18px;
}

.mod-health-promotion-equipment-index__pct {
    margin: -40px -14px 19px;
}

.mod-health-promotion-equipment-index__pct img {
    width: 100%;
    border-radius: 4px
}

.mod-health-promotion-equipment-index__title {
    font-size: 1.8rem;
    font-weight: 600;
    margin-bottom: 21px;
}

.mod-health-promotion-equipment-index__title a {
    color: #000;
    text-decoration: underline
}

.mod-health-promotion-equipment-index__price {
    font-size: 1.2rem;
    margin-bottom: 7px;
}

.mod-health-promotion-equipment-index__price span {
    font-size: 1.7rem;
    font-weight: 600
}

.mod-health-promotion-equipment-index__icon {
    display: inline-block;
    height: 20px;
    border-radius: 10px;
    padding: 4px 10px;
    background-color: #fff026;
    margin-bottom: 15px;
}

.mod-health-promotion-equipment-index__icon img {
    height: 12px
}

.mod-health-promotion-equipment-index__text {
    font-size: 1.4rem;
    line-height: 1.785714285714286
}

.mod-illust-text-link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    background-image: url("../images/icon-link-black.svg");
    background-size: 11px 18px;
    background-position: right 0 center;
    background-repeat: no-repeat;
    margin: -28px -10px 0;
}

.mod-illust-text-link__pct {
    text-align: center;
    width: 90px;
    margin-right: 10px
}

.mod-illust-text-link__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: calc(100% - 120px);
}

.mod-illust-text-link__text img {
    height: 64px
}

.mod-info-detail {
    background: #fff;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    margin-bottom: 40px;
}

.mod-info-detail__mainpct img {
    width: 100%
}

.mod-info-detail__content {
    padding: 35px 20px 45px;
}

.mod-info-detail__content__date {
    font-size: 1.2rem;
    line-height: 20px;
    color: #999;
    margin-bottom: 10px
}

.mod-info-detail__content__title {
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 30px;
    margin-bottom: 28px
}

.mod-info-detail__content__icon {
    height: 50px;
}

.mod-info-detail__content__icon span {
    display: inline-block;
    height: 20px;
    border-radius: 10px;
    padding: 4px 10px 0;
    margin-right: 8px;
}

.mod-info-detail__content__icon span.bg-orange {
    background-color: #f6931d
}

.mod-info-detail__content__icon span.bg-blue {
    background-color: #007bbb
}

.mod-info-detail__content__icon span.bg-red {
    background-color: #f15679
}

.mod-info-detail__content__icon span img {
    height: 12px
}

.mod-info-detail__content__text {
    font-size: 1.4rem;
    line-height: 30px
}

.mod-info-index {
    padding-bottom: 30px;
}

.mod-info-index__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 10px;
    color: #000;
    background: #fff;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    margin-bottom: 10px;
}

.mod-info-index__list.important {
    border-right: 3px solid #f15679
}

.mod-info-index__list__thumbnail {
    overflow: hidden;
    width: 90px;
    height: 90px;
    border-radius: 3px;
}

.mod-info-index__list__thumbnail img {
    width: 100%
}

.mod-info-index__list__detail {
    width: calc(100% - 100px);
}

.mod-info-index__list__detail__icon {
    height: 30px;
    text-align: right;
}

.mod-info-index__list__detail__icon span {
    display: inline-block;
    height: 15px;
    border-radius: 8px;
    padding: 2px 10px 0;
    margin-left: 5px;
}

.mod-info-index__list__detail__icon span.bg-orange {
    background-color: #f6931d
}

.mod-info-index__list__detail__icon span.bg-blue {
    background-color: #007bbb
}

.mod-info-index__list__detail__icon span.bg-red {
    background-color: #f15679
}

.mod-info-index__list__detail__icon span img {
    height: 10px
}

.mod-info-index__list__detail__title {
    height: 38px;
    margin-bottom: 12px;
    font-size: 1.2rem;
    font-weight: bold;
    line-height: 18px;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden
}

.mod-info-index__list__detail__date {
    font-size: .9rem;
    color: #999
}

.mod-input-checkbox {
    position: relative;
    width: 100%;
    margin-bottom: 30px;
}

.mod-input-checkbox label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 20px;
    padding-right: 60px
}

.mod-input-checkbox__label {
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1
}

.mod-input-checkbox input {
    position: absolute;
    right: 0;
    top: 0;
}

.mod-input-checkbox input:checked+.mod-input-checkbox__toggle {
    background: #fff026;
}

.mod-input-checkbox input:checked+.mod-input-checkbox__toggle:after {
    left: 20px
}

.mod-input-checkbox__toggle {
    position: absolute;
    right: 0;
    top: 0;
    bottom: 0;
    width: 40px;
    height: 18px;
    border: 2px solid #000;
    margin: auto;
    background: #000;
    border-radius: 10px;
    -webkit-transition: background-color .6s cubic-bezier(.19, 1, .22, 1);
    -o-transition: background-color .6s cubic-bezier(.19, 1, .22, 1);
    transition: background-color .6s cubic-bezier(.19, 1, .22, 1);
}

.mod-input-checkbox__toggle:after {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: -3px;
    margin: auto;
    width: 22px;
    height: 22px;
    border: 2px solid #000;
    background: #fff;
    border-radius: 11px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: left .6s cubic-bezier(.19, 1, .22, 1);
    -o-transition: left .6s cubic-bezier(.19, 1, .22, 1);
    transition: left .6s cubic-bezier(.19, 1, .22, 1)
}

.mod-input-checkbox-normal {
    position: relative;
    width: 100%;
    margin-top: 20px;
}

.mod-input-checkbox-normal label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    min-height: 30px
}

.mod-input-checkbox-normal__label {
    font-size: 1.3rem;
    line-height: 1.6;
    padding-left: 28px;
    padding-top: 5px;
    width: 100%;
}

.mod-input-checkbox-normal input {
    position: absolute;
    left: -1000px;
    top: 0;
}

.mod-input-checkbox-normal input:checked+.mod-input-checkbox-normal__toggle::after {
    content: "";
    display: block;
    position: absolute;
    top: -2px;
    left: -1px;
    width: 19px;
    height: 21px;
    background: url("../images/icon-checkbox.svg");
    background-size: 100%
}

.mod-input-checkbox-normal__toggle {
    content: "";
    position: absolute;
    top: 5px;
    left: 1px;
    margin: auto;
    width: 20px;
    height: 20px;
    border: 2px solid #fff026;
    background: #fff;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-radius: 2px
}

.mod-input-text+.mod-input-checkbox-normal {
    margin-top: 15px
}

.mod-input-checkbox-normal+.mod-form__caution {
    padding-top: 3px
}

.mod-input-radio {
    position: relative;
    width: 100%;
    margin-bottom: 30px;
}

.mod-input-radio.disabled {
    pointer-events: none
}

.mod-input-radio label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 100%;
    height: 30px
}

.mod-input-radio__label {
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1;
    padding-left: 28px;
    width: 100%;
}

.mod-input-radio input {
    position: absolute;
    left: -1000px;
    top: 0;
}

.mod-input-radio input:checked+.mod-input-radio__toggle {
    background: #fff026
}

.mod-input-radio__toggle {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 1px;
    margin: auto;
    width: 15px;
    height: 15px;
    border: 3px solid #000;
    background: #fff;
    border-radius: 50%;
    -webkit-box-sizing: border-box;
    box-sizing: border-box
}

.mod-input-select.disabled select, .mod-input-select.disabled select:disabled {
    color: inherit;
    background: none;
    pointer-events: none
}

.mod-input-select select {
    font-size: 1.8rem;
    width: 100%;
    height: 36px;
    padding: 3px 24px 3px 10px;
    border: 1px solid #b3b3b3;
    outline: 0;
    border-radius: 3px;
    background: #fff url("../images/icon-select.svg") right 10px top 55% no-repeat;
    background-size: 8px auto;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    overflow: hidden;
    -o-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 1
}

.mod-input-text {
    position: relative;
}

.mod-input-text-label {
    width: 100%;
    height: 36px;
    margin-top: 10px;
    padding: 10px 5px;
    border: 0;
    outline: 0;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x
}

.mod-input-text input {
    font-size: 1.8rem;
    width: 100%;
    height: 36px;
    padding: 3px 10px;
    border: 1px solid #b3b3b3;
    outline: 0;
    border-radius: 3px
}

.mod-input-text input[type="number"]::-webkit-outer-spin-button, .mod-input-text input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    appearance: none;
    margin: 0
}

.mod-input-text input[type="text"]::-webkit-input-placeholder {
    color: #ccc
}

.mod-input-text-label {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    font-size: 1.6rem
}

.mod-input-text.add-unit input {
    padding-right: 65px
}

.mod-input-text.add-unit .unit {
    font-size: 1.2rem;
    font-weight: bold;
    position: absolute;
    bottom: 8px;
    right: 14px
}

.mod-input-textarea {
    position: relative;
}

.mod-input-textarea textarea {
    font-size: 1.8rem;
    width: 100%;
    height: 100px;
    padding: 5px 10px;
    border: 1px solid #b3b3b3;
    outline: 0;
    border-radius: 3px;
}

.mod-input-textarea textarea.narrow {
    height: 64px
}

.mod-late-medicine-difference-list {
    margin: 0 -24px;
    padding-bottom: 35px;
}

.mod-late-medicine-difference-list__thead .table {
    width: 100%;
    margin-top: -20px;
}

.mod-late-medicine-difference-list__thead .table .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background-image: url("../images/bg-line-dot-yellow.svg");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-late-medicine-difference-list__thead .table .row .box {
    font-size: 1.2rem;
    line-height: 1.25;
    font-weight: 600;
    vertical-align: bottom;
    padding-bottom: 10px;
}

.mod-late-medicine-difference-list__thead .table .row .box:nth-of-type(1) {
    width: 30%;
    padding-left: 30px
}

.mod-late-medicine-difference-list__thead .table .row .box:nth-of-type(2) {
    width: 32%;
    text-align: right
}

.mod-late-medicine-difference-list__thead .table .row .box:nth-of-type(3) {
    width: 38%;
    text-align: right;
    padding-right: 25px
}

.mod-late-medicine-difference-list__tbody {
    padding: 10px 24px 0;
}

.mod-late-medicine-difference-list__tbody .table {
    width: 100%;
}

.mod-late-medicine-difference-list__tbody .table .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mod-late-medicine-difference-list__tbody .table .row:nth-of-type(2n+1) .box {
    padding-top: 20px
}

.mod-late-medicine-difference-list__tbody .table .row:nth-of-type(2n) {
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-late-medicine-difference-list__tbody .table .row:nth-of-type(2n) .box {
    padding-top: 12px;
    padding-bottom: 24px
}

.mod-late-medicine-difference-list__tbody .table .box {
    font-size: 1.4rem;
    line-height: 1.1;
}

.mod-late-medicine-difference-list__tbody .table .box:nth-of-type(1) {
    width: 38%;
    text-align: left
}

.mod-late-medicine-difference-list__tbody .table .box:nth-of-type(2) {
    width: 24%;
    text-align: right
}

.mod-late-medicine-difference-list__tbody .table .box:nth-of-type(3) {
    width: 38%;
    text-align: right
}

.mod-late-medicine-difference-list__tbody .table .box a {
    color: #000;
    text-decoration: underline
}

.mod-late-medicine-difference-list__tbody .table .box.col1 {
    width: 100%
}

.mod-late-medicine-difference {
    margin: 0 -24px;
    padding-bottom: 5px;
}

.mod-late-medicine-difference dl {
    text-align: center;
    margin-top: -32px;
}

.mod-late-medicine-difference dl dt {
    font-size: 1.1rem;
    font-weight: 600;
    line-height: 1.636363636363636;
    padding-bottom: 8px;
    background-image: url("../images/bg-line-dot-yellow.svg");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x
}

.mod-late-medicine-difference dl dd {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.1;
    padding-top: 18px
}

.mod-layout01 {
    margin-bottom: 30px;
}

.mod-layout01:last-child {
    margin-bottom: 50px;
}

.mod-layout01:last-child .mod-layout01__text {
    margin-bottom: 50px
}

.mod-layout01__text {
    padding-bottom: 5px;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
    margin-bottom: 30px;
}

.mod-layout01__text p {
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.75;
    margin-bottom: 14px
}

.mod-layout02 {
    margin-bottom: 35px;
}

.mod-layout02__friendnum {
    margin-bottom: 38px;
}

.mod-layout02__friendnum__title {
    margin-bottom: 15px;
}

.mod-layout02__friendnum__title img {
    height: 13px
}

.mod-layout02__friendnum__num {
    text-align: center;
    font-size: 3.5rem;
    font-weight: 600
}

.mod-layout02__friendnum__num__alignleft {
    text-align: left;
    font-size: 3.5rem;
    font-weight: 600
}

.mod-layout02__invitation__title {
    margin-bottom: 15px;
}

.mod-layout02__invitation__title img {
    height: 13px
}

.mod-layout02__invitation__btn {
    padding: 0 10px;
}

.mod-layout02__invitation__btn ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mod-layout02__invitation__btn ul li {
    width: 48px;
}

.mod-layout02__invitation__btn ul li a {
    display: block;
    margin-bottom: 10px;
}

.mod-layout02__invitation__btn ul li a img {
    width: 100%
}

.mod-layout02__invitation__btn ul li p {
    text-align: center;
    font-size: 1.3rem
}

.mod-layout03 {
    margin-bottom: 60px;
}

.mod-layout03__pct {
    text-align: center;
    margin-bottom: 23px;
}

.mod-layout03__pct img {
    width: 110px
}

.mod-layout03__title {
    text-align: center;
    font-size: 2rem;
    line-height: 1.1;
    letter-spacing: .2em;
    font-weight: 600;
    margin-bottom: 20px
}

.mod-layout03__text {
    font-size: 1.4rem;
    line-height: 1.785714285714286;
    margin-bottom: 20px
}

.mod-layout04 {
    margin-bottom: 50px;
}

.mod-layout04__text {
    font-size: 1.4rem;
    line-height: 1.785714285714286;
    margin-bottom: 35px
}

.mod-layout04__list {
    margin-bottom: 17px;
}

.mod-layout04__list ul li {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.642857142857143;
}

.mod-layout04__list ul li::before {
    content: "・"
}

.mod-layout04__caution {
    font-size: 1.2rem;
    line-height: 1.333333333333333
}

.mod-lead {
    width: calc(100% - 48px);
    font-size: 1.4rem;
    line-height: 1.785714285714286;
    margin: 0 auto 28px;
}

.mod-lead__caution {
    font-size: 1.1rem;
    line-height: 1.909090909090909
}

.mod-licenses {
    margin-bottom: 28px;
}

.mod-licenses.last {
    margin-bottom: 50px
}

.mod-licenses__name {
    position: relative;
    text-align: center;
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 14px;
}

.mod-licenses__name.required:after {
    content: "";
    display: inline-block;
    position: relative;
    top: 3px;
    margin-left: 12px;
    background: url("../images/icon-require.svg");
    width: 40px;
    height: 15px
}

.mod-licenses__file {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    z-index: 10;
    width: 100%;
    height: 100%;
}

.mod-licenses__file-item {
    position: relative;
    text-align: center;
}

.mod-licenses__file-item canvas, .mod-licenses__file-item .js-photo-img {
    width: 190px;
    height: auto
}

.mod-licenses__file-view {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 119px
}

.mod-licenses__file-add {
    width: 191px;
    height: 118.5px;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    margin: auto;
}

.mod-licenses__file-add img {
    width: 100%;
    height: auto
}

.mod-licenses__file-preview {
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    margin: auto;
    width: 191px;
    height: 119px;
    overflow: hidden;
}

.mod-licenses__file-preview img {
    width: 100%;
    height: auto;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 3;
    margin: auto
}

.mod-licenses__file-delete {
    position: absolute;
    z-index: 5;
    left: calc(50% + 70px);
    top: -5px;
}

.mod-licenses__file-delete img {
    width: 30px
}

.mod-licenses__caution {
    font-size: 1.2rem;
    padding: 20px 0 25px
}

.mod-licenses__confirm {
    margin-bottom: 25px;
}

.mod-licenses__confirm+.mod-licenses__confirm, .mod-licenses__confirm.last {
    margin-bottom: 50px
}

.mod-licenses__confirm__name {
    text-align: center;
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 10px
}

.mod-licenses__confirm__preview {
    text-align: center;
}

.mod-licenses__confirm__preview img {
    width: 191px
}

.mod-medical-expense-notification-list1 {
    margin: 0 -24px;
    padding-bottom: 35px;
}

.mod-medical-expense-notification-list1__thead .table {
    width: 100%;
    margin-top: -20px;
}

.mod-medical-expense-notification-list1__thead .table .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background-image: url("../images/bg-line-dot-yellow.svg");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-medical-expense-notification-list1__thead .table .row .box {
    font-size: 1.2rem;
    line-height: 1.25;
    font-weight: 600;
    vertical-align: bottom;
    padding-bottom: 10px;
}

.mod-medical-expense-notification-list1__thead .table .row .box:nth-of-type(1) {
    width: 32.5%;
    padding-left: 27px
}

.mod-medical-expense-notification-list1__thead .table .row .box:nth-of-type(2) {
    width: 10%;
    text-align: right
}

.mod-medical-expense-notification-list1__thead .table .row .box:nth-of-type(3) {
    width: 24.7%;
    text-align: right
}

.mod-medical-expense-notification-list1__thead .table .row .box:nth-of-type(4) {
    width: 32.8%;
    text-align: right;
    padding-right: 10px
}

.mod-medical-expense-notification-list1__tbody {
    padding: 0 24px;
}

.mod-medical-expense-notification-list1__tbody .table {
    width: 100%;
}

.mod-medical-expense-notification-list1__tbody .table .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-medical-expense-notification-list1__tbody .table .row .box {
    font-size: 1.2rem;
    line-height: 1.1;
    padding-top: 22px;
    padding-bottom: 22px;
}

.mod-medical-expense-notification-list1__tbody .table .row .box:nth-of-type(1) {
    width: 29%;
    text-align: left;
    padding-left: 3px
}

.mod-medical-expense-notification-list1__tbody .table .row .box:nth-of-type(2) {
    width: 12%;
    text-align: right
}

.mod-medical-expense-notification-list1__tbody .table .row .box:nth-of-type(3) {
    width: 29.6%;
    text-align: right
}

.mod-medical-expense-notification-list1__tbody .table .row .box:nth-of-type(4) {
    width: 29.4%;
    text-align: right;
    padding-right: 3px
}

.mod-medical-expense-notification-list1__tbody .table .row .box a {
    color: #000;
    text-decoration: underline
}

.mod-medical-expense-notification-list2 {
    margin: 0 -24px;
    padding-bottom: 35px;
}

.mod-medical-expense-notification-list2__thead .table {
    width: 100%;
    margin-top: -20px;
}

.mod-medical-expense-notification-list2__thead .table .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    background-image: url("../images/bg-line-dot-yellow.svg");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-medical-expense-notification-list2__thead .table .row .box {
    font-size: 1.2rem;
    line-height: 1.25;
    font-weight: 600;
    vertical-align: bottom;
    padding-bottom: 10px;
}

.mod-medical-expense-notification-list2__thead .table .row .box:nth-of-type(1) {
    width: 25%;
    padding-left: 38px
}

.mod-medical-expense-notification-list2__thead .table .row .box:nth-of-type(2) {
    width: 30%;
    text-align: right
}

.mod-medical-expense-notification-list2__thead .table .row .box:nth-of-type(3) {
    width: 45%;
    text-align: right;
    padding-right: 25px
}

.mod-medical-expense-notification-list2__tbody {
    padding: 10px 24px 0;
}

.mod-medical-expense-notification-list2__tbody .table {
    width: 100%;
}

.mod-medical-expense-notification-list2__tbody .table .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mod-medical-expense-notification-list2__tbody .table .row:nth-of-type(2n+1) .box {
    padding-top: 20px
}

.mod-medical-expense-notification-list2__tbody .table .row:nth-of-type(2n) {
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-medical-expense-notification-list2__tbody .table .row:nth-of-type(2n) .box {
    padding-top: 12px;
    padding-bottom: 24px
}

.mod-medical-expense-notification-list2__tbody .table .box {
    font-size: 1.4rem;
    line-height: 1.1;
}

.mod-medical-expense-notification-list2__tbody .table .box:nth-of-type(1) {
    width: 26%;
    text-align: right;
    padding-right: 12%
}

.mod-medical-expense-notification-list2__tbody .table .box:nth-of-type(2) {
    width: 30%;
    text-align: right
}

.mod-medical-expense-notification-list2__tbody .table .box:nth-of-type(3) {
    width: 44%;
    text-align: right
}

.mod-medical-expense-notification-list2__tbody .table .box a {
    color: #000;
    text-decoration: underline
}

.mod-medical-expense-notification-list2__tbody .table .box.col1 {
    width: 100%;
    text-align: left
}

.mod-medical-institution-notification {
    margin: 0 -24px;
    padding-bottom: 4px;
}

.mod-medical-institution-notification .table {
    width: 100%;
    margin-top: -29px;
}

.mod-medical-institution-notification .table .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mod-medical-institution-notification .table .row:nth-of-type(1) {
    background-image: url("../images/bg-line-dot-yellow.svg");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x
}

.mod-medical-institution-notification .table .row .box-title {
    font-size: 1.2rem;
    line-height: 1.1;
    font-weight: 600;
    vertical-align: bottom;
    padding-bottom: 10px;
}

.mod-medical-institution-notification .table .row .box-title:nth-of-type(1) {
    width: 25%;
    padding-left: 25px
}

.mod-medical-institution-notification .table .row .box-title:nth-of-type(2) {
    width: 30%;
    text-align: right
}

.mod-medical-institution-notification .table .row .box-title:nth-of-type(3) {
    width: 45%;
    text-align: right;
    padding-right: 25px
}

.mod-medical-institution-notification .table .row .box {
    font-size: 1.4rem;
    line-height: 1.1;
    font-weight: 600;
    padding-top: 17px;
}

.mod-medical-institution-notification .table .row .box:nth-of-type(1) {
    width: 25%;
    padding-left: 25px
}

.mod-medical-institution-notification .table .row .box:nth-of-type(2) {
    width: 30%;
    text-align: right
}

.mod-medical-institution-notification .table .row .box:nth-of-type(3) {
    width: 45%;
    text-align: right;
    padding-right: 25px
}

.mod-modal {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: 100;
    display: none;
}

.mod-modal.show {
    display: block
}

.mod-modal__bg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.3)
}

.mod-modal__contents {
    overflow: hidden;
    position: absolute;
    left: 0;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 10;
    width: 87.5%;
    height: 80%;
    padding: 20px 10px;
    background: #fff;
    border-radius: 3px;
    -webkit-box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.15);
    margin: auto;
}

.mod-modal__contents.no-padding {
    padding: 0
}

.mod-modal__text-area {
    position: absolute;
    top: 20px;
    bottom: 80px;
    left: 15px;
    right: 15px
}

.mod-modal__text {
    position: relative;
    overflow-y: scroll;
    height: 100%;
    padding-top: 10px;
    padding-right: 10px;
    padding-bottom: 20px;
    line-height: 1.5;
    margin-bottom: 20px;
}

.mod-modal__text::-webkit-scrollbar {
    width: 3px
}

.mod-modal__text::-webkit-scrollbar-track {
    border-radius: 2px;
    background-color: #fff
}

.mod-modal__text::-webkit-scrollbar-thumb {
    border-radius: 2px;
    background-color: #fff026
}

.mod-modal__text .text {
    font-size: 1.4rem;
    margin-top: 15px;
}

.mod-modal__text .text h3 {
    font-weight: bold;
    margin: 40px 0 20px
}

.mod-modal__text .text h4 {
    font-weight: bold;
    margin: 30px 0 10px
}

.mod-modal__text .text p {
    margin-bottom: 15px
}

.mod-modal__text .text table th, .mod-modal__text .text table td {
    border: 1px solid #000;
    padding: 3px
}

.mod-modal__text .text table th {
    font-weight: bold
}

.mod-modal__wrap {
    position: relative;
    overflow-y: scroll;
    height: 100%;
    margin-bottom: 20px;
}

.mod-modal__wrap::-webkit-scrollbar {
    width: 3px
}

.mod-modal__wrap::-webkit-scrollbar-track {
    border-radius: 2px;
    background-color: #fff
}

.mod-modal__wrap::-webkit-scrollbar-thumb {
    border-radius: 2px;
    background-color: #fff026
}

.mod-modal__closebtn {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 20px;
    margin: auto;
    margin-bottom: 0;
}

.mod-modal__closebtn--icon {
    position: absolute;
    top: 5px;
    right: 0;
    margin: 0;
    padding: 0;
}

.mod-modal__closebtn--icon a {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 45px;
    height: 45px;
}

.mod-modal__closebtn--icon a img {
    width: 17px;
    height: 17px
}

.mod-modal .mod-btn__500-80 {
    padding: 0 15px
}

.mod-monthly-point-history {
    margin: 0 -24px;
}

.mod-monthly-point-history__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 24px 40px;
    background-image: url("../images/bg-line-dot-yellow.svg");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
    margin: 38px 0;
}

.mod-monthly-point-history__item:nth-last-of-type(1) {
    background-image: none;
    padding-bottom: 25px;
    margin-bottom: 0
}

.mod-monthly-point-history__item__thumbnail {
    width: 80px;
    height: 80px;
    border: 1px solid #ccc;
    border-radius: 2px;
    margin-bottom: 23px;
}

.mod-monthly-point-history__item__thumbnail img {
    width: 100%
}

.mod-monthly-point-history__item__thumbnail.noimage {
    border: 0
}

.mod-monthly-point-history__item__detail {
    width: calc(100% - 98px);
    margin-bottom: 23px;
}

.mod-monthly-point-history__item__detail__date {
    font-size: .9rem;
    line-height: 1.555555555555556;
    color: #999;
    margin-bottom: 7px
}

.mod-monthly-point-history__item__detail__title {
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 10px
}

.mod-monthly-point-history__item__detail__period {
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4
}

.mod-monthly-point-history__item .mod-btn__500-80 {
    width: 100%;
    margin: 0
}

.mod-monthly-point-index {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 25px;
}

.mod-monthly-point-index__item {
    display: block;
    width: 44%;
    color: #000;
    margin-top: 35px;
}

.mod-monthly-point-index__item__thumbnail {
    border: 1px solid #ccc;
    border-radius: 2px;
    margin-bottom: 8px;
}

.mod-monthly-point-index__item__thumbnail img {
    width: 100%
}

.mod-monthly-point-index__item__thumbnail.noimage {
    border: 0
}

.mod-monthly-point-index__item__title {
    font-size: 1.1rem;
    line-height: 1.454545454545455
}

.mod-monthly-point-result {
    margin-top: -17px;
}

.mod-monthly-point-result__lead {
    margin-bottom: 50px;
}

.mod-monthly-point-result__lead__title {
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.666666666666667;
    margin-bottom: 8px
}

.mod-monthly-point-result__lead__annotation {
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.6;
    margin-bottom: 12px
}

.mod-monthly-point-result__lead__period {
    font-size: 1.1rem;
    font-weight: 600;
    line-height: 1.4
}

.mod-monthly-point-result__select__title {
    text-align: center;
    padding-bottom: 11px;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-monthly-point-result__select__title img {
    height: 17px
}

.mod-monthly-point-result__select__item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 30px 0;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-monthly-point-result__select__item__thumbnail {
    width: 80px;
    height: 80px;
    border: 1px solid #ccc;
    border-radius: 2px;
    margin-bottom: 25px;
}

.mod-monthly-point-result__select__item__thumbnail img {
    width: 100%
}

.mod-monthly-point-result__select__item__thumbnail.noimage {
    border: 0
}

.mod-monthly-point-result__select__item__thumbnail.outofstock {
    border: 0;
    background-color: rgba(0, 0, 0, 0.6);
}

.mod-monthly-point-result__select__item__thumbnail.outofstock img {
    opacity: .5
}

.mod-monthly-point-result__select__item__detail {
    width: calc(100% - 98px);
    margin-bottom: 23px;
}

.mod-monthly-point-result__select__item__detail__title {
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.5
}

.mod-monthly-point-result__select__item .mod-btn__500-80 {
    width: 100%;
    margin: 0
}

.mod-monthly-point-result__btn {
    padding: 50px 0 0;
}

.mod-monthly-point-result__btn .mod-btn__500-80 {
    margin: 0 auto 45px
}

.mod-monthly-point-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    left: -15px;
    width: 290px;
    margin: -28px auto 0;
}

.mod-monthly-point-top__graph {
    position: relative;
    width: 135px;
    margin-top: 8px;
}

.mod-monthly-point-top__graph__canvas canvas {
    width: 135px;
    height: 135px
}

.mod-monthly-point-top__graph__canvas img {
    width: 100%
}

.mod-monthly-point-top__graph__meter {
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 135px;
    height: 135px;
    font-weight: 600;
    text-align: center;
}

.mod-monthly-point-top__graph__meter .num1 {
    display: block;
    width: 100%;
    font-size: 3.2rem;
    line-height: 1.2;
    margin-bottom: -4px;
}

.mod-monthly-point-top__graph__meter .num1 .js-num-0 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat 0 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-1 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat -20px 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-2 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat -40px 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-3 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat -60px 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-4 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat -80px 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-5 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat -100px 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-6 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat -120px 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-7 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat -140px 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-8 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat -160px 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-9 {
    display: inline-block;
    width: 20px;
    height: 30px;
    background: url("../images/txt-number.svg") no-repeat -180px 0;
    background-size: 208px 30px;
    margin: 0 -1.5px
}

.mod-monthly-point-top__graph__meter .num1 .js-num-comma {
    display: inline-block;
    width: 6.8px;
    height: 25.5px;
    background: url("../images/txt-number.svg") no-repeat -170px 0;
    background-size: 176.79999999999998px 25.5px;
    margin-left: -2px
}

.mod-monthly-point-top__graph__meter .num2 {
    display: block;
    width: 100%;
    font-size: 1.5rem;
    line-height: 1.1;
}

.mod-monthly-point-top__graph__meter .num2::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 13px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover;
    margin-right: 5px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-0 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat 0 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-1 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -10px 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-2 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -20px 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-3 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -30px 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-4 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -40px 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-5 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -50px 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-6 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -60px 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-7 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -70px 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-8 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -80px 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-9 {
    display: inline-block;
    width: 10px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -90px 0;
    background-size: 104px 15px;
    margin: 0 -1px
}

.mod-monthly-point-top__graph__meter .num2 .js-num-comma {
    display: inline-block;
    width: 4px;
    height: 15px;
    background: url("../images/txt-number.svg") no-repeat -100px 0;
    background-size: 104px 15px
}

.mod-monthly-point-top__detail {
    width: calc(100% - 155px);
}

.mod-monthly-point-top__detail__box {
    margin-bottom: 18px;
}

.mod-monthly-point-top__detail__box:nth-last-of-type(1) {
    margin-bottom: 5px
}

.mod-monthly-point-top__detail__box__title {
    text-align: center;
    margin-bottom: 7px;
}

.mod-monthly-point-top__detail__box__title img {
    height: 11px
}

.mod-monthly-point-top__detail__box__date {
    text-align: center;
}

.mod-monthly-point-top__detail__box__date .js-set-number {
    display: inline-block;
    font-size: 2.1rem;
    font-weight: bold;
    line-height: 1.1;
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-0 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat 0 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-1 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -14px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-2 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -28px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-3 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -42px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-4 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -56px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-5 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -70px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-6 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -84px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-7 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -98px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-8 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -112px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-9 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -125.99999999999999px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__date .js-set-number .js-num-slash {
    content: "";
    display: inline-block;
    width: 12px;
    height: 19.5px;
    background: url("../images/slash.svg") no-repeat 0 0;
    background-size: cover
}

.mod-monthly-point-top__detail__box__point {
    width: 102px;
    margin: 0 auto 2px;
}

.mod-monthly-point-top__detail__box__point .js-set-number {
    display: block;
    font-size: 2.1rem;
    font-weight: bold;
    text-align: right;
    letter-spacing: -1rem;
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-0 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat 0 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-1 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -14px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-2 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -28px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-3 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -42px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-4 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -56px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-5 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -70px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-6 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -84px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-7 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -98px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-8 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -112px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-9 {
    display: inline-block;
    width: 14px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -125.99999999999999px 0;
    background-size: 145.6px 21px;
    margin: 0 -.5px
}

.mod-monthly-point-top__detail__box__point .js-set-number .js-num-comma {
    display: inline-block;
    width: 5.6px;
    height: 21px;
    background: url("../images/txt-number.svg") no-repeat -140px 0;
    background-size: 145.6px 21px
}

.mod-monthly-point-top__detail__box__point .add-unit__pt:after {
    margin-left: 6px
}

.mod-monthly-point-top__detail__box__icon {
    text-align: center;
}

.mod-monthly-point-top__detail__box__icon img {
    width: 92px
}

.add-unit__pt {
    position: relative;
}

.add-unit__pt:after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 13px;
    background: url("../images/unit_pt.svg") no-repeat 0 0;
    background-size: cover
}

.mod-notes {
    font-size: 1rem;
    line-height: 1.7;
    margin: 0 10px 30px
}

.mod-osakacity-drawing-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding-bottom: 10px;
    margin: -20px 0 0 -5px;
}

.mod-osakacity-drawing-top__graph {
    position: relative;
    width: 135px;
}

.mod-osakacity-drawing-top__graph__canvas img {
    width: 100%
}

.mod-osakacity-drawing-top__graph__meter {
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 135px;
    height: 135px;
    font-weight: 600;
    text-align: center;
}

.mod-osakacity-drawing-top__graph__meter .num1 {
    display: block;
    width: 100%;
    font-size: 3.2rem;
    line-height: 1.2
}

.mod-osakacity-drawing-top__graph__meter .num2 {
    display: block;
    width: 100%;
    font-size: 1.5rem;
    line-height: 1.1;
}

.mod-osakacity-drawing-top__graph__meter .num2::before {
    content: "/";
    margin-right: 5px;
    font-size: 1.5rem
}

.mod-osakacity-drawing-top__graph__meter .num2::after {
    content: "pt";
    font-size: 1.2rem;
    margin-left: 3px
}

.mod-osakacity-drawing-top__detail {
    width: calc(100% - 155px);
    margin-top: 10px;
}

.mod-osakacity-drawing-top__detail__box {
    margin-bottom: 20px;
}

.mod-osakacity-drawing-top__detail__box:nth-last-of-type(1) {
    margin-bottom: 5px
}

.mod-osakacity-drawing-top__detail__box__title {
    text-align: center;
    margin-bottom: 5px;
}

.mod-osakacity-drawing-top__detail__box__title img {
    height: 11px
}

.mod-osakacity-drawing-top__detail__box__date {
    text-align: center;
}

.mod-osakacity-drawing-top__detail__box__date span {
    display: inline-block;
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 1.1
}

.mod-osakacity-drawing-top__detail__box__point {
    width: 102px;
    margin: 0 auto 2px;
}

.mod-osakacity-drawing-top__detail__box__point span {
    display: block;
    font-size: 2.8rem;
    font-weight: bold;
    text-align: right;
    line-height: 1.1;
}

.mod-osakacity-drawing-top__detail__box__point span::after {
    content: "pt";
    font-size: 1.2rem;
    margin-left: 8px
}

.mod-pagenation {
    margin: 0 10px 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.mod-pagenation:last-child {
    margin-bottom: 0
}

.mod-pagenation__btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    width: 80px;
    height: 25px;
    border: 2px solid #fff;
    border-radius: 2px;
}

a.mod-pagenation__btn {
    background: #fff
}

.mod-pagenation__btn img {
    width: 10px;
    height: auto
}

.mod-pagenation__page {
    font-size: 1.5rem;
    font-weight: bold;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    height: 25px
}

.mod-point-history-bottom {
    margin-top: -10px;
}

.mod-point-history-bottom__list {
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left top;
    background-repeat: repeat-x;
    margin-bottom: 40px;
}

.mod-point-history-bottom__list__row {
    padding: 15px 5px;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-point-history-bottom__list__row .datetitle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    font-size: 1rem;
    line-height: 1.1;
    margin-bottom: 14px;
}

.mod-point-history-bottom__list__row .datetitle span:nth-of-type(2) {
    font-size: 1.1rem
}

.mod-point-history-bottom__list__row dl {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}

.mod-point-history-bottom__list__row dl dt {
    width: 60%;
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.75;
    margin-bottom: 12px
}

.mod-point-history-bottom__list__row dl dd {
    width: 39%;
    text-align: right;
    padding-top: 3px;
}

.mod-point-history-bottom__list__row dl dd .point {
    font-size: 1.6rem;
    font-weight: 600;
    margin-bottom: 14px;
}

.mod-point-history-bottom__list__row dl dd .point::after {
    content: "pt";
    font-size: 1.2rem;
    font-weight: 400;
    margin-left: 3px
}

.mod-point-history-bottom__list__row dl dd .subtitle {
    font-size: 1.1rem;
    margin-bottom: 10px
}

.mod-point-history-bottom__list__row dl dd .period {
    font-size: 1rem;
    letter-spacing: .08em;
    font-weight: 600;
    margin-bottom: 15px
}

.mod-point-history-bottom .mod-head-year-month-link {
    padding: 0;
    height: 25px;
    margin: 0 0 40px
}

.mod-point-history-bottom .mod-pagenation {
    margin: 0 0 30px;
}

.mod-point-history-bottom .mod-pagenation__btn {
    width: 70px;
    border: 2px solid #fff026;
    border-radius: 2px
}

.mod-point-history-bottom a.mod-pagenation__btn {
    background: #fff026
}

#gift_idnex_list .mod-pagenation__btn {
    width: 70px;
    border: 2px solid #fff026;
    border-radius: 2px;
}

#gift_idnex_list a.mod-pagenation__btn {
    background: #fff026;
}

.mod-point-history-top {
    margin-top: -12px;
}

.mod-point-history-top.closed {
    height: 162px;
    overflow: hidden
}

.mod-point-history-top__list {
    padding: 0 10px 23px 5px;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
    margin-bottom: 28px;
}

.mod-point-history-top__list__row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 7px;
}

.mod-point-history-top__list__row:nth-last-of-type(1) {
    padding-top: 15px;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
}

.mod-point-history-top__list__row:nth-last-of-type(1) .point {
    position: relative;
    bottom: 1px
}

.mod-point-history-top__list__row .icon {
    display: block;
    width: 34px;
}

.mod-point-history-top__list__row .icon img {
    width: 34px
}

.mod-point-history-top__list__row .text {
    display: block;
    width: calc(61.7% - 50px);
    font-size: 1.2rem;
    font-weight: 600;
    line-height: 1.416666666666667
}

.mod-point-history-top__list__row .text-total {
    display: block;
    width: 61.7%;
    font-size: 1.2rem;
    line-height: 1.4;
    font-weight: 600
}

.mod-point-history-top__list__row .point {
    display: block;
    width: 36.1%;
    font-size: 1.8rem;
    font-weight: 600;
    text-align: right;
}

.mod-point-history-top__list__row .point::after {
    content: "pt";
    font-size: 1.2rem;
    font-weight: 400;
    margin-left: 4px
}

.mod-point-history-top__annotation {
    font-size: 1rem;
    line-height: 2.5;
    margin: 10px 0
}

.mod-point-history-top__togglebtn {
    background-color: #fff;
    text-align: center;
}

.mod-point-history-top__togglebtn span {
    display: block;
    cursor: pointer;
    padding: 10px 0 5px;
}

.mod-point-history-top__togglebtn span img {
    height: 11px;
    -webkit-transform: scale(1, -1);
    -ms-transform: scale(1, -1);
    transform: scale(1, -1)
}

.mod-point-history-top__togglebtn.closed {
    margin-top: -40px;
}

.mod-point-history-top__togglebtn.closed span img {
    -webkit-transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    transform: scale(1, 1)
}

.mod-qr {
    text-align: center;
    margin-bottom: 50px;
}

.mod-qr canvas {
    display: block;
    width: 150px;
    height: 150px;
    margin: auto
}

.mod-selectlist01 {
    margin-bottom: 50px;
}

.mod-selectlist01 .mod-input-select {
    margin-bottom: 40px
}

.mod-selectlist01__pct {
    text-align: center;
}

.mod-selectlist01__pct img {
    width: 202px
}

.mod-selectlist02 {
    margin-bottom: 30px;
}

.mod-selectlist02 _mod-heading.styl, .mod-selectlist02__wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    margin-right: -7%
}

.mod-selectlist02 .mod-input-radio {
    width: 130px;
    margin-right: 7%;
    margin-bottom: 25px;
}

.mod-selectlist02 .mod-input-radio label {
    display: block;
    height: auto
}

.mod-selectlist02 .mod-input-radio__label {
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.555555555555556;
    padding-left: 25px
}

.mod-selectlist02 .mod-input-radio__toggle {
    top: 2px;
    bottom: auto
}

.mod-selectlist02__pct {
    margin-top: 8px;
}

.mod-selectlist02__pct img {
    height: 73px
}

.mod-selectlist02__pct__caution {
    text-align: left;
    margin-top: 8px;
    font-size: 1rem;
    line-height: 1.35
}

@media screen and (max-width:320px) {
    .mod-selectlist02 .mod-input-radio {
        width: 50%;
        margin-right: 0
    }
}

.mod-subheading {
    text-align: center;
    font-size: 1.5rem;
    font-weight: 600;
    line-height: 1.75;
    margin-bottom: 40px;
}

.mod-subheading__alignleft {
    font-size: 1.4rem;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 24px
}

.mod-subheading__group {
    font-size: 1.4rem;
    line-height: 2;
    margin-bottom: 40px;
}

.mod-summary {
    font-size: 1.1rem;
    line-height: 1.6;
    margin-bottom: 40px;
}

.mod-summary__bold {
    font-size: 1.4rem;
    font-weight: bold;
    line-height: 1.64;
    margin-bottom: 40px
}

.mod-tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    padding: 0 24px;
    border-bottom: 2px solid #fff026;
    margin: -28px -24px 0;
}

.mod-tab__link {
    width: 44%;
}

.mod-tab__link span {
    text-align: center;
    display: block;
    padding-bottom: 8px;
}

.mod-tab__link span img {
    height: 14px;
    opacity: .5
}

.current.mod-tab__link span {
    position: relative;
    bottom: -2px;
    padding-bottom: 10px;
    border-bottom: 2px solid #000;
}

.current.mod-tab__link span img {
    opacity: 1
}

.mod-tablet {
    margin: -40px -10px -140px;
    padding: 90px 80px;
}

.mod-tablet .mod-contents {
    padding: 0;
    margin-bottom: 0
}

.mod-tablet__point-display {
    padding: 95px 50px 90px
}

.mod-tablet__main-p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding-bottom: 36px;
    margin-bottom: 35px;
    background-image: url("../images/bg-line-dot.png");
    background-size: 12px 3px;
    background-position: left bottom;
    background-repeat: repeat-x;
}

.mod-tablet__main-p .title {
    width: 202px;
}

.mod-tablet__main-p .title img {
    width: 100%;
    height: aut
}

.mod-tablet__main-p .title, .mod-tablet__main-p .point {
    margin: 0 40px
}

.mod-tablet__main-p .point {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.mod-tablet__main-p .num {
    font-size: 7rem;
    font-weight: bold;
    letter-spacing: .6rem;
    margin-right: 5px
}

.mod-tablet__main-p .unit {
    font-size: 3.5rem;
    font-weight: bold
}

.mod-tablet__sub-p {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}

.mod-tablet__sub-p .title {
    width: 191px;
}

.mod-tablet__sub-p .title img {
    width: 100%;
    height: aut
}

.mod-tablet__sub-p .title, .mod-tablet__sub-p .point {
    margin: 0 30px
}

.mod-tablet__sub-p .point {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
}

.mod-tablet__sub-p .num {
    font-size: 4rem;
    font-weight: bold;
    letter-spacing: .6rem;
    margin-right: 5px
}

.mod-tablet__sub-p .unit {
    font-size: 2rem;
    font-weight: bold
}

.mod-tablet__error-display {
    padding: 52px 70px 60px;
}

.mod-tablet__error-display .title {
    text-align: center;
    font-size: 2.9rem;
    font-weight: bold;
    margin-bottom: 62px
}

.mod-tablet__error-display .text {
    font-size: 1.8em;
    line-height: 1.75;
    margin-bottom: 18px
}

.photo-warning li {
    list-style-type: disc;
    margin-left: 24px;
    margin-top: 6px;
    text-align: left;
    font-size: 12px;
}
.mod-subheading-list{
    display: flex;
    justify-content: space-between;
}
.mod-subheading-item{
    width: calc((100% - 40px)/3);
    height: calc((100vw - 108px)/3);
    border: 1px solid #E6E6E6;
    border-radius: 3px;
    overflow: hidden;
    padding: 5px;
}
.mod-subheading-item a{
    display: block;
    height: 100%;
}
.mod-subheading-item img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.mod-subheading-item1{
    position: relative;
}
.mod-subheading-item1 a{
    display: flex;
    align-items: center;
    justify-content: center;
}
.mod-subheading-item1 a img{
    position: absolute;
    left: 6px;
    top: 6px;
    width: calc(100% - 12px);
    height: calc(100% - 12px);
}
.mod-subheading-item1 span{
    text-align: center;
    font-size: 18px;
    line-height: 1.4;
    color: #000;
    font-weight: 600;
    position: relative;
    display: block;
}
.mod-subheading-item2{
    border: none;
    padding: 0;
    text-align: center;
}
.mod-input-text input{
    font-size: 1.4rem;
}
.mod-input-textarea textarea{
    font-size: 1.4rem;
}
.mod-licenses__file-view,.mod-licenses__file-add{
    height: 80px;
}
.mod-licenses__file-add{
    right: auto;
    text-align: left;
}
.mod-licenses__file-add img{
    width: auto;
    height: 100%;
}
.mod-licenses__file-item{
    text-align: left;
}
.mod-licenses__file-item canvas, .mod-licenses__file-item .js-photo-img{
    width: auto;
    height: 80px;
}
.mod-licenses__file-delete{
    left: 75px;
}
.mod-subheading__group2{
    text-align: center;
}
.mod-subheading__group2 b{
    font-weight: 600;
}
.mod-number-box{
    margin-bottom: 30px;
}
.mod-number_text{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
}
.mod-number_text-b{
    font-size: 4rem;
    line-height: 1;
    font-weight: 600;
}
.mod-number_text img{
    width: 20px;
    margin-left: 8px;
    margin-top: 8px;
}
.mod-imgtext-box{
    background-color: #F2F2F2;
    padding: 15px;
    border-radius: 3px;
    margin-bottom: 30px;
}
.mod-imgtext-content{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.mod-imgtext_img{
    width: 60px;
    height: 60px;
    border: 2px solid #E6E6E6;
    padding: 4px;
    background: #fff url(../images/bg_group.png) no-repeat center center;
    background-size: calc(100% - 8px);
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.4rem;
    line-height: 1;
    font-weight: 600;
}
.mod-imgtext_img2{
    width: 60px;
    height: 60px;
}
.mod-imgtext_img2 img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 3px;
}
.mod-imgtext_text{
    width: calc(100% - 67px);
}
.mod-imgtext_text p{
    font-size: 1.4rem;
    line-height: 1.6;
}
.mod-imgtext-desc{
    margin-top: 15px;
}
.mod-imgtext-desc p{
    font-size: 1.4rem;
    line-height: 1.6;
}
.mod-layout02__invitation__btn ul li {
    width: 60px;
    text-align: center;
}
.mod-layout02__invitation__btn ul li img {
    max-width: 50px;
}

.mod-layout02__friendnum__imgtext{
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.mod-layout02__friendnum__img{
    width: 90px;
    height: 90px;
    border: 2px solid #E6E6E6;
    padding: 4px;
    background: #fff url(../images/bg_group.png) no-repeat center center;
    background-size: calc(100% - 8px);
    border-radius: 3px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    line-height: 1;
    font-weight: 600;
}
.mod-layout02__friendnum__img2{
    width: 90px;
    height: 90px;
}
.mod-layout02__friendnum__img2 img{
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 3px;
}
.mod-layout02__friendnum__text{
    width: calc(100% - 97px);
}
.mod-layout02__friendnum__text p{
    font-size: 1.6rem;
    line-height: 1.6;
}
.mod-layout02__friendnum__num__text p{
    font-size: 1.5rem;
    line-height: 1.6;
}
.mod-layout02__friendnum__num__text p .font-30{
    font-size: 3rem;
}
.mod-layout02__friendnum__num__alignleft .mod-number_text{
    justify-content: flex-start;
}
.mod-layout02__friendnum__list{
    border: 1px solid #999999;
    border-radius: 5px;
}
.mod-layout02__friendnum__list li{
    font-size: 1.4rem;
    line-height: 1.6;
    position: relative;
    font-weight: normal;
    padding: 8px 0 8px 2em;
}
.mod-layout02__friendnum__list li+li{
    border-top: 1px solid #999999;
}
.list-tips{
    position: absolute;
    left: .7em;
    top: 8px;
}
.mod-subheading-title{
    text-align: center;
    margin-bottom: 40px;
}
.mod-subheading-title img{
    height: 16px;
}
.search_box {
    margin-bottom: 20px;
}
.search_box input {
    width: 80%;
}
.search_box #search_btn {
    width: 19%;
    height: 36px;
    font-size: 1.8rem;
    float: right;
}