@charset "UTF-8";
/*===============================================================
	読み込み
===============================================================*/
/*===============================================================

	color

===============================================================*/
@import url("/extra/library/common/css/smart_phone.css") only screen and (max-width: 1030px);
.c_pink {
  color: #E40077;
}

.bg_pink {
  background: #E40077;
}

.bg_light_pink {
  background: #FDEBF4;
}

.c_yellow {
  color: #F2EE7E;
  padding-right: 2px;
}

.h_cose_nav_txt {
  padding-right: 2px;
}

.l2 {
  padding-right: 0px;
  padding-left: 2px;
}

.bg_yellow {
  background: #F2EE7E;
}

.c_orange {
  color: #E93817;
}

.bg_orange {
  background: #E93817;
}

/*===============================================================

	noto sans

===============================================================*/
@font-face {
  font-family: "Noto Sans JP";
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url("/special/common/webfont/NotoSansCJKjp-Regular_subset.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: bold;
  font-weight: 700;
  font-display: swap;
  src: url("/special/common/webfont/NotoSansCJKjp-Bold_subset.woff") format("woff");
}
@font-face {
  font-family: "Noto Sans JP";
  font-style: bold;
  font-weight: 800;
  font-display: swap;
  src: url("/special/common/webfont/NotoSansCJKjp-Black_subset.woff") format("woff");
}
.noto_sans {
  font-family: "Noto Sans JP", sans-serif;
  /*font-feature-settings: "palt";*/
  /*letter-spacing: 0.05px;*/
}

/*===============================================================

	レイアウト

===============================================================*/
.wide_width {
  width: auto;
  max-width: 1120px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.content_width {
  width: auto;
  max-width: 1030px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

.narrow_width {
  width: auto;
  max-width: 750px;
  margin-left: auto;
  margin-right: auto;
  box-sizing: border-box;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .wide_width {
    width: 100%;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
@media screen and (max-width: 1030px) {
  .content_width {
    width: 100%;
  }
} /* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .narrow_width {
    width: 100%;
  }
} /* for SP max-width: 736px */
/*===============================================================

	section
	複数のcontent、headlineなど格納するブロック

===============================================================*/
.section_wrp {
  background: #fff;
}

.section {
  width: 100%;
}

.section_inner {
  margin: 0 auto;
  padding: 80px 0 110px 0;
}

.section_pt0 .section_inner {
  padding-top: 0;
  padding-bottom: 46px;
}

/* タブレット以下 */
@media screen and (max-width: 1160px) {
  .section_inner {
    margin: 0 auto;
    padding: 80px 20px 130px 20px;
  }
} /* for tablet max-width: 1160px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_inner {
    margin: 0 auto;
    padding: 10vw 5vw 10vw;
  }
  .section_pt0 .section_inner {
    padding-bottom: 0;
  }
} /* for SP max-width: 736px */
/*===============================================================

	content 

===============================================================*/
.content {
  margin: 0 auto;
}

.content + .content {
  margin-top: 100px;
}

.headline + .content {
  margin-top: 100px;
}

.content .block {
  margin-top: 60px;
}

.content .block + .block {
  margin-top: 80px;
}

.content p {
  font-size: 16px;
  line-height: 1.8;
}

.content * + p {
  margin-top: 20px;
}

/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .content {
    width: 100%;
    margin: 0 auto;
  }
  .content + .content {
    margin-top: 10vw;
  }
  .headline + .content {
    margin-top: 6vw;
  }
  .content .block {
    margin-top: 6vw;
  }
  .content .block + .block {
    margin-top: 8vw;
  }
  .content p {
    font-size: 3.5vw;
    line-height: 1.8;
  }
  .content * + p {
    margin-top: 2vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	lead_border

===============================================================*/
.content .lead_border {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  font-size: 24px;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
}

.content .lead_border .s {
  font-size: 20px;
}

.content .lead_border:before {
  content: "";
  width: 80px;
  height: 3px;
  background: #333;
  margin-right: 25px;
}

.content .lead_border:after {
  content: "";
  width: 80px;
  height: 3px;
  background: #333;
  margin-left: 25px;
}

.content .lead_border_orange:before {
  background: #E93817;
}

.content .lead_border_orange:after {
  background: #E93817;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .content .lead_border {
    font-size: 22px;
  }
  .content .lead_border .s {
    font-size: 18px;
  }
  .content .lead_border:before {
    width: 60px;
    margin-right: 20px;
  }
  .content .lead_border:after {
    width: 60px;
    margin-left: 20px;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .content .lead_border {
    font-size: 4vw;
  }
  .content .lead_border .s {
    font-size: 4vw;
  }
  .content .lead_border:before {
    width: 4vw;
    height: 2px;
    margin-right: 2vw;
  }
  .content .lead_border:after {
    width: 4vw;
    height: 2px;
    margin-left: 2vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	grid

===============================================================*/
.gridcontainer {
  margin-top: -30px;
}

.gridcontainer .grid {
  float: left;
}

.grid {
  margin-top: 30px;
}

/*	gridSize :460 gutterSize :40 column :2 */
.gridwrp_2 {
  width: 104.167%;
}

.gridwrp_2 .grid_2 {
  width: 96%;
  margin-right: 4%;
}

.gridwrp_2 .grid_1 {
  width: 46%;
  margin-right: 4%;
}

.gridwrp_1 .grid_2 {
  width: 192%;
  margin-right: 8%;
}

/*	gridSize :290 gutterSize :40 column :3 */
.gridwrp_3 {
  width: 104.211%;
}

.gridwrp_3 .grid_3 {
  width: 95.96%;
  margin-right: 4.04%;
}

.gridwrp_3 .grid_2 {
  width: 62.626%;
  margin-right: 4.04%;
}

.gridwrp_3 .grid_1 {
  width: 29.293%;
  margin-right: 4.04%;
}

/*	gridSize :210 gutterSize :40 column :4 */
.gridwrp_4 {
  width: 104.167%;
}

.gridwrp_4 .grid_4 {
  width: 96%;
  margin-right: 4%;
}

.gridwrp_4 .grid_3 {
  width: 71%;
  margin-right: 4%;
}

.gridwrp_4 .grid_2 {
  width: 46%;
  margin-right: 4%;
}

.gridwrp_4 .grid_1 {
  width: 21%;
  margin-right: 4%;
}

/* PCのみ */
@media screen and (min-width: 1031px) {
  .gridwrp_2 .grid:nth-child(2n+1) {
    clear: both;
  }
  .gridwrp_3 .grid:nth-child(3n+1) {
    clear: both;
  }
  .gridwrp_4 .grid:nth-child(4n+1) {
    clear: both;
  }
} /* for PC min-width: 961px

/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .gridwrp_3,
  .gridwrp_3 .grid_1,
  .gridwrp_3 .grid_2,
  .gridwrp_2,
  .gridwrp_2 .grid_1 {
    width: 100%;
    margin-right: 0;
  }
  .gridwrp_4 {
    width: 105%;
  }
  .gridwrp_4 .grid_1, .gridwrp_4 .grid_3 {
    width: 45.238%;
    margin-right: 4.762%;
  }
  .gridcontainer {
    margin-top: 0;
  }
  .grid {
    margin-top: 20px;
  }
  .grid:first-child {
    margin-top: 0px;
  }
  .gridwrp_4 .grid:nth-child(2) {
    margin-top: 0;
  }
} /* for SP max-width: 736px */
/* Base
   ========================================================================== */
#campaign_tv_sales_waku1 {
  margin: 0 auto 20px;
}

body {
  background: #fff;
  -webkit-font-smoothing: antialiased;
}

.clearText {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
}

/* Contents
========================================================================== */
#page, .container {
  font-family: Meiryo, メイリオ, sans-serif !important;
}

.thiscontents {
  color: #333;
  width: 100%;
}

a {
  transition: background-color 0.1s linear, color 0.1s linear, border-color 0.1s linear, border-width 0.1s linear, opacity 0.1s linear;
  color: #333;
}

a:link {
  color: #333;
  text-decoration: none;
}

a:visited {
  color: #333;
  text-decoration: none;
}

a:hover {
  color: #333;
  text-decoration: none;
}

a:active {
  color: #333;
  text-decoration: none;
}

a:hover {
  color: #333;
  text-decoration: none;
}

.thiscontents * {
  box-sizing: border-box;
}

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

/* 基本
----------------------------------------------------------------*/
.thiscontents .clear {
  width: 100%;
  overflow: hidden;
}

.thiscontents .cf:before,
.thiscontents .cf:after {
  content: " ";
  display: table;
}

.thiscontents .cf:after {
  clear: both;
}

/* .thiscontents .cf {
	*zoom:1;
} */
.thiscontents .clearboth {
  clear: both;
}

.thiscontents .flol {
  display: inline;
  float: left;
}

.thiscontents .flor {
  display: inline;
  float: right;
}

.thiscontents .tablet {
  display: none;
}

.thiscontents .sp {
  display: none;
}

.thiscontents .sp_tablet {
  display: none;
}

.thiscontents .none {
  display: none;
}

.txt_under a {
  border-bottom: solid 2px #D6D2D2;
}

.thiscontents img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
  padding: 0;
  margin: 0;
  pointer-events: none;
  -webkit-touch-callout: none;
}

.thiscontents .fitimg,
.thiscontents .fitimg img {
  width: 100%;
  height: auto;
}

.thiscontents p {
  margin: 0;
  padding: 0;
}

.thiscontentsh1, .thiscontents h2,
.thiscontents h3, .thiscontents h4,
.thiscontents h5, .thiscontents h6 {
  font-weight: bold;
}

.thiscontents p {
  margin: 0;
  padding: 0;
}

.thiscontents sup {
  margin: 0;
  padding: 0;
  font-size: 11px;
  line-height: 15px;
}

.thiscontents .photo img {
  width: 100%;
  height: auto;
}

.thiscontents .hover a {
  display: block;
}

.thiscontents .hover a:hover {
  opacity: 0.7;
}

@media screen and (max-width: 1030px) {
  .thiscontents .pc {
    display: none;
  }
  .thiscontents .tablet,
  .thiscontents .pc_tablet,
  .thiscontents .sp_tablet {
    display: block;
  }
  .thiscontents .db {
    display: block;
  }
}
@media screen and (max-width: 736px) {
  .thiscontents {
    margin-bottom: 10px;
  }
  .thiscontents .sp {
    display: block;
  }
  .thiscontents .pc_tablet,
  .thiscontents .tablet {
    display: none;
  }
}
/*===============================================================

	header

===============================================================*/
.header {
  background: #fff;
}

.header .inner {
  padding: 28px 0;
}

.header .logo {
  width: 160px;
}

.header .logo a {
  display: block;
}

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

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .header .inner {
    padding: 30px;
  }
  .header .logo {
    width: 116px;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .c_yellow {
    padding-right: 0;
  }
  .count_yellow {
    margin-top: 1vw;
  }
  .header .inner {
    padding: 15px;
  }
  .header .logo {
    width: 90px;
  }
  .h_cose_nav_txt {
    padding-right: 0;
  }
} /* for SP max-width: 736px */
/*===============================================================

	btn_detail

===============================================================*/
.btn_detail {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

* + .btn_detail {
  margin-top: 50px;
}

.btn_detail a {
  position: relative;
  display: block;
  color: #333;
  font-size: 18px;
  line-height: 20px;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  padding: 17px 50px 17px 30px;
  border: 2px solid #D0D0D0;
  border-radius: 50px;
  background-color: #fff;
}

.btn_detail a:hover {
  opacity: 0.7;
}

.btn_detail a:after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 20px;
  margin: auto;
  border-top: solid 2px #333;
  border-right: solid 2px #333;
  transform: rotate(45deg);
}

.btn_down a:after {
  top: 20px;
  left: auto;
  bottom: auto;
  right: 20px;
  margin: auto;
  border-top: solid 2px #333;
  border-right: solid 2px #333;
  transform: rotate(135deg);
}

.btn_link a {
  font-size: 15px;
  padding: 12px 44px 12px 26px;
}

.btn_orange a {
  color: #fff;
  background: #E93817;
  border-color: #E93817;
}

.btn_bc_orange a {
  border-color: #E93817;
}

.btn_blank a:before {
  content: "";
  position: absolute;
  width: 18px;
  height: 18px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 20px;
  margin: auto;
  background: url("../images/asset/icon_blank_black.svg") no-repeat center/contain;
}

.btn_blank a:after {
  display: none;
}

.btn_blank_white a:before {
  content: "";
  position: absolute;
  width: 18px;
  height: 18px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 20px;
  margin: auto;
  background: url("../images/asset/icon_blank_white.svg") no-repeat center/contain;
}

.btn_blank_white a:after {
  display: none;
}

.btn_plan {
  width: 365px;
}

.btn_plan a {
  color: #333;
  font-size: 18px;
  line-height: 25px;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  padding: 13px 0;
  border: 2px solid #F7DB33;
  border-radius: 37.5px;
  background-color: #F7DB33;
}

.btn_plan a .s {
  display: block;
  font-size: 12px;
  line-height: 20px;
}

.btn_plan a:hover {
  opacity: 0.7;
}

.btn_plan a:before {
  content: "";
  position: absolute;
  width: 18px;
  height: 18px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 20px;
  margin: auto;
  background: url("../images/asset/icon_blank_black.svg") no-repeat center/contain;
}

.btn_plan a:after {
  content: "";
  position: absolute;
  width: 24px;
  height: 33px;
  top: 0;
  left: 20px;
  bottom: 0;
  right: auto;
  margin: auto;
  border: none;
  transform: none;
  background: url("../images/asset/icon_first_black.svg") no-repeat center/contain;
}

.btn_stream a {
  font-size: 15px;
  padding: 17px 44px 17px 16px;
}

/* .btn_up{
	position: relative;
} */
.btn_up a {
  display: block;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  padding: 0 30px 6px 0;
  border-bottom: solid 2px;
  margin-left: 26%;
  margin-top: 20px;
  color: #E93817;
  font-size: 13px;
  font-weight: bold;
}

.btn_up a:hover {
  opacity: 0.7;
  border-bottom: none;
  transition: all 0.7s;
}

.btn_up a:after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  top: 0;
  bottom: 0;
  right: 5px;
  margin: auto;
  border-top: solid 2px #E93817;
  border-right: solid 2px #E93817;
  transform: rotate(-45deg);
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
  .btn_stream {
    width: 80%;
  }
} /* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .btn_detail, .btn_stream {
    width: 100%;
  }
  * + .btn_detail {
    margin-top: 6vw;
  }
  .btn_detail a {
    font-size: 3.8vw;
    line-height: 1.3;
    padding: 4vw 0;
    border-radius: 11.2vw;
  }
  .btn_detail a:hover {
    /*background-color: #fff;*/
  }
  .btn_detail a:after {
    width: 1.5vw;
    height: 1.5vw;
    right: 3vw;
  }
  .btn_link a {
    width: 50%;
    margin: auto;
    padding: 3.5vw 0;
    font-size: 3.5vw;
  }
  .btn_down a:after {
    top: 5vw;
    right: 3vw;
  }
  .btn_blank a:before {
    width: 4vw;
    height: 4vw;
    right: 3vw;
    background: url("../images/asset/icon_blank_black.svg") no-repeat center/contain;
  }
  .btn_blank_white a:before {
    width: 4vw;
    height: 4vw;
    right: 3vw;
    background: url("../images/asset/icon_blank_white.svg") no-repeat center/contain;
  }
  .btn_plan {
    width: 100%;
  }
  .btn_plan a {
    font-size: 3.8vw;
    line-height: 1.3;
    padding: 3vw 0;
    border-radius: 11.2vw;
  }
  .btn_plan a .s {
    font-size: 3vw;
    line-height: 1.3;
  }
  .btn_plan a:before {
    width: 4vw;
    height: 4vw;
    right: 3vw;
  }
  .btn_plan a:after {
    width: 6vw;
    height: 5.5vw;
    left: 3vw;
    right: auto;
  }
  .btn_up a {
    margin: 7vw auto 8vw;
    padding: 0 7vw 1vw 0;
    font-size: 3.4vw;
  }
  .btn_up a:after {
    width: 1.5vw;
    height: 1.5vw;
    right: 2vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	flexbtn	
-------------------------------------------------------------*/
.flexbtn {
  width: auto;
  text-align: center;
}

.flexbtn a {
  display: inline-block;
  padding: 15px 40px;
}

/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
/* for SP max-width: 736px */
/*-------------------------------------------------------------
	btn_plan_wrp	
-------------------------------------------------------------*/
.btn_plan_wrp {
  padding: 40px 0;
  margin: 0 calc(50% - 50vw) 0;
  margin-top: 80px !important;
}

/* タブレット以下 */
/* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .btn_plan_wrp {
    width: 100vw;
    padding: 5vw;
    margin-top: 8vw !important;
  }
} /* for SP max-width: 736px */
/*===============================================================

	fixed_nav

===============================================================*/
.fixed_nav {
  position: fixed;
  z-index: 99;
  top: 80px;
  left: 0;
  width: 100%;
  color: #fff;
  box-shadow: 0 5px 0 rgba(0, 0, 0, 0.1);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.2s;
}

.fixed_nav.fixed {
  pointer-events: auto;
  opacity: 1;
}

.fixed_nav .box {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-content: center;
}

.fixed_nav .item {
  height: 70px;
}

.fixed_nav .item a {
  color: #fff;
}

.fixed_nav .item_head {
  padding-right: 20px;
}

.fixed_nav .item_head a {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  height: 100%;
}

.fixed_nav .item_head .logo {
  width: 65px;
  height: 70px;
  margin-right: 10px;
}

.fixed_nav .item_head .head {
  font-size: 14px;
  line-height: 24px;
  font-weight: 800;
}

.fixed_nav .item_head .head .m {
  font-size: 18px;
  padding-right: 5px;
}

.fixed_nav .item_head .head .l {
  display: block;
  font-size: 20px;
}

.fixed_nav .item_link {
  border-left: 1px solid #C70A6D;
}

.fixed_nav .item_link_01 {
  border-left: none;
}

/*.fixed_nav .item_link_03 {
	border-right: 1px solid #C70A6D;
}*/
.fixed_nav .item_link a {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-end;
  height: 100%;
  color: #fff;
  text-decoration: none;
  padding: 15px 10px 20px;
}

.fixed_nav .item_link a:hover {
  background: rgba(255, 255, 255, 0.2);
}

.fixed_nav .item_link .icon {
  width: 30px;
}

.fixed_nav .item_link p {
  font-size: 15px;
  vertical-align: baseline;
  line-height: 1;
  font-weight: 800;
  padding-bottom: 2px;
  align-items: center;
  display: flex;
}

.fixed_nav .item_link p .l {
  font-size: 19px;
}

.fixed_nav .item_btn {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  padding-left: 10px;
}

.fixed_nav .item_btn a {
  display: block;
  width: auto;
  font-size: 15px;
  line-height: 1;
  font-weight: 800;
  text-align: center;
  text-decoration: none;
  border: 1px solid #F9C5E0;
  border-radius: 23px;
  padding: 12px 13px;
}

.fixed_nav .item_btn a:hover {
  background: rgba(255, 255, 255, 0.2);
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .fixed_nav {
    top: 73px;
  }
  .fixed_nav .box {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
  }
  .fixed_nav .item {
    height: auto;
  }
  .fixed_nav .item_head .logo {
    width: 4vw;
    height: 4.3vw;
    margin-right: 1vw;
  }
  .fixed_nav .item_head .head {
    font-size: 1.3vw;
    line-height: 1.2;
  }
  .fixed_nav .item_head .head .l {
    font-size: 2vw;
  }
  .fixed_nav .item_link a {
    padding: 2vw 1vw;
    align-items: center;
  }
  .fixed_nav .item_link .icon {
    width: 3vw;
  }
  .fixed_nav .item_link p {
    font-size: 1.5vw;
    padding-bottom: 0vw;
    padding-left: 1vw;
    flex-direction: column;
  }
  .fixed_nav .item_link p .l {
    font-size: 1.8vw;
    padding-bottom: 0.3vw;
  }
  .fixed_nav .item_link .w_ttl {
    padding-top: 1vw;
  }
  .fixed_nav .item_link p .l2 {
    padding-top: 0.3vw;
    padding-bottom: 0;
  }
  .fixed_nav .item_btn {
    padding-left: 1vw;
  }
  .fixed_nav .item_btn + .item_btn {
    padding-left: 1vw;
  }
  .fixed_nav .item_btn a {
    width: 13vw;
    font-size: 1.4vw;
    border-radius: 2.3vw;
    padding: 1.4vw 0;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
@media only screen and (max-width: 767px) {
  .fixed_nav {
    top: 0;
  }
}
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .fixed_nav .inner {
    padding: 0;
  }
  .fixed_nav .box {
    justify-content: flex-start;
  }
  .fixed_nav .item {
    height: auto;
  }
  .fixed_nav .item_head {
    width: 18vw;
    padding: 0;
  }
  .fixed_nav .item_head .logo {
    width: 14vw;
    height: auto;
    margin: 0 auto;
  }
  .fixed_nav .item_link {
    width: 19vw;
  }
  .fixed_nav .item_link_01 {
    border-left: 1px solid #C70A6D;
  }
  .fixed_nav .item_link a {
    width: 100%;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 1.5vw 0;
  }
  .fixed_nav .item_link a:hover {
    /*background: inherit;*/
  }
  .fixed_nav .item_link .icon {
    display: block;
    width: 8vw;
  }
  .fixed_nav .item_link p {
    font-size: 2.5vw;
    line-height: 1.2;
    margin-top: 1vw;
    padding-left: 0.5vw;
  }
  .fixed_nav .item_link p .m {
    font-size: 3vw;
  }
  .fixed_nav .item_link p .l {
    font-size: 3.3vw;
  }
  .fixed_nav .item_link p .paramount {
    font-size: 2.7vw;
  }
  .fixed_nav .item_btn {
    text-align: center;
    margin: 0 auto;
    padding-left: 0;
    border-left: 1px solid #C70A6D;
  }
  .fixed_nav .item_btn + .item_btn {
    padding-left: 0;
  }
  .fixed_nav .item_btn a {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    height: 100%;
    font-size: 2.5vw;
    line-height: 1.2;
    font-weight: 400;
    border-radius: 0;
    border: none;
    padding: 1vw;
    padding-left: 2vw;
  }
  .fixed_nav .item_btn a:hover {
    /*background: inherit;*/
  }
  .fixed_nav .item_head .head {
    display: block;
    font-size: 2.5vw;
    text-align: center;
    padding-left: 1.4vw;
  }
  .fixed_nav .item_head .head .m {
    font-size: 3vw;
  }
  .fixed_nav .item_head .head span {
    display: block;
    font-size: 3vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	flex_container

===============================================================*/
.flex_container {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-top: -40px;
}

.flex_container .item {
  flex-basis: auto;
  margin-top: 40px;
}

/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .flex_container {
    margin-top: -4vw;
  }
  .flex_container .item {
    margin-top: 4vw;
  }
} /* for SP max-width: 736px */
/*----------------------------------------------------------------
アイテム比率
----------------------------------------------------------------*/
.flex_container .item_2_1 {
  width: 48%;
  margin-right: 4%;
}

.flex_container .item_3_1 {
  width: 31%;
  margin-right: 3.5%;
}

.flex_container .item_4_1 {
  width: 23%;
  margin-right: 2.6666%;
}

.flex_container .item_5_1 {
  width: 18.75%;
  margin-right: 1.5625%;
}

.flex_container .item_2_1:nth-child(2n),
.flex_container .item_3_1:nth-child(3n),
.flex_container .item_4_1:nth-child(4n),
.flex_container .item_5_1:nth-child(5n) {
  margin-right: 0;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
  /*4→3カラム*/
  .flex_container .item_4_1,
  .flex_container .item_4_1:nth-child(4n) {
    width: 31%;
    margin-right: 3.5%;
  }
  /*5→4カラム*/
  .flex_container .item_5_1,
  .flex_container .item_5_1:nth-child(5n) {
    width: 23%;
    margin-right: 2.6666%;
  }
  .flex_container .item_4_1:nth-child(3n),
  .flex_container .item_5_1:nth-child(4n) {
    margin-right: 0;
  }
} /* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  /*2→1カラム*/
  /*3→1カラム*/
  .flex_container .item_2_1,
  .flex_container .item_3_1 {
    width: 100%;
    margin-right: 0;
  }
  /*4→2カラム*/
  /*5→2カラム*/
  .flex_container .item_4_1,
  .flex_container .item_4_1:nth-child(3n),
  .flex_container .item_4_1:nth-child(4n),
  .flex_container .item_5_1,
  .flex_container .item_5_1:nth-child(4n),
  .flex_container .item_5_1:nth-child(5n) {
    width: 48%;
    margin-right: 4%;
  }
  .flex_container .item_4_1:nth-child(2n),
  .flex_container .item_5_1:nth-child(2n) {
    margin-right: 0;
  }
} /* for SP max-width: 736px */
/*===============================================================

	genre_selecter

===============================================================*/
.genre_selecter {
  transition: hover 0.3s;
}

.genre_selecter .genre_selecter_inner {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 100% !important;
  gap: 10px;
}

.genre_selecter li {
  width: calc((100% - 30px) / 4);
}

/* .genre_selecter li:last-child {
  opacity: 0;
  pointer-events: none;
} */
.genre_selecter li a {
  display: block;
  background: #fff;
  color: #000;
  height: 100%;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding: 8px;
  font-size: 14px;
  line-height: 1.4;
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.5);
}

.genre_selecter li a .label {
  display: block;
  background: #E40077;
  color: #fff;
  font-size: 14px;
  width: 23px;
  line-height: 23px;
  text-align: center;
}

.genre_selecter li a .txt {
  display: block;
  font-size: 16px;
  line-height: 23px;
  font-weight: 700;
  margin-left: 10px;
}

.genre_selecter li a .new {
  display: block;
  background: #F5D200;
  color: #333;
  font-size: 14px;
  line-height: 23px;
  border-radius: 50px;
  padding: 0 5px;
  margin-left: auto;
  font-weight: bold;
}

.genre_selecter li a .small {
  font-size: 80%;
}

.genre_selecter li a:hover, .genre_selecter li.active a {
  text-decoration: none;
  background: #E40077;
  color: #fff;
}

.genre_selecter li a:hover .label, .genre_selecter li.active a .label {
  background: #fff;
  color: #E40077;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
  /* .genre_selecter .genre_selecter_inner {
  	justify-content: flex-start;
  }
  .genre_selecter li {
  	width: calc((100% - 20px)/3);
  }
  .genre_selecter li:nth-child(3n) {
  	margin-right: 0;
  }
  .genre_selecter li a {
  	padding: 8px;
  	font-size: 12px;
  } */
  /* .genre_selecter li a .label {
  	font-size: 13px;
  	width: 20px;
  	line-height: 20px;
  	font-size: 14px;
  } */
  .genre_selecter li {
    width: calc((100% - 20px) / 3);
  }
  .genre_selecter .genre_selecter_inner {
    justify-content: flex-start;
  }
  .genre_selecter li a .new {
    font-size: 13px;
    line-height: 20px;
    padding: 0 3px;
  }
  .genre_selecter li a .small {
    font-size: 80%;
  }
  .genre_selecter li a:hover, .genre_selecter li.active a {
    text-decoration: none;
    background: #E40077;
    color: #fff;
  }
  .genre_selecter li a:hover .label, .genre_selecter li.active a .label {
    background: #fff;
    color: #E40077;
  }
}
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .genre_selecter {
    /* overflow-x: scroll; */
    background: #fff;
  }
  .genre_selecter li {
    width: calc((100% - 0px) / 4);
  }
  .genre_selecter .genre_selecter_inner {
    gap: 0;
    justify-content: inherit;
  }
  .genre_selecter li a {
    display: block;
  }
  .genre_selecter li a .txt {
    margin-left: 0;
    padding-top: 6px;
    display: block;
    font-size: 2.9vw;
    line-height: 1.4;
  }
  .genre_selecter li a .small {
    font-size: 80%;
  }
  .genre_selecter li a:hover, .genre_selecter li.active a {
    text-decoration: none;
    background: #E40077;
    color: #fff;
  }
  .genre_selecter li a:hover .label, .genre_selecter li.active a .label {
    background: #fff;
    color: #E40077;
  }
  /* .genre_selecter .genre_selecter_inner {
      justify-content: end;
  } */
}
/* for SP max-width: 736px */
@media only screen and (max-width: 300px) {
  .genre_selecter li {
    height: 100%;
  }
}
/*===============================================================

	genre_selecter

===============================================================*/
.genre_selecter.deactive {
  opacity: 0.8;
  pointer-events: none;
}

/*===============================================================

	about

===============================================================*/
.about {
  margin-top: 220px !important;
}

.about .item {
  width: auto;
  max-width: 720px;
  margin: 0 auto;
  margin-top: 30px;
  padding: 40px;
  background: #F8F8F8;
  border: 1px solid #DDDDDD;
  border-radius: 44px;
}

.about .item .img {
  width: 85%;
  margin: 0 auto;
  mix-blend-mode: darken;
}

.about .item .txt {
  margin-top: 40px;
}

.about .item .head {
  font-size: 20px;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
}

.about .item p {
  font-size: 16px;
  line-height: 1.8;
  margin-top: 20px;
}

.about .item .cap {
  font-size: 11px;
  line-height: 1.4;
  margin-top: 20px;
}

.about .item .btn_detail {
  margin-top: 30px;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .about {
    margin-top: 14vw !important;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .about {
    margin-top: 16vw !important;
  }
  .about .item {
    margin-top: 4vw;
    padding: 4vw;
    border-radius: 10vw;
  }
  .about .item .img {
    width: 100%;
  }
  .about .item .txt {
    margin-top: 4vw;
  }
  .about .item .head {
    font-size: 3.5vw;
  }
  .about .item p {
    font-size: 3.5vw;
    margin-top: 2vw;
  }
  .about .item .cap {
    font-size: 2.5vw;
    margin-top: 2vw;
  }
  .about .item .btn_detail {
    margin-top: 4vw;
  }
} /* for SP max-width: 736px */
.accordion_detail {
  margin-left: 26%;
  margin-top: 50px;
  width: 74%;
}

.accordion_detail .accordion .accordion_header {
  position: relative;
  transition: all 0.3s;
}

.accordion_detail .accordion {
  border-radius: 10px;
  border: solid 1px #E2E2E2;
}

.accordion_detail .accordion h5 {
  padding: 15px 12px;
  font-size: 16px;
}

.accordion_detail .accordion .accordion_header::before, .accordion_detail .accordion .accordion_header::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  right: 10px;
  margin: auto;
  width: 25px;
  height: 2px;
  background: #E40077;
  transition: all 0.3s;
}

.accordion_detail .accordion .accordion_header::after {
  transform: rotate(90deg);
}

.accordion_detail .accordion .accordion_header.active::after {
  transform: rotate(0deg);
}

.accordion_detail .accordion .accordion_body {
  border-top: solid 1px #E2E2E2;
  background: #fcfcfc;
  padding: 30px 0;
  border-radius: 0 0 10px 10px;
}

.accordion_detail .accordion_body .img_block {
  display: flex;
  width: 100%;
  margin: auto;
  justify-content: space-around;
  align-items: center;
}

.accordion_detail .accordion_body .img {
  width: 44%;
}

.accordion_detail .accordion_body .txt_block {
  padding: 20px 12px 0;
}

.accordion_detail .accordion_body .img .txt {
  font-size: 10px;
  margin-top: 10px;
  line-height: 1.4;
  color: #333;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
  .accordion_detail {
    width: 80%;
  }
} /* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .accordion_detail {
    margin-left: 0%;
    margin-top: 8vw;
    width: 100%;
  }
  .accordion_detail .accordion h5 {
    padding: 4vw;
    font-size: 3.5vw;
  }
  .accordion_detail .accordion .accordion_header2::before, .accordion_detail .accordion .accordion_header2::after {
    top: 0;
    right: 4vw;
    width: 6vw;
    height: 2px;
  }
  .accordion_body2 .img {
    margin: 6vw auto;
  }
  .accordion_detail .accordion_body .txt_block {
    padding: 6vw 3vw 0;
    font-size: 3.5vw;
  }
  .accordion_detail .accordion_body .img .txt {
    font-size: 2.4vw;
    margin-top: 2vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	howto	
-------------------------------------------------------------*/
.howto {
  width: auto;
  max-width: 720px;
  margin: 0 auto;
  margin-top: 20px !important;
  padding: 30px;
  background: #F8F8F8;
  border: 1px solid #DDDDDD;
  border-radius: 10px;
}

.howto .head {
  position: relative;
  font-size: 18px;
  line-height: 30px;
  font-weight: 700;
  cursor: pointer;
}

.howto .head:before,
.howto .head:after {
  content: "";
  position: absolute;
  top: 14px;
  right: 0;
  margin: auto;
  width: 30px;
  height: 3px;
  background: #333;
  transition: all 0.3s;
}

.howto .head:after {
  transform: rotate(90deg);
}

.howto .head.active:after {
  transform: rotate(0deg);
}

.howto .step {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: flex-start;
  border-top: 1px solid #878787;
  padding: 25px 10px;
}

.howto .step_01 {
  margin-top: 25px;
}

.howto .step_02,
.howto .step_03 {
  border-top: 1px solid #E93817;
}

.howto .step .tag {
  width: 65px;
  height: 65px;
  color: #fff;
  font-size: 16px;
  line-height: 1;
  font-weight: 700;
  text-align: center;
  padding: 8px 10px 10px;
  border-radius: 12px;
}

.howto .step .tag .num {
  display: block;
  font-size: 34px;
}

.howto .step p {
  flex: 1;
  font-weight: 700;
  margin: 0 20px;
}

.howto .step .img {
  width: 36%;
}

/* タブレット以下 */
/* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .howto {
    margin-top: 6vw !important;
    padding: 4vw;
    border-radius: 3vw;
  }
  .howto .head {
    font-size: 4vw;
    line-height: 6vw;
  }
  .howto .head:before,
  .howto .head:after {
    top: 3vw;
    width: 6vw;
    height: 2px;
  }
  .howto .step {
    padding: 4vw 0;
  }
  .howto .step_01 {
    margin-top: 4vw;
  }
  .howto .step .tag {
    align-self: center;
    width: 10vw;
    height: 10vw;
    font-size: 2.5vw;
    padding: 1.5vw 2vw 2vw;
    border-radius: 1vw;
  }
  .howto .step .tag .num {
    font-size: 4.5vw;
  }
  .howto .step p {
    align-self: center;
    font-weight: 700;
    margin: 0;
    padding-left: 2vw;
  }
  .howto .step .img {
    width: 80%;
    margin: 0 auto;
    margin-top: 4vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	app	
-------------------------------------------------------------*/
.howto .app {
  padding: 30px;
  margin-top: 20px;
  background: #fff;
}

.howto .app .title {
  font-size: 16px;
  line-height: 1.6;
  font-weight: 700;
  text-align: center;
}

.howto .app .lead {
  font-size: 16px;
  line-height: 1.6;
  text-align: center;
  margin-top: 10px;
}

.howto .app .lead .bold {
  font-weight: 700;
}

.howto .app .items {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 30px;
}

.howto .app .items .item {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 0 15px;
}

.howto .app .items .item .img {
  width: 60px;
}

.howto .app .items .item .txt {
  flex: 1;
  margin-left: 10px;
}

.howto .app .items .item .txt p:nth-child(1) {
  font-size: 12px;
  line-height: 1.4;
  font-weight: 700;
}

.howto .app .items .item .txt p:nth-child(2) {
  font-size: 12px;
  line-height: 1.4;
  font-weight: 700;
  margin-top: 5px;
  padding-top: 5px;
  border-top: 1px dotted #707070;
}

.howto .app .items .item .txt p:nth-child(2) .s {
  font-size: 10px;
}

.howto .app .btn_detail {
  margin-top: 30px;
}

/* タブレット以下 */
/* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .howto .app {
    padding: 4vw;
    margin-top: 4vw;
  }
  .howto .app .title {
    font-size: 3.8vw;
  }
  .howto .app .lead {
    font-size: 3vw;
    margin-top: 2vw;
  }
  .howto .app .items {
    flex-direction: column;
    margin-top: 4vw;
  }
  .howto .app .items .item {
    margin: 0;
  }
  .howto .app .items .item + .item {
    margin-top: 4vw;
  }
  .howto .app .items .item .img {
    width: 12vw;
  }
  .howto .app .items .item .txt {
    margin-left: 2vw;
  }
  .howto .app .items .item .txt p:nth-child(1) {
    font-size: 3vw;
  }
  .howto .app .items .item .txt p:nth-child(2) {
    font-size: 3vw;
    margin-top: 1vw;
    padding-top: 1vw;
  }
  .howto .app .items .item .txt p:nth-child(2) .s {
    font-size: 2.5vw;
  }
  .howto .app .btn_detail {
    margin-top: 4vw;
  }
  .howto .app .btn_detail a {
    padding: 2vw 0;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	img_wrp	
-------------------------------------------------------------*/
.img_wrp {
  position: relative;
}

.section_point_01 .img_wrp .illust_01 {
  position: absolute;
  z-index: 2;
  bottom: -80px;
  left: -100px;
  width: 59%;
  height: 39%;
  background: url("../images/point_01/illust_01.png") no-repeat center/contain;
}

.section_point_01 .img_wrp .illust_shape {
  position: absolute;
  z-index: 1;
  bottom: -120px;
  right: -200px;
  width: 107%;
  height: 65%;
  background: url("../images/point_01/illust_shape.png") no-repeat center/contain;
}

.section_point_02 .img_wrp .illust_01 {
  position: absolute;
  z-index: 2;
  bottom: -130px;
  right: -110px;
  width: 41%;
  height: 63%;
  background: url("../images/point_02/illust_01.png") no-repeat center/contain;
}

.section_point_02 .img_wrp .illust_shape {
  position: absolute;
  z-index: 1;
  bottom: -170px;
  left: -175px;
  width: 118%;
  height: 56%;
  background: url("../images/point_02/illust_shape.png") no-repeat center/contain;
}

.section_point_03 .img_wrp .illust_01 {
  position: absolute;
  z-index: 2;
  bottom: -180px;
  left: -270px;
  width: 55%;
  height: 55%;
  background: url("../images/point_03/illust_01.png") no-repeat center/contain;
}

.section_point_03 .img_wrp .illust_shape {
  position: absolute;
  z-index: 1;
  bottom: -165px;
  right: -200px;
  width: 116%;
  height: 64%;
  background: url("../images/point_03/illust_shape.png") no-repeat center/contain;
}

.img_wrp .img {
  border-radius: 20px;
  overflow: hidden;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .section_point_01 .img_wrp .illust_01 {
    bottom: -6vw;
    left: -3vw;
  }
  .section_point_01 .img_wrp .illust_shape {
    bottom: -10vw;
    right: -21vw;
  }
  .section_point_02 .img_wrp .illust_01 {
    bottom: -10vw;
    right: -10vw;
  }
  .section_point_02 .img_wrp .illust_shape {
    bottom: -12vw;
    left: -15vw;
  }
  .section_point_03 .img_wrp .illust_01 {
    bottom: -10vw;
    left: -3vw;
  }
  .section_point_03 .img_wrp .illust_shape {
    bottom: -10vw;
    right: -21vw;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_point_01 .img_wrp .illust_01 {
    bottom: -12vw;
    left: 0vw;
    width: 50%;
    height: 30%;
  }
  .section_point_01 .img_wrp .illust_shape {
    bottom: -16vw;
    right: -24vw;
    width: 80%;
    height: 43%;
  }
  .section_point_02 .img_wrp .illust_01 {
    bottom: -10vw;
    right: 0vw;
    width: 35%;
    height: 50%;
  }
  .section_point_02 .img_wrp .illust_shape {
    bottom: -12vw;
    left: -15vw;
    width: 80%;
    height: 36%;
  }
  .section_point_03 .img_wrp .illust_01 {
    bottom: -12vw;
    left: 0vw;
    width: 51%;
    height: 46%;
  }
  .section_point_03 .img_wrp .illust_shape {
    bottom: -10vw;
    right: -10vw;
    width: 84%;
    height: 41%;
  }
  .img_wrp .img {
    border-radius: 0;
    overflow: hidden;
    margin: auto;
  }
} /* for SP max-width: 736px */
/*===============================================================

	mainvisual

===============================================================*/
.mainvisual {
  position: relative;
  padding: 30px 0 0;
  overflow: hidden;
}

.mainvisual .box {
  display: flex;
  flex-direction: row-reverse;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  /*width: 960px;
  margin: 0 auto;*/
  margin-top: 70px;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .mainvisual .illust_01 {
    top: 2vw;
    left: -2vw;
    width: 22.1vw;
    height: 31.4vw;
  }
  .mainvisual .illust_02 {
    top: 6vw;
    right: -10vw;
    width: 35.7vw;
    height: 25.5vw;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
@media screen and (max-width: 1030px) {
  .mainvisual {
    padding: 0;
  }
  .mainvisual .content_width {
    padding: 0 3vw 0;
  }
  .mainvisual:before {
    top: -3vw;
    width: 22.1vw;
    height: 31.4vw;
    transform: translateX(-37vw);
  }
  .mainvisual:after {
    top: 4vw;
    width: 35.7vw;
    height: 25.5vw;
    transform: translateX(41vw);
  }
  .mainvisual .box {
    width: 100%;
    margin-top: 6vw;
  }
} /* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .mainvisual .content_width {
    padding: 0;
  }
  .mainvisual:before {
    position: static;
    margin: 0 auto;
    /* width: 93.45vw; */
    width: 100%;
    height: 37.38vw;
    background: url("../images/mainvisual/illust_sp.png") no-repeat center/cover;
    transform: none;
    display: block;
  }
  .mainvisual:after {
    display: none;
  }
  .mainvisual .box {
    display: block;
    margin-top: 4vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------


mypage info	


-------------------------------------------------------------*/
.bg_black_pink {
  display: flex;
  justify-content: center;
  background: #B7045F;
  padding: 40px 0;
  margin-top: 50px;
  align-items: center;
}

.bg_black_pink .content_width {
  display: flex;
  align-items: center;
  width: 100%;
  justify-content: space-between;
}

.mainvisual .info {
  padding: 15px 20px;
  background: #E40077;
  border-radius: 10px;
  width: 630px;
}

.mainvisual .info dl {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
}

.mainvisual .info dt {
  width: 80px;
  color: #fff;
  font-size: 15px;
  margin-bottom: 2px;
  line-height: 1.8;
  font-weight: 700;
  background: #B7045F;
  border-radius: 10px;
  height: -moz-max-content;
  height: max-content;
  text-align: center;
}

.mainvisual .info dd {
  /* width: calc(100% - 80px); */
  color: #fff;
  font-size: 15px;
  line-height: 1.8;
}

.mainvisual .info .date {
  font-weight: 700;
  padding-right: 10px;
  padding-left: 10px;
  font-size: 15px;
}

.under {
  -webkit-text-decoration: #F7B3D6 solid underline;
  text-decoration: #F7B3D6 solid underline;
  text-underline-offset: 7px;
}

.under:hover {
  text-decoration: none;
  transition: transform 0.4s;
}

.mainvisual .info dd a {
  position: relative;
  color: #fff;
  padding-right: 19px;
}

.mainvisual .info dd .blank {
  background: url("../images/asset/icon_blank_white.svg") no-repeat center right/14px auto;
}

.mainvisual .info dd a:hover {
  text-decoration: none;
  transition: all 0.3s;
}

.mypage .btn_detail {
  margin-top: 0;
  margin-left: auto;
  width: 420px;
}

.mypage .head {
  text-align: center;
  color: #fff;
  font-size: 16px;
  padding-bottom: 10px;
}

.mypage .btn_detail a {
  color: #E40077;
  border: none;
  font-size: 18px;
  padding: 22px 20px 22px 0px;
}

.mypage .btn_detail a:after {
  border-top: solid 2px #E40077;
  border-right: solid 2px #E40077;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
  .mainvisual .info {
    width: 60%;
  }
  .mypage {
    width: 100%;
    margin: auto;
    max-width: 400px;
  }
  .mypage .btn_detail {
    width: 100%;
  }
  .mypage .head {
    font-size: 1.8vw;
  }
  .mainvisual .info dd {
    font-size: 1.5vw;
  }
  .bg_black_pink {
    padding: 3vw 3vw;
  }
  .bg_black_pink .content_width {
    padding: 0;
  }
  .mypage .btn_detail a {
    font-size: 2vw;
    padding: 2vw 2vw 2vw 0;
  }
  .mainvisual .info .date {
    display: block;
    padding-left: 1vw;
  }
}
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .bg_black_pink {
    margin-top: 5vw;
    padding: 6vw 3vw;
  }
  .bg_black_pink .content_width {
    flex-direction: column;
  }
  .mainvisual .info {
    padding: 3vw;
    margin-top: 6vw;
    border-radius: 1vw;
  }
  .mainvisual .info .date {
    padding-left: 23vw;
    font-size: 3.5vw;
    padding-bottom: 1vw;
    border-radius: 1vw;
  }
  .mainvisual .info, .mypage {
    width: 100%;
    margin: auto;
  }
  .mypage {
    padding-top: 0vw;
    width: 90%;
    max-width: 100%;
  }
  .mypage .head {
    font-size: 3.5vw;
  }
  .mainvisual .info dl {
    position: relative;
  }
  .mainvisual .info dt {
    width: 20vw;
    font-size: 3.5vw;
    margin-bottom: 1vw;
    position: absolute;
    text-align: center;
    left: 0vw;
    top: 0.3vw;
  }
  .mainvisual .info dd {
    width: 100%;
    font-size: 3.5vw;
  }
  .mainvisual .info dd a {
    text-underline-offset: 3px;
    padding-right: 4vw;
  }
  .mainvisual .info dd .blank {
    background: url("../images/asset/icon_blank_white.svg") no-repeat center right/3.5vw auto;
  }
  .bg_black_pink {
    flex-direction: column;
  }
  .mypage .btn_detail a {
    font-size: 3.8vw;
    line-height: 1.3;
    padding: 4vw 0;
    border-radius: 11.2vw;
  }
  .mypage .btn_detail a:after {
    right: 4vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	txtlinks	
-------------------------------------------------------------*/
.mainvisual .txtlinks {
  flex: 1;
}

.mainvisual .txtlinks p {
  color: #fff;
  font-size: 16px;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
}

.mainvisual .txtlinks p + p {
  margin-top: 10px;
}

.mainvisual .txtlinks a {
  color: #fff;
  text-underline-offset: 7px;
  padding: 9px 0;
  border: solid 1px;
  align-items: center;
  display: block;
  border-radius: 7px;
}

.mainvisual .txtlinks a:hover {
  opacity: 0.7;
  transition: transform 0.4s;
}

.mainvisual .txtlinks .down a {
  position: relative;
}

.mainvisual .txtlinks .down a:after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  top: 13px;
  left: auto;
  bottom: auto;
  right: 13px;
  margin: auto;
  border-top: solid 1.5px #fff;
  border-right: solid 1.5px #fff;
  transform: rotate(135deg);
}

/* .mainvisual .txtlinks .blank a {
  position: relative;
	background: url("../images/asset/icon_blank_white.svg") no-repeat center right / 18px auto;
} */
.mainvisual .txtlinks .blank {
  position: relative;
}

.mainvisual .txtlinks .blank a:after {
  content: "";
  position: absolute;
  width: 16px;
  height: 16px;
  top: 13px;
  left: auto;
  bottom: auto;
  right: 10px;
  margin: auto;
  background: url(../images/asset/icon_blank_white.svg);
  background-repeat: no-repeat;
}

.mainvisual .txtlinks a:hover {
  text-decoration: none;
}

.mainvisual .select_p_txt {
  padding-top: 5px;
  display: block;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
  .mainvisual .txtlinks p {
    font-size: 1.6vw;
  }
  .mainvisual .txtlinks p + p {
    margin-top: 10px;
  }
  .mainvisual .txtlinks a {
    color: #fff;
    /* -webkit-text-decoration: #F7B3D6 solid underline;
    text-decoration: #F7B3D6 solid underline; */
    text-underline-offset: 7px;
    padding-right: 23px;
    font-size: 1.4vw;
  }
  .mainvisual .txtlinks .down a:after {
    top: 1vw;
    right: 1.3vw;
  }
  /* .mainvisual .txtlinks .blank a {
  	background: url("../images/asset/icon_blank_white.svg") no-repeat center right / 18px auto;
  } */
  .mainvisual .txtlinks a:hover {
    text-decoration: none;
  }
} /* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .mainvisual .txtlinks {
    display: flex;
    justify-content: space-around;
    padding-bottom: 4vw;
    border-bottom: solid 1px #fff;
  }
  .mainvisual .txtlinks p {
    font-size: 3.5vw;
  }
  .mainvisual .txtlinks p + p {
    margin-top: 0;
  }
  .mainvisual .txtlinks .down a, .mainvisual .txtlinks a {
    border: none;
    font-size: 3.3vw;
    font-weight: bold;
    padding: 0;
  }
  .mainvisual .txtlinks .down a:after {
    border: none;
  }
  .mainvisual .txtlinks .blank a:after {
    background: none;
  }
  .mainvisual .txtlinks a:hover {
    opacity: 1;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	link	
-------------------------------------------------------------*/
.mainvisual .pc {
  display: block;
}

.mainvisual .link {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 70%;
  margin-right: 30px;
}

.mainvisual .sp {
  display: none;
}

.mainvisual .link .item {
  width: 32%;
}

.mainvisual .link .item a {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
  color: #333;
  text-decoration: none;
  padding: 30px 0;
  background: #fff;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.1);
  border-radius: 10px;
  transition: transform 0.2s;
}

.mainvisual .link .item a:after {
  content: "";
  position: absolute;
  bottom: -30px;
  left: 0;
  right: 0;
  margin: auto;
  width: 30px;
  height: 30px;
  border-top: 15px solid #fff;
  border-right: 15px solid transparent;
  border-bottom: 15px solid transparent;
  border-left: 15px solid transparent;
  box-sizing: border-box;
  filter: drop-shadow(0 6px 6px rgba(0, 0, 0, 0.1));
}

.mainvisual .link .item a:hover {
  transform: scale(1.05);
}

.mainvisual .link .item .head {
  position: absolute;
  top: -35px;
  left: 0;
  right: 0;
  margin: auto;
  width: 126px;
  height: 55px;
}

.mainvisual .link .item .s {
  display: block;
}

.mainvisual .link .item p {
  font-size: 23px;
  line-height: 1.4;
  font-weight: 800;
  text-align: center;
}

.mainvisual .link .item p .l {
  font-size: 56px;
  line-height: 1;
}

.mainvisual .link .item p .m {
  font-size: 30px;
  line-height: 0;
}

.mainvisual .link .item p .m.marker {
  background: linear-gradient(transparent 65%, rgba(245, 210, 0, 0.8) 0%);
}

.mainvisual .link .item p .l.marker {
  background: linear-gradient(transparent 67%, rgba(245, 210, 0, 0.8) 70%, rgba(245, 210, 0, 0.8) 91%, transparent 0%);
}

.mainvisual .link .item .pack .cap {
  display: block;
  font-size: 90%;
  /* padding-top: 5px; */
  font-weight: 600;
}

/* タブレット以下 */
@media screen and (max-width: 1030px) {
  .mainvisual .link {
    width: 70%;
  }
  .mainvisual .link .item a {
    padding: 2.5vw 0;
    border-radius: 1vw;
  }
  .mainvisual .link .item .head {
    top: -3.5vw;
    width: 12.6vw;
    height: 5.5vw;
  }
  .mainvisual .link .item p {
    font-size: 2.2vw;
  }
  .mainvisual .link .item p .l {
    font-size: 5.4vw;
  }
  .mainvisual .link .item p .m {
    font-size: 3vw;
  }
} /* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .mainvisual .pc {
    display: none;
  }
  .mainvisual .sp {
    display: flex;
  }
  .mainvisual .link {
    width: 100%;
    margin-top: 9vw;
    margin-right: 0;
    padding: 0 3vw;
  }
  .mainvisual .link .item {
    width: 48.6%;
  }
  .mainvisual .link .item a {
    padding: 4vw 0;
    box-shadow: 0 1vw 1vw rgba(0, 0, 0, 0.1);
  }
  .mainvisual .link .item a:after {
    bottom: -3.5vw;
    left: 0;
    right: 0;
    margin: auto;
    width: 3.5vw;
    height: 3.5vw;
    border-top: 1.75vw solid #fff;
    border-right: 1.75vw solid transparent;
    border-bottom: 1.75vw solid transparent;
    border-left: 1.75vw solid transparent;
    filter: drop-shadow(0 3vw 2vw rgba(0, 0, 0, 0.1));
  }
  .mainvisual .link .item a:hover {
    /*transform: none;*/
  }
  .mainvisual .link .item .head {
    top: -6.5vw;
    width: 35vw;
    height: 8.25vw;
  }
  .mainvisual .link .item p {
    font-size: 4vw;
    line-height: 1.4;
  }
  .mainvisual .link .item p .l {
    font-size: 9.4vw;
  }
  .mainvisual .link .item p .m {
    font-size: 3.8vw;
  }
  .mainvisual .link .item p .sp_none {
    display: none;
  }
  .mainvisual .link .item .palamount_txt {
    font-size: 3.2vw;
    line-height: 1.8;
    display: block;
    padding-top: 2vw;
  }
  .mainvisual .link .item .palamount_txt span {
    font-size: 150%;
    margin-right: 0.7vw;
  }
  .mainvisual .link .item .select_c {
    margin-right: 0.7vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	mainvisual	 #2025/10/28 追記 
-------------------------------------------------------------*/
.mainvisual {
  /* タブレット以下 */
  /* for tablet max-width: 1030px */
  /* SP向けレイアウトの指定：～736px */
  /* for SP max-width: 736px */
}
.mainvisual .label {
  font-size: 60%;
  display: block;
  margin-bottom: 5px;
  /* font-weight: normal; */
  width: -moz-fit-content;
  width: fit-content;
  color: #555;
  line-height: 1;
  margin: 0 auto 2px;
  background: #E40077;
  padding: 8px;
  color: #fff;
}
@media only screen and (max-width: 736px) {
  .mainvisual .label {
    font-size: 72%;
    margin-bottom: 1vw;
  }
}

.section_kv {
  position: relative;
  display: flex;
  align-items: center;
  background: url(../images/mainvisual/main.jpg) no-repeat center/cover;
  min-height: 260px;
  max-width: 1030px;
  width: 100%;
  margin: auto;
  color: #fff;
  /* タブレット以下 */
  /* for tablet max-width: 1030px */
  /* SP向けレイアウトの指定：～736px */
  /* for SP max-width: 736px */
}
.section_kv .inner {
  margin: auto;
}
.section_kv .title {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  font-size: 60px;
  font-weight: 900;
  line-height: 1.2;
  text-align: center;
}
.section_kv .title span {
  display: flex;
}
.section_kv .title .small {
  font-size: 60%;
  display: block;
}
.section_kv .title .en {
  letter-spacing: 2px;
}
.section_kv .title .let_all {
  margin-left: 5px;
}
.section_kv .title .let {
  margin-right: -10px;
}
.section_kv .title .let2 {
  margin-right: -5px;
}
.section_kv .title .let3 {
  margin-left: 3px;
  margin-right: 2px;
}
.section_kv .title .com {
  display: block;
  margin-top: -5px;
}
.section_kv .small {
  width: 100%;
}
@media only screen and (max-width: 736px) {
  .section_kv {
    background: url(../images/mainvisual/main_sp.jpg) no-repeat center/cover;
    min-height: auto;
  }
  .section_kv .inner {
    padding: 30vw 0;
  }
  .section_kv .title {
    font-size: 9.5vw;
  }
  .section_kv .title .let_all {
    margin-left: 1vw;
  }
  .section_kv .title .en {
    letter-spacing: 0.3vw;
  }
  .section_kv .title .let {
    margin-right: -1.5vw;
  }
  .section_kv .title .let2 {
    margin-right: -0.5vw;
  }
  .section_kv .title .com {
    margin-top: -0.6vw;
  }
}

/*===============================================================

	pack

===============================================================*/
.pack {
  border-radius: 30px;
}

.pack .wide_width {
  padding: 50px;
}

.pack .head_wrp {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: baseline;
}

.pack .head_wrp .sub {
  font-size: 28px;
  line-height: 1;
  font-weight: 700;
  margin-right: 10px;
}

.pack .head_wrp .head {
  font-size: 32px;
  line-height: 1;
  font-weight: 700;
}

.pack .head_wrp .head .l {
  font-size: 52px;
}

.pack .itemlist .item .mega {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  margin-top: 25px;
  margin-bottom: 25px;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  /* .pack {
  	padding: 50px 30px;
  } */
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .pack {
    width: 100vw;
    margin: 0 calc(50% - 50vw) 0;
    border-radius: 0;
  }
  .pack .wide_width {
    padding: 10vw 5vw 5vw;
  }
  .pack .btn_wide_width {
    padding: 5vw 5vw 10vw;
  }
  .pack .head_wrp {
    flex-direction: column;
    align-items: center;
  }
  .pack .head_wrp .sub {
    font-size: 4vw;
    margin-right: 0;
  }
  .pack .head_wrp .head {
    font-size: 7vw;
    margin-top: 2vw;
  }
  .pack .head_wrp .head .l {
    font-size: 9vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	itemlist	
-------------------------------------------------------------*/
.pack .itemlist {
  position: relative;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 20px;
}

.pack .itemlist_01 .illust_02 {
  position: absolute;
  bottom: 0;
  right: 60px;
  width: 272px;
  height: 200px;
  background: url("../images/point_01/illust_02.png") no-repeat center/contain;
}

.pack .itemlist_03 .illust_03 {
  position: absolute;
  bottom: -140px;
  right: -90px;
  width: 489px;
  height: 331px;
  background: url("../images/point_01/illust_03.png") no-repeat center/contain;
}

.pack .itemlist .item {
  width: 49%;
  background: #fff;
  border-radius: 4px;
  padding: 15px;
  margin-top: 20px;
}

.block_stream .item {
  margin: 20px auto;
}

.pack .itemlist .item .head {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  align-items: center;
  color: #fff;
  font-size: 22px;
  line-height: 38px;
  font-weight: 700;
  padding: 4px;
  padding-right: 10px;
  border-radius: 8px;
}

.pack .itemlist .item .block_stream {
  margin-top: 0;
  padding-top: 60px;
}

.pack .block_stream .item {
  position: relative;
  width: 72%;
}

.pack .block_stream .item .icihoshi {
  color: #E40077;
  font-size: 32px;
  font-weight: 700;
  border-radius: 12px;
  position: absolute;
  top: -35px;
  left: -50px;
  transform: rotate(-13deg);
}

.pack .itemlist .item .head .tag {
  font-size: 28px;
  line-height: 38px;
  font-weight: 700;
  text-align: center;
  width: 38px;
  height: 38px;
  background: #fff;
  border-radius: 8px;
  margin-right: 15px;
}

.pack .itemlist .item p {
  font-size: 18px;
  line-height: 1.6;
  padding: 0 15px;
  margin-top: 15px;
}

.pack .itemlist .item .ch {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: flex-start;
  margin-top: 10px;
}

.pack .itemlist .item .ch .logo {
  width: 14.5%;
  margin-right: 2.6%;
}

.pack .itemlist .item .ch .logo:nth-child(6n) {
  margin-right: 0;
}

.pack .itemlist .item .ch .logo a {
  display: block;
}

.pack .itemlist .item .ch .logo a:hover {
  opacity: 0.7;
}

.pack .itemlist .item .logo {
  width: 270px;
}

.pack .itemlist .item .btn {
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
}

.pack .itemlist .item .mega .btn {
  width: -moz-fit-content;
  width: fit-content;
  margin-left: 30px;
}

.pack .itemlist .item .btn a {
  position: relative;
  display: block;
  color: #333;
  font-size: 14px;
  line-height: 20px;
  font-weight: 700;
  text-align: center;
  text-decoration: none;
  padding: 15px 45px 15px 35px;
  border: 1px solid #E2E2E2;
  background: #fff;
  border-radius: 50px;
  box-sizing: border-box;
}

.pack .itemlist .item .btn a:hover {
  opacity: 0.7;
}

.pack .itemlist .item .btn a:after {
  content: "";
  position: absolute;
  width: 8px;
  height: 8px;
  top: 0;
  left: auto;
  bottom: 0;
  right: 15px;
  margin: auto;
  border-top: solid 2px #333;
  border-right: solid 2px #333;
  transform: rotate(45deg);
}

.pack .itemlist .item .cap {
  color: #939393;
  font-size: 12px;
  line-height: 1.4;
  padding: 0;
  margin-top: 20px;
}

.pack .itemlist .item .cap + .cap {
  margin-top: 10px;
}

.pack .itemlist .item .btn_anime {
  margin-top: 55px;
}

.pack .itemlist .item .cap_block {
  display: flex;
  align-items: center;
}

.pack .itemlist .item .cap_block .logo {
  width: 55px;
}

.pack .itemlist .item .cap_block .logo a {
  display: block;
}

.pack .itemlist .item .cap_block .logo a:hover {
  opacity: 0.7;
}

.pack .itemlist .item .cap_block .cap {
  margin-top: 0;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .pack .itemlist_01 .illust_02 {
    right: 6vw;
    width: 27%;
    height: 38%;
  }
  .pack .itemlist_03 .illust_03 {
    bottom: -4vw;
    right: -5vw;
    width: 48%;
    height: 89%;
  }
  .pack .itemlist .item {
    padding: 15px;
  }
  .pack .block_stream .item {
    width: 80%;
  }
  .pack .itemlist .item .head {
    font-size: 2.2vw;
    line-height: 3.8vw;
    padding: 0.4vw;
    padding-right: 1vw;
    border-radius: 8px;
  }
  .pack .itemlist .item .head_new:after {
    padding: 0.5vw;
    font-size: 1.4vw;
    border-radius: 12px;
  }
  .pack .itemlist .item .head .tag {
    font-size: 2.8vw;
    line-height: 3.8vw;
    width: 3.8vw;
    height: 3.8vw;
    border-radius: 8px;
    margin-right: 1.5vw;
  }
  .pack .itemlist .item p {
    font-size: 1.8vw;
    padding: 0 1.5vw;
    margin-top: 15px;
  }
  .pack .itemlist .item .ch {
    margin-top: 10px;
  }
  .pack .itemlist .item .btn a {
    font-size: 1.4vw;
    line-height: 2vw;
    padding: 1.1vw 2.8vw 1.1vw 1.5vw;
    border-radius: 2.1vw;
  }
  .pack .itemlist .item .mega .btn a:after {
    right: 1.5vw;
  }
  .pack .itemlist .item .cap {
    font-size: 1.2vw;
    margin-top: 20px;
  }
  .pack .itemlist .item .cap + .cap {
    margin-top: 1vw;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
@media screen and (max-width: 1030px) {
  .pack .itemlist .item .mega {
    justify-content: center;
    align-items: center;
  }
  .pack .itemlist .item .mega .btn {
    margin: 0vw auto;
    width: 45%;
  }
  .pack .itemlist .item .mega .logo {
    width: 50%;
    margin: 0vw auto 0;
  }
} /* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .pack .itemlist {
    margin-top: 2vw;
  }
  .block_stream .itemlist {
    margin-top: 4vw;
  }
  .pack .itemlist_01 .illust_02 {
    display: none;
  }
  .pack .itemlist_03 .illust_03 {
    bottom: -65vw;
    right: 17vw;
    width: 66%;
    height: 82%;
  }
  .pack .itemlist .item {
    width: 100%;
    margin-right: 0;
    padding: 2vw;
    margin-top: 4vw;
    border-radius: 0;
  }
  .pack .itemlist .item .head {
    font-size: 4.4vw;
    line-height: 7.6vw;
    padding: 0.8vw;
    padding-right: 2vw;
    border-radius: 4px;
  }
  .pack .itemlist .item .head_new:after {
    padding: 1vw;
    font-size: 2.8vw;
    border-radius: 6px;
  }
  .pack .itemlist .item .head .tag {
    font-size: 5.6vw;
    line-height: 7.6vw;
    width: 7.6vw;
    height: 7.6vw;
    border-radius: 4px;
    margin-right: 3vw;
  }
  .pack .itemlist .item p {
    font-size: 3.6vw;
    padding: 0;
    margin-top: 2vw;
  }
  .pack .itemlist .item .ch {
    margin-top: 2vw;
  }
  .pack .itemlist .item .mega {
    margin-top: 2vw;
  }
  .pack .block_stream .item .icihoshi {
    top: -6.2vw;
    left: -4vw;
    font-size: 5.2vw;
    transform: rotate(-7deg);
  }
  .pack .block_stream .item {
    margin-bottom: 0;
  }
  .pack .itemlist .item .mega .logo {
    width: 90%;
    margin: 2vw auto 3vw;
  }
  .pack .itemlist .item .mega .btn {
    width: -moz-fit-content;
    width: fit-content;
    margin-top: 3vw;
  }
  .pack .itemlist .item .btn {
    margin: 2vw auto;
  }
  .pack .itemlist .item .btn a {
    font-size: 3.5vw;
    line-height: 4.5vw;
    padding: 3.2vw 7vw 3.2vw 5vw;
    border-radius: 6vw;
  }
  .pack .itemlist .item .mega .btn a:after {
    right: 3vw;
  }
  .pack .itemlist .item .btn a:after {
    width: 1.5vw;
    height: 1.5vw;
    right: 3vw;
  }
  .pack .itemlist .item .cap {
    font-size: 2.4vw;
    margin-top: 2vw;
  }
  .pack .itemlist .item .cap + .cap {
    margin-top: 2vw;
  }
  .block_stream {
    margin-top: 0;
    padding-top: 1vw;
  }
  .pack .itemlist .item .cap_block .logo {
    width: 14.5%;
  }
} /* for SP max-width: 736px */
/*===============================================================

	page_head

===============================================================*/
.page_head {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding: 35px 0;
}

.page_head .sub {
  font-size: 16px;
  line-height: 1;
  font-weight: 800;
  margin-right: 5px;
}

.page_head .head {
  font-size: 40px;
  line-height: 44px;
  font-weight: 800;
  text-align: center;
}

.page_head .head .l {
  font-size: 44px;
  margin-right: -5px;
}

.page_head .head .m {
  font-size: 38px;
}

.page_head .head .s {
  font-size: 30px;
}

.page_head .head .emp {
  position: relative;
}

.page_head .head .emp:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 6px;
  height: 6px;
  background: #E40077;
  border-radius: 3px;
}

/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .page_head {
    padding: 6vw 0;
  }
  .page_head .sub {
    display: block;
    font-size: 4vw;
    margin-right: 0;
    padding-bottom: 4vw;
  }
  .page_head .head {
    font-size: 7vw;
    line-height: 8.3vw;
  }
  .page_head .head .l {
    font-size: 8vw;
  }
  .page_head .head .m {
    font-size: 7vw;
  }
  .page_head .head .s {
    font-size: 5vw;
  }
  .page_head .head .emp:before {
    width: 1.5vw;
    height: 1.5vw;
    border-radius: 0.75vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	PAGETOP

===============================================================*/
#btn_pagetop {
  width: 100%;
  overflow: hidden;
}

#btn_pagetop a {
  display: block;
  position: fixed;
  right: -300px;
  top: 0;
  width: 50px;
  height: 50px;
  color: #fff;
  background-color: #E40077;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  z-index: 101;
  border-radius: 30px;
  border: solid 1px #E40077;
}

#btn_pagetop a:hover {
  background: #f22c93;
}

#btn_pagetop a:after {
  position: absolute;
  content: " ";
  width: 14px;
  height: 14px;
  top: 20px;
  left: 0;
  right: 0;
  bottom: auto;
  margin: auto;
  border-top: solid 2px #fff;
  border-left: solid 2px #fff;
  transform: rotate(45deg);
  transition: 0.2s;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  #btn_pagetop a {
    width: 40px;
    height: 40px;
  }
  #btn_pagetop a:after {
    width: 12px;
    height: 12px;
    top: 17px;
    left: 0;
    right: 0;
    bottom: auto;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	content_selected_program
-------------------------------------------------------------*/
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .content_selected_program {
    margin-top: 0 !important;
  }
}
.selected_program {
  max-width: 858px;
  /*min-height: 600px;*/
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: -20px;
}

.selected_program::after {
  content: "";
  width: calc((100% - 18px) / 3);
  height: 0;
}

.selected_program .item {
  margin-top: 20px;
  width: calc((100% - 18px) / 3);
  background: #fff;
  transition: opacity 0.5s;
}

.selected_program .item a {
  color: #000;
}

.selected_program .item a:hover {
  text-decoration: none;
}

.selected_program .item .thumbnail {
  background: #eee;
}

.selected_program .item .thumbnail img {
  /*width: 100%;
  height: auto;*/
  width: 100%;
  height: 158px;
  -o-object-fit: contain;
     object-fit: contain;
  font-family: "object-fit:contain;";
}

.selected_program .item .txt {
  padding: 10px;
}

.selected_program .item .txt .title {
  font-size: 15px;
  line-height: 1.4;
  font-weight: bold;
}

.selected_program .item .txt .date {
  margin-top: 10px;
  font-size: 14px;
  line-height: 1.2;
}

.selected_program .item .txt .channel {
  width: -moz-fit-content;
  width: fit-content;
  color: #999;
  font-size: 12px;
  line-height: 1.5;
  padding: 3px 5px;
  border: 1px solid #999;
  border-radius: 5px;
  margin-top: 5px;
}

.content_selected_program .selected_program .item .date:last-of-type {
  width: -moz-fit-content;
  width: fit-content;
  color: #999;
  font-size: 12px;
  line-height: 1.5;
  padding: 3px 5px;
  border: 1px solid #999;
  border-radius: 5px;
  margin-top: 5px;
}

/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .selected_program {
    /*min-height: 300px;*/
    background: #eee;
    width: 100%;
    padding: 0 1vw;
    /*margin-top: 0;*/
    box-sizing: border-box;
    margin-top: 0 !important;
  }
  .selected_program .item {
    margin-top: 3vw;
    width: calc((100% - 1vw) / 2);
    background: #fff;
  }
  .selected_program .item a {
    color: #000;
  }
  .selected_program .item a:hover {
    text-decoration: none;
  }
  .selected_program .item .thumbnail {
    background: #fff;
  }
  .selected_program .item .thumbnail img {
    height: 32vw;
  }
  .selected_program .item .txt {
    padding: 3vw;
  }
  .selected_program .item .txt .title {
    font-size: 3.5vw;
  }
  .selected_program .item .txt .date {
    margin-top: 3vw;
    font-size: 3.4vw;
  }
  .selected_program .item .txt .channel {
    font-size: 3.2vw;
    padding: 0.8vw 1vw;
    border-radius: 1.33333vw;
  }
  .content_selected_program .selected_program .item .date:last-of-type {
    font-size: 3.2vw;
    padding: 0.8vw 1vw;
    border-radius: 1.33333vw;
  }
}
/* for SP max-width: 736px */
/*-------------------------------------------------------------
	selected_program loading	
-------------------------------------------------------------*/
.selected_program.loading {
  min-height: 100px;
  background: url("../images/tv_select_pickup/loader.gif") no-repeat center center;
}

.selected_program.loading .item {
  opacity: 0;
}

/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .selected_program.loading {
    min-height: 50vh;
  }
}
/* for SP max-width: 736px */
/*-------------------------------------------------------------
	selected_program nodata	
-------------------------------------------------------------*/
.selected_program .nodata {
  display: none;
  padding: 50px;
  text-align: center;
  width: 100%;
  border: solid 1px #fff;
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}

.selected_program .nodata p {
  font-size: 16px;
  color: #fff;
}

/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .selected_program .nodata {
    margin: 5vw;
    padding: 5vw;
    border: solid 1px #ddd;
  }
  .selected_program .nodata p {
    font-size: 4vw;
    color: #000;
  }
}
/* for SP max-width: 736px */
/*-------------------------------------------------------------
	txt_wrp	
-------------------------------------------------------------*/
.txt_wrp .box {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}

.txt_wrp .box .tag {
  width: 23%;
}

.txt_wrp .box .txt {
  width: 73%;
}

.txt_wrp .box .txt .lead {
  font-size: 24px;
  line-height: 1.4;
  font-weight: 700;
}

.txt_wrp .box .txt .head {
  font-size: 40px;
  line-height: 1.2;
  font-weight: 800;
  margin-top: 10px;
}

.txt_wrp .box .txt .head .m {
  font-size: 60px;
}

.txt_wrp .box .txt .head .mm {
  font-size: 60px;
  line-height: 1.2;
}

.txt_wrp .box .txt .head .mmm {
  font-size: 55px;
  line-height: 1.2;
}

.txt_wrp .box .txt .head .paramount {
  display: inline-block;
  /* margin-top: -12px; */
}

.paramount + .paramount {
  margin-bottom: 10px;
}

.txt_wrp .box .txt .head .l {
  font-size: 96px;
  /* vertical-align: text-bottom; */
}

.txt_wrp .box .txt .head .marker {
  background: linear-gradient(transparent 65%, rgba(245, 210, 0, 0.8) 0%);
}

.txt_wrp .box .txt .head_circle {
  position: relative;
  margin-top: -1vw;
}

.txt_wrp .box .txt .head_circle .tag {
  position: absolute;
  bottom: 0;
  right: 30%;
  width: 70px;
  height: 70px;
  color: #fff;
  font-size: 21px;
  line-height: 1.2;
  font-weight: 700;
  text-align: center;
  letter-spacing: 1px;
  background: #22B3DE;
  border-radius: 50%;
  padding-top: 13.4px;
}

.txt_wrp .box .txt .head_circle .tag .s {
  display: block;
  font-size: 15px;
}

.txt_wrp .box .txt .head .circle .s {
  font-size: 15px;
}

.txt_wrp .detail {
  font-weight: 700;
  padding-left: 26%;
  margin-left: auto;
  margin-right: 0;
  margin-top: 30px;
}

.txt_wrp .cap {
  color: #939393;
  font-size: 12px;
  line-height: 1.4;
  padding-left: 26%;
  margin-left: auto;
  margin-right: 0;
  margin-top: 30px;
}

.txt_wrp .cap2 {
  margin-top: 10px;
}

.txt_wrp .cap a {
  color: #939393;
}

.txt_wrp .cap a:hover {
  opacity: 0.7;
}

.txt_wrp .cap + .cap {
  margin-top: 10px;
}

.txt_wrp .btn_detail {
  margin-left: 26%;
  margin-top: 30px;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .btn_link {
    margin-left: auto !important;
  }
  .txt_wrp .box .txt .lead {
    font-size: 1.8vw;
  }
  .txt_wrp .box .txt .head {
    font-size: 3.3vw;
    margin-top: 1vw;
  }
  .txt_wrp .box .txt .head .m {
    font-size: 5vw;
  }
  .txt_wrp .box .txt .head .mm {
    font-size: 5.5vw;
  }
  .txt_wrp .box .txt .head .mmm {
    font-size: 6vw;
  }
  .txt_wrp .box .txt .head .l {
    font-size: 9vw;
  }
  .txt_wrp .box .txt .head_circle .tag {
    bottom: 0;
    right: 25%;
    width: 7vw;
    height: 7vw;
    color: #fff;
    font-size: 2.1vw;
    padding-top: 1.34vw;
  }
  .txt_wrp .box .txt .head_circle .tag .s {
    font-size: 1.5vw;
  }
  .txt_wrp .detail {
    margin-top: 2vw;
  }
  .txt_wrp .cap {
    font-size: 1.2vw;
    margin-top: 2vw;
  }
  .txt_wrp .cap2 {
    margin-top: 10px;
  }
  .txt_wrp .cap + .cap {
    margin-top: 1vw;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .txt_wrp .box .txt .lead {
    font-size: 3.8vw;
  }
  .txt_wrp .box .txt .head {
    font-size: 6.6vw;
    margin-top: 1vw;
  }
  .txt_wrp .box .txt .head_circle {
    margin-top: -1vw;
  }
  .txt_wrp .box .txt .head .m {
    font-size: 8vw;
  }
  .txt_wrp .box .txt .head .mm {
    font-size: 9vw;
  }
  .txt_wrp .box .txt .head .mmm {
    font-size: 10vw;
  }
  /* .txt_wrp .box .txt .head .paramount{
  	margin-top: -2vw;
  } */
  .paramount + .paramount {
    margin-bottom: 2vw;
  }
  .txt_wrp .box .txt .head .l {
    font-size: 13vw;
  }
  .txt_wrp .box .txt .head_circle .tag {
    right: 40%;
    width: 11.2vw;
    height: 11.2vw;
    font-size: 3.36vw;
    padding-top: 2.144vw;
  }
  .txt_wrp .box .txt .head_circle .tag .s {
    font-size: 2.4vw;
  }
  .txt_wrp .detail {
    font-size: 3.5vw;
    padding: 0;
    margin-top: 4vw;
  }
  .txt_wrp .cap {
    font-size: 2.4vw;
    padding: 0;
    margin-top: 4vw;
  }
  .txt_wrp .cap2 {
    margin-top: 2vw;
  }
  .txt_wrp .cap + .cap {
    margin-top: 2vw;
  }
  .txt_wrp .btn_detail {
    margin-left: auto;
    padding: 0;
    margin-top: 6vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	section_bottom_line

===============================================================*/
.section_bottom_line {
  border-bottom: 57px solid #E40077;
}

/* タブレット以下 */
/* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_bottom_line {
    border-bottom: 9.3vw solid #E40077;
  }
} /* for SP max-width: 736px */
/*===============================================================

	section_change

===============================================================*/
.section_change .headline {
  position: relative;
}

.section_change .headline .illust_01 {
  position: absolute;
  top: -35px;
  left: 0;
  right: 0;
  margin: auto;
  width: 141px;
  height: 118px;
  background: url("../images/change/illust_01.png") no-repeat center/contain;
  transform: translateX(-350px);
}

.section_change .headline .illust_02 {
  position: absolute;
  top: -35px;
  right: 50px;
  width: 199.5px;
  height: 242.5px;
  background: url("../images/change/illust_02.png") no-repeat center/contain;
}

.section_change .headline .title {
  display: block;
  align-items: center;
  font-size: 40px;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
}

.section_change .headline .title .s {
  font-size: 16px;
  font-weight: 800;
  display: block;
}

.section_change .headline .note {
  width: 620px;
  font-size: 15px;
  line-height: 1.5;
  font-weight: 700;
  text-align: center;
  margin: 0 auto;
  margin-top: 20px;
  padding: 20px;
  background: #FFF2F0;
  border-radius: 3px;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .section_change .headline .illust_01 {
    top: -35px;
    width: 141px;
    height: 118px;
    transform: translateX(-250px);
  }
  .section_change .headline .illust_02 {
    top: -35px;
    width: 20vw;
    height: 24vw;
  }
  .section_change .headline .title {
    display: block;
  }
  .section_change .headline .title .s {
    display: block;
    margin-right: 0;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_change .headline .illust_01 {
    top: -3vw;
    left: -3vw;
    right: auto;
    width: 22vw;
    height: 18vw;
    transform: none;
  }
  .section_change .headline .illust_02 {
    top: -7vw;
    left: auto;
    right: -4vw;
    margin: auto;
    width: 23vw;
    height: 27.8vw;
  }
  .section_change .headline .title {
    font-size: 6vw;
  }
  .section_change .headline .title .s {
    font-size: 3.5vw;
  }
  .section_change .headline .note {
    width: 100%;
    font-size: 3.5vw;
    margin-top: 6vw;
    padding: 2vw 1vw;
    border-radius: 0;
  }
} /* for SP max-width: 736px */
/*===============================================================

	change

===============================================================*/
.change .cap_r {
  color: #939393;
  font-size: 12px;
  line-height: 1.4;
  text-align: right;
  margin-top: 10px;
}

.change .item {
  border: 2px solid #E2E2E2;
  border-radius: 10px;
  overflow: hidden;
  margin-top: 30px;
}

.change .item + .item {
  margin-top: 50px;
}

.change .item .head {
  position: relative;
  font-size: 20px;
  line-height: 30px;
  font-weight: 700;
  padding: 20px;
  background: #fff;
  cursor: pointer;
}

.change .item .head:before,
.change .item .head:after {
  content: "";
  position: absolute;
  top: 34px;
  right: 20px;
  margin: auto;
  width: 30px;
  height: 3px;
  background: #E40077;
  transition: all 0.3s;
}

.change .item .head:after {
  transform: rotate(90deg);
}

.change .item .head.active:after {
  transform: rotate(0deg);
}

.change .item .box {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  padding: 30px;
}

.change .item_01 .box {
  background: #FFF2F0;
}

.change .item_02 .box {
  background: #F2F2F2;
}

.change .item .step {
  position: relative;
  width: 31.5%;
  padding: 10px 10px 20px;
  background: #fff;
  border-radius: 5px;
}

.change .item .step:after {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  top: 0;
  left: auto;
  bottom: 0;
  right: -18px;
  margin: auto;
  border-top: solid 4px #E40077;
  border-right: solid 4px #E40077;
  transform: rotate(45deg);
}

.change .item .step:last-of-type:after {
  display: none;
}

.change .item .step .tag {
  position: absolute;
  top: -18.5px;
  left: -18.5px;
  width: 37px;
  height: 37px;
}

.change .item .step .img {
  width: 100%;
}

.change .item .step p {
  line-height: 1.8;
  margin-top: 10px;
}

.change .item .step p .bold {
  font-weight: 700;
}

.change .detail {
  background: #F2F2F2;
  border-radius: 12px;
  padding: 40px;
  margin-top: 30px;
}

.change .detail .head {
  font-size: 18px;
  line-height: 1;
  font-weight: 700;
  text-align: center;
}

.change .detail .btn_detail {
  margin-top: 20px;
}

.change .detail .caution {
  font-size: 14px;
  line-height: 1.8;
  text-align: center;
  margin-top: 20px;
}

.change .detail .caution a {
  color: #000;
  text-decoration: underline;
}

.change .detail .caution a:hover {
  text-decoration: none;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .change .item .box {
    padding: 20px;
  }
  .change .item .step:after {
    right: -1.7vw;
    width: 1vw;
    height: 1vw;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .change .cap_r {
    font-size: 2.5vw;
    text-align: center;
    margin-top: 2vw;
  }
  .change .item {
    margin-top: 4vw;
    padding: 0;
    border-radius: 3vw;
  }
  .change .item .head {
    font-size: 4vw;
    line-height: 6vw;
    padding: 4vw;
  }
  .change .item .head:before,
  .change .item .head:after {
    top: 6.5vw;
    right: 4vw;
    width: 6vw;
    height: 2px;
  }
  .change .item .box {
    padding: 4vw 2vw;
    border-radius: 0;
  }
  .change .item .step {
    width: 100%;
    padding: 2vw 2vw 4vw;
    border-radius: 1vw;
  }
  .change .item .step + .step {
    margin-top: 6vw;
  }
  .change .item .step:after {
    width: 3vw;
    height: 3vw;
    top: auto;
    left: 0;
    bottom: -4vw;
    right: 0;
    border-top: solid 1vw #E40077;
    border-right: solid 1vw #E40077;
    transform: rotate(135deg);
  }
  .change .item .step .tag {
    top: -1vw;
    left: -1vw;
    width: 8vw;
    height: 8vw;
  }
  .change .item .step .img {
    width: 100%;
  }
  .change .item .step p {
    margin-top: 2vw;
  }
  .change .detail {
    border-radius: 3vw;
    padding: 5vw 4vw;
    margin-top: 4vw;
  }
  .change .detail .head {
    font-size: 3.5vw;
  }
  .change .detail .btn_detail {
    margin-top: 4vw;
  }
  .change .detail .caution {
    font-size: 2.8vw;
    margin-top: 4vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	section_lane_ondemand,bg_light_pink

===============================================================*/
.section_lane_ondemand {
  margin: 40px 0 20px;
  padding-bottom: 20px;
}

.bg_light_pink .wide_width + .wide_width {
  padding-top: 0;
}

/* タブレット以下 */
/* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_lane_ondemand {
    margin: 10vw 0 10vw;
    padding-bottom: 0;
  }
  .bg_light_pink .wide_width + .wide_width {
    padding-top: 5vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	section_lane_telasa	
-------------------------------------------------------------*/
.section_lane_telasa {
  padding-bottom: 0;
}

/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_lane_telasa {
    padding-bottom: 0;
  }
} /* for SP max-width: 736px */
/*===============================================================

	point_head

===============================================================*/
.point_head {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  transform: translateX(30px);
}

.point_head_r {
  flex-direction: row-reverse;
  transform: translateX(-30px);
}

.point_head .txt_wrp {
  width: 48%;
}

.point_head .img_wrp {
  width: 48%;
}

/* タブレット以下 */
/* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .point_head {
    display: block;
    transform: none;
  }
  .point_head_r {
    transform: none;
  }
  .point_head .txt_wrp {
    width: 100%;
  }
  .point_head .img_wrp {
    width: 100%;
    margin-top: 8vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	section_point_01

===============================================================*/
.section_point_01 .bnr {
  position: relative;
  z-index: 1;
  width: 600px;
  border-radius: 12px;
  overflow: hidden;
}

/* タブレット以下 */
/* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_point_01 .section_inner {
    padding-bottom: 0;
  }
  .section_point_01 .bnr {
    width: 100%;
    border-radius: 3vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	section_point_02

===============================================================*/
/* .section_point_02 .section_inner{

	padding: 110px 0 80px 0;
} */
/* タブレット以下 */
/* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_point_02 .section_inner {
    padding: 10vw 5vw 10vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	section_point_03

===============================================================*/
/* タブレット以下 */
/* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_point_03 .section_inner {
    padding-bottom: 15vw;
  }
} /* for SP max-width: 736px */
/*-------------------------------------------------------------
	netfliex_bnr	
-------------------------------------------------------------*/
.netfliex_bnr {
  position: relative;
  margin-top: 50px;
}

.netfliex_bnr .c_title {
  font-size: 26px;
  display: block;
  text-align: center;
  line-height: 1.3;
  font-weight: 800;
}

.netfliex_bnr .big {
  font-size: 140%;
  margin-right: 5px;
  background: linear-gradient(transparent 65%, rgba(245, 210, 0, 0.8) 0%);
}

.netfliex_bnr_border::before, .netfliex_bnr_border::after {
  width: 65px !important;
  position: absolute;
  top: 35px;
  display: block;
}

.netfliex_bnr_border::after {
  right: 0;
}

.netfliex_bnr_link {
  display: block;
}

.netfliex_bnr_link:hover {
  opacity: 0.7;
}

.netfliex_bnr .img {
  margin-top: 20px;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .netfliex_bnr_border::before, .netfliex_bnr_border::after {
    width: 30px !important;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .netfliex_bnr_border::before, .netfliex_bnr_border::after {
    width: 4vw !important;
  }
  .netfliex_bnr {
    margin-top: 10vw;
  }
  .netfliex_bnr_border::before, .netfliex_bnr_border::after {
    top: 10%;
  }
  .netfliex_bnr .c_title {
    font-size: 5.33333vw;
    line-height: 1.2;
  }
  .netfliex_bnr .img {
    margin-top: 6vw;
  }
} /* for SP max-width: 736px */
/*===============================================================

	section_tv_select_pickup

===============================================================*/
.section_tv_select_pickup {
  position: relative;
  background: #e40077;
  background: linear-gradient(135deg, #e40077 0%, #ed5c49 100%);
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr="#e40077", endColorstr="#ed5c49",GradientType=1 );
  color: #000;
}

.section_tv_select_pickup .headline + .content,
.section_tv_select_pickup .content + .content {
  margin-top: 50px;
}

.section_tv_select_pickup .headline {
  position: relative;
}

.section_tv_select_pickup .headline .illust_01 {
  position: absolute;
  top: -150px;
  left: -20px;
  width: 285px;
  height: 203px;
  background: url("../images/tv_select_pickup/illust_01.png") no-repeat center/contain;
}

.section_tv_select_pickup .headline .title {
  display: block;
  align-items: center;
  color: #fff;
  font-size: 40px;
  line-height: 1.4;
  font-weight: 700;
  text-align: center;
}

.section_tv_select_pickup .headline .title .s {
  font-size: 16px;
  font-weight: 800;
  display: block;
}

/* タブレット以下 */
@media screen and (max-width: 1120px) {
  .section_tv_select_pickup .headline .illust_01 {
    top: -14vw;
    left: 0;
    width: 28.5vw;
    height: 20.3vw;
  }
  .section_tv_select_pickup .headline .title {
    display: block;
  }
  .section_tv_select_pickup .headline .title .s {
    display: block;
  }
} /* for tablet max-width: 1120px */
/* タブレット以下 */
/* for tablet max-width: 1030px */
/* SP向けレイアウトの指定：～736px */
@media only screen and (max-width: 736px) {
  .section_tv_select_pickup {
    /*background: #eee;*/
  }
  .section_tv_select_pickup .section_inner {
    padding: 10vw 0 10vw;
  }
  .section_tv_select_pickup .headline + .content,
  .section_tv_select_pickup .content + .content {
    margin-top: 6vw;
  }
  .section_tv_select_pickup .headline .illust_01 {
    top: -20vw;
    left: -2vw;
    width: 34.5vw;
    height: 24.3vw;
  }
  .section_tv_select_pickup .headline .title {
    font-size: 6vw;
  }
  .section_tv_select_pickup .headline .title .s {
    font-size: 3.5vw;
  }
} /* for SP max-width: 736px *//*# sourceMappingURL=style.css.map */