/* Sub Common */
.section {
  padding: 0 0 150px;
}

.section--01 {
  padding: 106px 0 120px;
}

h3.sub-title  {
  margin: -10px 0 25px;
  font-size: 4.2rem;
  font-weight: 700;
  color: #00539e;
}

@media(max-width:1200px) {
  .section {
    padding: 0 0 130px;
  }
  
  .section--01 {
    padding: 90px 0 105px;
  }
  
  h3.sub-title  {
    margin: -10px 0 20px;
    font-size: 3.6rem;
  }
}

@media(max-width:1024px) {
  .section {
    padding: 0 0 110px;
  }
  
  .section--01 {
    padding: 75px 0 90px;
  }
  
  h3.sub-title  {
    margin: -6px 0 15px;
    font-size: 3rem;
  }
}


@media(max-width:768px) {
  .section {
    padding: 0 0 90px;
  }
  
  .section--01 {
    padding: 60px 0 75px;
  }
  
  h3.sub-title  {
    margin: -5px 0 12px;
    font-size: 2.6rem;
  }
}

@media(max-width:500px) {
  .section {
    padding: 0 0 70px;
  }
  
  .section--01 {
    padding: 45px 0 60px;
  }
  
  h3.sub-title  {
    margin: -5px 0 10px;
    font-size: 2.2rem;
  }
}

/* Sub Navigation */
.sub-navigation {
  margin-bottom: 30px;
}

.sub-navigation-inner {
  display: flex;
  align-items: center;
  font-size: 1.6rem;
  line-height: 1;
}

.sub-navigation-inner .home {
  display: flex;
  align-items: center;
}

.sub-navigation-inner .home a {
  display: block;
  width: 14px;
  height: 13px;
  background: url('/child/img/sub/sub_path_home_icon.png') no-repeat center;
  background-size: cover;
}

.sub-navigation-inner .home::after {
  content: "";
  display: block;
  width: 5px;
  height: 9px;
  margin: 0 10px;
  background: url('/child/img/sub/sub_path_arrow.png') no-repeat center;
  background-size: cover;
}

.sub-navigation-inner .depth span {
  display: flex;
  align-items: center;
}

.sub-navigation-inner .depth--01 i {
  display: block;
  width: 5px;
  height: 9px;
  margin: 0 10px;
  background: url('/child/img/sub/sub_path_arrow.png') no-repeat center;
  background-size: cover;
}

@media(max-width:1200px) {
  .sub-navigation {
    margin-bottom: 25px;
  }
  
  .sub-navigation-inner {
    font-size: 1.5rem;
  }
}


@media(max-width:1024px) {
  .sub-navigation {
    display: none;
  }
}

/* Sub Visual */
.sub-visual-inner {
  position: relative;
}

.sub-visual-title {
  position: relative;
  width: 100%;
  font-size: 8rem;
  line-height: 1;
  font-family: 'Lexend';
  overflow: visible;
}

.sub-visual-title::after {
  content: "";
  display: block;
  position: absolute;
  right: 0;
  bottom: 8px;
  width: 13px;
  height: 102px;
  background: url('/child/img/sub/sub_visual_text.png') no-repeat center;
}

@media(max-width:1200px) {
  .sub-visual-title {
    font-size: 6.4rem;
  }
  
  .sub-visual-title::after {
    right: 0;
    bottom: 8px;
    width: 13px;
    height: 102px;
  }
}


@media(max-width:1024px) {
  .sub-visual-title {
    font-size: 5rem;
  }
  
}


@media(max-width:768px) {
  .sub-visual-title {
    font-size: 4.4rem;
  }

  .sub-visual-title::before {
    content: "KPC FLAVOR";
    display: block;
    margin-bottom: 10px;
    font-size: 1.6rem;
    font-weight: 500;
    line-height: 1;
    color: #00539e;
  }
  
  .sub-visual-title::after  {
    display: none;
  }
}

@media(max-width:1024px) {
  .sub-visual-title {
    font-size: 5rem;
  }
  
}


@media(max-width:500px) {
  .sub-visual-title {
    font-size: 3.6rem;
  }

  .sub-visual-title::before {
    margin-bottom: 7px;
    font-size: 1.4rem;
  }
  
}


/* About */
/* About */
.about .section--02 .thumbnail {
  position: relative;
  width: 100%;
  padding-top: calc(500/1400*100%);
  margin-bottom: 40px;
}

.about .section--02 .thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

.about .section--02 .text-wrap {
  max-width: 1270px;
  width: 100%;
}

.about .section--02 .text-wrap p {
  margin-bottom: 35px;
  font-size: 2rem;
  line-height: 1.8;
}

.about .section--02 .text-wrap p span {
  display: block;
}

.about .section--02 .text-wrap p:last-of-type {
  margin-bottom: -8px;
}

.about .section--03 .sub-title {
  margin-bottom: 50px;
}

.about .section--03 .concepts-list {
  display: flex;
  align-items: start;
  justify-content: space-between;
}

.about .section--03 .concepts-item {
  max-width: 176px;
  width: 12.571%;
  text-align: center;
  font-size: 2.4rem;
  line-height: 1;
}

.about .section--03 .concepts-item .icon {
  position: relative;
  width: 100%;
  aspect-ratio: 1 / 1;
  margin-bottom: 30px;
}

.about .section--03 .concepts-item .icon img {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

@media(max-width:1200px) {
  .about .section--02 .thumbnail {
    margin-bottom: 30px;
  }
  
  .about .section--02 .text-wrap p {
    margin-bottom: 30px;
    font-size: 1.8rem;
  }
  
  .about .section--03 .sub-title {
    margin-bottom: 40px;
  }
  
  .about .section--03 .concepts-item {
    font-size: 2.2rem;
  }
  
  .about .section--03 .concepts-item .icon {
    margin-bottom: 25px;
  }
}


@media(max-width:1024px) {
  .about .section--02 .thumbnail {
    margin-bottom: 25px;
  }
  
  .about .section--02 .text-wrap p {
    margin-bottom: 25px;
    font-size: 1.6rem;
  }
  
  .about .section--02 .text-wrap p:last-of-type {
    margin-bottom: -8px;
  }
  
  .about .section--03 .sub-title {
    margin-bottom: 35px;
  }
  
  .about .section--03 .concepts-item {
    font-size: 2rem;
  }
  
  .about .section--03 .concepts-item .icon {
    margin-bottom: 20px;
  }
}


@media(max-width:768px) {
  .about .section--02 .thumbnail {
    margin-bottom: 20px;
  }
  
  .about .section--02 .text-wrap p {
    margin-bottom: 20px;
    font-size: 1.5rem;
  }
  
  .about .section--02 .text-wrap p:last-of-type {
    margin-bottom: -8px;
  }
  
  .about .section--03 .sub-title {
    margin-bottom: 30px;
  }

  .about .section--03 .concepts-list {
    flex-wrap: wrap;
    justify-content: center;
    gap: 20px 2.5%;
  }
  
  .about .section--03 .concepts-item {
    width: 23%;
    font-size: 1.8rem;
  }
  
  .about .section--03 .concepts-item .icon {
    margin-bottom: 15px;
  }
}

@media(max-width:500px) {
  .about .section--02 .thumbnail {
    margin-bottom: 15px;
  }
  
  .about .section--02 .text-wrap p {
    margin-bottom: 15px;
    font-size: 1.4rem;
  }
  
  .about .section--03 .sub-title {
    margin-bottom: 25px;
  }

  .about .section--03 .concepts-list {
    gap: 15px 2.5%;
  }
  
  .about .section--03 .concepts-item {
    width: 30%;
    font-size: 1.6rem;
  }
  
  .about .section--03 .concepts-item .icon {
    margin-bottom: 10px;
  }
}

/* History */
.history .section--02 .history-wrap {
  display: flex;
  flex-direction: column;
  align-items: end;
  width: 100%;
  padding-top: 100px;
  border-top: 1px solid #b5b5b5;
}

.history .section--02 .history-box {
  display: flex;
  align-items: start;
  justify-content: center;
  height: 450px;
}

.history .section--02 .history-box--01 {
  height: 650px;
}
.history .section--02 .history-box--02 {
  height: 300px;
}

.history .section--02 .history-box--04 {
  height: 180px;
}

.history .section--02 .history-title {
  width: 385px;
  text-align: right;
  font-size: 4.2rem;
  font-weight: 700;
  color: #00539e;
  line-height: 1;
}

.history .section--02 .history-title p {
  transform: translateX(101%);
}

.history .section--02 .history-title p.aos-animate {
  animation: titleAni .8s ease forwards;
}

@keyframes titleAni {
  0% {
    transform: translateX(101%);
  }

  100% {
    transform: translateX(0%);
  }
}

.history .section--02 .line {
  position: relative;
  height: 100%;
  margin: 2px 120px 0;
}

.history .section--02 .line .circle {
  position: relative;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background-color: rgba(0 , 83, 158, 0.3);
}

.history .section--02 .line .circle::after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  z-index: 1;
  transform: translate(-50% , -50%);
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background-color: #00539e;
}

