/* Header */
#main .p-series-menu-upper {
  height: auto;
}

/* Text */
#main .c-text + .c-text,
#main .c-note  {
  margin-top: 16px;
}

#main .c-note {
  font-size: 14px;
  line-height: 32px;
  font-family: '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック体', YuGothic, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', 'Meiryo', sans-serif;
}

#main .u-font--blue {
  color: #1c6aa2;
}

#main .c-headline--md {
  font-size: 20px;
  line-height: 40px;
}

#main .c-headline--sm {
  font-size: 18px;
  line-height: 38px;
}

/* Button */
#main .c-button {
  padding: 2px 70px 2px 17px;
  background-color: #1c6aa2;
}

#main .c-button:hover {
  background-color: #02a0e9;
}

/* Section */
#main .c-section--lead {
  margin-top: 40px;
}

/* Mainvisual */
#main .p-main-visual__header {
  width: calc(100% - 16px);
}

@media screen and (max-width: 1119px) and (min-width: 768px) {
  #main .p-main-visual__header .p-main-visual__title {
    font-size: 28px;
    line-height: 46px;
  }
}

@media screen and (min-width: 768px) {
  #main .p-main-visual__image {
    padding-right: 0;
  }

  #main .p-main-visual__textblock {
    padding-left: 0;
  }

  #main .p-main-visual__body {
    padding-right: 16px;
  }

  #main .c-section--thick--bg {
    margin-top: 80px;
  }
}

/* Introduce Area */
#main .p-introduce .p-introduce-person--group .p-introduce-person::after {
  right: 32px;
}

#main .p-introduce .p-introduce-person__img-1::after {
  background: url(/areahighlights/hokuriku/happy/img/bg_introduce_1.png) no-repeat;
}

#main .p-introduce .p-introduce-person__img-2::after {
  background: url(/areahighlights/hokuriku/happy/img/bg_introduce_2.png) no-repeat;
}

#main .p-introduce .p-introduce-area::after {
  background: url(/areahighlights/hokuriku/happy/img/bg_map.png) no-repeat;
}

#main .p-introduce .p-introduce-person__img-1::after,
#main .p-introduce .p-introduce-person__img-2::after,
#main .p-introduce .p-introduce-area::after {
  content: '';
  position: absolute;
  background-position: right bottom;
}

#main .p-introduce .p-introduce-person__img-1::after,
#main .p-introduce .p-introduce-person__img-2::after {
  bottom: -18px;
  height: 232px;
  width: 148px;
}

#main .p-introduce .p-introduce-area::after {
  bottom: -6px;
  height: 220px;
  right: 96px;
  width: 168px;
}

@media screen and (min-width: 1120px) {
  #main .p-introduce__name {
    margin-top: 0;
  }

  #main .p-introduce-person--group .p-introduce__text {
    width: calc(100% - 184px)
  }
}

@media screen and (max-width: 1119px) {
  #main .p-introduce .p-introduce-person__img-1::after,
  #main .p-introduce .p-introduce-person__img-2::after,
  #main .p-introduce .p-introduce-area::after {
    background-size: contain;
  }

  #main .p-introduce-person--group .p-introduce__titleblock {
    width: calc(100% - 128px);
  }
}

@media screen and (min-width: 768px) and (max-width: 1119px) {
  #main .p-introduce-person--group {
    width: calc(100% - 100px);
  }

  #main .p-introduce .p-introduce-person__img-1::after,
  #main .p-introduce .p-introduce-person__img-2::after {
    height: 144px;
    top: 0;
  }

  #main .p-introduce .p-introduce-area::after  {
    right: 24px;
  }
}

@media screen and (max-width: 767px) {
  #main .p-introduce .p-introduce-person__img-1::after,
  #main .p-introduce .p-introduce-person__img-2::after {
    height: 104px;
    right: 16px;
    top: 8px;
  }

  #main .p-introduce .p-introduce-area::after {
    right: 4px;
    top: 0;
    height: 110px;
  }
}

@media screen and (min-width: 768px) {
  #main .p-introduce-row .p-introduce-person + .p-introduce-person{
    border-left: 2px solid #f0f0f0;
  }
}

