@charset "UTF-8";
/************************************
  font
************************************/
@font-face {
  font-family: "Noto Sans JP";
  src: url("https://www.capcom-games.com/common/font/SourceHanSansJP-VF.otf.woff2") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}
@font-face {
  font-family: "Noto Sans TC";
  src: url("https://www.capcom-games.com/common/font/SourceHanSansTW-VF.otf.woff2") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}
@font-face {
  font-family: "Noto Sans KR";
  src: url("https://www.capcom-games.com/common/font/SourceHanSansKR-VF.otf.woff2") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}
@font-face {
  font-family: "Noto Sans";
  src: url("https://www.capcom-games.com/common/font/SourceSans3-VF.woff2") format("woff2");
  font-display: swap;
  font-weight: 100 900;
}

/************************************
	base
************************************/
html {
  height: 100%;
  width: 100%;
}

body {
  background: #000;
  color: #000;
  font-family: "Noto Sans", sans-serif;
  font-size: 3.2vw;
  font-weight: 400;
  width: 100%;
}

.ja body {
  font-family: "Noto Sans JP", sans-serif;
}

.ko body {
  font-family: "Noto Sans KR", sans-serif;
}

.zh-tw body {
  font-family: "Noto Sans TC", sans-serif;
}

@media only screen and (max-width: 768px) {
  body {
    overflow-x: hidden;
  }
}

@media only screen and (min-width: 769px) {
  body {
    font-size: 1.04167vw;
  }
}

body a {
  border: none;
  color: #000;
  outline: none;
}

body ul li a {
  display: block;
}

body ul.note li {
  padding-left: 1em;
  text-indent: -1em;
}

body ul.note li::before {
  content: '※';
}

body main,
body picture {
  display: block;
}

body button {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  cursor: pointer;
  outline: none;
}

body small.note {
  display: block;
  padding-left: 1em;
  text-indent: -1em;
}

body small.note::before {
  content: '※';
}

body .btn a {
  display: block;
}

body picture {
  display: block;
}

body #wrapper img {
  border: none;
  height: auto;
  margin: auto;
  outline: none;
  width: 100%;
}

body a:not(.is-origin) {
  transition: opacity .2s ease;
}

body a:not(.is-origin):hover {
  opacity: .8;
}

/************************************
	header
************************************/
.site-header{
  position: relative;
}
.site-header .site-logo {
  margin-right: auto;
  margin-left: auto;
  padding: 8vw 0;
  width: 34.66667%;
}

@media only screen and (min-width: 769px) {
  .site-header .site-logo {
    padding: 2vw 0;
    width: 13.54167%;
    max-width: 380px;
  }
}

.site-header .site-logo img {
  height: auto;
  width: 100%;
}

/************************************
	footer
************************************/
#title_footer {
  background-color: #6b0509;
  position: relative;
}

/************************************
	content
************************************/
#wrapper {
  line-height: 1.5;
  position: relative;
  width: 100%;
  overflow-x: hidden;
  flex: 1;
}

@media only screen and (min-width: 769px) {
  #wrapper {
    min-height: 75vh;
  }
}

.sec {
  margin-right: auto;
  margin-bottom: 16vw;
  margin-left: auto;
  position: relative;
  width: 89.33333%;
}

@media only screen and (min-width: 769px) {
  .sec {
    margin-bottom: 8vw;
    width: 79.16667%;
    max-width: 1280px;
  }
}

@media only screen and (min-width: 1480px) {
  .sec {
    margin-bottom: 100px;
  }
}

.sec-inner {
  border-right: 2px solid #000;
  border-bottom: 2px solid #000;
  border-left: 2px solid #000;
  box-shadow: 1px 1px 6px 0px rgba(0, 0, 0, 0.8);
  margin-bottom: 8vw;
  margin-top: -1px;
  padding: 8vw 2vw 10vw;
  position: relative;
}

@media only screen and (min-width: 769px) {
  .sec-inner {
    border-right: 4px solid #000;
    border-bottom: 4px solid #000;
    border-left: 4px solid #000;
    margin-bottom: 4vw;
    padding: 4vw 4vw 7vw;
  }
}