.history .section--02 .line::after {
  content: "";
  display: block;
  position: absolute;
  top: 15px;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: calc(100% - 15px);
  background-color: #b5b5b5;
  z-index: 0;
  transition: all .8s ease;
}

.history .section--02 .history-text {
  width: 560px;
  margin-top: -10px;
  font-size: 2rem;
  line-height: 2.1;
}

.history .section--02 .history-text > div {
  display: flex;
  align-items: start;
}

.history .section--02 .history-text span {
  display: block;
  width: 52px;
  margin-right: 50px;
  color: #00539e;
  font-weight: 700
}

.history .section--02 .history-text > div p {
  width: calc(100% - 102px);
}

@media(max-width:1200px) {
  .history .section--02 .history-wrap {
    padding-top: 85px;
  }
  
  .history .section--02 .history-box {
    height: 400px;
  }
  
  .history .section--02 .history-box--01 {
    height: 550px;
  }
  .history .section--02 .history-box--02 {
    height: 250px;
  }

  .history .section--02 .history-box--04 {
    height: 160px;
  }
  
  .history .section--02 .history-title {
    width: 330px;
    font-size: 3.6rem;
  }
  
  .history .section--02 .line {
    margin: 2px 90px 0;
  }
  
  .history .section--02 .line .circle {
    width: 25px;
    height: 25px;
  }
  
  .history .section--02 .line .circle::after {
    width: 10px;
    height: 10px;
  }
  
  .history .section--02 .history-text {
    width: 495px;
    font-size: 1.8rem;
  }

  .history .section--02 .history-text span {
    width: 47px;
    margin-right: 40px;
  }
  
  .history .section--02 .history-text > div p {
    width: calc(100% - 87px);
  }
}

@media(max-width:1024px) {
  .history .section--02 .history-wrap {
    padding-top: 70px;
  }

  .history .section--02 .history-box {
    height: 350px;
  }
  
  .history .section--02 .history-box--01 {
    height: 500px;
  }
  .history .section--02 .history-box--02 {
    height: 200px;
  }

  .history .section--02 .history-box--04 {
    height: 140px;
  }
  
  .history .section--02 .history-title {
    width: 275px;
    font-size: 3rem;
  }
  
  .history .section--02 .line {
    margin: 2px 60px 0;
  }
  
  .history .section--02 .line .circle {
    width: 20px;
    height: 20px;
  }
  
  .history .section--02 .line .circle::after {
    width: 8px;
    height: 8px;
  }
  
  .history .section--02 .history-text {
    width: 435px;
    font-size: 1.6rem;
  }

  .history .section--02 .history-text span {
    width: 42px;
    margin-right: 30px;
  }
  
  .history .section--02 .history-text > div p {
    width: calc(100% - 72px);
  }
}

@media(max-width:875px) {
  .history .section--02 .history-title {
    width: 185px;
  }
}

@media(max-width:780px) {
  .history .section--02 .history-wrap {
    padding-top: 55px;
  }

  .history .section--02 .line {
    display: none;
  }

  .history .section--02 .history-box {
    flex-direction: column;
    align-items: start;
    justify-content: start;
    width: 100%;
    height: fit-content;
    margin-bottom: 70px;
  }

  .history .section--02 .history-box--04 {
    margin-bottom: -10px;
  }

  .history .section--02 .history-title {
    width: 100%;
    margin-bottom: 25px;
    font-size: 2.6rem;
    text-align: center;
  }

  .history .section--02 .history-title p {
    transform: translateY(-100%);
  }

  @keyframes titleAni {
    0% {
      transform: translateY(-100%);
    }
  
    100% {
      transform: translateY(0%);
    }
  }

  .history .section--02 .history-text {
    position: relative;
    width: 434px;
    margin: 0 auto;
    font-size: 1.6rem;
  }
  
  .history .section--02 .history-text::after {
    content: "";
    display: block;
    position: absolute;
    bottom: -50px;
    left: 50%;
    transform: translateX(-50%);
    width: 1px;
    height: 40px;
    background-color: #b5b5b5;
  }

  .history .section--02 .history-box--04 .history-text::after {
    display: none;
  }
  
  .history .section--02 .history-text span {
    width: 42px;
    margin-right: 25px;
  }

  .history .section--02 .history-text > div p {
    width: calc(100% - 67px);
  }
}

@media(max-width:500px) {
  .history .section--02 .history-wrap {
    padding-top: 40px;
  }

  .history .section--02 .history-box {
    align-items: start;
    margin-bottom: 30px;
  }

  .history .section--02 .history-box:last-of-type {
    margin: 0;
  }
  
  .history .section--02 .history-box::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    margin-top: 30px;
    background-color: #b5b5b5;
  }

  .history .section--02 .history-title {
    margin-bottom: 20px;
    text-align: left;
    font-size: 2.2rem;
  }

  .history .section--02 .history-title p {
    transform: translateY(0);
  }

  .history .section--02 .history-title p.aos-animate {
    animation: none;
  }

  .history .section--02 .history-text {
    width: 100%;
    margin: 0;
    font-size: 1.5rem;
  }
  
  .history .section--02 .history-text > div {
    margin-bottom: 10px;
    line-height: 1.8;
  }

  .history .section--02 .history-text p:last-of-type {
    margin-bottom: 0;
  }

  .history .section--02 .history-text::after {
    display: none;
  }

  .history .section--02 .history-text span {
    width: 42px;
    margin-right: 20px;
  }
  
  .history .section--02 .history-text > div p {
    width: calc(100% - 62px);
  }
}
/* Location */
.location .section--02 .location-label {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-bottom: 50px;
}

.location .section--02 .location-label-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 37px;
  height: 50px;
  font-size: 2.4rem;
  line-height: 1;
  border: 1px solid #b5b5b5;
  cursor: pointer;
}

.location .section--02 .location-label-btn.on {
  font-weight: 700;
  color: #fff;
  background-color: #00539e;
  border-color: #00539e;
}

.location .section--02 .location-list {
  width: 100%;
}

.location .section--02 .location-item {
  display: none;
  width: 100%;
}

.location .section--02 .location_map {
  position: relative;
  width: 100%;
  padding-top: calc(600 / 1400*100%);
  margin-bottom: 50px;
}

.location .section--02 .location_map iframe {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}

.location .section--02 .location-item.on {
  display: block;
}

.location .section--02 .location_address {
  display: flex;
  align-items: center;
  width: 100%;
  margin-bottom: 40px;
  font-size: 2rem;
  line-height: 1;
}

.location .section--02 .location_address p {
  display: block;
  margin-right: 60px;
  font-weight: 700;
}

.location .section--02 .location_address  span {
  display: block;
  margin-bottom: 1px;
}

.location .section--02 .location_info {
  display: flex;
  align-items: center;
  width: 100%;
  padding: 30px 0;
  border-top: 2px solid #b5b5b5;
  border-bottom: 2px solid #b5b5b5;
}

