@charset "utf-8";
/* =========================================================
 public
========================================================= */
#Cont {
width: 100%;
}

.wa-wrapper {
font-size: 14px;
line-height: 23px;
}

.wa-wrapper *, .wa-wrapper *::before, .wa-wrapper *::after {
-webkit-box-sizing: border-box;
box-sizing: border-box;
}

.wa-wrapper a {
color: #212121;
}

.wa-wrapper strong {
color: inherit;
}

/* tablet layout
--------------------------------------------------------- */
@media screen and (max-width: 768px) {
.wa-wrapper {
margin-bottom: 20px;
}
}

/* =========================================================
 header
========================================================= */
.wa-header__top {
padding: 0 10px;
}

.wa-header__logo {
text-align: center;
line-height: 0;
}

.wa-header__logo a {
display: inline-block;
}

.wa-header__logo a img {
margin: 0 auto;
}

.wa-header__logo img {
margin: 0 auto;
}

.wa-header__lead {
padding: 21px 10px 0;
font-size: 13px;
line-height: 21px;
text-align: center;
}

.wa-global-nav {
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-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-global-nav__inner {
width: 100%;
max-width: 980px;
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;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-global-nav__item {
padding: 9px 0 13px;
margin: 0 10px;
font-size: 21px;
line-height: 27px;
font-family: "PT Sans Narrow", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "モリサワ 新ゴ R", "Droid Sans", メイリオ, sans-serif;
}

.wa-global-nav__item a {
padding: 5px 5px;
margin: 0 15px;
text-decoration: none;
position: relative;
display: inline-block;
}

.wa-global-nav__item a::after {
content: '';
width: 100%;
height: 2px;
background: #B6183E;
position: absolute;
bottom: -1px;
left: 0;
-webkit-transform: scale(0, 1);
transform: scale(0, 1);
-webkit-transform-origin: center top;
transform-origin: center top;
-webkit-transition: -webkit-transform .5s;
transition: -webkit-transform .5s;
transition: transform .5s;
transition: transform .5s, -webkit-transform .5s;
}

.wa-global-nav__item a:hover::after {
-webkit-transform: scale(1, 1);
transform: scale(1, 1);
}

.wa-category--knowledge .wa-global-nav__item--knowledge a::after {
-webkit-transform: scale(1, 1);
transform: scale(1, 1);
}

.wa-category--comic .wa-global-nav__item--comic a::after {
-webkit-transform: scale(1, 1);
transform: scale(1, 1);
}

.wa-category--mariage .wa-global-nav__item--mariage a::after {
-webkit-transform: scale(1, 1);
transform: scale(1, 1);
}

.wa-category--column .wa-global-nav__item--column a::after {
-webkit-transform: scale(1, 1);
transform: scale(1, 1);
}

.wa-category--trivia .wa-global-nav__item--trivia a::after {
-webkit-transform: scale(1, 1);
transform: scale(1, 1);
}

/* tablet layout
--------------------------------------------------------- */
@media screen and (max-width: 768px) {
.wa-global-nav {
padding: 10px 0 14px;
}
.wa-global-nav__item {
padding: 5px 0;
margin: 0 5px;
font-size: 16px;
line-height: 24px;
}
.wa-global-nav__item a {
padding: 0 5px;
margin: 0;
}
}

/* smartphone layout
--------------------------------------------------------- */
@media screen and (max-width: 640px) {
.wa-header {
margin-top: 20px;
}
}

/* =========================================================
 aside
========================================================= */
.wa-aside__inner {
width: 258px;
padding: 10px;
border: 1px solid #DADADA;
}

.wa-aside__section:first-child {
padding-bottom: 10px;
border-bottom: 1px solid #DADADA;
margin-bottom: 10px;
}

.wa-aside__section:not(:first-child):not(.is-last) {
margin-bottom: 10px;
}

.wa-aside__section:not(:first-child):not(.is-last)::after {
content: "";
display: block;
width: 100%;
height: 1px;
margin-top: 10px;
background-image: linear-gradient(to right, #DADADA, #DADADA 2px, transparent 2px, transparent 6px);
background-size: 6px 1px;
background-position: top;
background-repeat: repeat-x;
}

.wa-aside__category {
font-size: 18px;
line-height: 25px;
font-family: "PT Sans Narrow", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "モリサワ 新ゴ R", "Droid Sans", メイリオ, sans-serif;
color: #B6183E;
font-weight: bold;
}

.wa-aside__title {
font-size: 24px;
line-height: 30px;
font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro, "HG明朝E", "ＭＳ Ｐ明朝", serif;
letter-spacing: -2px;
}

.wa-aside__title a {
text-decoration: none;
-webkit-transition: opacity .5s;
transition: opacity .5s;
}

.wa-aside__title a:hover {
opacity: .5;
}

.wa-aside__subtitle {
padding-left: 18px;
}

.wa-aside__subtitle__button {
width: 11px;
height: 11px;
border: 1px solid #B6183E;
border-radius: 3px;
margin: 0 7px 0 -18px;
display: inline-block;
position: relative;
}

.wa-aside__subtitle__button::before {
content: "";
width: 1px;
height: 5px;
background: #B6183E;
position: absolute;
top: 2px;
left: 4px;
-webkit-transition: -webkit-transform .5s;
transition: -webkit-transform .5s;
transition: transform .5s;
transition: transform .5s, -webkit-transform .5s;
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}

.is-closed .wa-aside__subtitle__button::before {
-webkit-transform: rotate(0);
transform: rotate(0);
}

.wa-aside__subtitle__button::after {
content: "";
width: 5px;
height: 1px;
background: #B6183E;
position: absolute;
top: 4px;
left: 2px;
-webkit-transition: -webkit-transform .5s;
transition: -webkit-transform .5s;
transition: transform .5s;
transition: transform .5s, -webkit-transform .5s;
-webkit-transform: rotate(405deg);
transform: rotate(405deg);
}

.is-closed .wa-aside__subtitle__button::after {
-webkit-transform: rotate(0);
transform: rotate(0);
}

.wa-aside__subtitle a {
color: #B6183E;
font-weight: bold;
}

.wa-aside__link__item {
font-size: 13px;
line-height: 21px;
padding-left: 18px;
position: relative;
}

.wa-aside__link__item::before {
content: "";
width: 11px;
height: 11px;
border-radius: 3px;
background: #B6183E;
display: block;
position: absolute;
top: 4px;
left: 0;
}

.wa-aside__link__item::after {
content: "";
width: 4px;
height: 4px;
border-top: 1px solid #FFF;
border-right: 1px solid #FFF;
display: block;
position: absolute;
top: 7px;
left: 3px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

/* tablet layout
--------------------------------------------------------- */
@media screen and (max-width: 768px) {
.wa-aside__inner {
width: 100%;
}
}

/* =========================================================
 layout
========================================================= */
.wa-inner {
width: 100%;
max-width: 980px;
padding: 0 10px;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
}

.wa-main {
width: calc(100% - 258px - 22px);
padding: 10px 0;
margin-right: 22px;
border: 1px solid #DADADA;
display: block;
min-height: 1px;
}

/* tablet layout
--------------------------------------------------------- */
@media screen and (max-width: 768px) {
.wa-inner {
display: block;
}
.wa-main {
width: 100%;
margin: 0 0 20px;
}
}

/* section/grid/cell
--------------------------------------------------------- */
.wa-section + .wa-section {
margin-top: 20px;
}

.wa-section--border {
padding: 5px 0;
border: 1px solid #DADADA;
margin: 0 10px;
}

.wa-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-grid--center {
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-grid--reverse {
-webkit-box-orient: horizontal;
-webkit-box-direction: reverse;
-ms-flex-direction: row-reverse;
flex-direction: row-reverse;
}

.wa-grid--no-wrap {
-ms-flex-wrap: nowrap;
flex-wrap: nowrap;
}

.wa-grid--flex-end {
-webkit-box-align: end;
-ms-flex-align: end;
align-items: flex-end;
}

.wa-cell {
margin: 5px 10px;
}

.wa-cell--1-col {
width: calc(8.3333333333% - 10px * 2);
}

.wa-cell--2-col {
width: calc(16.6666666667% - 10px * 2);
}

.wa-cell--3-col {
width: calc(25% - 10px * 2);
}

.wa-cell--4-col {
width: calc(33.3333333333% - 10px * 2);
}

.wa-cell--5-col {
width: calc(41.6666666667% - 10px * 2);
}

.wa-cell--6-col {
width: calc(50% - 10px * 2);
}

.wa-cell--7-col {
width: calc(58.3333333333% - 10px * 2);
}

.wa-cell--8-col {
width: calc(66.6666666667% - 10px * 2);
}

.wa-cell--9-col {
width: calc(75% - 10px * 2);
}

.wa-cell--10-col {
width: calc(83.3333333333% - 10px * 2);
}

.wa-cell--11-col {
width: calc(91.6666666667% - 10px * 2);
}

.wa-cell--12-col {
width: calc(100% - 10px * 2);
}

.wa-cell--auto-col {
-webkit-box-flex: 0;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}

.wa-grid--no-margin {
padding: 0 10px;
}

.wa-grid--no-margin .wa-cell {
margin: 0;
}

.wa-grid--no-margin .wa-cell--1-col {
width: 8.3333333333%;
}

.wa-grid--no-margin .wa-cell--2-col {
width: 16.6666666667%;
}

.wa-grid--no-margin .wa-cell--3-col {
width: 25%;
}

.wa-grid--no-margin .wa-cell--4-col {
width: 33.3333333333%;
}

.wa-grid--no-margin .wa-cell--5-col {
width: 41.6666666667%;
}

.wa-grid--no-margin .wa-cell--6-col {
width: 50%;
}

.wa-grid--no-margin .wa-cell--7-col {
width: 58.3333333333%;
}

.wa-grid--no-margin .wa-cell--8-col {
width: 66.6666666667%;
}

.wa-grid--no-margin .wa-cell--9-col {
width: 75%;
}

.wa-grid--no-margin .wa-cell--10-col {
width: 83.3333333333%;
}

.wa-grid--no-margin .wa-cell--11-col {
width: 91.6666666667%;
}

.wa-grid--no-margin .wa-cell--12-col {
width: 100%;
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-grid {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.wa-grid--no-responsive {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
}
.wa-cell--1-col, .wa-cell--2-col, .wa-cell--3-col, .wa-cell--4-col, .wa-cell--5-col, .wa-cell--6-col, .wa-cell--7-col, .wa-cell--8-col, .wa-cell--9-col, .wa-cell--10-col, .wa-cell--11-col {
width: calc(100% - 10px * 2);
}
.wa-cell--tablet-1-col {
width: calc(8.3333333333% - 10px * 2);
}
.wa-cell--tablet-2-col {
width: calc(16.6666666667% - 10px * 2);
}
.wa-cell--tablet-3-col {
width: calc(25% - 10px * 2);
}
.wa-cell--tablet-4-col {
width: calc(33.3333333333% - 10px * 2);
}
.wa-cell--tablet-5-col {
width: calc(41.6666666667% - 10px * 2);
}
.wa-cell--tablet-6-col {
width: calc(50% - 10px * 2);
}
.wa-cell--tablet-7-col {
width: calc(58.3333333333% - 10px * 2);
}
.wa-cell--tablet-8-col {
width: calc(66.6666666667% - 10px * 2);
}
.wa-cell--tablet-9-col {
width: calc(75% - 10px * 2);
}
.wa-cell--tablet-10-col {
width: calc(83.3333333333% - 10px * 2);
}
.wa-cell--tablet-11-col {
width: calc(91.6666666667% - 10px * 2);
}
.wa-cell--tablet-12-col {
width: calc(100% - 10px * 2);
}
.wa-grid--no-margin .wa-cell--1-col, .wa-grid--no-margin .wa-cell--2-col, .wa-grid--no-margin .wa-cell--3-col, .wa-grid--no-margin .wa-cell--4-col, .wa-grid--no-margin .wa-cell--5-col, .wa-grid--no-margin .wa-cell--6-col, .wa-grid--no-margin .wa-cell--7-col, .wa-grid--no-margin .wa-cell--8-col, .wa-grid--no-margin .wa-cell--9-col, .wa-grid--no-margin .wa-cell--10-col, .wa-grid--no-margin .wa-cell--11-col {
width: 100%;
}
.wa-grid--no-responsive .wa-cell--1-col {
width: calc(8.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--2-col {
width: calc(16.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--3-col {
width: calc(25% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--4-col {
width: calc(33.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--5-col {
width: calc(41.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--6-col {
width: calc(50% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--7-col {
width: calc(58.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--8-col {
width: calc(66.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--9-col {
width: calc(75% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--10-col {
width: calc(83.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--11-col {
width: calc(91.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--12-col {
width: calc(100% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-1-col {
width: calc(8.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-2-col {
width: calc(16.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-3-col {
width: calc(25% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-4-col {
width: calc(33.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-5-col {
width: calc(41.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-6-col {
width: calc(50% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-7-col {
width: calc(58.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-8-col {
width: calc(66.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-9-col {
width: calc(75% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-10-col {
width: calc(83.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-11-col {
width: calc(91.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--tablet-12-col {
width: calc(100% - 10px * 2);
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--1-col {
width: 8.3333333333%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--2-col {
width: 16.6666666667%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--3-col {
width: 25%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--4-col {
width: 33.3333333333%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--5-col {
width: 41.6666666667%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--6-col {
width: 50%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--7-col {
width: 58.3333333333%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--8-col {
width: 66.6666666667%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--9-col {
width: 75%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--10-col {
width: 83.3333333333%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--11-col {
width: 91.6666666667%;
}
.wa-grid--no-responsive.wa-grid--no-margin .wa-cell--12-col {
width: 100%;
}
}

/* smartphone layout */
@media screen and (max-width: 640px) {
.wa-cell--smartphone-1-col {
width: calc(8.3333333333% - 10px * 2);
}
.wa-cell--smartphone-2-col {
width: calc(16.6666666667% - 10px * 2);
}
.wa-cell--smartphone-3-col {
width: calc(25% - 10px * 2);
}
.wa-cell--smartphone-4-col {
width: calc(33.3333333333% - 10px * 2);
}
.wa-cell--smartphone-5-col {
width: calc(41.6666666667% - 10px * 2);
}
.wa-cell--smartphone-6-col {
width: calc(50% - 10px * 2);
}
.wa-cell--smartphone-7-col {
width: calc(58.3333333333% - 10px * 2);
}
.wa-cell--smartphone-8-col {
width: calc(66.6666666667% - 10px * 2);
}
.wa-cell--smartphone-9-col {
width: calc(75% - 10px * 2);
}
.wa-cell--smartphone-10-col {
width: calc(83.3333333333% - 10px * 2);
}
.wa-cell--smartphone-11-col {
width: calc(91.6666666667% - 10px * 2);
}
.wa-cell--smartphone-12-col {
width: calc(100% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-1-col {
width: calc(8.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-2-col {
width: calc(16.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-3-col {
width: calc(25% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-4-col {
width: calc(33.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-5-col {
width: calc(41.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-6-col {
width: calc(50% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-7-col {
width: calc(58.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-8-col {
width: calc(66.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-9-col {
width: calc(75% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-10-col {
width: calc(83.3333333333% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-11-col {
width: calc(91.6666666667% - 10px * 2);
}
.wa-grid--no-responsive .wa-cell--smartphone-12-col {
width: calc(100% - 10px * 2);
}
}

/* =========================================================
 components
========================================================= */
.wa-category-area {
padding-bottom: 10px;
border-bottom: 1px solid #DADADA;
margin: 0 10px 10px;
}

.wa-category-area__en {
font-size: 18px;
line-height: 25px;
font-family: "PT Sans Narrow", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "モリサワ 新ゴ R", "Droid Sans", メイリオ, sans-serif;
color: #B6183E;
font-weight: bold;
}

.wa-category-area__ja {
font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro, "HG明朝E", "ＭＳ Ｐ明朝", serif;
font-weight: bold;
}

.wa-page-title {
padding: 0 10px;
margin-bottom: 10px;
font-size: 24px;
line-height: 30px;
font-weight: bold;
}

.wa-subtitle {
padding-left: 16px;
font-size: 18px;
line-height: 25px;
margin-bottom: 10px;
font-weight: bold;
position: relative;
}

.wa-subtitle::before {
content: "";
width: 2px;
height: 100%;
background: #B6183E;
display: block;
position: absolute;
top: 0;
left: 0;
}

.wa-subtitle::after {
content: "";
width: 2px;
height: 100%;
background: #B6183E;
display: block;
position: absolute;
top: 0;
left: 4px;
}

.wa-subsubtitle {
padding-left: 8px;
margin-bottom: 10px;
font-size: 14px;
line-height: 23px;
font-weight: bold;
position: relative;
}

.wa-subsubtitle::before {
content: "";
width: 2px;
height: 100%;
background: #B6183E;
display: block;
position: absolute;
top: 0;
left: 0;
}

.wa-subsubtitle::after {
content: "";
width: 100%;
height: 1px;
background-image: linear-gradient(to right, #DADADA, #DADADA 2px, transparent 2px, transparent 6px);
background-size: 6px 1px;
background-position: top;
background-repeat: repeat-x;
position: absolute;
bottom: -8px;
left: 0;
}

.wa-subsubtitle--link {
margin-bottom: 10px;
position: relative;
}

.wa-subsubtitle--link::after {
content: "";
width: 100%;
height: 1px;
background-image: linear-gradient(to right, #DADADA, #DADADA 2px, transparent 2px, transparent 6px);
background-size: 6px 1px;
background-position: top;
background-repeat: repeat-x;
position: absolute;
bottom: -8px;
left: 0;
}

.wa-subsubtitle--link a {
padding-left: 22px;
font-size: 14px;
line-height: 23px;
font-weight: bold;
display: inline-block;
}

.wa-subsubtitle--link a::before {
content: "";
width: 15px;
height: 15px;
border-radius: 4px;
background: #B6183E;
display: block;
position: absolute;
top: 4px;
left: 0;
}

.wa-subsubtitle--link a::after {
content: "";
width: 6px;
height: 6px;
border-top: 2px solid #FFF;
border-right: 2px solid #FFF;
display: block;
position: absolute;
top: 9px;
left: 3px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

.wa-text--area .wa-subsubtitle {
margin-bottom: 22px;
}

/* list
--------------------------------------------------------- */
.wa-list-number {
padding-left: 1em;
}

.wa-list-number > li {
list-style: decimal;
}

.wa-list-circle > li {
padding-left: 16px;
position: relative;
}

.wa-list-circle > li::before {
content: "";
width: 11px;
height: 11px;
border-radius: 50%;
background: #DADADA;
position: absolute;
top: 6px;
left: 0;
}

.wa-list-horizontal {
padding: 10px 0 10px 10px;
border: 1px solid #DADADA;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-list-horizontal > li {
margin-right: 20px;
}

/* icon
--------------------------------------------------------- */
.wa-icon-link {
padding-left: 18px;
position: relative;
}

.wa-icon-link::before {
content: "";
width: 11px;
height: 11px;
border-radius: 3px;
background: #B6183E;
display: block;
position: absolute;
top: 6px;
left: 0;
}

.wa-icon-link::after {
content: "";
width: 4px;
height: 4px;
border-top: 1px solid #FFF;
border-right: 1px solid #FFF;
display: block;
position: absolute;
top: 9px;
left: 3px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

.wa-icon-link--green::before {
background: #6eb92c;
}

.wa-icon-anchor {
padding-left: 18px;
position: relative;
}

.wa-icon-anchor::before {
content: "";
width: 11px;
height: 11px;
border-radius: 3px;
background: #B6183E;
display: block;
position: absolute;
top: 6px;
left: 0;
}

.wa-icon-anchor::after {
content: "";
width: 4px;
height: 4px;
border-right: 1px solid #FFF;
border-bottom: 1px solid #FFF;
display: block;
position: absolute;
top: 9px;
left: 4px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
}

.wa-icon-popup {
padding-left: 18px;
position: relative;
}

.wa-icon-popup::before {
content: "";
width: 8px;
height: 8px;
border: 1px solid #B6183E;
border-top: 2px solid #B6183E;
background: #FFF;
display: block;
position: absolute;
top: 9px;
left: 3px;
}

.wa-icon-popup::after {
content: "";
width: 8px;
height: 8px;
border: 1px solid #B6183E;
border-top: 2px solid #B6183E;
background: #FFF;
display: block;
position: absolute;
top: 6px;
left: 6px;
}

.wa-icon-popup--inline {
padding-left: 18px;
position: relative;
}

.wa-icon-popup--inline::before {
content: "";
width: 8px;
height: 8px;
border: 1px solid #B6183E;
border-top: 2px solid #B6183E;
background: #FFF;
display: block;
position: absolute;
top: 6px;
left: 3px;
}

.wa-icon-popup--inline::after {
content: "";
width: 8px;
height: 8px;
border: 1px solid #B6183E;
border-top: 2px solid #B6183E;
background: #FFF;
display: block;
position: absolute;
top: 3px;
left: 6px;
}

/* table
--------------------------------------------------------- */
.wa-table {
width: 100%;
}

.wa-table__cell {
padding: 8px;
border: 1px solid #FFF;
background: #f5f5f5;
text-align: left;
}

.wa-table__header {
background: #EFEDDE;
font-weight: bold;
}

.wa-table__cell--red {
background: #BD1F00;
color: #FFF;
}

.wa-table__cell--green {
background: #6eb92c;
color: #FFF;
}

.wa-table__cell--pink {
background: #E95271;
color: #FFF;
}

.wa-table__cell--yellow {
background: #D5B445;
color: #FFF;
}

.wa-table__cell--black {
background: #000;
color: #FFF;
}

.wa-table__cell--transparent {
border: none;
background: transparent;
}

.wa-table__cell--nowrap {
white-space: nowrap;
}

.wa-table__cell--top {
vertical-align: top;
}

.wa-table--simple {
width: 100%;
}

.wa-table--simple .wa-table__cell {
padding: 8px;
border-top: 1px solid #DADADA;
border-bottom: 1px solid #DADADA;
background: transparent;
text-align: left;
}

.wa-table--simple .wa-table__header {
font-weight: bold;
}

.wa-table--simple .wa-table--nowrap {
white-space: nowrap;
}

/* image header
--------------------------------------------------------- */
.wa-image-header {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
font-size: 18px;
line-height: 25px;
font-weight: bold;
}

.wa-image-header__logo {
margin-right: 10px;
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-image-header {
display: block;
}
.wa-image-header__logo {
margin-right: 0;
}
}

/* image float
--------------------------------------------------------- */
.wa-float__float-left {
float: left;
margin: 0 10px 10px 0;
}

.wa-float__float-right {
float: right;
margin: 0 0 10px 10px;
}

.wa-float::after {
content: "";
display: table;
clear: both;
}

/* movie
--------------------------------------------------------- */
.wa-movie {
height: 0;
padding-bottom: 56.25%;
position: relative;
}

.wa-movie__object {
width: 100%;
height: 100%;
border: none;
position: absolute;
top: 0;
left: 0;
}

.wa-no-js .wa-movie {
display: none;
}

/* display
--------------------------------------------------------- */
.wa-display--small-pc {
display: none;
}

.wa-display--tablet {
display: none;
}

.wa-display--sp {
display: none;
}

@media screen and (max-width: 980px) {
.wa-display--large-pc {
display: none;
}
.wa-display--small-pc {
display: block;
}
}

@media screen and (max-width: 768px) {
.wa-display--tablet {
display: block;
}
.wa-display--pc-only {
display: none;
}
}

@media screen and (max-width: 640px) {
.wa-display--sp {
display: block;
}
}

/* label
--------------------------------------------------------- */
.wa-label--color-theme {
padding: 0 10px;
display: inline-block;
background: #B6183E;
color: #FFF;
}

/* utility
--------------------------------------------------------- */
.wa-text--center {
text-align: center;
}

.wa-text--right {
text-align: right;
}

.wa-text--bold {
font-weight: bold;
}

.wa-text--color-theme {
color: #B6183E !important;
}

.wa-text--green {
color: #589e2d !important;
}

.wa-text--light-green {
color: #b7d5a5 !important;
}

.wa-text--purple {
color: #541e82 !important;
}

.wa-text--light-purple {
color: #bd95e0 !important;
}

.wa-text--orange {
color: #ff5d33 !important;
}

.wa-text--pink {
color: #E65779 !important;
}

.wa-text--rouge {
color: #FF3000 !important;
}

.wa-text--blanc {
color: #99CF00 !important;
}

.wa-text--rose {
color: #FF47A9 !important;
}

.wa-text--13 {
font-size: 13px;
line-height: 21px;
}

.wa-text--16 {
font-size: 16px;
line-height: 24px;
}

.wa-text--18 {
font-size: 18px;
line-height: 25px;
}

.wa-text--border {
padding: 10px;
border: 1px solid #DADADA;
}

.wa-text--black-circle {
width: 21px;
height: 21px;
border-radius: 50%;
background: #000;
color: #FFF;
display: inline-block;
}

.wa-image--center {
margin: 0 auto;
}

.wa-image--inline-middle {
display: inline;
vertical-align: middle;
}

.wa-display--inline-block {
display: inline-block;
}

.wa-flex--center {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: center;
-ms-flex-pack: center;
justify-content: center;
}

.wa-sr-only {
position: absolute;
overflow: hidden;
clip: rect(0, 0, 0, 0);
width: 1px;
height: 1px;
margin: -1px;
padding: 0;
border: 0;
}

.wa-mt--0 {
margin-top: 0 !important;
}

.wa-mt--10 {
margin-top: 10px !important;
}

.wa-mb--0 {
margin-bottom: 0 !important;
}

.wa-mb--10 {
margin-bottom: 10px;
}

.wa-mb--15 {
margin-bottom: 15px;
}

.wa-mb--20 {
margin-bottom: 20px;
}

.wa-text--area > p:not(:last-child),
.wa-text--area > .wa-list-circle:not(:last-child),
.wa-text--area > .wa-list-number:not(:last-child) {
margin-bottom: 1em;
}

.wa-border {
width: calc(100% - 10px*2);
margin: 20px auto;
border-color: #DADADA;
border-top-width: 0;
display: block;
}

/* no javascript
--------------------------------------------------------- */
.wa-no-js .wa-no-js--hide {
display: none !important;
}

/* =========================================================
 top page
========================================================= */
.wa-top-main {
width: 100%;
display: block;
}

.wa-top-section {
width: 100%;
padding: 20px 0;
}

.wa-top-section--knowledge {
padding: 90px 0;
background: url(/alcohol/wine/wine_academy/images/index_knowledge_01.jpg) no-repeat center;
background-size: cover;
}

.wa-top-section--mariage {
background: #F0F0F0;
}

.wa-top-section--trivia {
background: #F0F0F0;
}

/* grid/cell
--------------------------------------------------------- */
.wa-top-grid {
width: 100%;
max-width: 980px;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-top-cell {
margin: 5px 10px;
}

.wa-top-cell--1-col {
width: calc(8.3333333333% - 10px * 2);
}

.wa-top-cell--2-col {
width: calc(16.6666666667% - 10px * 2);
}

.wa-top-cell--3-col {
width: calc(25% - 10px * 2);
}

.wa-top-cell--4-col {
width: calc(33.3333333333% - 10px * 2);
}

.wa-top-cell--5-col {
width: calc(41.6666666667% - 10px * 2);
}

.wa-top-cell--6-col {
width: calc(50% - 10px * 2);
}

.wa-top-cell--7-col {
width: calc(58.3333333333% - 10px * 2);
}

.wa-top-cell--8-col {
width: calc(66.6666666667% - 10px * 2);
}

.wa-top-cell--9-col {
width: calc(75% - 10px * 2);
}

.wa-top-cell--10-col {
width: calc(83.3333333333% - 10px * 2);
}

.wa-top-cell--11-col {
width: calc(91.6666666667% - 10px * 2);
}

.wa-top-cell--12-col {
width: calc(100% - 10px * 2);
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-top-grid {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.wa-top-cell--1-col, .wa-top-cell--2-col, .wa-top-cell--3-col, .wa-top-cell--4-col, .wa-top-cell--5-col, .wa-top-cell--6-col, .wa-top-cell--7-col, .wa-top-cell--8-col, .wa-top-cell--9-col, .wa-top-cell--10-col, .wa-top-cell--11-col {
width: calc(100% - 10px * 2);
}
}

/* components
--------------------------------------------------------- */
.wa-top-title-en {
font-size: 21px;
line-height: 27px;
font-family: "PT Sans Narrow", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "モリサワ 新ゴ R", "Droid Sans", メイリオ, sans-serif;
}

.wa-top-section--knowledge .wa-top-title-en {
color: #8B8B8B;
}

.wa-top-text {
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-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-top-text__title-ja {
width: 100%;
margin-bottom: 10px;
font-size: 30px;
line-height: 38px;
font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro, "HG明朝E", "ＭＳ Ｐ明朝", serif;
font-weight: bold;
text-align: center;
letter-spacing: -3px;
}

.wa-top-section--knowledge .wa-top-text__title-ja {
font-size: 56px;
line-height: 66px;
}

.wa-top-text__title-ja a {
text-decoration: none;
-webkit-transition: opacity .5s;
transition: opacity .5s;
}

.wa-top-text__title-ja a:hover {
opacity: .5;
}

.wa-top-text__lead {
width: 100%;
text-align: center;
}

.wa-top-section .wa-top-text__button {
padding: 2px 10px 2px 35px;
border: 1px solid #B6183E;
margin-top: 13px;
background: #FFF;
font-size: 16px;
line-height: 24px;
font-family: "PT Sans Narrow", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "モリサワ 新ゴ R", "Droid Sans", メイリオ, sans-serif;
color: #B6183E;
text-decoration: none;
display: block;
position: relative;
-webkit-transition: background .5s, color .5s;
transition: background .5s, color .5s;
}

.wa-top-section .wa-top-text__button__icon {
width: 20px;
height: 16px;
border-radius: 3px;
background: #B6183E;
display: block;
position: absolute;
top: 50%;
left: 10px;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
-webkit-transition: background .5s;
transition: background .5s;
}

.wa-top-section .wa-top-text__button__icon::before {
content: "";
width: 9px;
height: 9px;
border: 2px solid #FFF;
border-radius: 50%;
background: transparent;
display: block;
position: absolute;
top: 3px;
left: 5px;
-webkit-transition: border .5s;
transition: border .5s;
}

.wa-top-section .wa-top-text__button__icon::after {
content: "";
width: 5px;
height: 2px;
background: #FFF;
display: block;
position: absolute;
top: 11px;
left: 11px;
-webkit-transform: rotate(45deg);
transform: rotate(45deg);
-webkit-transition: background .5s;
transition: background .5s;
}

.wa-top-section--knowledge .wa-top-text__button {
padding: 7px 26px 7px 51px;
background: rgba(255, 255, 255, 0.7);
font-size: 18px;
line-height: 25px;
}

.wa-top-section--knowledge .wa-top-text__button__icon {
left: 24px;
}

.wa-top-section .wa-top-text__button:hover {
background: #B6183E;
color: #FFF;
}

.wa-top-section .wa-top-text__button:hover .wa-top-text__button__icon {
background: #FFF;
}

.wa-top-section .wa-top-text__button:hover .wa-top-text__button__icon::before {
border-color: #B6183E;
}

.wa-top-section .wa-top-text__button:hover .wa-top-text__button__icon::after {
background: #B6183E;
}

/* small pc layout */
@media screen and (max-width: 980px) {
.wa-top-text__title-ja {
font-size: calc(7px + 2vw);
line-height: 1.25;
}
.wa-top-section--knowledge .wa-top-text__title-ja {
font-size: calc(24px + 2vw);
line-height: 1.25;
}
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-top-text__title-ja {
font-size: 26px;
line-height: 36px;
}
.wa-top-section--knowledge .wa-top-text__title-ja {
font-size: 38px;
line-height: 48px;
}
}

/* =========================================================
 category top
========================================================= */
/* category header
--------------------------------------------------------- */
.wa-category-header {
padding: 33px 10px 32px;
text-align: center;
}

.wa-category-header__title-en {
font-size: 21px;
line-height: 27px;
font-family: "PT Sans Narrow", Helvetica, Arial, "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "モリサワ 新ゴ R", "Droid Sans", メイリオ, sans-serif;
}

.wa-category-header__title-ja {
font-size: 26px;
line-height: 36px;
font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro, "HG明朝E", "ＭＳ Ｐ明朝", serif;
}

.wa-category--knowledge .wa-category-header {
background: url(/alcohol/wine/wine_academy/knowledge/images/knowledge_header_image.jpg) no-repeat center;
background-size: cover;
}

.wa-category--knowledge .wa-category-header__title-en {
color: #B6183E;
}

.wa-category--comic .wa-category-header {
padding: 31px 10px 30px;
border-top: 2px solid #DADADA;
border-bottom: 2px solid #DADADA;
background: url(/alcohol/wine/wine_academy/comic/images/comic_header_image.jpg) no-repeat center;
background-size: cover;
}

.wa-category--comic .wa-category-header__title-en {
color: #B6183E;
}

.wa-category--mariage .wa-category-header {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_header_image.jpg) no-repeat center;
background-size: cover;
}

.wa-category--mariage .wa-category-header__title-en {
color: #FFF;
text-shadow: 0px 0px 6px #2F2F2F, 0px 0px 6px #2F2F2F, 0px 0px 6px #2F2F2F, 0px 0px 6px #2F2F2F;
}

.wa-category--mariage .wa-category-header__title-ja {
color: #FFF;
text-shadow: 0px 0px 6px #2F2F2F, 0px 0px 6px #2F2F2F, 0px 0px 6px #2F2F2F, 0px 0px 6px #2F2F2F;
}

.wa-category--column .wa-category-header {
background: url(/alcohol/wine/wine_academy/column/images/column_header_image.jpg) no-repeat center;
background-size: cover;
}

.wa-category--column .wa-category-header__title-en {
color: #FFF;
text-shadow: 0px 0px 6px #803210, 0px 0px 6px #803210, 0px 0px 6px #803210, 0px 0px 6px #803210;
}

.wa-category--column .wa-category-header__title-ja {
color: #FFF;
text-shadow: 0px 0px 6px #803210, 0px 0px 6px #803210, 0px 0px 6px #803210, 0px 0px 6px #803210;
}

.wa-category--trivia .wa-category-header {
background: url(/alcohol/wine/wine_academy/trivia/images/trivia_header_image.jpg) no-repeat center;
background-size: cover;
}

.wa-category--trivia .wa-category-header__title-en {
color: #FFF;
text-shadow: 0px 0px 6px #858899, 0px 0px 6px #858899, 0px 0px 6px #858899, 0px 0px 6px #858899;
}

.wa-category--trivia .wa-category-header__title-ja {
color: #FFF;
text-shadow: 0px 0px 6px #858899, 0px 0px 6px #858899, 0px 0px 6px #858899, 0px 0px 6px #858899;
}

/* category main
--------------------------------------------------------- */
.wa-category-main {
width: 100%;
max-width: 980px;
margin: 20px auto 0;
display: block;
}

/* category grid/cell
--------------------------------------------------------- */
.wa-category-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-category-cell {
margin: 10px;
width: calc(25% - 10px * 2);
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

.wa-category-cell__image {
margin-right: 10px;
-webkit-box-flex: 0;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}

/* small pc layout */
@media screen and (max-width: 980px) {
.wa-category-cell {
width: calc(33.3333333333% - 10px * 2);
}
}

/* smartphone layout */
@media screen and (max-width: 640px) {
.wa-category-cell {
width: calc(50% - 10px * 2);
}
}

@media screen and (max-width: 450px) {
.wa-category-cell {
width: calc(100% - 10px * 2);
}
}

/* category comic
--------------------------------------------------------- */
.wa-category-comic-header {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

.wa-category-comic-header__logo {
margin: 5px 10px;
-webkit-box-flex: 0;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}

.wa-category-comic-header__text {
width: calc(100% - 10px * 2);
margin: 5px 10px;
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-align: end;
-ms-flex-align: end;
align-items: flex-end;
}

.wa-category-comic-header__text__lead {
width: 100%;
}

.wa-category-comic-header__text__link {
padding: 3px 10px;
border: 1px solid #DADADA;
margin-top: 5px;
}

.wa-comic-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-comic-cell {
width: calc(25% - 10px * 2);
margin: 10px;
border: 1px solid #DADADA;
}

.wa-comic-cell__text {
padding: 5px 10px;
border-top: 1px solid #DADADA;
}

.wa-character-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-character-cell {
width: calc(20% - 10px * 2);
margin: 5px 10px;
}

/* small pc layout */
@media screen and (max-width: 980px) {
.wa-comic-cell {
width: calc(33.3333333333% - 10px * 2);
}
.wa-character-cell {
width: calc(33.3333333333% - 10px * 2);
}
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-category-comic-header {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
}

/* smartphone layout */
@media screen and (max-width: 640px) {
.wa-comic-cell {
width: calc(50% - 10px * 2);
}
.wa-character-cell {
width: calc(50% - 10px * 2);
}
}

@media screen and (max-width: 450px) {
.wa-comic-cell {
width: calc(100% - 10px * 2);
}
.wa-character-cell {
width: calc(100% - 10px * 2);
}
}

/* category cheese
--------------------------------------------------------- */
.wa-cheese-list {
width: 100%;
padding: 5px 0;
border: 1px solid #DADADA;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-cheese-list__item {
margin: 5px 10px;
}

.wa-cheese-radio {
padding-left: 25px;
display: block;
position: relative;
cursor: pointer;
}

.wa-cheese-radio::before {
content: "";
display: block;
width: 20px;
height: 20px;
border: 2px solid #7F7F7F;
border-radius: 50%;
position: absolute;
top: 50%;
left: 0;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
-webkit-transition: border .5s;
transition: border .5s;
}

.wa-cheese-radio::after {
content: "";
display: block;
width: 10px;
height: 10px;
border-radius: 50%;
background: #7F7F7F;
position: absolute;
top: 50%;
left: 5px;
-webkit-transform: translateY(-50%) scale(0, 0);
transform: translateY(-50%) scale(0, 0);
-webkit-transition: background .5s, -webkit-transform .5s;
transition: background .5s, -webkit-transform .5s;
transition: transform .5s, background .5s;
transition: transform .5s, background .5s, -webkit-transform .5s;
}

.wa-cheese-radio--checked::before {
border-color: #B6183E;
}

.wa-cheese-radio--checked::after {
background: #B6183E;
-webkit-transform: translateY(-50%) scale(1, 1);
transform: translateY(-50%) scale(1, 1);
}

.wa-cheese-radio__button {
display: none;
}

.wa-cheese-radio__label {
font-weight: bold;
}

.wa-category-cheese-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-category-cheese-cell {
width: calc(16.6666666667% - 10px * 2);
margin: 10px;
border: 1px solid #DADADA;
-webkit-transition: opacity .5s;
transition: opacity .5s;
}

.wa-category-cheese-cell__text {
padding: 5px 10px;
border-top: 1px solid #DADADA;
}

.wa-category-cheese-cell--disable {
opacity: .2;
}

.wa-category-cheese-cell--disable a {
pointer-events: none;
cursor: default;
text-decoration: none;
}

/* small pc layout */
@media screen and (max-width: 980px) {
.wa-category-cheese-cell {
width: calc(25% - 10px * 2);
}
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-category-cheese-cell {
width: calc(33.3333333333% - 10px * 2);
}
}

/* smartphone layout */
@media screen and (max-width: 550px) {
.wa-category-cheese-cell {
width: calc(50% - 10px * 2);
}
}

/* category knowledge
--------------------------------------------------------- */
.wa-knowledge-kind-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-knowledge-kind-cell {
width: calc(20% - 10px * 2);
margin: 10px;
border: 1px solid #DADADA;
}

.wa-knowledge-kind-cell__text {
padding: 5px 10px;
border-top: 1px solid #DADADA;
}

.wa-grape-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

.wa-grape-cell {
width: 50%;
}

.wa-wrapper .wa-grape-button {
width: 100%;
padding: 12px 10px;
border: 1px solid #DADADA;
border-radius: 10px;
font-size: 18px;
line-height: 25px;
font-weight: bold;
color: #FFF;
text-align: center;
text-decoration: none;
display: block;
-webkit-transition: background .5s, color .5s;
transition: background .5s, color .5s;
}

.wa-wrapper .wa-grape-button__inner {
padding-left: 28px;
position: relative;
}

.wa-wrapper .wa-grape-button__inner::before {
content: "";
display: block;
width: 18px;
height: 18px;
background: #FFF;
position: absolute;
top: 50%;
left: 0;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}

.wa-wrapper .wa-grape-button__inner::after {
content: "";
width: 7px;
height: 7px;
border-top: 2px solid #B6183E;
border-right: 2px solid #B6183E;
position: absolute;
top: 50%;
left: 4px;
-webkit-transform: translateY(-50%) rotate(45deg);
transform: translateY(-50%) rotate(45deg);
}

.wa-wrapper .wa-grape-button--rouge {
background: #B6183E;
}

.wa-wrapper .wa-grape-button--rouge:hover {
background: transparent;
color: #B6183E;
}

.wa-wrapper .wa-grape-button--blanc {
background: #6eb92c;
}

.wa-wrapper .wa-grape-button--blanc:hover {
background: transparent;
color: #6eb92c;
}

.wa-grape-inner-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-grape-inner-cell {
width: calc(50% - 10px * 2);
margin: 10px;
border: 1px solid #DADADA;
}

.wa-grape-inner-cell__text {
padding: 5px 10px;
border-top: 1px solid #DADADA;
}

.wa-region-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-region-cell {
width: calc(25% - 10px * 2);
margin: 10px;
border: 1px solid #DADADA;
}

.wa-region-cell__text {
padding: 17px 10px;
}

/* small pc layout */
@media screen and (max-width: 980px) {
.wa-grape-grid {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.wa-grape-cell {
width: 100%;
}
.wa-grape-inner-cell {
width: calc(25% - 10px * 2);
}
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-knowledge-kind-cell {
width: calc(33.3333333333% - 10px * 2);
}
}

/* smartphone layout */
@media screen and (max-width: 640px) {
.wa-grape-inner-cell {
width: calc(50% - 10px * 2);
}
.wa-region-cell {
width: calc(33.3333333333% - 10px * 2);
}
}

@media screen and (max-width: 460px) {
.wa-knowledge-kind-cell {
width: calc(50% - 10px * 2);
}
.wa-region-cell {
width: calc(50% - 10px * 2);
}
}

/* =========================================================
 comic
========================================================= */
.wa-comic-area {
width: 100%;
max-width: 502px;
padding: 0 10px;
margin: 0 auto;
}

.wa-comic-area__comic {
margin-bottom: 20px;
}

.wa-comic-area__description {
margin-bottom: 20px;
}

.wa-comic-area__description__title-area {
margin-bottom: 10px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
}

.wa-comic-area__description__thumbnail {
margin-right: 10px;
-webkit-box-flex: 0;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}

.wa-comic-area__description__title {
font-size: 24px;
line-height: 30px;
font-weight: bold;
}

.wa-comic-area .wa-comic-area__button {
padding: 10px 20px;
margin: 20px auto;
border-radius: 15px;
display: inline-block;
background: #B6183E;
color: #FFF;
font-size: 24px;
line-height: 30px;
font-weight: bold;
}

.wa-comic-area__accordion {
display: none;
}

.wa-no-js .wa-comic-area__accordion {
display: block;
}

.wa-comic-area__climax {
font-size: 24px;
line-height: 30px;
font-weight: bold;
text-align: center;
}

.wa-comic-area__afterword {
margin: 30px;
font-size: 24px;
line-height: 30px;
font-weight: bold;
text-align: center;
}

.wa-comic-area__quiz {
margin-bottom: 20px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
}

.wa-comic-area__quiz__img {
margin-right: 10px;
-webkit-box-flex: 0;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}

.wa-comic-area__quiz__text {
font-size: 18px;
line-height: 25px;
font-weight: bold;
}

.wa-comic-area__quiz__text > p:not(:last-child) {
margin-bottom: 1em;
}

.wa-comic-area__answer-comming {
margin: 50px 0;
}

.wa-comic-area__answer-comming p img {
margin: 10px auto 30px;
}

.wa-comic-area__answer {
margin-bottom: 20px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-comic-area__answer__img {
margin-right: 10px;
-webkit-box-flex: 0;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}

.wa-comic-area__answer__text {
font-size: 24px;
line-height: 30px;
font-weight: bold;
}

.wa-comic-area__answer__text > p:not(:last-child) {
margin-bottom: 1em;
}

.wa-wine-area > p,
.wa-wine-area > .wa-text--area {
padding: 0 10px;
}

.wa-wine-area__title {
margin-bottom: 1em;
font-size: 21px;
line-height: 27px;
font-weight: bold;
}

.wa-wine-area > .wa-wine-area__title {
padding: 0 10px;
}

.wa-wine-area__single {
padding: 0 10px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
}

.wa-wine-area__single .wa-wine-area__wine {
padding: 0 30px 0 20px;
-webkit-box-flex: 0;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}

.wa-wine-area__multi-col {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
}

.wa-wine-area__multi-col__cell {
width: 100%;
padding: 10px;
}

.wa-wine-area__multi-col--3-col {
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-wine-area__multi-col--3-col .wa-wine-area__multi-col__cell {
width: 33.3333333333%;
}

.wa-wine-area__text p:not(:last-child) {
margin-bottom: 1em;
}

/* unique style
--------------------------------------------------------- */
.wa-comic-area__quiz--3-col {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

.wa-comic-area__quiz--3-col .wa-comic-area__quiz__cell {
width: 100%;
padding: 0 10px;
}

.wa-comic-area__quiz__list li {
padding-left: 1.1em;
text-indent: -1.1em;
}

.wa-comic-area__quiz__list li:not(:last-child) {
margin-bottom: 10px;
}

/* smartphone layout
--------------------------------------------------------- */
@media screen and (max-width: 640px) {
.wa-wine-area__multi-col {
display: block;
}
.wa-wine-area__multi-col__cell:not(:last-child) {
margin-bottom: 10px;
}
.wa-wine-area__multi-col--3-col .wa-wine-area__multi-col__cell {
width: 100%;
}
}

/* =========================================================
 knowledge
========================================================= */
/* taste chart
--------------------------------------------------------- */
.wa-taste-chart {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-taste-chart__thumb {
margin-right: 10px;
}

/* region lead text
--------------------------------------------------------- */
.wa-region-lead {
font-size: 18px;
line-height: 25px;
font-family: "Noto Serif JP", "ヒラギノ明朝 Pro W3", Hiragino Mincho Pro, "HG明朝E", "ＭＳ Ｐ明朝", serif;
margin-bottom: 10px;
}

/* foodmap table
--------------------------------------------------------- */
.wa-foodmap {
width: 100%;
}

.wa-foodmap__cell {
padding: 8px;
border: 1px solid #DADADA;
text-align: left;
vertical-align: top;
}

.wa-foodmap__header {
font-weight: bold;
white-space: nowrap;
}

.wa-foodmap__cell--red {
background: #BD1F00;
color: #FFF;
}

.wa-foodmap__cell--green {
background: #6eb92c;
color: #FFF;
}

.wa-foodmap__cell--pink {
background: #E95271;
color: #FFF;
}

.wa-foodmap__cell--yellow {
background: #D5B445;
color: #FFF;
}

.wa-foodmap__cell--transparent {
border: none;
background: transparent;
}

.wa-process {
width: 100%;
}

.wa-process__header {
border: 1px solid #FFF;
white-space: nowrap;
font-weight: bold;
}

.wa-process__header--green {
padding: 8px;
background: #6eb92c;
color: #FFF;
}

.wa-process__header--yellow {
padding: 8px;
background: #D5B445;
color: #FFF;
}

.wa-process__cell {
padding: 8px;
border: 1px solid #FFF;
background: #f5f5f5;
}

/* pc layout */
@media screen and (max-width: 960px) {
.wa-process {
display: block;
}
.wa-process tbody,
.wa-process tr {
display: block;
}
.wa-process__header {
display: block;
}
.wa-process__cell {
padding: 8px 0;
margin-bottom: 10px;
background: transparent;
display: block;
}
}

/* label cell
--------------------------------------------------------- */
.wa-label-cell {
border: 1px solid #DADADA;
}

.wa-label-cell__title {
padding: 5px 10px;
background: #000;
font-size: 16px;
line-height: 24px;
color: #FFF;
font-weight: bold;
text-align: center;
}

.wa-label-cell__text {
padding: 0 10px 10px;
}

/* bottle table
--------------------------------------------------------- */
.wa-bottle-table {
width: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-bottle-table__cell {
width: calc(20% - 1px);
padding: 8px;
margin: 0.5px;
background: #f5f5f5;
}

.wa-bottle-table__cell--bottle {
background: transparent;
}

.wa-bottle-table__cell--title {
background: #000;
color: #FFF;
text-align: center;
}

.wa-bottle-table__cell--01 {
-webkit-box-ordinal-group: 2;
-ms-flex-order: 1;
order: 1;
}

.wa-bottle-table__cell--02 {
-webkit-box-ordinal-group: 3;
-ms-flex-order: 2;
order: 2;
}

.wa-bottle-table__cell--03 {
-webkit-box-ordinal-group: 4;
-ms-flex-order: 3;
order: 3;
}

.wa-bottle-table__cell--04 {
-webkit-box-ordinal-group: 5;
-ms-flex-order: 4;
order: 4;
}

.wa-bottle-table__cell--05 {
-webkit-box-ordinal-group: 6;
-ms-flex-order: 5;
order: 5;
}

.wa-bottle-table__cell--06 {
-webkit-box-ordinal-group: 7;
-ms-flex-order: 6;
order: 6;
}

.wa-bottle-table__cell--07 {
-webkit-box-ordinal-group: 8;
-ms-flex-order: 7;
order: 7;
}

.wa-bottle-table__cell--08 {
-webkit-box-ordinal-group: 9;
-ms-flex-order: 8;
order: 8;
}

.wa-bottle-table__cell--09 {
-webkit-box-ordinal-group: 10;
-ms-flex-order: 9;
order: 9;
}

.wa-bottle-table__cell--10 {
-webkit-box-ordinal-group: 11;
-ms-flex-order: 10;
order: 10;
}

.wa-bottle-table__cell--11 {
-webkit-box-ordinal-group: 12;
-ms-flex-order: 11;
order: 11;
}

.wa-bottle-table__cell--12 {
-webkit-box-ordinal-group: 13;
-ms-flex-order: 12;
order: 12;
}

.wa-bottle-table__cell--13 {
-webkit-box-ordinal-group: 14;
-ms-flex-order: 13;
order: 13;
}

.wa-bottle-table__cell--14 {
-webkit-box-ordinal-group: 15;
-ms-flex-order: 14;
order: 14;
}

.wa-bottle-table__cell--15 {
-webkit-box-ordinal-group: 16;
-ms-flex-order: 15;
order: 15;
}

.wa-bottle-table__cell--16 {
-webkit-box-ordinal-group: 17;
-ms-flex-order: 16;
order: 16;
}

.wa-bottle-table__cell--17 {
-webkit-box-ordinal-group: 18;
-ms-flex-order: 17;
order: 17;
}

.wa-bottle-table__cell--18 {
-webkit-box-ordinal-group: 19;
-ms-flex-order: 18;
order: 18;
}

.wa-bottle-table__cell--19 {
-webkit-box-ordinal-group: 20;
-ms-flex-order: 19;
order: 19;
}

.wa-bottle-table__cell--20 {
-webkit-box-ordinal-group: 21;
-ms-flex-order: 20;
order: 20;
}

.wa-bottle-table__cell--21 {
-webkit-box-ordinal-group: 22;
-ms-flex-order: 21;
order: 21;
}

.wa-bottle-table__cell--22 {
-webkit-box-ordinal-group: 23;
-ms-flex-order: 22;
order: 22;
}

.wa-bottle-table__cell--23 {
-webkit-box-ordinal-group: 24;
-ms-flex-order: 23;
order: 23;
}

.wa-bottle-table__cell--24 {
-webkit-box-ordinal-group: 25;
-ms-flex-order: 24;
order: 24;
}

.wa-bottle-table__cell--25 {
-webkit-box-ordinal-group: 26;
-ms-flex-order: 25;
order: 25;
}

/* smartphone layout */
@media screen and (max-width: 640px) {
.wa-bottle-table {
display: block;
}
.wa-bottle-table__cell {
width: 100%;
margin: 0.5px 0;
}
}

/* keeping grid
--------------------------------------------------------- */
.wa-keeping-grid {
margin-bottom: 10px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
}

.wa-keeping-grid__cell {
width: calc(50% - 10px);
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-keeping-grid {
display: block;
}
.wa-keeping-grid__cell {
width: 100%;
}
}

/* keeping table
--------------------------------------------------------- */
.wa-keeping-table {
width: 100%;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-keeping-table__cell {
width: calc(33.3333333333% - 1px);
padding: 8px;
margin: 0.5px;
background: #f5f5f5;
}

.wa-keeping-table__cell--image {
padding: 0;
background: transparent;
}

.wa-keeping-table__cell--title {
background: #000;
color: #FFF;
text-align: center;
font-weight: bold;
}

.wa-keeping-table__cell--01 {
-webkit-box-ordinal-group: 2;
-ms-flex-order: 1;
order: 1;
}

.wa-keeping-table__cell--02 {
-webkit-box-ordinal-group: 3;
-ms-flex-order: 2;
order: 2;
}

.wa-keeping-table__cell--03 {
-webkit-box-ordinal-group: 4;
-ms-flex-order: 3;
order: 3;
}

.wa-keeping-table__cell--04 {
-webkit-box-ordinal-group: 5;
-ms-flex-order: 4;
order: 4;
}

.wa-keeping-table__cell--05 {
-webkit-box-ordinal-group: 6;
-ms-flex-order: 5;
order: 5;
}

.wa-keeping-table__cell--06 {
-webkit-box-ordinal-group: 7;
-ms-flex-order: 6;
order: 6;
}

.wa-keeping-table__cell--07 {
-webkit-box-ordinal-group: 8;
-ms-flex-order: 7;
order: 7;
background-image: url(/alcohol/wine/wine_academy/knowledge/beginner/images/beginner_keeping_13.png);
background-position: center center;
background-repeat: no-repeat;
}

.wa-keeping-table__cell--08 {
-webkit-box-ordinal-group: 9;
-ms-flex-order: 8;
order: 8;
background-image: url(/alcohol/wine/wine_academy/knowledge/beginner/images/beginner_keeping_14.png);
background-position: center center;
background-repeat: no-repeat;
}

.wa-keeping-table__cell--09 {
-webkit-box-ordinal-group: 10;
-ms-flex-order: 9;
order: 9;
background-image: url(/alcohol/wine/wine_academy/knowledge/beginner/images/beginner_keeping_15.png);
background-position: center center;
background-repeat: no-repeat;
}

/* smartphone layout */
@media screen and (max-width: 640px) {
.wa-keeping-table {
display: block;
}
.wa-keeping-table__cell {
width: 100%;
margin: 0.5px 0;
}
}

/* grape detail button
--------------------------------------------------------- */
.wa-grape-detail-button {
text-align: center;
}

.wa-grape-detail-button img {
display: inline;
}

/* knife grid/cell
--------------------------------------------------------- */
/* tablet layout */
@media screen and (max-width: 768px) {
.wa-knife-grid {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
}
.wa-knife-cell--image {
width: 220px;
}
.wa-knife-cell--text {
width: calc(100% - 220px - 10px * 4);
}
}

/* smartphone layout */
@media screen and (max-width: 620px) {
.wa-knife-cell--image {
width: 40%;
}
.wa-knife-cell--text {
width: calc(60% - 10px * 4);
}
}

/* open grid/cell
--------------------------------------------------------- */
.wa-open-grid {
width: 100%;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

.wa-open-cell--image {
width: 156px;
}

.wa-open-cell--text {
width: calc(100% - 156px - 10px * 4);
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-open-cell--image {
width: 220px;
}
.wa-open-cell--text {
width: calc(100% - 220px - 10px * 4);
}
}

/* smartphone layout */
@media screen and (max-width: 620px) {
.wa-open-cell--image {
width: 40%;
}
.wa-open-cell--text {
width: calc(60% - 10px * 4);
}
}

/* =========================================================
 cheese
========================================================= */
.wa-cheese-grid {
width: 100%;
padding: 0 10px;
margin: 0 auto;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-cheese-grid__cell-image {
width: 66.6666666667%;
}

.wa-cheese-grid__cell-image img {
width: 100%;
height: auto;
}

.wa-cheese-grid__cell-text {
width: 33.3333333333%;
}

.wa-cheese-detail {
padding: 10px;
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;
}

.wa-cheese-detail__title {
margin-bottom: 40px;
font-size: 24px;
line-height: 30px;
font-family: Georgia, "Times New Roman", Times, "serif";
text-align: center;
}

.wa-cheese-detail__title span:not(:last-child)::after {
content: "\a";
white-space: pre;
}

.wa-cheese-detail__flag {
margin: 0 0 15px 10px;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

.wa-cheese-detail__flag__item {
width: 38px;
height: auto;
}

.wa-cheese-detail__flag__item:not(:last-child) {
margin-right: 5px;
}

.wa-cheese-detail__list {
margin-left: 10px;
font-size: 13px;
line-height: 21px;
}

.wa-cheese-detail--purple {
background: #c197c9;
}

.wa-cheese-detail--green {
background: #b6c700;
}

.wa-cheese-detail--emerald {
background: #81cdc3;
}

.wa-cheese-detail--yellow {
background: #ecb800;
}

.wa-cheese-detail--beige {
background: #ff7f4e;
}

.wa-cheese-detail--blue {
background: #76bbe5;
}

.wa-cheese-lead {
padding: 0 80px;
font-size: 21px;
line-height: 27px;
color: #ff7f00;
font-weight: bold;
text-align: center;
position: relative;
}

.wa-cheese-lead::before {
content: "";
width: 70px;
height: 28px;
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_lead_img_left.png) no-repeat top left;
display: block;
position: absolute;
top: calc(50% - 14px);
left: 0;
}

.wa-cheese-lead::after {
content: "";
width: 70px;
height: 28px;
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_lead_img_right.png) no-repeat top left;
display: block;
position: absolute;
top: calc(50% - 14px);
right: 0;
}

.wa-cheese-section {
padding: 45px 10px 10px;
margin: 60px 10px 0;
border: 2px solid #ffad01;
position: relative;
}

.wa-cheese-section__title {
width: 100%;
position: absolute;
top: 0;
left: 0;
-webkit-transform: translateY(-50%);
transform: translateY(-50%);
}

.wa-cheese-mariage {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-pack: justify;
-ms-flex-pack: justify;
justify-content: space-between;
-webkit-box-align: start;
-ms-flex-align: start;
align-items: flex-start;
}

.wa-cheese-mariage__types {
width: 360px;
margin-right: 14px;
}

.wa-cheese-mariage__types__body {
min-height: 140px;
padding-top: 10px;
}

.wa-cheese-mariage--purple .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_purple.png) repeat-y top left;
}

.wa-cheese-mariage--green .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_green.png) repeat-y top left;
}

.wa-cheese-mariage--emerald .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_emerald.png) repeat-y top left;
}

.wa-cheese-mariage--yellow .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_yellow.png) repeat-y top left;
}

.wa-cheese-mariage--beige .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_beige.png) repeat-y top left;
}

.wa-cheese-mariage--blue .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_blue.png) repeat-y top left;
}

.wa-cheese-mariage__varieties {
width: 260px;
}

.wa-cheese-mariage__varieties__body {
min-height: 140px;
padding-top: 10px;
}

.wa-cheese-mariage--purple .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_purple.png) repeat-y top left;
}

.wa-cheese-mariage--green .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_green.png) repeat-y top left;
}

.wa-cheese-mariage--emerald .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_emerald.png) repeat-y top left;
}

.wa-cheese-mariage--yellow .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_yellow.png) repeat-y top left;
}

.wa-cheese-mariage--beige .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_beige.png) repeat-y top left;
}

.wa-cheese-mariage--blue .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_blue.png) repeat-y top left;
}

.wa-types-list {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}

.wa-types-list li {
width: 25%;
}

.wa-varieties-list {
padding: 0 10px 0 40px;
}

.wa-varieties-list li {
list-style: disc;
}

.wa-cheese-pairings {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
}

.wa-cheese-pairings__cell:first-child {
width: calc(50% + 1px);
padding-right: 10px;
border-right: 2px dotted #cecece;
}

.wa-cheese-pairings__cell:last-child {
width: calc(50% - 1px);
padding-left: 10px;
}

.wa-cheese-pairings__lead {
margin-bottom: 10px;
font-size: 16px;
line-height: 24px;
font-weight: bold;
}

.wa-cheese-pairings__cell--orange .wa-cheese-pairings__lead {
color: #ff7f00;
}

.wa-cheese-pairings__cell--purple .wa-cheese-pairings__lead {
color: #b21d81;
}

.wa-cheese-pairings__image {
position: relative;
}

.wa-cheese-pairings__image__wine {
width: 100%;
height: auto;
}

.wa-cheese-pairings__image__badge--mariage {
width: 118px;
height: auto;
position: absolute;
top: 0;
left: 0;
}

.wa-cheese-pairings__image__badge--kind {
width: 92px;
height: auto;
position: absolute;
right: 0;
bottom: 20px;
}

.wa-cheese-pairings__title {
margin-bottom: 15px;
font-size: 18px;
line-height: 25px;
font-weight: bold;
}

.wa-cheese-pairings__cell--orange .wa-cheese-pairings__title {
color: #ff7f00;
}

.wa-cheese-pairings__cell--purple .wa-cheese-pairings__title {
color: #b21d81;
}

.wa-cheese-pairings__amazon {
margin-bottom: 15px;
}

.wa-cheese-pairings__button {
text-align: center;
}

.wa-cheese-pairings__button img {
display: inline;
}

.wa-cheese--sp {
display: none;
}

/* pc layout
--------------------------------------------------------- */
@media screen and (max-width: 980px) {
.wa-cheese-grid {
display: block;
}
.wa-cheese-grid__cell-image {
width: 100%;
}
.wa-cheese-grid__cell-text {
width: 100%;
}
.wa-cheese-detail {
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-ms-flex-direction: row;
flex-direction: row;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.wa-cheese-detail__title {
width: 100%;
margin-bottom: 10px;
}
.wa-cheese-detail__title span:not(:last-child)::after {
content: "\0020";
}
.wa-cheese-detail__flag {
margin: 0 0 10px 0;
}
.wa-cheese-detail__list {
margin-left: 10px;
font-size: 13px;
line-height: 21px;
}
.wa-cheese-lead {
padding: 0;
}
.wa-cheese-lead::before, .wa-cheese-lead::after {
content: none;
}
.wa-cheese-section {
padding-top: 60px;
margin-top: 70px;
}
.wa-cheese-mariage {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.wa-cheese-mariage__types {
width: 100%;
margin: 0 0 25px;
}
.wa-cheese-mariage__types__header img {
width: 100%;
height: auto;
}
.wa-cheese-mariage--purple .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_purple_sp.png);
background-size: contain;
}
.wa-cheese-mariage--green .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_green_sp.png);
background-size: contain;
}
.wa-cheese-mariage--emerald .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_emerald_sp.png);
background-size: contain;
}
.wa-cheese-mariage--yellow .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_yellow_sp.png);
background-size: contain;
}
.wa-cheese-mariage--beige .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_beige_sp.png);
background-size: contain;
}
.wa-cheese-mariage--blue .wa-cheese-mariage__types__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_types_body_blue_sp.png);
background-size: contain;
}
.wa-cheese-mariage__types__bottom img {
width: 100%;
height: auto;
}
.wa-cheese-mariage__varieties {
width: 100%;
}
.wa-cheese-mariage__varieties__header img {
width: 100%;
height: auto;
}
.wa-cheese-mariage--purple .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_purple_sp.png);
background-size: contain;
}
.wa-cheese-mariage--green .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_green_sp.png);
background-size: contain;
}
.wa-cheese-mariage--emerald .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_emerald_sp.png);
background-size: contain;
}
.wa-cheese-mariage--yellow .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_yellow_sp.png);
background-size: contain;
}
.wa-cheese-mariage--beige .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_beige_sp.png);
background-size: contain;
}
.wa-cheese-mariage--blue .wa-cheese-mariage__varieties__body {
background: url(/alcohol/wine/wine_academy/cheese/images/cheese_common_varieties_body_blue_sp.png);
background-size: contain;
}
.wa-cheese-mariage__varieties__bottom img {
width: 100%;
height: auto;
}
.wa-types-list {
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;
}
.wa-types-list li {
width: 78px;
}
.wa-cheese-pairings {
-webkit-box-orient: vertical;
-webkit-box-direction: normal;
-ms-flex-direction: column;
flex-direction: column;
}
.wa-cheese-pairings__cell:first-child {
width: 100%;
padding: 0 0 25px;
border-right: none;
border-bottom: 3px dotted #cecece;
}
.wa-cheese-pairings__cell:last-child {
width: 100%;
padding: 25px 0 0;
}
.wa-cheese-pairings__image {
max-width: 300px;
margin: 0 auto;
}
.wa-cheese-pairings__image__badge--mariage {
width: 92px;
}
.wa-cheese--pc {
display: none;
}
.wa-cheese--sp {
display: block;
}
}

/* =========================================================
 components
========================================================= */
/* mariage
--------------------------------------------------------- */
.wa-text--highlight {
color: #90c31f;
}

.wa-background--beige {
background: #FAFFCE;
}

.wa-mariage-03-table {
width: 100%;
border: 2px solid #E690B1;
}

.wa-mariage-03-table__cell {
padding: 8px;
border: 1px solid #E690B1;
text-align: left;
}

.wa-mariage-03-table__header {
color: #E75779;
font-weight: bold;
}

.wa-mariage-03-table__cell--cheese {
background: #FAFFCE;
}

.wa-mariage-03-table__cell--sparkling {
background: #E3BE39;
}

.wa-mariage-03-table__cell--blanc {
background: #EEDBAE;
}

.wa-mariage-03-table__cell--rose {
background: #F2ADBF;
}

.wa-mariage-03-table__cell--rouge {
background: #993333;
color: #FFF;
}

.wa-mariage-03-header {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-mariage-03-header__logo {
margin-right: 10px;
}

.wa-text--merco-03 {
color: #D21156;
}

.wa-text--teacher-03 {
color: #7e3479;
}

.wa-text--sommelier-03 {
color: #18262b;
}

.wa-mariage-05-table {
width: 100%;
border: 4px solid #E690B1;
font-size: 13px;
line-height: 21px;
}

.wa-mariage-05-table th {
padding: 8px 0;
border: 1px solid #E690B1;
}

.wa-mariage-05-table tbody th {
padding: 8px;
}

.wa-mariage-05-table td {
padding: 8px;
border: 1px solid #E690B1;
}

.wa-mariage-05-table__header--food {
color: #e690b1;
font-weight: bold;
}

.wa-mariage-05-table__header--blanc {
background: #99CF01;
color: #FFF;
font-weight: bold;
}

.wa-mariage-05-table__header--rose {
background: #FF47A9;
color: #FFF;
font-weight: bold;
}

.wa-mariage-05-table__header--rouge {
background: #FF3000;
color: #FFF;
font-weight: bold;
}

.wa-mariage-05-table__header--sparkling {
background: #FFF501;
font-weight: bold;
}

.wa-mariage-05-table__header__box {
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;
}

.wa-mariage-05-table__header__box p:last-child {
-webkit-box-flex: 0;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}

.wa-mariage-05-table__data {
background: #FFFCD4;
color: #795913;
font-size: 21px;
line-height: 27px;
font-weight: bold;
text-align: center;
color: #825926;
}

.wa-mariage-17-table {
width: 100%;
border: 4px solid #E690B1;
font-size: 13px;
line-height: 21px;
}

.wa-mariage-17-table th {
padding: 8px 0;
border: 1px solid #E690B1;
}

.wa-mariage-17-table tbody th {
padding: 8px 0 8px 8px;
}

.wa-mariage-17-table td {
padding: 8px;
border: 1px solid #E690B1;
}

.wa-mariage-17-table__header--chocolate {
color: #e690b1;
font-weight: bold;
}

.wa-mariage-17-table__header--blanc {
background: #97CE16;
color: #FFF;
font-weight: bold;
}

.wa-mariage-17-table__header--rose {
background: #FF47A9;
color: #FFF;
font-weight: bold;
}

.wa-mariage-17-table__header--rouge {
background: #FF3000;
color: #FFF;
font-weight: bold;
}

.wa-mariage-17-table__header--sparkling {
background: #FEFE1F;
font-weight: bold;
}

.wa-mariage-17-table__header--rose-sparkling {
background: #FED9F5;
font-weight: bold;
}

.wa-mariage-17-table__header__box {
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;
}

.wa-mariage-17-table__header__box p:last-child {
-webkit-box-flex: 0;
-ms-flex: 0 0 auto;
flex: 0 0 auto;
}

.wa-mariage-17-table__data {
background: #FFFCD4;
color: #795913;
font-size: 21px;
line-height: 27px;
font-weight: bold;
text-align: center;
color: #825926;
}

.wa-mariage-03-list {
width: 100%;
border: 4px solid #E690B1;
}

.wa-mariage-03-list__item {
padding: 10px;
}

.wa-mariage-03-list__item:not(:last-child) {
border-bottom: 1px #E690B1 dotted;
}

.wa-mariage-03-list__item__row {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-mariage-03-list img {
display: inline;
}

.wa-text--merco-04 {
color: #b1168a;
}

.wa-text--teacher-04 {
color: #2a6955;
}

/* select
--------------------------------------------------------- */
.wa-select-detail {
width: 100%;
}

.wa-select-detail th {
font-weight: bold;
text-align: right;
vertical-align: top;
white-space: nowrap;
}

/* tablet layout */
@media screen and (max-width: 768px) {
.wa-select-detail {
display: block;
}
.wa-select-detail tbody {
display: block;
}
.wa-select-detail tr {
display: block;
}
.wa-select-detail th {
display: inline;
}
.wa-select-detail td {
display: inline;
}
}

/* enjoy
--------------------------------------------------------- */
.wa-text--merco-01 {
color: #f06d97;
}

.wa-text--teacher-01 {
color: #6c8d2f;
}

/* winecocktails
--------------------------------------------------------- */
.wa-text--merco-02 {
color: #D21156;
}

.wa-text--teacher-02 {
color: #5D104A;
}

.wa-winecocktails-table {
width: 100%;
border: 4px solid #E690B1;
}

.wa-winecocktails-table th,
.wa-winecocktails-table td {
padding: 8px;
border: 1px solid #E690B1;
}

.wa-winecocktails-table__header--spice {
color: #e690b1;
font-weight: bold;
}

.wa-winecocktails-table__header--blanc {
background: #97CE16;
color: #FFF;
font-weight: bold;
}

.wa-winecocktails-table__header--rose {
background: #FF47A9;
color: #FFF;
font-weight: bold;
}

.wa-winecocktails-table__header--rouge {
background: #FF3000;
color: #FFF;
font-weight: bold;
}

.wa-winecocktails-table__header__box {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-pack: distribute;
justify-content: space-around;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-winecocktails-table__data {
background: #FFFCD4;
color: #795913;
font-size: 18px;
line-height: 25px;
font-weight: bold;
text-align: center;
}

.wa-winecocktails-list {
width: 100%;
padding: 0 10px;
border: 4px solid #E690B1;
}

.wa-winecocktails-list__item {
padding: 10px;
}

.wa-winecocktails-list__item:not(:last-child) {
border-bottom: 1px #E690B1 dotted;
}

.wa-winecocktails-list__item__row {
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
align-items: center;
}

.wa-winecocktails-list img {
display: inline;
}