@media only screen and (min-width: 1480px) {
  .sec-inner {
    margin-bottom: 50px;
    padding: 50px 50px 100px;
  }
}

/************************************
	module
************************************/
/***** 背景 *****/
body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  flex-direction: column;
  min-height: 100vh;
}

.page-bg {
  width: 100%;
  height: 100%;
  position: fixed;
  top:0;
  left: 0;
  background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/page_bg_sp.jpg);
  background-position: left top;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 100vh;
}

@media only screen and (min-width: 769px) {
  .page-bg {
    background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/page_bg.jpg);
  }
}

.sec-bg {
  background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/sec_bg.jpg);
  background-position: left top;
  background-repeat: repeat;
  background-size: 99px;
}

@media only screen and (min-width: 769px) {
  .sec-bg {
    background-size: 198px;
  }
}

.sec-flame {
  margin-bottom: 8vw;
  position: relative;
}

@media only screen and (min-width: 769px) {
  .sec-flame {
    margin-bottom: 4vw;
  }
}
@media only screen and (min-width: 1480px) {
  .sec-flame {
    margin-bottom: 50px;
  }
}

.sec-flame-inner {
  background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/sec_flame-c-sp.png);
  background-position: center top;
  background-repeat: repeat-y;
  background-size: contain;
}

@media only screen and (min-width: 769px) {
  .sec-flame-inner {
    background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/sec_flame-c.png);
  }
}

.sec-flame-item {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  width: 88.13559%;
}

@media only screen and (min-width: 769px) {
  .sec-flame-item {
    width: 87.97%;
  }
}

.sec-flame::before, .sec-flame::after {
  background-repeat: no-repeat;
  background-size: cover;
  content: "";
  display: block;
  padding-top: 8.32%;
  width: 100%;
}

@media only screen and (min-width: 769px) {
  .sec-flame::before, .sec-flame::after {
    padding-top: 6.86%;
  }
}

.sec-flame::before {
  background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/sec_flame-t-sp.png);
  background-position: center bottom;
}

@media only screen and (min-width: 769px) {
  .sec-flame::before {
    background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/sec_flame-t.png);
  }
}

.sec-flame::after {
  background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/sec_flame-b-sp.png);
  background-position: center top;
}

@media only screen and (min-width: 769px) {
  .sec-flame::after {
    background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/sec_flame-b.png);
  }
}

/***** 見出し *****/
.sec-ttl {
  border-top: 2px solid #000;
  border-right: 2px solid #000;
  border-left: 2px solid #000;
  line-height: 0;
  position: relative;
  z-index: 1;
}

@media only screen and (min-width: 769px) {
  .sec-ttl {
    border-top: 4px solid #000;
    border-right: 4px solid #000;
    border-left: 4px solid #000;
  }
}

.sec-sttl {
  color: #3F1801;
  font-size: 6.4vw;
  font-weight: 900;
  text-align: center;
  text-shadow: 2px 2px 4px rgba(255, 255, 255, 0.8), 2px -2px 4px rgba(255, 255, 255, 0.8), -2px 2px 4px rgba(255, 255, 255, 0.8), -2px -2px 4px rgba(255, 255, 255, 0.8);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  top: -11vw;
}

@media only screen and (min-width: 769px) {
  .sec-sttl {
    font-size: 3.125vw;
    top: -6vw;
  }
}

@media only screen and (min-width: 1480px) {
  .sec-sttl {
    font-size: 60px;
    top: -110px;
  }
}

.sec-sttl-result {
  z-index: 3;
  color: #947834;
  letter-spacing: .1em;
  margin-bottom: .75em;
}

/***** テキスト *****/
.sec-lead {
  text-align: center;
  color: #3F1801;
  font-size: 4.26667vw;
  font-weight: 700;
  margin-bottom: 1.5em;
  padding-top: 1.5em;
}

@media only screen and (min-width: 769px) {
  .sec-lead {
    font-size: 1.575vw;
  }
}
@media only screen and (min-width: 1480px) {
  .sec-lead {
    font-size: 28px;
  }
}