.location .section--02 .location_info_item {
  display: flex;
  align-items: center;
  width: 33.333%;
  padding-left: 36px;
  border-left: 2px solid #b5b5b5;
  font-size: 2rem;
  line-height: 1;
}

.location .section--02 .location_info_item:first-of-type {
  padding: 0;
  border: none;
}

.location .section--02 .location_info_item .info_item_title {
  padding: 8px 0;
  margin-right: 50px;
  font-weight: 700;
}

.location .section--02 .location_info_item span {
  display: block;
}

@media(max-width:1200px) {
  .location .section--02 .location-label {
    gap: 10px;
    margin-bottom: 40px;
  }
  
  .location .section--02 .location-label-btn {
    padding: 0 30px;
    height: 50px;
    font-size: 2.2rem;
  }
  
  .location .section--02 .location_map {
    margin-bottom: 40px;
  }
  
  .location .section--02 .location_address {
    margin-bottom: 30px;
    font-size: 1.8rem;
  }
  
  .location .section--02 .location_address span {
    margin-right: 50px;
  }
  
  .location .section--02 .location_info {
    padding: 25px 0;
  }
  
  .location .section--02 .location_info_item {
    padding-left: 30px;
    font-size: 1.8rem;
  }
  
  .location .section--02 .location_info_item .info_item_title {
    padding: 8px 0;
    margin-right: 40px;
  }
  
}

@media(max-width:1024px) {
  .location .section--02 .location-label {
    gap: 10px;
    margin-bottom: 30px;
  }
  
  .location .section--02 .location-label-btn {
    padding: 0 25px;
    height: 45px;
    font-size: 2rem;
  }
  
  .location .section--02 .location_map {
    margin-bottom: 30px;
  }
  
  .location .section--02 .location_address {
    margin-bottom: 24px;
    font-size: 1.6rem;
  }
  
  .location .section--02 .location_address span {
    margin-right: 40px;
  }
  
  .location .section--02 .location_info {
    padding: 20px 0;
  }
  
  .location .section--02 .location_info_item {
    padding-left: 25px;
    font-size: 1.6rem;
  }
  
  .location .section--02 .location_info_item .info_item_title {
    padding: 8px 0;
    margin-right: 25px;
  }
}

@media(max-width:768px) {
  .location .section--02 .location-label {
    gap: 8px;
    margin-bottom: 20px;
  }
  
  .location .section--02 .location-label-btn {
    padding: 0 20px;
    height: 40px;
    font-size: 1.8rem;
  }
  
  .location .section--02 .location_map {
    margin-bottom: 20px;
  }

  .location .section--02 .location_address {
    margin-bottom: 20px;
    font-size: 1.5rem;
  }
  
  .location .section--02 .location_address span {
    margin-right: 30px;
  }
  
  .location .section--02 .location_info {
    flex-direction: column;
    align-items: start;
    padding: 15px 0;
  }
  
  .location .section--02 .location_info_item {
    max-width: 100%;
    width: 100%;
    padding-left: 0;
    font-size: 1.5rem;
  }
  
  .location .section--02 .location_info_item {
    border-left: none;
  }

  .location .section--02 .location_info_item:nth-of-type(2) {
    margin: 15px 0;
    padding: 15px 0;
    border-top: 1px solid #b5b5b5;
    border-bottom: 1px solid #b5b5b5;
  }
  .location .section--02 .location_info_item .info_item_title {
    width: 55px;
    padding: 5px 0;
    margin-right: 15px;
  }
}


@media(max-width:500px) {
  .location .section--02 .location-label {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 6px;
    margin-bottom: 15px;
  }
  
  .location .section--02 .location-label-btn {
    width: 100%;
    padding: 0 15px;
    height: 35px;
    font-size: 1.6rem;
  }
  
  .location .section--02 .location_map {
    margin-bottom: 15px;
  }

  .location .section--02 .location_address {
    flex-direction: column;
    align-items: start;
    margin-bottom: 15px;
    font-size: 1.4rem;
  }
  
  .location .section--02 .location_address span {
    width: 100%;
    margin-bottom: 10px;
  }
  
  .location .section--02 .location_info {
    padding: 12px 0;
  }
  
  .location .section--02 .location_info_item {
    font-size: 1.4rem;
  }
  
  .location .section--02 .location_info_item:nth-of-type(2) {
    margin: 10px 0;
    padding: 10px 0;
  }

  .location .section--02 .location_info_item .info_item_title {
    padding: 0;
    margin-right: 12px;
  }
}


/* Flavors */
.flavors .section--02 .contents-box {
  display: flex;
  align-items: center;
  position: relative;
}

.flavors .section--02 .contents-box .plus-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  width: 70px;
  height: 70px;
  background: url('/child/img/sub/flavors/section02_icon01.png') no-repeat center;
  background-size: cover;
  cursor: pointer;
  transition: all .3s ease-out;
}

.flavors .section--02 .thumbnail {
  position: relative;
  max-width: 700px;
  width: 50%;
  padding-top: calc(450 / 1400*100%);
  overflow: hidden;
}

.flavors .section--02 .thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

.flavors .section--02 .contents_item {
  position: absolute;
  top: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  padding: 65px 105px;
  background-color: rgba(0, 44, 105, 0.9);
  color: #fff;
  transition: all .3s ease-out;
}

.flavors .section--02 .contents_item-odd {
  right: -100%;
  padding-left: 120px;
  /* text-align: right; */
}

.flavors .section--02 .contents_item-even {
  left: -100%;
}

.flavors .section--02 .contents_item p, 
.flavors .section--02 .contents_text p {
  margin-bottom: 28px;
  font-size: 2.4rem;
  font-weight: 700;
}

.flavors .section--02 .contents_item span,
.flavors .section--02 .contents_text span {
  position: relative;
  display: block;
  padding-left: 10px;
  margin-bottom: 16px;
  font-size: 2rem;
  line-height: 1;
}

.flavors .section--02 .contents_item span i,
.flavors .section--02 .contents_text span i {
  position: absolute;
  display: block;
  left: 0;
  top: 0;
}

.flavors .section--02 .contents-wrap {
  display: flex;
  align-items: center;
  max-width: 700px;
  width: 50%;
  padding: 0 130px;

}

.flavors .section--02 .contents-wrap-even {
  justify-content: flex-end;
  /* text-align: right; */
}

.flavors .section--02 .contents_title {
  font-size: 4.2rem;
  font-weight: 700;
  font-family: 'Lexend';
}

.flavors .section--02 .contents_title span {
  display: block;
}

.flavors .section--02 .contents-wrap-even .contents_title span {
  transform: translateX(101%);
  transition: .8s ease;
}

.flavors .section--02 .contents-wrap-even .contents_title span.aos-animate {
  transform: translateX(0%);
}

.flavors .section--02 .contents_text {
  display: none;
  flex-wrap: wrap;
  align-items: start;
  gap: 0 2%;
}

.flavors .section--02 .contents_text-even {
  text-align: left;
}

.flavors .section--02 .contents-box.on .contents_item-odd {
  right: 0;
}

.flavors .section--02 .contents-box.on .contents_item-even {
  left: 0;
}


.flavors .section--02 .contents-box.on .plus-icon {
  background: url('/child/img/sub/flavors/section02_icon01-on.png') no-repeat center;
}


@media(max-width:1200px) {
  .flavors .section--02 .contents-box .plus-icon {
    display: none;
  }

  .flavors .section--02 .contents_item {
    display: none;
  }

  .flavors .section--02 .contents-wrap {
    flex-direction: column;
    align-items: start;
    padding: 0 30px;
  }

  .flavors .section--02 .contents_title {
    margin: 0 0 10px -3px;
    font-size: 3.6rem;
  }

  .flavors .section--02 .contents_title br {
    display: none;
  }
  
  .flavors .section--02 .contents_text {
    display: flex;
  }

  .flavors .section--02 .contents_text p {
    width: 100%;
    margin-bottom: 25px;
    font-size: 2.2rem;
  }

  .flavors .section--02 .contents_text span {
    width: 49%;
    margin-bottom: 16px;
    font-size: 1.8rem;
  }

  .flavors .section--02 .contents-wrap-even .contents_title span {
    transform: translateX(-90%);
    transition: .8s ease;
  }
  
  .flavors .section--02 .contents-wrap-even .contents_title span.aos-animate {
    transform: translateX(0%);
  }
}