/* Full Image Background */
#main .p-media--staticheigh .p-media__image-1 {
  background: url('/areahighlights/hokuriku/happy/img/bg_full_1.png') right/ cover no-repeat;
  position: relative
}

#main .p-media--staticheigh .p-media__image-1 .img_description {
  position: absolute;
  left: 8%;
  top: 40px;
}

#main .p-media--staticheigh .p-media__image-2 {
  background: url('/areahighlights/hokuriku/happy/img/bg_full_2.png') center / cover no-repeat;
}

#main .p-media--staticheigh .p-media__image-3 {
  background-image: url('/areahighlights/hokuriku/happy/img/bg_full_3.png');
}

@media screen and (max-width: 767px) {
  #main .p-media--staticheigh .p-media__image-1 .img_description {
    top: 24px;
    left: 4%;
    height: 24px;
  }
}

/* color */
#main .js-carousel--single .slick-dots li.slick-active button::before {
  background-color: #1c6aa2;
}

#main .c-section--bg {
  background-color: #f4fbff;
}

#main .p-box-border {
  border-color: #1c6aa2;
}

/* link seperate between sectioon */
#main .seperator {
  height: 4px;
  background: url(/areahighlights/hokuriku/happy/img/bg_seperator.png) center no-repeat;
}

/* col-reverse */
@media screen and (max-width: 1119px) {
  #main .c-row-reverse {
    -webkit-flex-direction: row-reverse;
    -moz-flex-direction: row-reverse;
    flex-direction: column-reverse;
  }

  #main .c-row-reverse .c-col-sm--12 + .c-col-sm--12 {
    margin-top: 0;
  }

  #main .c-row-reverse .p-media__imageblock {
    margin-top: 48px;
  }
}

/* Media */
#main .p-media-caption {
  margin-top: 32px;
}

/* backround decorate */
@media screen and (max-width: 767px) {
  #main .c-section--bg {
    padding: 48px 0;
  }
}

#main .bubble-area,
#main .c-section--bg.bg-stripes {
  z-index: 1;
  position: relative;
}

#main .c-section--bg.bg-stripes {
  background: url('/areahighlights/hokuriku/happy/img/bg_blue-stripes.png') center / cover no-repeat;
}

#main .bg-stripes .bg-stripes__map,
#main .bg-stripes .bg-stripes__female,
#main .bg-stripes .bg-stripes__male,
#main .bubble-right,
#main .bubble-left--sup,
#main .bubble-left--sub {
  position: absolute;
  z-index: -1;
}

#main .bg-stripes .bg-stripes__female,
#main .bg-stripes .bg-stripes__male {
  bottom: 0;
}

#main .bg-stripes .bg-stripes__female {
  left: 40px;
}

#main .bg-stripes .bg-stripes__male {
  right: 80px;
}

#main .bg-stripes .bg-stripes__map {
  top: 40px;
  left: 50%;
  transform: translateX(-50%);
}

#main .bubble-right {
  left: 352px;
  top: 24px;
}

#main .bubble-left--sup {
  top: -24px;
  left: -24px;
}

#main .bubble-left--sub {
  left: -32px;
  top: 64px;
}

@media screen and (max-width: 767px) {
  #main .bg-stripes {
    padding-bottom: 120px;
  }

  #main .bg-stripes .bg-stripes__female,
  #main .bg-stripes .bg-stripes__male {
    height: 120px;
  }

  #main .bg-stripes .bg-stripes__male {
    right: 32px;
  }

  #main .bg-stripes .bg-stripes__female {
    left: 32px;
  }

  #main .bubble-right {
    left: 256px;
    top: 16px;
  }

  #main .bubble-left--sub {
    top: 36px;
  }
}

@media screen and (min-width: 768px) and (max-width: 1119px) {
  #main .bg-stripes {
    padding-bottom: 192px;
  }

  #main .bg-stripes .bg-stripes__female,
  #main .bg-stripes .bg-stripes__male {
    height: 192px;
  }
}

@media screen and (min-width: 1120px) and (max-width: 1230px) {
  #main .bg-stripes .bg-stripes__female {
    left: 8px;
  }
}

.global-header {
  -webkit-font-smoothing: subpixel-antialiased;
}

.global-footer {
  font-size: 14.08px;
  -webkit-font-smoothing: subpixel-antialiased;
}
