@charset "UTF-8";
/*top*/
/*box-sizing*/
*, *:before, *:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box; }

/* -------------------------------- 
　Top image
-------------------------------- */
.top-image-container {
  text-align: center;
  width: 100%;
  height: auto;
  overflow: hidden;
  margin: 0;
  padding: 0; }
  .top-image-container picture img {
    width: 100%;
    height: auto;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0;
    display: block; }

.top-online-container {
  text-align: center;
  width: 100%;
  height: auto;
  overflow: hidden;
  margin: 0;
  padding: 0; }
  .top-online-container picture img {
    width: 100%;
    height: auto;
    max-width: 500px;
    margin: 0 auto;
    padding: 0;
    display: block; }

.bnr_container {
  background-color: #FFF;
  width: 100%;
  margin: 0 auto;
  overflow: hidden;
  text-align: center; }

.bnr_container img {
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: block; }

.bnr_container img:hover {
  opacity: 0.7; }

.bg_30thsemi {
  background-image: url("../img/common/top/30th_topimg_semi.jpg");
  background-position: bottom center;
  background-repeat: no-repeat;
  background-size: contain; }

@media (-webkit-device-pixel-ratio: 2) {
  .bg_30thsemi {
    background-image: url("../img/common/top/30th_topimg_semi@2x.jpg"); } }