@media(max-width:1024px) {
  .flavors .section--02 .contents-wrap {
    padding: 0 25px;
  }

  .flavors .section--02 .contents_title {
    margin: 0 0 10px -3px;
    font-size: 3rem;
  }

  .flavors .section--02 .contents_text p {
    margin-bottom: 20px;
    font-size: 2rem;
  }

  .flavors .section--02 .contents_text span {
    margin-bottom: 16px;
    font-size: 1.6rem;
  }
}

@media(max-width:768px) {
  .flavors .section--02 .contents-box {
    flex-direction: column;
    align-items: start;
    margin-bottom: 30px;
  }

  .flavors .section--02 .thumbnail {
    max-width: 100%;
    width: 100%;
    padding-top: calc(450 / 768*100%);
    margin-bottom: 20px;
  }

  .flavors .section--02 .contents-wrap {
    max-width: 100%;
    width: 100%;
    padding: 0;
  }

  .flavors .section--02 .contents-wrap-even {
    order: 1;
  }

  .flavors .section--02 .contents_title {
    margin: 0 0 10px;
    font-size: 2.6rem;
  }

  .flavors .section--02 .contents_text p {
    margin-bottom: 15px;
    font-size: 1.8rem;
  }

  .flavors .section--02 .contents_text span {
    margin-bottom: 16px;
    font-size: 1.5rem;
  }
}

@media(max-width: 500px) {
  .flavors .section--02 .contents-box {
    margin-bottom: 25px;
  }

  .flavors .section--02 .thumbnail {
    margin-bottom: 15px;
  }

  .flavors .section--02 .contents_title {
    margin-bottom: 7px;
    font-size: 2.2rem;
  }

  .flavors .section--02 .contents_text p {
    margin-bottom: 10px;
    font-size: 1.6rem;
  }

  .flavors .section--02 .contents_text span {
    margin-bottom: 12px;
    font-size: 1.4rem;
  }
}


/* Oils */
.oils .section--02 .contents-box {
  display: flex;
  align-items: center;
  position: relative;
}

.oils .section--02 .contents-box .plus-icon {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 3;
  width: 70px;
  height: 70px;
  background: url('/child/img/sub/oils/section02_icon01.png') no-repeat center;
  background-size: cover;
  cursor: pointer;
  transition: all .3s ease-out;
}

.oils .section--02 .thumbnail {
  position: relative;
  max-width: 700px;
  width: 50%;
  padding-top: calc(450 / 1400*100%);
  overflow: hidden;
}

.oils .section--02 .thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

.oils .section--02 .contents_item {
  position: absolute;
  top: 0;
  z-index: 2;
  width: 100%;
  height: 100%;
  padding: 65px 105px;
  background-color: rgba(0, 44, 105, 0.9);
  color: #fff;
  transition: all .3s ease-out;
}

.oils .section--02 .contents_item-odd {
  right: -100%;
  padding-left: 330px;
  /* text-align: right; */
}

.oils .section--02 .contents_item-even {
  left: -100%;
}

.oils .section--02 .contents_item p, 
.oils .section--02 .contents_text p {
  margin-bottom: 28px;
  font-size: 2.4rem;
  font-weight: 700;
}

.oils .section--02 .contents_item span,
.oils .section--02 .contents_text span {
  display: block;
  margin-bottom: 16px;
  font-size: 2rem;
  line-height: 1;
}

.oils .section--02 .contents-wrap {
  display: flex;
  align-items: center;
  max-width: 700px;
  width: 50%;
  padding: 0 130px;

}

.oils .section--02 .contents-wrap-even {
  justify-content: flex-end;
  /* text-align: right; */
}

.oils .section--02 .contents_title {
  font-size: 4.2rem;
  font-family: 'Lexend';
}

.oils .section--02 .contents_title span {
  display: block;
  font-weight: 700;
}

.oils .section--02 .contents-wrap-even .contents_title span {
  transform: translateX(100%);
  transition: all .8s ease;
}

.oils .section--02 .contents-wrap-even .contents_title span.aos-animate {
  transform: translateX(0%);
}

.oils .section--02 .contents_text {
  display: none;
  flex-wrap: wrap;
  align-items: start;
  gap: 0 2%;
}

.oils .section--02 .contents_text-even {
  text-align: left;
}

.oils .section--02 .contents-box.on .contents_item-odd {
  right: 0;
}

.oils .section--02 .contents-box.on .contents_item-even {
  left: 0;
}


.oils .section--02 .contents-box.on .plus-icon {
  background: url('/child/img/sub/oils/section02_icon01-on.png') no-repeat center;
}


@media(max-width:1200px) {
  .oils .section--02 .contents-box .plus-icon {
    display: none;
  }

  .oils .section--02 .contents_item {
    display: none;
  }

  .oils .section--02 .contents-wrap {
    flex-direction: column;
    align-items: start;
    padding: 0 30px;
  }

  .oils .section--02 .contents_title {
    margin: 0 0 10px -3px;
    font-size: 3.6rem;
  }

  .oils .section--02 .contents_title br {
    display: none;
  }
  
  .oils .section--02 .contents_text {
    display: flex;
  }

  .oils .section--02 .contents_text p {
    width: 100%;
    margin-bottom: 25px;
    font-size: 2.2rem;
  }

  .oils .section--02 .contents_text span {
    width: 49%;
    margin-bottom: 16px;
    font-size: 1.8rem;
  }

  .oils .section--02 .contents-wrap-even .contents_title span {
    transform: translateX(-90%);
  }
  
  .oils .section--02 .contents-wrap-even .contents_title span.aos-animate {
    transform: translateX(0%);
  }
}

@media(max-width:1024px) {
  .oils .section--02 .contents-wrap {
    padding: 0 25px;
  }

  .oils .section--02 .contents_title {
    margin: 0 0 10px -3px;
    font-size: 3rem;
  }

  .oils .section--02 .contents_text p {
    margin-bottom: 20px;
    font-size: 2rem;
  }

  .oils .section--02 .contents_text span {
    margin-bottom: 16px;
    font-size: 1.6rem;
  }
}

@media(max-width:768px) {
  .oils .section--02 .contents-box {
    flex-direction: column;
    align-items: start;
    margin-bottom: 30px;
  }

  .oils .section--02 .thumbnail {
    max-width: 100%;
    width: 100%;
    padding-top: calc(450 / 768*100%);
    margin-bottom: 20px;
  }

  .oils .section--02 .contents-wrap {
    max-width: 100%;
    width: 100%;
    padding: 0;
  }

  .oils .section--02 .contents-wrap-even {
    order: 1;
  }

  .oils .section--02 .contents_title {
    margin: 0 0 10px;
    font-size: 2.6rem;
  }

  .oils .section--02 .contents_text p {
    margin-bottom: 15px;
    font-size: 1.8rem;
  }

  .oils .section--02 .contents_text span {
    margin-bottom: 16px;
    font-size: 1.5rem;
  }
}

@media(max-width: 500px) {
  .oils .section--02 .contents-box {
    margin-bottom: 25px;
  }

  .oils .section--02 .thumbnail {
    margin-bottom: 15px;
  }

  .oils .section--02 .contents_title {
    margin-bottom: 7px;
    font-size: 2.2rem;
  }

  .oils .section--02 .contents_text p {
    margin-bottom: 10px;
    font-size: 1.6rem;
  }

  .oils .section--02 .contents_text span {
    margin-bottom: 12px;
    font-size: 1.4rem;
  }
}

