/*--------------------------------------------------------------*/
/*! normalize.scss v0.1.0 | MIT License | based on git.io/normalize */
/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *		user zoom.
 */
/**
 * Remove default margin.
 */
/* HTML5 display definitions
	 @mixin ========================================================================= */
/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */
#suntory_contents article,
#suntory_contents aside,
#suntory_contents details,
#suntory_contents figcaption,
#suntory_contents figure,
#suntory_contents footer,
#suntory_contents header,
#suntory_contents hgroup,
#suntory_contents main,
#suntory_contents menu,
#suntory_contents nav,
#suntory_contents section,
#suntory_contents summary {
  display: block; }

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */
#suntory_contents audio,
#suntory_contents canvas,
#suntory_contents progress,
#suntory_contents video {
  display: inline-block;
  vertical-align: baseline; }

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */
#suntory_contents audio:not([controls]) {
  display: none;
  height: 0; }

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */
#suntory_contents [hidden],
#suntory_contents template {
  display: none; }

/* Links
	 @mixin ========================================================================= */
/**
 * Remove the gray background color from active links in IE 10.
 */
#suntory_contents a {
  background-color: transparent; }

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */
#suntory_contents a:active,
#suntory_contents a:hover {
  outline: 0; }

/* Text-level semantics
	 @mixin ========================================================================= */
/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */
#suntory_contents abbr[title] {
  border-bottom: 1px dotted; }

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */
#suntory_contents b,
#suntory_contents strong {
  font-weight: bold; }

/**
 * Address styling not present in Safari and Chrome.
 */
#suntory_contents dfn {
  font-style: italic; }

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari, and Chrome.
 */
#suntory_contents h1 {
  font-size: 2em;
  margin: 0.67em 0; }

/**
 * Address styling not present in IE 8/9.
 */
#suntory_contents mark {
  background: #ff0;
  color: #000; }

/**
 * Address inconsistent and variable font size in all browsers.
 */
#suntory_contents small {
  font-size: 80%; }

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */
#suntory_contents sub,
#suntory_contents sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

#suntory_contents sup {
  top: -0.5em; }

#suntory_contents sub {
  bottom: -0.25em; }

/* Embedded content
	 @mixin ========================================================================= */
/**
 * Remove border when inside `a` element in IE 8/9/10.
 */
#suntory_contents img {
  border: 0; }

/**
 * Correct overflow not hidden in IE 9/10/11.
 */
#suntory_contents svg:not(:root) {
  overflow: hidden; }

/* Grouping content
	 @mixin ========================================================================= */
/**
 * Address margin not present in IE 8/9 and Safari.
 */
#suntory_contents figure {
  margin: 1em 40px; }

/**
 * Address differences between Firefox and other browsers.
 */
#suntory_contents hr {
  box-sizing: content-box;
  height: 0; }

/**
 * Contain overflow in all browsers.
 */
#suntory_contents pre {
  overflow: auto; }

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */
#suntory_contents code,
#suntory_contents kbd,
#suntory_contents pre,
#suntory_contents samp {
  font-family: monospace, monospace;
  font-size: 1em; }

/* Forms
	 @mixin ========================================================================= */
/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */
/**
 * 1. Correct color not being inherited.
 *		Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */
#suntory_contents button,
#suntory_contents input,
#suntory_contents optgroup,
#suntory_contents select,
#suntory_contents textarea {
  color: inherit;
  font: inherit;
  margin: 0; }

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */
#suntory_contents button {
  overflow: visible; }

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */
#suntory_contents button,
#suntory_contents select {
  text-transform: none; }

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *		and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *		`input` and others.
 */
#suntory_contents input[type="reset"],
#suntory_contents input[type="submit"] {
  -webkit-appearance: button;
  cursor: pointer; }

/**
 * Re-set default cursor for disabled elements.
 */
#suntory_contents button[disabled],
#suntory_contents html input[disabled] {
  cursor: default; }

/**
 * Remove inner padding and border in Firefox 4+.
 */
#suntory_contents button::-moz-focus-inner,
#suntory_contents input::-moz-focus-inner {
  border: 0;
  padding: 0; }

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */
#suntory_contents input {
  line-height: normal; }

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */
#suntory_contents input[type="checkbox"],
#suntory_contents input[type="radio"] {
  box-sizing: border-box;
  padding: 0; }

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */
#suntory_contents input[type="number"]::-webkit-inner-spin-button,
#suntory_contents input[type="number"]::-webkit-outer-spin-button {
  height: auto; }

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *		(include `-moz` to future-proof).
 */