@media (min-width: 500px) {
  .top-online-container {
    background-image: url(../img/common/top/topImage_online_bg.jpg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover; } }
@media (min-width: 600px) {
  .bnr_container {
    padding: 40px 20px 40px 20px;
    max-width: 1024px; } }
@media (min-width: 900px) {
  .top-image-container {
    background-image: url(../img/common/top/top-bg.jpg);
    background-position: center center;
    background-repeat: no-repeat; } }
@media only screen and (min-width: 900px) and (-webkit-min-device-pixel-ratio: 2), only screen and (min-width: 900px) and (min--moz-device-pixel-ratio: 2), only screen and (min-width: 900px) and (-o-min-device-pixel-ratio: 2 / 1), only screen and (min-width: 900px) and (min-device-pixel-ratio: 2), only screen and (min-width: 900px) and (min-resolution: 192dpi), only screen and (min-width: 900px) and (min-resolution: 2dppx) {
  background-image: url("img/example-img@2x.jpg");
  background-size: 320px 320px; }
/* -------------------------------- 
　トップリンク
-------------------------------- */
ul.top-link {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
  -webkit-justify-content: flex-start;
  justify-content: flex-start;
  -webkit-align-content: stretch;
  align-content: stretch;
  width: 100%;
  color: #FFF; }

.top-link li {
  display: block;
  width: 50%;
  list-style-type: none;
  padding: 10px; }

.top-link-wrap {
  height: 100%;
  width: 100%;
  display: inline-block;
  vertical-align: middle;
  padding: 20px;
  position: relative;
  overflow: hidden; }

.top-link-linewrap {
  position: absolute;
  top: 50%;
  left: 50%;
  -moz-transform: translateY(-50%) translateX(-50%);
  -ms-transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
  transform: translateY(-50%) translateX(-50%);
  width: 100%;
  overflow: hidden; }

.xycenter-wrap {
    position: absolute;
    top: 37px;
    left: 164px;
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    width: 100%;
    overflow: hidden;
}

@media (min-width: 600px) {
  .xycenter-wrap_after {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    -moz-transform: translateY(-50%) translateX(-50%);
    -ms-transform: translateY(-50%) translateX(-50%);
    -webkit-transform: translateY(-50%) translateX(-50%);
    transform: translateY(-50%) translateX(-50%);
    width: 100%;
    overflow: hidden; } }
.top-tsushin {
  background-color: #a043ab; }
  .top-tsushin:hover {
    background-color: rgba(160, 67, 171, 0.9); }

.top-online_login {
  background-color: #7343ab; }
  .top-online_login:hover {
    background-color: rgba(115, 67, 171, 0.9); }

.top-tsushin_nohover {
  background-color: #a043ab; }

.top-ob {
  background-color: #ab2457; }
  .top-ob:hover {
    background-color: rgba(171, 36, 87, 0.9); }

.top-wine {
  background-color: #d3438e; }
  .top-wine:hover {
    background-color: rgba(211, 67, 142, 0.9); }

.top-wosa {
  background-color: #76b74e; }
  .top-wosa:hover {
    background-color: rgba(118, 183, 78, 0.9); }

.top-port {
  background-color: #CE171E; }
  .top-port:hover {
    background-color: rgba(204, 65, 69, 0.9); }

.top-portugal {
  background-color: #000000; }
  .top-portugal:hover {
    background-color: rgba(0, 0, 1, 0.8); }

.top-rainbow {
  background-image: url(../img/common/top/rainbow_stripe.png);
  background-size: 100% auto;
  background-repeat: no-repeat; }
  .top-rainbow:hover {
    filter: alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8; }

.top-rainbow2 {
  background-image: url(../img/common/top/rainbow_stripe2.png);
  background-size: 100% auto;
  background-repeat: no-repeat; }
  .top-rainbow2:hover {
    filter: alpha(opacity=80);
    -moz-opacity: 0.8;
    opacity: 0.8; }

.top-siryo {
  background-color: #26c096; }
  .top-siryo:hover {
    background-color: rgba(65, 188, 160, 0.9); }

.top-mail {
  background-color: #2595C7; }
  .top-mail:hover {
    background-color: rgba(49, 160, 192, 0.9); }

.top-event {
  background-color: #EB8400; }
  .top-event:hover {
    background-color: rgba(235, 132, 0, 0.9); }

.top-blog {
  background-color: #efd30d; }
  .top-blog:hover {
    background-color: rgba(245, 223, 72, 0.9); }

.top-category {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 1px;
  color: #FFF; }

.top-category2 {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 0px;
  color: #FFF; }

.top-category_big {
  font-size: 1.4rem;
  font-weight: bold;
  letter-spacing: 0px;
  line-height: 2rem;
  margin: 10px 0;
  color: #FFF; }

.top-category_small {
  font-size: 1.2rem;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.6rem;
  color: #FFF; }

.top-category_small_2 {
  font-size: 1.1rem;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.6rem;
  color: #FFF; }

.top-category_small_3 {
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.4rem;
  color: #FFF; }
  .top-category_small_3 a {
    color: #FFF; }
    .top-category_small_3 a:hover {
      color: #fcc800; }

.top-category_top {
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.2rem;
  padding-bottom: 5px;
  color: #FFF; }

.top-icon {
  font-size: 4rem;
  line-height: 6rem; }

.top-link a {
  color: #FFF;
  text-decoration: none; }

@media screen and (min-width: 600px) {
  .top-link li {
    width: 33% !important; }

  .top-link-wrap {
    padding: 40px 10px; }

  .top-category {
    font-size: 1.4rem; }

  .top-category2 {
    font-size: 1.4rem; }

  .top-category_big {
    font-size: 1.6rem;
    letter-spacing: 1px;
    margin: 20px 0; }

  .top-category_small {
    font-size: 1.4rem; }

  .top-category_small_2 {
    font-size: 1.3rem; }

  .top-category_small_3 {
    font-size: 1.1rem; }

  .top-icon {
    font-size: 5rem;
    line-height: 7rem; } }
@media screen and (min-width: 768px) {
  ul.top-link {
    max-width: 940px;
    margin: 0 auto; }

  .top-category_top {
    font-size: 1.1rem; }

  .top-category {
    font-size: 1.8rem; }

  .top-category2 {
    font-size: 1.8rem; }

  .top-category_big {
    font-size: 1.8rem;
    margin: 20px 0; }

  .top-category_small {
    font-size: 1.6rem;
    line-height: 2.4rem; }

  .top-category_small_2 {
    font-size: 1.5rem;
    line-height: 2rem; }

  .top-category_small_3 {
    font-size: 1.4rem;
    line-height: 2rem; }

  .top-icon {
    font-size: 6rem;
    line-height: 8rem; }

  .top-icon_s {
    font-size: 5rem;
    line-height: 8rem; } }
/* -------------------------------- 
　新着情報
-------------------------------- */
.infosns_box {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column; }
  .infosns_box .info_box {
    width: 100%; }
  .infosns_box .sns_box {
    width: 100%; }
    .infosns_box .sns_box .fb_box {
      width: 100%;
      max-width: 540px;
      padding: 20px 0;
      margin: 0 auto; }
    .infosns_box .sns_box .tw_box {
      width: 100%;
      max-width: 540px;
      padding: 20px 0;
      margin: 0 auto; }

ul.news {
  margin: 10px auto 10px;
  display: inline-block;
  border-top-width: 1px;
  border-top-style: solid;
  border-top-color: #ab2457;
  background-color: #FFF;
  width: 100%;
  height: auto;
  overflow: auto; }

.news li {
  line-height: 2rem;
  display: block;
  border-bottom-width: 1px;
  border-bottom-style: solid;
  border-bottom-color: #ab2457;
  padding: 10px; }

.news li time {
  width: 90px;
  display: block;
  float: left;
  text-align: left; }

.news li .news-info {
  text-align: left;
  display: block;
  overflow: auto; }

@media (min-width: 768px) {
  .infosns_box {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: row;
    flex-direction: row; }
    .infosns_box .info_box {
      width: 50%;
      padding-right: 15px; }
    .infosns_box .sns_box {
      width: 50%;
      padding-left: 15px; }

  .news li {
    line-height: 2.8rem;
    padding: 12px; }

  .news li time {
    width: 120px; }

  .news li .news-info {
    text-align: left;
    display: block;
    overflow: auto; } }
/* -------------------------------- 
　Facebook Twitter
-------------------------------- */
.fb_iframe_widget,
.fb_iframe_widget span,
.fb_iframe_widget iframe[style] {
  width: 100% !important; }

.facebook-box {
  width: 100%;
  max-width: 540px;
  padding: 20px;
  margin: 0 auto; }

.twitter-box {
  width: 100%;
  max-width: 540px;
  padding: 20px;
  margin: 0 auto; }

@media (min-width: 768px) {
  .facebook-box {
    width: 50%;
    margin: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    float: left;
    height: 400px; }

  .twitter-box {
    width: 50%;
    margin: 0px;
    padding-top: 0px;
    padding-bottom: 0px;
    float: left;
    height: 400px; } }
/* -------------------------------- 
　 スライダー
-------------------------------- */
.sliderArea {
  background: #fff;
  overflow: hidden; }

.sliderWide {
  max-width: 100%;
  margin: 0 auto;
  padding: 0;
  background: #fff; }

.sliderWide .slick-arrow {
  opacity: 1; }

/*.sliderWide .slick-arrow {
  opacity: 0;
  transition-duration: 0.3s;
}
.sliderWide:hover .slick-arrow {
  opacity: 1;
}*/
.slider {
  max-width: 600px;
  margin: 0 auto;
  padding: 0; }

.slider .slick-list {
  overflow: visible; }

.slider .slick-slide {
  padding: 0;
  opacity: .5;
  transition-duration: 0.3s; }

.slider .slick-slide.slick-current {
  opacity: 1; }

.slider .slick-slide a {
  display: block; }

.slider .slick-slide a:hover {
  sdisplay: block;
  opacity: .7; }

.slider img {
  height: auto;
  width: 100%; }

.slick-prev, .slick-next {
  z-index: 1; }

.slick-dots {
  bottom: 5px; }

/* -------------------------------- 
　ワイナリー視察リンク
-------------------------------- */
.repo_title {
  background-color: #ab2457 !important;
  padding: 10px;
  color: #fff;
  font-family: Ryumin Bold KL;
  letter-spacing: 1px;
  margin: 0;
  text-align: center;
  max-width: 940px; }

ul.repo_list {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column;
  width: 100%;
  padding: 0;
  margin: 0; }
  ul.repo_list li {
    display: block;
    width: 100%;
    background-color: #fff;
    padding: 10px;
    margin: 0;
    border-bottom: solid 1px #ab2457;
    list-style-type: none; }

.reop_list_cont {
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: row;
  flex-direction: row;
  width: 100%;
  text-align: left; }
  .reop_list_cont .repo_img {
    height: 100px;
    width: 100px !important; }
    .reop_list_cont .repo_img img {
      height: 100px;
      width: 100px;
      object-fit: cover; }
      .reop_list_cont .repo_img img:hover {
        opacity: 0.7; }
  .reop_list_cont .repo_headline {
    display: block;
    padding: 10px !important; }

@media (min-width: 768px) {
  ul.repo_list {
    -webkit-flex-direction: row;
    flex-direction: row;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    max-width: 940px; }
    ul.repo_list li {
      width: 32%;
      margin-top: 15px;
      border: solid 1px #ab2457;
      padding: 20px; }

  .reop_list_cont {
    -webkit-flex-direction: column;
    flex-direction: column;
    overflow: hidden; }
    .reop_list_cont .repo_img {
      width: 100% !important;
      height: auto;
      padding: 0; }
      .reop_list_cont .repo_img img {
        width: 100%;
        height: auto; }
    .reop_list_cont .repo_headline {
      width: 100%;
      padding: 10px 0 0 0 !important; } }
/* -------------------------------- 
　 オーバーワイドトップライナー
-------------------------------- */
.over-wide-bgbox {
  width: 100%;
  padding: 20px;
  overflow: hidden; }

.bg_tsushin {
  background-image: url("../img/common/top/tsushin_topbg07_s.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  width: auto; }

.bg_2025online {
  background-image: url("../img/common/top/2025online_bg_s.jpg");
  background-position: center right;
  background-repeat: no-repeat;
  background-size: auto 100%; }

.height_auto-420 {
  height: auto !important; }

@media (min-width: 768px) {
  .over-wide-bgbox {
    padding: 30px; }

  .bg_tsushin {
    background-image: url("../img/common/top/tsushin_topbg07.jpg");
    background-position: center center;
    background-repeat: no-repeat;
    background-size: auto 100%; } }
.float-box_center {
  width: 100%;
  max-width: 900px;
  margin: 0 auto; }

.float-box_1024 {
  width: 100%;
  max-width: 1024px;
  margin: 0 auto;
  text-align: left; }

.height460 {
  height: 440px !important; }

.height440 {
  height: 440px !important; }

.height420 {
  height: 420px !important; }

/* -------------------------------- 
　 owtライナー imgリンク用
-------------------------------- */
.over-wide-bgbox_imglink {
  width: 100%;
  padding: 0;
  margin: 0;
  overflow: hidden;
  background-color: #fff; }

.box_max1600_owt {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  text-align: center;
  background-color: #fff; }
  .box_max1600_owt img {
    width: 100%;
    height: auto;
    vertical-align: bottom; }
    .box_max1600_owt img:hover {
      opacity: 0.7; }

.box_max1600_owt_nh {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  text-align: center;
  background-color: #fff; }
  .box_max1600_owt_nh img {
    width: 100%;
    height: auto;
    vertical-align: bottom; }

.box_max1600_5050 {
  width: 100%;
  max-width: 1600px;
  margin: 0 auto;
  padding: 0;
  overflow: hidden;
  text-align: center;
  background-color: #fff;
  display: -webkit-flex;
  display: flex;
  -webkit-flex-direction: column;
  flex-direction: column; }
  .box_max1600_5050 img {
    width: 100%;
    height: auto;
    vertical-align: bottom; }
  .box_max1600_5050 a:hover {
    opacity: 0.7; }
  .box_max1600_5050 linkbox50 {
    width: 50% !important;
    max-width: 800px; }

@media (min-width: 600px) {
  .box_max1600_5050 {
    -webkit-flex-direction: row;
    flex-direction: row; } }
/* -------------------------------- 
　 owt　ポルトガルgt、検定等　背景
-------------------------------- */
.bg_portgt {
  background-image: url("../img/common/top/portgt_topbg.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  width: auto; }

.bg_portex {
  background-image: url("../img/common/top/portex_topbg.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  width: auto; }

.bg_portgt202206 {
  background-image: url("../img/common/top/portgt_topbg202206.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  width: auto; }

.bg_tsushin202206 {
  background-image: url("../img/common/top/tsushin_topbg202206.jpg");
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  height: 100%;
  width: auto; }

/* -------------------------------- 
　 owt　背景 解像度
-------------------------------- */
@media (-webkit-device-pixel-ratio: 2) {
  .bg_portgt {
    background-image: url("../img/common/top/portgt_topbg@2x.jpg"); }

  .bg_portex {
    background-image: url("../img/common/top/portex_topbg@2x.jpg"); }

  .bg_portgt {
    background-image: url("../img/common/top/portgt_topbg202206@2x.jpg"); }

  .bg_2025online {
    background-image: url("../img/common/top/2025online_bg_s@2x.jpg"); } }