/* Extracts */
/* Vanilla */
.vanilla .section--02 .map {
  position: relative;
  width: 100%;
  padding-top: calc(900 / 1920*100%);
  background: url('/child/img/sub/extracts/vanilla/section02_map-img.png') no-repeat center;
  background-size: cover;
  margin-bottom: 100px;
}

.vanilla .section--02 .point-label {
  position: absolute;
  width: 22px;
  height: 32px;
  background: url('/child/img/sub/extracts/map-pin-icon.png') no-repeat center;
  background-size: cover;
  transform: translateX(-50%);
  cursor: pointer;
  font-size: 0;
}

.vanilla .section--02 .point {
  display: block;
  position: absolute;
  width: 240px;
  padding: 20px;
  background-color: #f2a036;
  color: #fff;
  font-family: 'Lexend';
  text-align: center;
  transform: translateX(-50%);
  z-index: 2;
  opacity: 0;
  visibility: hidden;
  transition: all .3s ease-out;
}

.vanilla .section--02 .point.on {
  visibility: visible;
  opacity: 1;
}

.vanilla .section--02 .point p {
  width: 100%;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #fff;
  font-size: 1.6rem;
  line-height: 1;
}

.vanilla .section--02 .point span {
  display: block;
  margin-bottom: 3px;
  font-size: 1.6rem;
  line-height: 1;
}

.vanilla .section--02 .point span:last-of-type {
  margin-bottom: 0;
}

.vanilla .section--02 .point-label--01 {
  top: 49.5%;
  left: 27.291%;
}
.vanilla .section--02 .point--01 {
  top: 54%;
  left: 27.291%;
}

.vanilla .section--02 .point-label--02 {
  top: 58.444%;
  left: 54.270%;
}
.vanilla .section--02 .point--02 {
  top: 63%;
  left: 54.270%;
}

.vanilla .section--02 .point-label--03 {
  bottom: 26.777%;
  left: 57.031%;
}
.vanilla .section--02 .point--03 {
  top: 74%;
  left: 57.031%;
}

.vanilla .section--02 .point-label--04 {
  top: 49%;
  left: 63.593%;
}
.vanilla .section--02 .point--04 {
  top: 53.5%;
  left: 63.593%;
}

.vanilla .section--02 .point-label--05 {
  bottom: 36.222%;
  left: 70.416%;
}
.vanilla .section--02 .point--05 {
  top: 65%;
  left: 70.416%;
}

.vanilla .section--02 .point-label--06 {
  bottom: 33.333%;
  left: 76.875%;
}
.vanilla .section--02 .point--06 {
  top: 68%;
  left: 76.875%;
}

.vanilla .section--02 .point-label--07 {
  bottom: 25.333%;
  left: 86.458%;
}
.vanilla .section--02 .point--07 {
  top: 76%;
  left: 86.458%;
}

.vanilla .section--02 .point-label--08 {
  top: 60%;
  left: 31.8%;
}
.vanilla .section--02 .point--08 {
  top: 65%;
  left: 31.8%;
}

.vanilla .section--02 .point-label--09 {
  top: 55.5%;
  left: 64%;
}
.vanilla .section--02 .point--09 {
  top: 60%;
  left: 64%;
}

.vanilla .section--02 .point-label--10 {
  top: 59%;
  left: 68%;
}
.vanilla .section--02 .point--10 {
  top: 64%;
  left: 68%;
}

.vanilla .section--02 .point-label--11 {
  top: 63.5%;
  left: 73%;
}
.vanilla .section--02 .point--11 {
  top: 68%;
  left: 73%;
}

.vanilla .section--02 .point-label--12 {
  top: 70%;
  left: 81%;
}
.vanilla .section--02 .point--12 {
  top: 75%;
  left: 81%;
}

.vanilla .section--02 .point-label--13 {
  top: 69%;
  left: 83%;
}
.vanilla .section--02 .point--13 {
  top: 74%;
  left: 83%;
}

.vanilla .section--02 .point-label--14 {
  top: 49%;
  left: 95.5%;
}
.vanilla .section--02 .point--14 {
  top: 54%;
  left: 93.6%;
}

.vanilla .section--02 .extract-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 2%;
}

.vanilla .section--02 .list-item {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 448px;
  width: 32%;
  height: 70px;
  border: 1px solid #b5b5b5;
  font-size: 2rem;
}

.vanilla .section--02 .map-contents {
  display: none;
  flex-wrap: wrap;
  align-items: start;
  gap: 35px 4%;
}

.vanilla .section--02 .contents-item {
  width: 48%;
}

.vanilla .section--02 .contents-item p {
  display: block;
  width: 100%;
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px solid #b5b5b5;
  font-size: 1.6rem;
  font-weight: 600;
  color: #f2a036;
}

.vanilla .section--02 .contents-item p .number {
  display: none;
}

.vanilla .section--02 .contents-item .text {
  display: flex;
  flex-wrap: wrap;
  align-items: start;
  gap: 10px 2%;
}

.vanilla .section--02 .contents-item span {
  display: block;
  width: 49%;
  font-size: 1.6rem;
}


@media(min-width:1201px) {
  .vanilla .section--02 .list-item:hover {
    border-color: #00539e;
    color: #00539e;
  }
}

@media(max-width:1200px) {
  .vanilla .section--02 .map {
    margin-bottom: 40px;
  }

  .vanilla .section--02 .point {
    display: none;
  }

  .vanilla .section--02 .point-label {
    width: 17px;
    height: 25px;
  }


  .vanilla .section--02 .point span {
    display: none;
  }


  .vanilla .section--02 .map-contents {
    display: flex;
    margin-bottom: 85px;
  }

  .vanilla .section--02 .extract-list {
    gap: 15px 2%;
  }
  
  .vanilla .section--02 .list-item {
    font-size: 1.8rem;
    text-align: center;
  }
}

@media(max-width:1024px) {
  .vanilla .section--02 .point-label{
    background-image: none;
  }

  .vanilla .section--02 .point-label span {
    display: block;
    position: relative;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #f2a036;
  }

  .vanilla .section--02 .point-label span::after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #fff;
  }

  .vanilla .section--02 .point p {
    font-size: 1.4rem;
  }

  .vanilla .section--02 .map {
    margin-bottom: 35px;
  }

  .vanilla .section--02 .map-contents {
    margin-bottom: 70px;
    gap: 30px 4%;
  }

  .vanilla .section--02 .contents-item p {
    padding-bottom: 12px;
    margin-bottom: 12px;
    font-size: 1.5rem;
  }
  
  .vanilla .section--02 .contents-item .text {
    gap: 8px 2%;
  }
  
  .vanilla .section--02 .contents-item span {
    font-size: 1.5rem;
  }

  .vanilla .section--02 .extract-list {
    gap: 12px 2%;
  }
  
  .vanilla .section--02 .list-item {
    font-size: 1.6rem;
  }

}