#suntory_contents input[type="search"] {
  -webkit-appearance: textfield;
  box-sizing: content-box; }

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */
#suntory_contents input[type="search"]::-webkit-search-cancel-button,
#suntory_contents input[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none; }

/**
 * Define consistent border, margin, and padding.
 */
#suntory_contents fieldset {
  border: 1px solid #c0c0c0;
  margin: 0 2px;
  padding: 0.35em 0.625em 0.75em; }

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */
#suntory_contents legend {
  border: 0;
  padding: 0; }

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */
#suntory_contents textarea {
  overflow: auto; }

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */
#suntory_contents optgroup {
  font-weight: bold; }

/* Tables
	 @mixin ========================================================================= */
/**
 * Remove most spacing between table cells.
 */
#suntory_contents table {
  border-collapse: collapse;
  border-spacing: 0; }

#suntory_contents td,
#suntory_contents th {
  padding: 0; }

/* ---------------------------------------------------------------- */
/* initialize styles */
/* ---------------------------------------------------------------- */
.color-initial {
  color: #fff; }

.color-primary {
  color: #000; }

.color-secondary {
  color: #c1272d; }

.color-tertiary {
  color: #666; }

.color-quaternary {
  color: #ccc; }

.bg-initial {
  background-color: #fff; }

.bg-primary {
  background-color: #000; }

.bg-secondary {
  background-color: #c1272d; }

.bg-tertiary {
  background-color: #666; }

.bg-quaternary {
  background-color: #ccc; }

*,
*:after,
*:before {
  box-sizing: inherit; }

html {
  overflow-x: hidden;
  box-sizing: border-box;
  font-size: 62.5%; }

body {
  overflow-x: hidden;
  background-color: #fff;
  font-size: 1.6em;
  font-weight: 400;
  letter-spacing: .01em;
  line-height: 1.6;
  color: #000; }

@media print {
  html,
  body {
    width: 1024px;
    -webkit-print-color-adjust: exact; } }

@media screen and (max-width: 48em) {
  body {
    font-size: 4vw; } }

@media screen and (orientation: portrait) {
  body {
    background-position-y: top; } }

img {
  width: 100%;
  height: auto;
  vertical-align: bottom; }

ol,
ul {
  list-style: none;
  margin-top: 0;
  padding-left: 0; }
  ol ol,
  ol ul,
  ul ol,
  ul ul {
    font-size: 90%;
    margin: .5em 0 .5em 1em; }

ol.list {
  padding-left: 1.5em;
  counter-reset: number; }
  ol.list li {
    text-indent: -1.5em; }
    ol.list li::before {
      counter-increment: number;
      content: counter(number);
      display: inline-block;
      width: 2em;
      height: 2em;
      margin-right: 1em;
      border-radius: 50%;
      background-color: #c1272d;
      text-indent: 0;
      text-align: center;
      font-weight: 700;
      font-family: "urw-din-condensed", sans-serif;
      font-size: .5em;
      line-height: 2;
      color: #fff;
      transform: translateY(-0.333em); }

ul.list {
  padding-left: 1em; }
  ul.list li {
    text-indent: -1em; }
    ul.list li::before {
      content: "";
      display: inline-block;
      width: .5em;
      height: .5em;
      margin-right: .5em;
      border-radius: 50%;
      background-color: #c1272d;
      transform: translateY(-0.1em); }
    ul.list li ul li::before {
      width: .25em;
      height: .25em;
      transform: translateY(-0.25em); }

.button,
button,
dd,
dt,
li {
  margin-bottom: .5em; }

fieldset,
input,
select,
textarea {
  margin-bottom: 1em; }

blockquote,
dl,
figure,
form,
ol,
p,
pre,
table,
ul {
  margin-bottom: 1.5em; }

b,
strong {
  font-weight: 700; }

em {
  font-style: normal;
  color: #c1272d; }

address {
  font-style: normal; }

p {
  margin-top: 0; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 300;
  margin-bottom: 1em;
  margin-top: 0; }

h1 {
  font-size: 3em;
  line-height: 1.2; }

h2 {
  font-size: 2em;
  line-height: 1.2; }

h3 {
  font-size: 1.5em;
  line-height: 1.3; }

h4 {
  font-size: 1.25em;
  line-height: 1.4; }

h5 {
  font-size: 1.125em;
  line-height: 1.5; }

h6 {
  font-size: 1em;
  line-height: 1.6; }

@media screen and (min-width: 48em) {
  .pc-br {
    display: inline; }
  .sp-br {
    display: none; } }

@media screen and (max-width: 48em) {
  .pc-br {
    display: none; }
  .sp-br {
    display: inline; } }

/* ---------------------------------------------------------------- */
/* common */
/* ---------------------------------------------------------------- */
#wineCommonHeader * {
  margin: 0; }

@media screen and (max-width: 48em) {
  #wineCommonHeader {
    display: none; } }

#suntory_contents {
  position: relative;
  width: 100%;
  max-width: 60em;
  overflow: hidden;
  margin: 0 auto;
  font-family: serif; }

#suntory_contents .primary-navi .menu {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-bottom: 0; }

#suntory_contents .primary-navi .menu-item {
  position: relative;
  margin-bottom: 0; }
  #suntory_contents .primary-navi .menu-item a {
    display: inline-block;
    width: 9em;
    padding: .75em;
    text-align: center; }
  #suntory_contents .primary-navi .menu-item + .menu-item {
    margin-left: 1px;
    background-color: #fff; }
  #suntory_contents .primary-navi .menu-item:first-child a {
    padding: 0 .75em; }

#suntory_contents.isnt-touch .primary-navi .menu-item img {
  transform: scale(1);
  transition: transform .1s ease-out; }

#suntory_contents.isnt-touch .primary-navi .menu-item a:focus img,
#suntory_contents.isnt-touch .primary-navi .menu-item a:hover img {
  transform: scale(1.1); }

@media screen and (min-width: 48em) {
  #suntory_contents .primary-navi .toggle-button {
    display: none; } }

@media screen and (max-width: 48em) {
  #suntory_contents .primary-navi .menu {
    flex-direction: column;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100vh;
    background-color: #c1272d;
    text-align: center;
    transform: translateY(-100%);
    transition: transform .2s ease-out; }
    #suntory_contents .primary-navi .menu.open {
      transform: translateY(0); }
  #suntory_contents .primary-navi .menu-item {
    margin-top: 1px; }
    #suntory_contents .primary-navi .menu-item a {
      width: 100vw; }
    #suntory_contents .primary-navi .menu-item img {
      max-width: 6em; }
    #suntory_contents .primary-navi .menu-item + .menu-item {
      border: 0;
      background-color: #fff; }
    #suntory_contents .primary-navi .menu-item:last-child {
      border-right: 0;
      margin-bottom: 6em; }
    #suntory_contents .primary-navi .menu-item:first-child {
      margin-bottom: 1em; }
      #suntory_contents .primary-navi .menu-item:first-child img {
        max-width: 8em; }
  #suntory_contents .primary-navi .menu-trigger {
    cursor: pointer;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    width: 4em;
    height: 4em;
    background-color: #000; }
    #suntory_contents .primary-navi .menu-trigger .line {
      display: block;
      position: absolute;
      top: 50%;
      left: 50%;
      width: 1.5em;
      height: 1px;
      margin-left: -.75em;
      background-color: #fff;
      transition: transform .2s ease-out; }
      #suntory_contents .primary-navi .menu-trigger .line:nth-of-type(1) {
        transform: translateY(-0.5em); }
      #suntory_contents .primary-navi .menu-trigger .line:nth-of-type(3) {
        transform: translateY(0.5em); }
    #suntory_contents .primary-navi .menu-trigger.close .line:nth-of-type(1) {
      transform: rotate(-45deg); }
    #suntory_contents .primary-navi .menu-trigger.close .line:nth-of-type(2) {
      opacity: 0; }
    #suntory_contents .primary-navi .menu-trigger.close .line:nth-of-type(3) {
      transform: rotate(45deg); }
  #suntory_contents .primary-navi.fixed .menu,
  #suntory_contents .primary-navi.fixed .menu-trigger {
    position: fixed; } }