.gd-start .sec-lead {
  padding-top: 0;
}
@media only screen and (max-width: 768px) {
  .gd-start .sec-lead {
    font-size: 3.9vw;
  }
}

.sec-lead[data-elem="question"] {
  text-align: left;
}

.sec-lead-result {
  position: relative;
  z-index: 3;
  margin-bottom: 0.8em;
  padding-top: .75em;
  text-shadow: 2px 2px 4px #fff, 2px -2px 4px #fff, -2px 2px 4px #fff, -2px -2px 4px #fff, 2px 2px 4px #fff, 2px -2px 4px #fff, -2px 2px 4px #fff, -2px -2px 4px #fff;
}
@media only screen and (min-width: 769px) {
	.sec-lead-result {
    font-size: 2vw;
  }
}

@media only screen and (min-width: 1480px) {
	.sec-lead-result {
    font-size: 44px;
  }
}

.sec-lead-result span.follower-name {
  font-size: 150%;
  font-weight: 900;
  text-shadow: 2px 2px 4px #fff, 2px -2px 4px #fff, -2px 2px 4px #fff, -2px -2px 4px #fff, 2px 2px 4px #fff, 2px -2px 4px #fff, -2px 2px 4px #fff, -2px -2px 4px #fff;
}

.text-box {
  margin-bottom: 2.5em;
  padding: 0 0.5em;
}

@media only screen and (min-width: 769px) {
  .text-box {
    padding: 0 1em;
  }
}

.text-box .text {
  color: #3F1801;
  font-size: 3.2vw;
  font-weight: 700;
}

@media only screen and (min-width: 769px) {
  .text-box .text {
    font-size: 1.25vw;
		text-align: center;
  }
}
@media only screen and (min-width: 1480px) {
  .text-box .text {
    font-size: 26px;
  }
}


/***** 画像 *****/
.sec-image {
}

@media only screen and (min-width: 769px) {
  .sec-image {
    width: 100%;
		margin-right: auto;
		margin-left: auto;
  }
}

@media only screen and (min-width: 769px) {
  .sec-image-box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
}

.sec-image-box .sec-image {
  margin-right: 0;
  margin-left: 0;
  position: relative;
  height: 70vw;
}
#wrapper .sec-image-box img {
  position: absolute;
  bottom: -1vw;
  left: 50%;
  transform: translateX(-50%);
  width: 300%;
  z-index: 2;
}

@media only screen and (min-width: 769px) {
  .sec-image-box .sec-image {
    height: 38vw;
  }
  #wrapper .sec-image-box img {
    bottom: -1vw;
    left: 50%;
    transform: translateX(-50%);
    width: 200%;
  }
}

@media only screen and (min-width: 1480px) {
  .sec-image-box .sec-image {
    height: 580px;
  }
  #wrapper .sec-image-box img {
    bottom: -40px;
  }
}


/***** リスト *****/
.sec-list-item {
  font-size: 4.26667vw;
  font-weight: 700;
  padding-left: 2.9em;
  text-align: left;
  text-indent: -2.9em;
}

@media only screen and (min-width: 769px) {
  .sec-list-item {
    font-size: 2.08333vw;;
  }
}

@media only screen and (min-width: 1480px) {
  .sec-list-item {
    font-size: 28px;
  }
}

.sec-list-item-a {
  color: #cb5709;
  margin-bottom: .5em;
}

.sec-list-item-b {
  color: #156aa0;
}

/***** ボタン *****/
.btn-item {
  border: 2px solid #FFF;
  box-shadow: 1px 1px 6px 0px rgba(0, 0, 0, 0.8);
  cursor: pointer;
  line-height: 1;
  padding: 4.5vw 1.5vw;
  position: relative;
  transition: opacity .2s ease-in;
  text-align: center;
}

@media only screen and (min-width: 769px) {
  .btn-item {
    border: 4px solid #FFF;
    margin-right: auto;
    margin-left: auto;
    padding: 1.5vw;
    width: 38.81579%;
  }
}
@media only screen and (min-width: 1480px) {
  .btn-item {
    border: 4px solid #FFF;
    margin-right: auto;
    margin-left: auto;
    padding: 20px;
  }
}