@media(max-width:  768px) {
  .vanilla .section--02 .map {
    margin-bottom: 30px;
    background-size: 140%;
  }

  .vanilla .section--02 .point-label span {
    width: 6px;
    height: 6px;
  }

  .vanilla .section--02 .point-label span::after {
    width: 2px;
    height: 2px;
  }
  
  .vanilla .section--02 .point-label--01 {
    top: 52.5%;
    left: 18%;
  }

  .vanilla .section--02 .point-label--02 {
    top: 67%;
    left: 56%;
  }

  .vanilla .section--02 .point-label--03 {
    top: 80%;
    left: 59.7%;
  }

  .vanilla .section--02 .point-label--04 {
    top: 53.4%;
    left: 69%;
  }

  .vanilla .section--02 .point-label--05 {
    top: 67.5%;
    left: 78.5%;
  }

  .vanilla .section--02 .point-label--06 {
    top: 71.2%;
    left: 87.5%;
  }
  
  .vanilla .section--02 .point-label--07 {
    top: 83%;
    left: 99%;
  }

  .vanilla .section--02 .point-label--08 {
    top: 67%;
    left: 25%;
  }

  .vanilla .section--02 .point-label--09 {
    top: 60.5%;
    left: 70%;
  }

  .vanilla .section--02 .point-label--10 {
    top: 66%;
    left: 76%;
  }

  .vanilla .section--02 .point-label--11 {
    top: 70%;
    left: 81%;
  }

  
  .vanilla .section--02 .point-label--12 {
    top: 82%;
    left: 93%;
  }

  .vanilla .section--02 .point-label--13 {
    top: 81.5%;
    left: 94.5%;
  }

  .vanilla .section--02 .point-label--14 {
    top: 31%;
    left: 90%;
  }

  .vanilla .section--02 .map-contents {
    margin-bottom: 55px;
    gap: 25px 0;
  }

  .vanilla .section--02 .contents-item  {
    width: 100%;
  }

  .vanilla .section--02 .contents-item p {
    padding-bottom: 10px;
    margin-bottom: 10px;
    font-size: 1.4rem;
  }
  
  .vanilla .section--02 .contents-item .text {
    gap: 6px 2%;
  }
  
  .vanilla .section--02 .contents-item span {
    font-size: 1.4rem;
  }

  .vanilla .section--02 .extract-list {
    gap: 10px 2%;
  }
  
  .vanilla .section--02 .list-item {
    width: 49%;
    height: 60px;
    font-size: 1.5rem;
  }

}

@media(max-width: 500px) {
  .vanilla .section--02 .map {
    margin-bottom: 25px;
  }
 
  .vanilla .section--02 .point-label {
    width: fit-content;
    display: flex;
    align-items: center;
    font-size: 1.2rem;
    color: #f2a036;
  }

  .vanilla .section--02 .point-label span {
    width: 4px;
    height: 4px;
  }

  .vanilla .section--02 .point-label span::after {
    width: 2px;
    height: 2px;
  }


  .vanilla .section--02 .point {
    display: none;
  }

  .vanilla .section--02 .point-label--01 {
    top: 47.5%;
    left: 19%;
  }

  .vanilla .section--02 .point-label--02 {
    top: 60%;
  }

  .vanilla .section--02 .point-label--03 {
    top: 75%;
  }

  .vanilla .section--02 .point-label--04 {
    top: 46%;
  }

  .vanilla .section--02 .point-label--05 {
    top: 64.5%;
    left: 75.5%;
  }

  .vanilla .section--02 .point-label--06 {
    top: 65.5%;
    left: 87.5%;
  }

  .vanilla .section--02 .point-label--07 {
    top: 76%;
    left: 98%;
  }

  .vanilla .section--02 .map-contents {
    margin-bottom: 40px;
    gap: 20px 0;
  }

  .vanilla .section--02 .contents-item p {
    display: flex;
    align-items: center;
    justify-content: start;
    padding-bottom: 8px;
    margin-bottom: 8px;
    font-size: 1.3rem;
  }

  .vanilla .section--02 .contents-item .text {
    gap: 6px 2%;
  }
  
  .vanilla .section--02 .contents-item span {
    font-size: 1.3rem;
  }

  .vanilla .section--02 .extract-list {
    gap: 10px 0;
  }
  
  .vanilla .section--02 .list-item {
    width: 100%;
    height: 55px;
    font-size: 1.4rem;
  }
}


/* Coffee */
.coffee .section--02 .map {
  position: relative;
  width: 100%;
  padding-top: calc(900 / 1920*100%);
  background: url('/child/img/sub/extracts/vanilla/section02_map-img.png') no-repeat center;
  background-size: cover;
  margin-bottom: 100px;
}

.coffee .section--02 .point-label {
  position: absolute;
  width: 22px;
  height: 32px;
  background: url('/child/img/sub/extracts/map-pin-icon.png') no-repeat center;
  background-size: cover;
  transform: translateX(-50%);
  cursor: pointer;
  font-size: 0;
}

.coffee .section--02 .point {
  display: block;
  position: absolute;
  width: 240px;
  padding: 20px;
  background-color: #f2a036;
  color: #fff;
  font-family: 'Lexend';
  text-align: center;
  transform: translateX(-50%);
  z-index: 2;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  transition: all .3s ease-out;
}

.coffee .section--02 .point.on {
  visibility: visible;
  opacity: 1;
}

.coffee .section--02 .point p {
  width: 100%;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid #fff;
  font-size: 1.6rem;
  line-height: 1;
}

.coffee .section--02 .point span {
  display: block;
  margin-bottom: 3px;
  font-size: 1.6rem;
  line-height: 1;
}

.coffee .section--02 .point span:last-of-type {
  margin-bottom: 0;
}

.coffee .section--02 .point-label--01 {
  bottom: 44.666%;
  left: 29.166%;
}
.coffee .section--02 .point--01 {
  top: 56.5%;
  left: 29.166%;
}

.coffee .section--02 .point-label--02 {
  bottom: 44.777%;
  left: 30.677%;
}
.coffee .section--02 .point--02 {
  top: 56.5%;
  left: 30.677%;
}

.coffee .section--02 .point-label--03 {
  bottom: 38.888%;
  left: 32.968%;
}
.coffee .section--02 .point--03 {
  top: 62%;
  left:  32.968%;
}

.coffee .section--02 .point-label--04 {
  bottom: 31.555%;
  left: 32.5%;
}
.coffee .section--02 .point--04 {
  top: 69.5%;
  left: 32.5%;
}

.coffee .section--02 .point-label--05 {
  bottom: 31.111%;
  left: 37.447%;
}
.coffee .section--02 .point--05 {
  top: 70%;
  left: 37.447%;
}

.coffee .section--02 .point-label--06 {
  bottom: 40.555%;
  left: 55.572%;
}
.coffee .section--02 .point--06 {
  top: 60.5%;
  left: 55.572%;
}

.coffee .section--02 .point-label--07 {
  bottom: 36.222%;
  left: 68.281%;
}
.coffee .section--02 .point--07 {
  top: 65%;
  left: 68.281%;
}

.coffee .section--02 .point-label--08 {
  bottom: 33.444%;
  left: 76.822%;
}
.coffee .section--02 .point--08 {
  top: 67.5%;
  left: 76.822%;
}

.coffee .section--02 .point-label--09 {
  top: 53%;
  left: 30%;
}
.coffee .section--02 .point--09 {
  top: 58%;
  left: 30%;
}

.coffee .section--02 .point-label--10 {
  top: 54.5%;
  left: 30.5%;
}
.coffee .section--02 .point--10 {
  top: 59%;
  left: 30.5%;
}

.coffee .section--02 .point-label--11 {
  top: 55%;
  left: 31.8%;
}
.coffee .section--02 .point--11 {
  top: 60%;
  left: 31.8%;
}

.coffee .section--02 .point-label--12 {
  top: 60%;
  left: 53.7%;
}
.coffee .section--02 .point--12 {
  top: 65%;
  left: 53.7%;
}

.coffee .section--02 .point-label--13 {
  top: 58%;
  left: 54.3%;
}
.coffee .section--02 .point--13 {
  top: 64%;
  left: 54.3%;
}

.coffee .section--02 .point-label--14 {
  top: 60%;
  left: 55.5%;
}
.coffee .section--02 .point--14 {
  top: 65%;
  left: 55.5%;
}

.coffee .section--02 .point-label--15 {
  top: 50.5%;
  left: 63.2%;
}
.coffee .section--02 .point--15 {
  top: 55%;
  left: 63.2%;
}

.coffee .section--02 .point-label--16 {
  top: 42%;
  left: 68.5%;
}
.coffee .section--02 .point--16 {
  top: 48%;
  left: 68.5%;
}

.coffee .section--02 .point-label--17 {
  top: 62.5%;
  left: 69.5%;
}
.coffee .section--02 .point--17 {
  top: 65%;
  left: 69.5%;
}

.coffee .section--02 .point-label--18 {
  top: 72.5%;
  left: 74.5%;
}
.coffee .section--02 .point--18 {
  top: 76%;
  left: 74.5%;
}