#suntory_contents.mia-content .primary-navi .menu-item.mia::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 0, 0, 0.1);
  border: 2px solid #c1272d; }
  @media screen and (max-width: 48em) {
    #suntory_contents.mia-content .primary-navi .menu-item.mia::after {
      border: 0; } }
#suntory_contents.solarviejo-content .primary-navi .menu-item.solarviejo::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 0, 0, 0.1);
  border: 2px solid #c1272d; }
  @media screen and (max-width: 48em) {
    #suntory_contents.solarviejo-content .primary-navi .menu-item.solarviejo::after {
      border: 0; } }
#suntory_contents.vionta-content .primary-navi .menu-item.vionta::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 0, 0, 0.1);
  border: 2px solid #c1272d; }
  @media screen and (max-width: 48em) {
    #suntory_contents.vionta-content .primary-navi .menu-item.vionta::after {
      border: 0; } }
#suntory_contents.valdubon-content .primary-navi .menu-item.valdubon::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 0, 0, 0.1);
  border: 2px solid #c1272d; }
  @media screen and (max-width: 48em) {
    #suntory_contents.valdubon-content .primary-navi .menu-item.valdubon::after {
      border: 0; } }
#suntory_contents.costersdelprior-content .primary-navi .menu-item.costersdelprior::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 0, 0, 0.1);
  border: 2px solid #c1272d; }
  @media screen and (max-width: 48em) {
    #suntory_contents.costersdelprior-content .primary-navi .menu-item.costersdelprior::after {
      border: 0; } }