.btn-item::before {
  background-image: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/btn_pt.png);
  background-position: left top;
  background-repeat: repeat-x;
  background-size: contain;
  content: "";
  display: block;
  top: 50%;
  transform: translateY(-50%);
  left: 0;
  position: absolute;
  width: 100%;
  height: 4vw;
}

@media only screen and (min-width: 769px) {
  .btn-item::before {
    height: 2vw;
  }
}
@media only screen and (min-width: 1480px) {
  .btn-item::before {
    height: 40px;
  }
}

.btn-item-label {
  color: #FFF;
  display: block;
  font-size: 4.26667vw;
  font-weight: 700;
  position: relative;
  z-index: 2;
  line-height: 1.3;
}

@media only screen and (min-width: 769px) {
  .btn-item-label {
    font-size: 1.66667vw;
  }
}

@media only screen and (min-width: 1480px) {
  .btn-item-label {
    font-size: 30px;
  }
}

.btn-item.gd-start {
  background-color: #007287;
}

@media only screen and (max-width: 768px) {
  .btn-item.gd-start {
    width: 80%;
    margin: 0 auto;
  }
}

.btn-item.btn-item-yes {
  background-color: #cb5709;
}

.btn-item.btn-item-no {
  background-color: #156aa0;
}

@media only screen and (min-width: 769px) {
  .btn-item.btn-item-yes .btn-item-label,
  .btn-item.btn-item-no .btn-item-label {
    font-size: 2.1vw;
  }
}

@media only screen and (min-width: 1480px) {
  .btn-item.btn-item-yes .btn-item-label,
  .btn-item.btn-item-no .btn-item-label {
    font-size: 28px;
  }
}

.btn-item.gd-end {
  background-color: #007287;
  padding: 0;
  width: 90%;
  margin-right: auto;
  margin-left: auto;
}

@media only screen and (min-width: 769px) {
  .btn-item.gd-end {
    width: 50%;
  }
}

.btn-item.gd-end a {
  padding: 3.5vw 1.5vw;
}

@media only screen and (min-width: 769px) {
  .btn-item.gd-end a {
    padding: 1.5vw;
  }
}

@media only screen and (min-width: 1480px) {
  .btn-item.gd-end a {
    padding: 20px;
  }
}

.btn-item.gd-top {
  background-color: #007287;
  margin-right: auto;
  margin-left: auto;
  padding: 0;
  width: 75%;
}

@media only screen and (min-width: 769px) {
  .btn-item.gd-top {
    width: 40%;
  }
}

.btn-item.gd-top a {
  padding: 3.5vw 1.5vw;
}

@media only screen and (min-width: 769px) {
  .btn-item.gd-top a {
    padding: 1.4vw;
  }
}
@media only screen and (min-width: 1480px) {
  .btn-item.gd-top a {
    padding: 20px;
  }
}

.btn-item.gd-top .btn-item-label {
  font-size: 3.73333vw;
  z-index: 2;
}

@media only screen and (min-width: 769px) {
  .btn-item.gd-top .btn-item-label {
    font-size: 1.66667vw;
  }
}

@media only screen and (min-width: 1480px) {
  .btn-item.gd-top .btn-item-label {
    font-size: 26px;
  }
}

@media only screen and (min-width: 769px) {
  .btn-item:hover {
    opacity: .8;
  }
}

.btn-multi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.btn-multi .btn-item {
  margin-right: 0;
  margin-left: 0;
  width: 38%;
}

.btn-multi .btn-item:not(:last-child) {
  margin-right: 2em;
}

.btn-multi .btn-item.btn-item-sns {
  padding: 0;
  width: 90%;
  height: 5em;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
}

@media only screen and (min-width: 769px) {
  .btn-multi .btn-item.btn-item-sns {
    width: 46%;
  }
}

@media only screen and (min-width: 1480px) {
  .btn-multi .btn-item.btn-item-sns {
    height: 100px;
  }
}


.btn-multi .btn-item.btn-item-sns:not(:last-child) {
  margin-right: 0;
}