.coffee .section--02 .point-label--19 {
  top: 49%;
  left: 95.5%;
}
.coffee .section--02 .point--19 {
  top: 54%;
  left: 93.6%;
}

.coffee .section--02 .extract-list {
  display: flex;
  flex-wrap: wrap;
  gap: 20px 2%;
}

.coffee .section--02 .list-item {
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 448px;
  width: 32%;
  height: 70px;
  border: 1px solid #b5b5b5;
  font-size: 2rem;
  transition: all .3s ease-out;
}

.coffee .section--02 .map-contents {
  display: none;
  flex-wrap: wrap;
  align-items: start;
  gap: 35px 4%;
}

.coffee .section--02 .contents-item {
  width: 48%;
}

.coffee .section--02 .contents-item p {
  display: block;
  width: 100%;
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px solid #b5b5b5;
  font-size: 1.6rem;
  font-weight: 600;
  color: #f2a036;
}

.coffee .section--02 .contents-item .text {
  display: flex;
  flex-wrap: wrap;
  align-items: start;
  gap: 10px 2%;
}

.coffee .section--02 .contents-item span {
  display: block;
  width: 49%;
  font-size: 1.6rem;
}

@media(min-width:1201px) {
  .coffee .section--02 .list-item:hover {
    border-color: #00539e;
    color: #00539e;
  }
}

@media(max-width:1200px) {
  .coffee .section--02 .map {
    margin-bottom: 40px;
  }

  .coffee .section--02 .point {
    display: none;
  }

  .coffee .section--02 .point.on {
    padding: 0;
  }

  .coffee .section--02 .point-label {
    width: 17px;
    height: 25px;
  }
  
  .coffee .section--02 .point span {
    display: none;
  }

  .coffee .section--02 .map-contents {
    display: flex;
    margin-bottom: 85px;
  }

  .coffee .section--02 .extract-list {
    gap: 15px 2%;
  }
  
  .coffee .section--02 .list-item {
    font-size: 1.8rem;
    text-align: center;
  }
}

@media(max-width:1024px) {
  .coffee .section--02 .point-label {
    width: fit-content;
    height: fit-content;
    background-image: none;
  }

  .coffee .section--02 .point-label span {
    display: block;
    position: relative;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background-color: #f2a036;
  }

  .coffee .section--02 .point-label span::after {
    content: ""; 
    display: block;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50% , -50%);
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background-color: #fff;
  }

  .coffee .section--02 .map-contents {
    margin-bottom: 70px;
    gap: 30px 4%;
  }

  .coffee .section--02 .contents-item p {
    padding-bottom: 12px;
    margin-bottom: 12px;
    font-size: 1.5rem;
  }
  
  .coffee .section--02 .contents-item .text {
    gap: 8px 2%;
  }
  
  .coffee .section--02 .contents-item span {
    font-size: 1.5rem;
  }

  .coffee .section--02 .extract-list {
    gap: 12px 2%;
  }
  
  .coffee .section--02 .list-item {
    font-size: 1.6rem;
  }

}

@media(max-width:  768px) {
  .coffee .section--02 .map {
    margin-bottom: 30px;
    background-size: 140%;
  }

  
  .coffee .section--02 .point p {
    font-size: 1.3rem
  }

  .coffee .section--02 .point-label--01 {
    top: 55%;
    left: 19.5%;
  }
  .coffee .section--02 .point--01 {
    left: 11.5%;
  }

  
  .coffee .section--02 .point-label--02 {
    top: 55%;
    left: 23.5%;
  }


  .coffee .section--02 .point-label--03 {
    top: 63.5%;
    left: 26%;
  }

  .coffee .section--02 .point-label--04 {
    top: 74%;
    left: 25%;
  }

  
  .coffee .section--02 .point-label--05 {
    top: 75%;
    left: 33%;
  }


  .coffee .section--02 .point-label--06 {
    top: 60%;
    left: 58%;
  }
 

  .coffee .section--02 .point-label--07 {
    top: 68%;
    left: 75%;
  }

  .coffee .section--02 .point-label--08 {
    top: 71%;
    left: 87.5%;
  }

  .coffee .section--02 .point-label--09 {
    top: 56%;
    left: 21%;
  }

  .coffee .section--02 .point-label--10 {
    top: 56.5%;
    left: 22.5%;
  }

  .coffee .section--02 .point-label--11 {
    top: 59%;
    left: 22%;
  }

  .coffee .section--02 .point-label--12 {
    top: 67%;
    left: 55%;
  }

  .coffee .section--02 .point-label--13 {
    top: 65%;
    left: 56%;
  }

  .coffee .section--02 .point-label--14 {
    top: 67%;
    left: 57%;
  }

  .coffee .section--02 .point-label--15 {
    top: 52%;
    left: 69%;
  }

  .coffee .section--02 .point-label--16 {
    top: 42%;
    left: 76%;
  }
  
  .coffee .section--02 .point-label--17 {
    top: 71%;
    left: 77.5%;
  }

  .coffee .section--02 .point-label--18 {
    top: 83%;
    left: 84%;
  }

  .coffee .section--02 .point-label--19 {
    top: 31%;
    left: 90%;
  }

  .coffee .section--02 .map-contents {
    margin-bottom: 55px;
    gap: 25px 0;
  }

  .coffee .section--02 .contents-item  {
    width: 100%;
  }

  .coffee .section--02 .contents-item p {
    padding-bottom: 10px;
    margin-bottom: 10px;
    font-size: 1.4rem;
  }
  
  .coffee .section--02 .contents-item .text {
    gap: 6px 2%;
  }
  
  .coffee .section--02 .contents-item span {
    font-size: 1.4rem;
  }

  .coffee .section--02 .extract-list {
    gap: 10px 2%;
  }
  
  .coffee .section--02 .list-item {
    width: 49%;
    height: 60px;
    font-size: 1.5rem;
  }

}

@media(max-width: 500px) {
  .coffee .section--02 .map {
    margin-bottom: 25px;
  }

  .coffee .section--02 .point-label {
    display: flex;
    align-items: center;
    font-size: 1.2rem;
    color: #f2a036;
  }

  .coffee .section--02 .point-label--01 {
    top: 53%;
    left: 20.5%;
  }

  .coffee .section--02 .point-label--02 {
    top: 53%;
    left: 24%;
  }

  .coffee .section--02 .point-label--03 {
    top: 61%;
    left: 26.5%;
  }

  .coffee .section--02 .point-label--04 {
    top: 70%;
    left: 26%;
  }

  .coffee .section--02 .point-label--05 {
    top: 71%;
    left: 32.5%;
  }

  .coffee .section--02 .point-label--06 {
    top: 57.5%;
  }

  .coffee .section--02 .point-label--07 {
    top: 66%;
    left: 76%;
  }

  .coffee .section--02 .point-label--08 {
    top: 67.5%;
  }

  .coffee .section--02 .point {
    display: none;
  }
  
  .coffee .section--02 .map-contents {
    margin-bottom: 40px;
    gap: 20px 0;
  }

  .coffee .section--02 .contents-item p {
    display: flex;
    align-items: center;
    padding-bottom: 8px;
    margin-bottom: 8px;
    font-size: 1.3rem;
  }

  .coffee .section--02 .contents-item .text {
    gap: 6px 2%;
  }
  
  .coffee .section--02 .contents-item span {
    font-size: 1.3rem;
  }

  .coffee .section--02 .extract-list {
    gap: 10px 0;
  }
  
  .coffee .section--02 .list-item {
    width: 100%;
    height: 55px;
    font-size: 1.4rem;
  }
}

/* Juices */
.juice .section--02 .contents-box {
  display: flex;
  align-items: center;
  position: relative;
}

.juice .section--02 .thumbnail {
  position: relative;
  max-width: 700px;
  width: 50%;
  padding-top: calc(450 / 1400*100%);
  overflow: hidden;
}

.juice .section--02 .thumbnail img {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
}

.juice .section--02 .contents_item {
  display: flex;
  flex-direction: column;
  justify-content: center;
  max-width: 700px;
  width: 50%;
  padding: 70px 105px;
}