/* scroll-link */
#suntory_contents .scroll-link {
  display: inline-block;
  font-family: sans-serif;
  text-decoration: none;
  color: #fff; }
  #suntory_contents .scroll-link::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    border-style: solid;
    margin-right: .5em; }
  #suntory_contents .scroll-link.next::before {
    border-width: .75em .5em 0 .5em;
    border-color: #fff transparent transparent transparent; }
  #suntory_contents .scroll-link.prev::before {
    border-width: 0 .5em .75em .5em;
    border-color: transparent transparent #fff transparent; }

#suntory_contents.isnt-touch .scroll-link:hover {
  text-decoration: underline; }

/* ec-button */
#suntory_contents .ec-button {
  max-width: 250px;
  margin-top: 3em; }

/* ---------------------------------------------------------------- */
/* primary-content */
/* ---------------------------------------------------------------- */
/* primary-header */
#suntory_contents.primary-content .primary-header {
  margin-bottom: 2em;
  padding: 2em;
  background-color: #c1272d; }
  @media screen and (max-width: 48em) {
    #suntory_contents.primary-content .primary-header {
      padding: 1em; } }
/* primary-footer */
#suntory_contents.primary-content .primary-footer {
  padding: 2em 0;
  margin-top: .5em;
  text-align: center;
  font-size: 1.25em;
  background-color: #c1272d; }

/* visual-container */
#suntory_contents.primary-content .visual-container {
  position: relative;
  width: 100%;
  max-width: 56em;
  height: auto;
  margin-bottom: 2em; }
  @media screen and (max-width: 48em) {
    #suntory_contents.primary-content .visual-container {
      margin-bottom: 0; } }
  #suntory_contents.primary-content .visual-container h1 {
    margin: 0;
    font-size: 1em;
    line-height: 1; }
  #suntory_contents.primary-content .visual-container .catch {
    position: absolute;
    top: 11.5%;
    left: 50%;
    width: 58.035%;
    transform: translate(-50%, -50%); }
  #suntory_contents.primary-content .visual-container .title {
    position: absolute;
    top: 52%;
    left: 50%;
    width: 26.785%;
    transform: translate(-50%, -50%); }
    @media screen and (max-width: 48em) {
      #suntory_contents.primary-content .visual-container .title {
        top: auto;
        bottom: 15%;
        left: 7.5%;
        transform: translate(0);
        width: 50%; } }
  #suntory_contents.primary-content .visual-container .brand-item {
    position: absolute;
    transform: translate(-50%, -50%);
    width: 14.285%; }
    #suntory_contents.primary-content .visual-container .brand-item img {
      -webkit-animation-duration: 4s;
              animation-duration: 4s;
      -webkit-animation-timing-function: ease-out;
              animation-timing-function: ease-out;
      -webkit-animation-iteration-count: infinite;
              animation-iteration-count: infinite; }
    #suntory_contents.primary-content .visual-container .brand-item.mia {
      top: 34%;
      left: 82%; }
      #suntory_contents.primary-content .visual-container .brand-item.mia img {
        -webkit-animation-delay: 1.5s;
                animation-delay: 1.5s; }
    #suntory_contents.primary-content .visual-container .brand-item.solarviejo {
      top: 25%;
      left: 63%; }
      #suntory_contents.primary-content .visual-container .brand-item.solarviejo img {
        -webkit-animation-delay: 1s;
                animation-delay: 1s; }
    #suntory_contents.primary-content .visual-container .brand-item.vionta {
      top: 21.5%;
      left: 29.5%; }
      #suntory_contents.primary-content .visual-container .brand-item.vionta img {
        -webkit-animation-delay: 0;
                animation-delay: 0; }
    #suntory_contents.primary-content .visual-container .brand-item.valdubon {
      top: 31%;
      left: 48%; }
      #suntory_contents.primary-content .visual-container .brand-item.valdubon img {
        -webkit-animation-delay: .5s;
                animation-delay: .5s; }
    #suntory_contents.primary-content .visual-container .brand-item.costersdelprior {
      top: 48%;
      left: 72%; }
      #suntory_contents.primary-content .visual-container .brand-item.costersdelprior img {
        -webkit-animation-delay: 2s;
                animation-delay: 2s; }
  #suntory_contents.primary-content .visual-container.in .brand-item img {
    -webkit-animation-name: visual-icon;
            animation-name: visual-icon; }