@media only screen and (max-width: 768px) {
  .btn-multi .btn-item.btn-item-sns:not(:last-child) {
    margin-bottom: 4vw;
  }
}

@media only screen and (min-width: 769px) {
  .btn-multi .btn-item.btn-item-sns:not(:last-child) {
    margin-right: 2em;
  }
}
@media only screen and (min-width: 1480px) {
  .btn-multi .btn-item.btn-item-sns:not(:last-child) {
    margin-right: 1em;
  }
}

.btn-multi .btn-item.btn-item-sns .btn-ic {
  margin-right: .4em !important;
  vertical-align: middle;
  width: 2em !important;
}

@media only screen and (min-width: 1480px) {
  .btn-multi .btn-item.btn-item-sns .btn-ic {
    width: 1.5em !important;
  }
}

.btn-multi .btn-item.btn-item-sns .btn-item-label {
  color: #FFF;
  display: inline;
  font-size: 3.2vw;
  font-weight: 700;
  position: relative;
  vertical-align: middle;
  z-index: 2;
}

@media only screen and (min-width: 769px) {
  .btn-multi .btn-item.btn-item-sns .btn-item-label {
    font-size: 1.45833vw;
  }
}
@media only screen and (min-width: 1480px) {
  .btn-multi .btn-item.btn-item-sns .btn-item-label {
    font-size: 26px;
  }
}

@media only screen and (min-width: 769px) {
  .btn-multi .btn-item.btn-item-sns a {
  }
}

@media only screen and (min-width: 1480px) {
  .btn-multi .btn-item.btn-item-sns a {
  }
}

.btn-multi .btn-item.btn-item-sns.btn-item-tw {
  background: #00ACEE;
}

.btn-multi .btn-item.btn-item-sns.btn-item-fb {
  background: #1977F3;
}

/***** SNS *****/
.sns .btn-label {
  color: #3F1801;
  font-weight: 700;
  font-size: 4.26667vw;
  line-height: 1;
  margin-bottom: 1em;
  text-align: center;
}

@media only screen and (min-width: 769px) {
  .sns .btn-label {
    font-size: 2.08333vw;
  }
}

@media only screen and (min-width: 1480px) {
  .sns .btn-label {
    font-size: 34px;
  }
}

/***** 画像 *****/
.follower-ss {
  margin-bottom: 6vw;
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .follower-ss {
    margin-right: auto;
    margin-bottom: 4vw;
    margin-left: auto;
    width: 60%;
  }
}
@media only screen and (min-width: 1480px) {
  .follower-ss {
    margin-bottom: 50px;
  }
}

.follower-ss-ttl {
  color: #3F1801;
  font-size: 3.7vw;
  font-weight: 700;
  margin-bottom: .5em;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .follower-ss-ttl {
    font-size: 1.8vw;
  }
}
@media only screen and (min-width: 1480px) {
  .follower-ss-ttl {
    font-size: 35px;
  }
}

/***** 動画 *****/
.player {
  margin-bottom: 6vw;
  width: 100%;
}

@media only screen and (min-width: 769px) {
  .player {
    margin-right: auto;
    margin-bottom: 4vw;
    margin-left: auto;
    width: 60%;
  }
}
@media only screen and (min-width: 1480px) {
  .player {
    margin-bottom: 50px;
  }
}

.player-ttl {
  color: #3F1801;
  font-size: 3.7vw;
  font-weight: 700;
  margin-bottom: .5em;
  text-align: center;
}

@media only screen and (min-width: 769px) {
  .player-ttl {
    font-size: 1.8vw;
  }
}
@media only screen and (min-width: 1480px) {
  .player-ttl {
    font-size: 40px;
  }
}

.player-box {
  padding-top: 56.25%;
  position: relative;
  width: 100%;
}

.player-box iframe {
  height: 100%;
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
}

/***** バナー *****/
.bnr {
  margin-bottom: 8vw;
}

@media only screen and (min-width: 769px) {
  .bnr {
    margin-bottom: 4vw;
  }
}

@media only screen and (min-width: 1480px) {
  .bnr {
    margin-bottom: 50px;
  }
}