.juice .section--02 .contents_item-even {
  padding: 70px 0;
  padding-left: 425px;
  /* text-align: right; */
}

.juice .section--02 .contents_item p {
  margin-bottom: 25px;
  font-size: 4.2rem;
  font-family: 'Lexend';
}

.juice .section--02 .contents_item p span {
  display: block;
}

.juice .section--02 .contents_item > span {
  position: relative;
  padding-left: 10px;
  display: block;
  margin-bottom: 15px;
  font-size: 2rem;
  line-height: 1;
}

.juice .section--02 .contents_item > span i {
  position: absolute;
  display: block;
  top: 0;
  left: 0;
}

.juice .section--02 .contents_item-even p span {
  transform: translateX(100%);
  transition: all .8s ease;
}

.juice .section--02 .contents_item-even p span.aos-animate {
  transform: translateX(0%);
}

@media(max-width:1200px){
  .juice .section--02 .contents_item {
    padding: 0;
  }

  .juice .section--02 .contents_item-odd {
    padding-left: 90px;
  }

  .juice .section--02 .contents_item-even {
    padding-right: 90px;
  }

  .juice .section--02 .contents_item p {
    margin-bottom: 20px;
    font-size: 3.6rem;
  }

  .juice .section--02 .contents_item > span {
    /* margin-bottom: 15px; */
    font-size: 1.8rem;
  }
}

@media(max-width:1024px){
  .juice .section--02 .contents_item-odd {
    padding-left: 75px;
  }

  .juice .section--02 .contents_item-even {
    padding-right: 75px;
  }

  .juice .section--02 .contents_item p {
    margin-bottom: 15px;
    font-size: 3rem;
  }

  .juice .section--02 .contents_item > span {
    margin-bottom: 12px;
    font-size: 1.6rem;
  }
}

@media(max-width:768px){
  .juice .section--02 .contents-box {
    flex-direction: column;
    align-items: start;
    margin-bottom: 20px;
  }

  .juice .section--02 .contents-box:last-of-type {
    margin-bottom: -15px;
  }

  .juice .section--02 .thumbnail {
    max-width: 100%;
    width: 100%;
    padding-top: calc(450 / 768*100%);
    margin-bottom: 15px;
  }

  .juice .section--02 .contents_item {
    flex-wrap: wrap;
    flex-direction: row;
    justify-content: start;
    width: 100%;
  }

  .juice .section--02 .contents_item-odd {
    padding-left: 0;
  }
  
  .juice .section--02 .contents_item-even {
    order: 1;
    padding-right: 0;
    text-align: left;
  }
  
  .juice .section--02 .contents_item p {
    width: 100%;
    margin-bottom: 15px;
    font-size: 3rem;
  }

  .juice .section--02 .contents_item > span {
    width: 30%;
    margin: 0 5px 12px 0;
    font-size: 1.6rem;
  }

  .juice .section--02 .contents_item-even p span {
    transform: translateX(-100%);
  }
  
  .juice .section--02 .contents_item-even p span.aos-animate {
    transform: translateX(0%);
  }
}

@media(max-width:500px) {
  .juice .section--02 .contents-box {
    margin-bottom: 15px;
  }

  .juice .section--02 .contents-box:last-of-type {
    margin-bottom: -10px;
  }

  .juice .section--02 .thumbnail {
    margin-bottom: 10px;
  }

  .juice .section--02 .contents_item p {
    margin-bottom: 10px;
    font-size: 2.6rem;
  }

  .juice .section--02 .contents_item > span {
    width: 48%;
    margin: 0 5px 10px 0;
    font-size: 1.5rem;
  }
}


/* Contact */
/* Get in Touch */
.touch .section--02 .contact-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 110px 15px;
  background: url('/child/img/sub/contact/touch/section02_background.png') no-repeat center;
  background-size: cover;
  margin-bottom: 85px;
}

.touch .section--02 .contact_item {
  display: flex;
  align-items: center;
  max-width: 463px;
  width: 33.071%;
  padding: 0 50px;
}

.touch .section--02 .contact_item:first-of-type {
  padding: 0;
}

.touch .section--02 .contact_item:nth-of-type(2) {
  max-width: 477px;
  width: 34.071%;
  border-left: 1px solid #b5b5b5;
  border-right: 1px solid #b5b5b5;
}

.touch .section--02 .contact__icon {
  width: 80px;
  height: 80px;
  margin-right: 20px;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}

.touch .section--02 .contact__icon--01 {
  background-image: url('/child/img/sub/contact/touch/section02_icon01.png');
}

.touch .section--02 .contact__icon--02 {
  background-image: url('/child/img/sub/contact/touch/section02_icon02.png');
}

.touch .section--02 .contact__icon--03 {
  background-image: url('/child/img/sub/contact/touch/section02_icon03.png');
}

.touch .section--02 .contact__text {
  width: calc(100% - 100px);
  font-size: 2.4rem;
  line-height: 1.5;
  color: #fff;
}

.touch .section--02 .contact__text span {
  font-weight: 700;
}

.touch .section--02 .form-area{
  padding: 60px;
  background-color: #fff;
}


@media(max-width:1200px) {
  .touch .section--02 .contact-banner {
    padding: 95px 15px;
    margin-bottom: 75px;
  }

  .touch .section--02 .contact_item {
    width: 33%;
    padding: 0 30px;
  }
  
  .touch .section--02 .contact_item:nth-of-type(2) {
    width: 33%;
  }
  
  .touch .section--02 .contact_item:last-of-type {
    padding-right: 0;
  }

  .touch .section--02 .contact__icon {
    width: 70px;
    height: 70px;
  }
  
  .touch .section--02 .contact__text {
    width: calc(100% - 90px);
    font-size: 2.2rem;
  }

}

@media(max-width:1024px) {
  .touch .section--02 .contact-banner {
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 80px 15px;
    margin-bottom: 65px;
  }
  
  .touch .section--02 .contact_item {
    max-width: 465px;
    width: 100%;
    padding: 0;
  }

  .touch .section--02 .contact_item:nth-of-type(2) {
    max-width: 465px;
    width: 100%;
    margin: 10px 0;
    border: none;
  }
  
  .touch .section--02 .contact__icon {
    width: 60px;
    height: 60px;
    margin-right: 15px;
  }
  
  .touch .section--02 .contact__text {
    display: flex;
    align-items: center;
    width: calc(100% - 75px);
    font-size: 2rem;
  }

  .touch .section--02 .contact__text p span {
    display: flex;
    align-items: center;
    margin-right: 10px;
  }

  .touch .section--02 .contact__text p span::after {
    content: ":";
    display: block;
    margin-left: 5px;
    font-weight: 500;
  }

}

@media(max-width: 768px) {
  .touch .section--02 .contact-banner {
    padding: 65px 15px;
    margin-bottom: 55px;
  }
  
  .touch .section--02 .contact_item,
  .touch .section--02 .contact_item:nth-of-type(2) {
    max-width: 415px;
  }

  .touch .section--02 .contact__icon {
    width: 50px;
    height: 50px;
  }
  
  .touch .section--02 .contact__text {
    width: calc(100% - 65px);
    font-size: 1.8rem;
  }

  .touch .section--02 .contact__text p span {
    margin-right: 7px;
  }

}

@media(max-width: 500px) {
  .touch .section--02 .contact-banner {
    padding: 50px 15px;
    margin-bottom: 45px;
  }

  .touch .section--02 .contact_item,
  .touch .section--02 .contact_item:nth-of-type(2) {
    max-width: 357px;
  }

  .touch .section--02 .contact__icon {
    width: 40px;
    height: 40px;
    margin-right: 10px;
  }
  
  .touch .section--02 .contact__text {
    width: calc(100% - 50px);
    font-size: 1.6rem;
  }

  .touch .section--02 .contact__text p span {
    margin-right: 5px;
  }

  .touch .section--02 .contact__text p span::after {
    margin-left: 3px;
  }

}

/* Join Team */