#suntory_contents.primary-content.isnt-touch .visual-container .brand-item a {
  display: inline-block;
  position: relative; }
  #suntory_contents.primary-content.isnt-touch .visual-container .brand-item a::before {
    content: "";
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 50%;
    width: 80%;
    height: 80%;
    transform: translate(-50%, -50%) scale(0);
    border-radius: 50%;
    transition: transform .1s ease-out; }
  #suntory_contents.primary-content.isnt-touch .visual-container .brand-item a img {
    position: relative; }

#suntory_contents.primary-content.isnt-touch .visual-container .brand-item.mia a::before {
  background-color: #fbf166; }

#suntory_contents.primary-content.isnt-touch .visual-container .brand-item.solarviejo a::before {
  background-color: #80a4b8; }

#suntory_contents.primary-content.isnt-touch .visual-container .brand-item.vionta a::before {
  background-color: #66bfbf; }

#suntory_contents.primary-content.isnt-touch .visual-container .brand-item.valdubon a::before {
  background-color: #bf8391; }

#suntory_contents.primary-content.isnt-touch .visual-container .brand-item.costersdelprior a::before {
  background-color: #9c7f94; }

#suntory_contents.primary-content.isnt-touch .visual-container a:focus::before,
#suntory_contents.primary-content.isnt-touch .visual-container a:hover::before {
  transform: translate(-50%, -50%) scale(1.1); }

@-webkit-keyframes visual-icon {
  0% {
    transform: translateY(0); }
  5% {
    transform: translateY(-10%); }
  8% {
    transform: translateY(0); }
  9% {
    transform: translateY(-5%); }
  10% {
    transform: translateY(0); }
  100% {
    transform: translateY(0); } }

@keyframes visual-icon {
  0% {
    transform: translateY(0); }
  5% {
    transform: translateY(-10%); }
  8% {
    transform: translateY(0); }
  9% {
    transform: translateY(-5%); }
  10% {
    transform: translateY(0); }
  100% {
    transform: translateY(0); } }

/* intro-read */
#suntory_contents.primary-content .intro-read {
  text-align: center;
  font-size: 1.25em;
  line-height: 1.8; }
  @media screen and (max-width: 48em) {
    #suntory_contents.primary-content .intro-read {
      font-size: 1.125em; } }
/* brands-container */
#suntory_contents.primary-content .brands-container {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  width: 90%;
  max-width: 50em;
  margin: 0 auto; }
  #suntory_contents.primary-content .brands-container .brand-item {
    width: calc(33.333% - 1em);
    margin: .5em;
    padding: 1em 0;
    text-align: center;
    font-weight: 700;
    white-space: nowrap; }
    @media screen and (max-width: 48em) {
      #suntory_contents.primary-content .brands-container .brand-item {
        width: calc(50% - 1em);
        font-size: .75em; } }
    #suntory_contents.primary-content .brands-container .brand-item a {
      display: inline-block;
      text-decoration: none;
      color: #000; }
    #suntory_contents.primary-content .brands-container .brand-item em {
      font-family: sans-serif;
      font-style: normal;
      color: #000; }
    #suntory_contents.primary-content .brands-container .brand-item img {
      width: 3em;
      margin: .5em 0; }
    #suntory_contents.primary-content .brands-container .brand-item.mia {
      background-color: #fbf166; }
    #suntory_contents.primary-content .brands-container .brand-item.solarviejo {
      background-color: #80a4b8; }
    #suntory_contents.primary-content .brands-container .brand-item.vionta {
      background-color: #66bfbf; }
    #suntory_contents.primary-content .brands-container .brand-item.valdubon {
      background-color: #bf8391; }
    #suntory_contents.primary-content .brands-container .brand-item.costersdelprior {
      background-color: #9c7f94; }