.bnr-trial {
  margin-bottom: 4vw;
}

@media only screen and (min-width: 769px) {
  .bnr-trial {
    margin-right: auto;
    margin-bottom: 2vw;
    margin-left: auto;
    width: 62.5%;
  }
}
@media only screen and (min-width: 1480px) {
  .bnr-trial {
    margin-bottom: 20px;
  }
}

.bnr-site {
  margin-right: auto;
  margin-left: auto;
  text-align: center;
	width: 90%;
}
.sec-inner .bnr-site {
	width: 100%;
}
@media only screen and (min-width: 769px) {
  .bnr-site {
    width: 62%;
  }
	.sec-inner .bnr-site {
		width: 49.34211%;
	}
}

.bnr-site img {
	box-shadow: 3px 3px 1px #000;
  border: 3px solid #fff !important;
}
.sec-inner .bnr-site img {
	box-shadow: none;
  border: none !important;
}


.bnr-site-label {
  text-align: center;
  color: #3F1801;
  font-size: 3.46667vw;
  font-weight: 700;
  margin-bottom: .5em;
}

@media only screen and (min-width: 769px) {
  .bnr-site-label {
    font-size: 1.5625vw;
  }
}

@media only screen and (min-width: 1480px) {
  .bnr-site-label {
    font-size: 25px;
  }
}

.bnr-site-label-wht {
  color: #ffffff;
  font-size: 3.46667vw;
  font-weight: 700;
  margin-bottom: .5em;
	text-shadow: 3px 2px 1px rgba(0, 0, 0, 0.8);
}

@media only screen and (min-width: 769px) {
  .bnr-site-label-wht {
    font-size: 1.7vw;
  }
}

@media only screen and (min-width: 1480px) {
  .bnr-site-label-wht {
    font-size: 30px;
  }
}

/************************************
	Object
************************************/
/****** clearfix ******/
.cf::before, .cf::after {
  content: "";
  display: table;
}

.cf::after {
  clear: both;
}

/****** icon ******/
.ic-yt {
  background: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/yt_ic.svg) center no-repeat;
  background-size: contain;
}

.ic-tw {
  background: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/tw_ic.svg) center no-repeat;
  background-size: contain;
}

.ic-fb {
  background: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/fb_ic.svg) center no-repeat;
  background-size: contain;
}

.ic-insta {
  background: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/insta_ic.svg) center no-repeat;
  background-size: contain;
}