#suntory_contents.primary-content.isnt-touch .brands-container .brand-item img {
  transform: scale(1);
  transition: transform .1s ease-out; }

#suntory_contents.primary-content.isnt-touch .brands-container a:focus img,
#suntory_contents.primary-content.isnt-touch .brands-container a:hover img {
  transform: scale(1.1); }

/* read-title */
#suntory_contents.primary-content .read-title {
  margin-bottom: 0;
  background-color: #c1272d;
  text-align: center;
  font-weight: 700;
  font-size: 2.5em;
  line-height: 2;
  color: #fff; }
  @media screen and (max-width: 48em) {
    #suntory_contents.primary-content .read-title {
      font-size: 2em; } }
/* read-container */
#suntory_contents.primary-content .read-container .read-item {
  display: flex;
  flex-wrap: wrap;
  margin-top: .5em;
  background-color: #c1272d;
  color: #fff; }
  @media screen and (min-width: 48em) {
    #suntory_contents.primary-content .read-container .read-item:nth-child(odd) {
      flex-direction: row-reverse; } }
  #suntory_contents.primary-content .read-container .read-item > * {
    width: 50%; }
    @media screen and (max-width: 48em) {
      #suntory_contents.primary-content .read-container .read-item > * {
        width: 100%; } }
  #suntory_contents.primary-content .read-container .read-item .image {
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover; }
    @media screen and (max-width: 48em) {
      #suntory_contents.primary-content .read-container .read-item .image {
        height: 100vw; } }
    #suntory_contents.primary-content .read-container .read-item .image img {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 66.666%; }
  #suntory_contents.primary-content .read-container .read-item .content {
    padding: 2em; }
  #suntory_contents.primary-content .read-container .read-item .title {
    font-size: 1.125em; }
  #suntory_contents.primary-content .read-container .read-item .catch {
    margin-bottom: .5em;
    font-weight: 700;
    font-size: 1.5em;
    line-height: 1.4;
    letter-spacing: 0; }
  #suntory_contents.primary-content .read-container .read-item .read {
    text-align: justify;
    font-weight: 700;
    font-size: .875em;
    line-height: 1.8;
    hanging-punctuation: allow-end; }
  #suntory_contents.primary-content .read-container .read-item .supplement {
    font-size: 80%; }
    #suntory_contents.primary-content .read-container .read-item .supplement .title {
      margin-bottom: .25em;
      font-family: sans-serif;
      font-weight: 700; }
  #suntory_contents.primary-content .read-container .read-item .link {
    text-align: center; }

#suntory_contents.primary-content .read-container #about-01 .image {
  background-image: url(../images/home/img_read_01.jpg); }

#suntory_contents.primary-content .read-container #about-02 .image {
  background-image: url(../images/home/img_read_02.jpg); }

#suntory_contents.primary-content .read-container #about-03 .image {
  background-image: url(../images/home/img_read_03.jpg); }

#suntory_contents.primary-content .read-container #about-04 .image {
  background-color: #fff9d8; }

/* section spacing */
#brands {
  margin-top: 2em; }

#about {
  margin-top: 3em; }

/* ---------------------------------------------------------------- */
/* secondary-content */
/* ---------------------------------------------------------------- */
/* primary-header */
#suntory_contents.secondary-content .primary-header {
  margin-bottom: 2em;
  padding-top: 1em; }
  #suntory_contents.secondary-content .primary-header .content {
    margin-left: 4em; }
    @media screen and (max-width: 48em) {
      #suntory_contents.secondary-content .primary-header .content {
        margin-left: 2em; } }
  #suntory_contents.secondary-content .primary-header .catch {
    margin-top: 1em;
    margin-bottom: .25em;
    font-size: 1.5em; }
  #suntory_contents.secondary-content .primary-header .title {
    margin-top: 0;
    font-size: 2.25em; }
    @media screen and (max-width: 48em) {
      #suntory_contents.secondary-content .primary-header .title {
        margin-bottom: 1em; } }
  #suntory_contents.secondary-content .primary-header .visual-container {
    position: relative;
    width: 100%;
    height: auto; }
    #suntory_contents.secondary-content .primary-header .visual-container .map,
    #suntory_contents.secondary-content .primary-header .visual-container .maker {
      position: absolute;
      left: 85%;
      transform: translate(-50%, -50%);
      width: 25%; }
    #suntory_contents.secondary-content .primary-header .visual-container .map {
      top: 0; }
    #suntory_contents.secondary-content .primary-header .visual-container .maker {
      top: 80%;
      overflow: hidden;
      border-radius: 50%; }

/* primary-footer */
#suntory_contents.secondary-content .primary-footer {
  padding: 2em 0;
  margin-top: .5em;
  text-align: center;
  font-size: 1.25em; }

/* read-container */
#suntory_contents.secondary-content .read-container .read-item {
  display: flex;
  flex-wrap: wrap; }
  @media screen and (min-width: 48em) {
    #suntory_contents.secondary-content .read-container .read-item:nth-child(odd) {
      flex-direction: row-reverse; } }
  #suntory_contents.secondary-content .read-container .read-item > * {
    width: 50%; }
    @media screen and (max-width: 48em) {
      #suntory_contents.secondary-content .read-container .read-item > * {
        width: 100%; } }
  #suntory_contents.secondary-content .read-container .read-item .image {
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover; }
    @media screen and (max-width: 48em) {
      #suntory_contents.secondary-content .read-container .read-item .image {
        height: 66.666vw; } }
    #suntory_contents.secondary-content .read-container .read-item .image img {
      position: absolute;
      top: 50%;
      left: 50%;
      transform: translate(-50%, -50%);
      width: 50%; }
  #suntory_contents.secondary-content .read-container .read-item .content {
    padding: 2em; }
  #suntory_contents.secondary-content .read-container .read-item .catch {
    margin-bottom: 1em;
    font-weight: 700;
    font-size: 1.25em;
    line-height: 1.6; }
  #suntory_contents.secondary-content .read-container .read-item .read {
    text-align: justify;
    font-size: .875em;
    line-height: 1.8;
    hanging-punctuation: allow-end; }
  #suntory_contents.secondary-content .read-container .read-item:last-child .content {
    padding-bottom: 0; }
  @media screen and (min-width: 48em) {
    #suntory_contents.secondary-content .read-container .read-item:first-child .content {
      padding-top: 0; } }
/* lineup-container */
#suntory_contents.secondary-content .lineup-container {
  max-width: 56em;
  margin: 0 auto;
  padding: 4em 2em;
  background-color: rgba(255, 255, 255, 0.5); }
  #suntory_contents.secondary-content .lineup-container .lineup-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    max-width: 40em;
    margin: 0 auto; }
    @media screen and (max-width: 48em) {
      #suntory_contents.secondary-content .lineup-container .lineup-item {
        align-items: flex-start; } }
    #suntory_contents.secondary-content .lineup-container .lineup-item + .lineup-item {
      margin-top: 4em; }
    #suntory_contents.secondary-content .lineup-container .lineup-item .image {
      width: 7.5em;
      margin-right: 1em; }
    #suntory_contents.secondary-content .lineup-container .lineup-item .content {
      width: 75%; }
    #suntory_contents.secondary-content .lineup-container .lineup-item .title {
      font-weight: 700;
      font-size: 1.5em;
      line-height: 1.4; }
    #suntory_contents.secondary-content .lineup-container .lineup-item .read {
      text-align: justify;
      font-size: .875em;
      line-height: 1.8;
      hanging-punctuation: allow-end; }
    #suntory_contents.secondary-content .lineup-container .lineup-item .detail {
      font-family: sans-serif;
      font-size: .75em;
      line-height: 1.6; }
    #suntory_contents.secondary-content .lineup-container .lineup-item .type {
      display: flex;
      justify-content: flex-start; }
      #suntory_contents.secondary-content .lineup-container .lineup-item .type > * {
        margin-right: .5em;
        padding: .5em 2em;
        background-color: #ccc;
        text-align: center;
        font-size: .75em;
        line-height: 1; }
      #suntory_contents.secondary-content .lineup-container .lineup-item .type .red {
        background-color: #c1272d;
        color: #fff; }
      #suntory_contents.secondary-content .lineup-container .lineup-item .type .white {
        background-color: #fff; }