.ic-line {
  background: url(https://www.monsterhunter.com/content/sunbreak-followerquiz/assets/images/common/line_ic.svg) center no-repeat;
  background-size: contain;
}

/****** テキスト ******/
/*----- 字間 -----*/
.t-kerning {
  margin-right: -0.5em;
  margin-left: -0.5em;
  position: relative;
}

.t-mark {
  margin-right: -0.5em;
  margin-left: -0.16667em;
  position: relative;
}

.t-comma {
  margin-right: -0.5em;
  position: relative;
}

/*----- 位置 -----*/
.t-bracket {
  margin: 0 .2em;
  position: relative;
  top: -.05em;
}

.ta-l {
  text-align: left !important;
}

.ta-c {
  text-align: center !important;
}

.ta-r {
  text-align: right !important;
}

@media only screen and (min-width: 769px) {
  .ta-l-pc {
    text-align: left !important;
  }
}

@media only screen and (min-width: 769px) {
  .ta-c-pc {
    text-align: center !important;
  }
}

@media only screen and (min-width: 769px) {
  .ta-r-pc {
    text-align: right !important;
  }
}

/*----- 配色 -----*/
.fc-r {
  color: #F00;
}

/****** 余白 ******/
/*----- padding -----*/
.pd-0 {
  padding: 0;
}

.pd-b1 {
  padding-bottom: 4vw;
}

@media only screen and (min-width: 769px) {
  .pd-b1 {
    padding-bottom: 2vw;
  }
}

.pd-b1h {
  padding-bottom: 6vw;
}

@media only screen and (min-width: 769px) {
  .pd-b1h {
    padding-bottom: 3vw;
  }
}

.pd-b1h-d {
  padding-bottom: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .pd-b1h-d {
    padding-bottom: 1.33333vw;
  }
}

.pd-b2 {
  padding-bottom: 8vw;
}

@media only screen and (min-width: 769px) {
  .pd-b2 {
    padding-bottom: 4vw;
  }
}

.pd-b2-d {
  padding-bottom: 2vw;
}

@media only screen and (min-width: 769px) {
  .pd-b2-d {
    padding-bottom: 1vw;
  }
}

.pd-t1 {
  padding-top: 4vw;
}

@media only screen and (min-width: 769px) {
  .pd-t1 {
    padding-top: 2vw;
  }
}

.pd-t1h {
  padding-top: 6vw;
}

@media only screen and (min-width: 769px) {
  .pd-t1h {
    padding-top: 3vw;
  }
}

.pd-t1h-d {
  padding-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .pd-t1h-d {
    padding-top: 1.33333vw;
  }
}

.pd-t2 {
  padding-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .pd-t2 {
    padding-top: 4vw;
  }
}

.pd-t2-d {
  padding-top: 2vw;
}

@media only screen and (min-width: 769px) {
  .pd-t2-d {
    padding-top: 1vw;
  }
}

/*----- margin -----*/
.mg-0 {
  margin: 0;
}

.mg-b1 {
  margin-bottom: 4vw;
}

@media only screen and (min-width: 769px) {
  .mg-b1 {
    margin-bottom: 2vw;
  }
}
@media only screen and (min-width: 1480px) {
  .mg-b1 {
    margin-bottom: 50px;
  }
}

.mg-b1h {
  margin-bottom: 6vw;
}

@media only screen and (min-width: 769px) {
  .mg-b1h {
    margin-bottom: 3vw;
  }
}
@media only screen and (min-width: 1480px) {
  .mg-b1h {
    margin-bottom: 75px;
  }
}
.mg-b1h-d {
  margin-bottom: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .mg-b1h-d {
    margin-bottom: 1.33333vw;
  }
}

.mg-b2 {
  margin-bottom: 8vw;
}

@media only screen and (min-width: 769px) {
  .mg-b2 {
    margin-bottom: 4vw;
  }
}

@media only screen and (min-width: 1480px) {
  .mg-b2 {
    margin-bottom: 50px;
  }
}


.mg-b2-d {
  margin-bottom: 2vw;
}

@media only screen and (min-width: 769px) {
  .mg-b2-d {
    margin-bottom: 1vw;
  }
}

.mg-t1 {
  margin-top: 4vw;
}

@media only screen and (min-width: 769px) {
  .mg-t1 {
    margin-top: 2vw;
  }
}

.mg-t1h {
  margin-top: 6vw;
}

@media only screen and (min-width: 769px) {
  .mg-t1h {
    margin-top: 3vw;
  }
}

.mg-t1h-d {
  margin-top: 2.66667vw;
}

@media only screen and (min-width: 769px) {
  .mg-t1h-d {
    margin-top: 1.33333vw;
  }
}

.mg-t2 {
  margin-top: 8vw;
}

@media only screen and (min-width: 769px) {
  .mg-t2 {
    margin-top: 4vw;
  }
}

.mg-t2-d {
  margin-top: 2vw;
}

@media only screen and (min-width: 769px) {
  .mg-t2-d {
    margin-top: 1vw;
  }
}

/****** 位置 ******/
.pos-float {
  position: absolute;
}

@media only screen and (min-width: 769px) {
  .pos-float-pc {
    position: absolute;
  }
}

/****** 表示 ******/
.d-block {
  display: block;
}

@media only screen and (max-width: 768px) {
  .d-block-sp {
    display: block;
  }
}

@media only screen and (min-width: 769px) {
  .d-block-pc {
    display: block;
  }
}

.hide-sp,
.img-pc {
  display: none;
}

@media only screen and (min-width: 769px) {
  .hide-sp {
    display: block;
  }
  .hide-spbr, .hide-spspan {
    display: inline;
  }
  .img-pc {
    display: inline;
  }
  .hide-pc,
  .img-sp {
    display: none;
  }
}