/* illustration */
#suntory_contents.secondary-content .illustration {
  position: absolute;
  top: 0;
  left: 5%;
  width: 15%;
  transform: translateY(-50%); }
  @media screen and (max-width: 48em) {
    #suntory_contents.secondary-content .illustration {
      left: 50%;
      transform: translate(-50%, -75%);
      width: 30%; } }
/* section spacing */
#about {
  margin-top: 3em; }

#lineup {
  position: relative;
  margin-top: 6em; }

/* mia-content */
#suntory_contents.mia-content {
  background-color: #f9e900; }
  #suntory_contents.mia-content #about-01 .image {
    background-image: url(../images/mia/img_read_01.jpg); }
  #suntory_contents.mia-content #about-02 .image {
    background-image: url(../images/mia/img_read_02.jpg); }
  #suntory_contents.mia-content #about-03 .image {
    background-image: url(../images/mia/img_read_03.jpg); }
  #suntory_contents.mia-content .scroll-link {
    color: #000; }
    #suntory_contents.mia-content .scroll-link.prev::before {
      border-width: 0 .5em .75em .5em;
      border-color: transparent transparent #000 transparent; }
  @media screen and (max-width: 48em) {
    #suntory_contents.mia-content .lineup-container .content {
      padding-top: 1em; } }
  #suntory_contents.mia-content .illustration {
    transform: translateY(-70%);
    width: 41.666%; }
    @media screen and (max-width: 48em) {
      #suntory_contents.mia-content .illustration {
        width: 83.333%;
        transform: translate(-50%, -75%); } }
/* solarviejo-content */
#suntory_contents.solarviejo-content {
  background-color: #245576;
  color: #fff; }
  #suntory_contents.solarviejo-content #about-01 .image {
    background-image: url(../images/solarviejo/img_read_01.jpg); }
  #suntory_contents.solarviejo-content #about-02 .image {
    background-image: url(../images/solarviejo/img_read_02.jpg); }
  #suntory_contents.solarviejo-content #about-03 .image {
    background-image: url(../images/solarviejo/img_read_03.jpg); }
  #suntory_contents.solarviejo-content .lineup-container {
    color: #000; }
    @media screen and (max-width: 48em) {
      #suntory_contents.solarviejo-content .lineup-container .content {
        padding-top: 1em; } }
/* vionta-content */
#suntory_contents.vionta-content {
  background-color: #008685;
  color: #fff; }
  #suntory_contents.vionta-content #about-01 .image {
    background-image: url(../images/vionta/img_read_01.jpg); }
  #suntory_contents.vionta-content #about-02 .image {
    background-image: url(../images/vionta/img_read_02.jpg); }
  #suntory_contents.vionta-content #about-03 .image {
    background-image: url(../images/vionta/img_read_03.jpg); }
  #suntory_contents.vionta-content .lineup-container {
    color: #000; }

/* valdubon-content */
#suntory_contents.valdubon-content {
  background-color: #832137;
  color: #fff; }
  #suntory_contents.valdubon-content #about-01 .image {
    background-image: url(../images/valdubon/img_read_01.jpg); }
  #suntory_contents.valdubon-content #about-02 .image {
    background-image: url(../images/valdubon/img_read_02.jpg); }
  #suntory_contents.valdubon-content #about-03 .image {
    background-image: url(../images/valdubon/img_read_03.jpg); }
  #suntory_contents.valdubon-content .lineup-container {
    color: #000; }

/* costersdelprior-content */
#suntory_contents.costersdelprior-content {
  background-color: #744867;
  color: #fff; }
  #suntory_contents.costersdelprior-content #about-01 .image {
    background-image: url(../images/costersdelprior/img_read_01.jpg); }
  #suntory_contents.costersdelprior-content #about-02 .image {
    background-image: url(../images/costersdelprior/img_read_02.jpg); }
  #suntory_contents.costersdelprior-content #about-03 .image {
    background-image: url(../images/costersdelprior/img_read_03.jpg); }
  #suntory_contents.costersdelprior-content #about-04 .image {
    background-image: url(../images/costersdelprior/img_read_04.jpg); }
  #suntory_contents.costersdelprior-content .lineup-container {
    color: #000; }
