@charset "utf-8";
/* CSS Document */

/*------------------------------
	Base
------------------------------*/

/*	Reset
------------------------------*/
html, body, div, span, applet, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,a, abbr, acronym, address, big, cite, code,del, dfn, em, img, ins, kbd, q, s, samp,small, strike, strong, sub, sup, tt, var,b, u, i, center, dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, embed,figure, figcaption, footer, header, main,menu, nav, output, ruby, section, summary,time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	font-style:inherit;
	font-weight:inherit;
	font-size:100%;
	vertical-align:baseline;
}
main, article, aside, details, figcaption, figure, footer, header, menu, nav, section {
  display:block;
}
html {
	overflow-y:scroll;
	color:#333;
	font-size:62.5%;
	font-family:sans-serif;
	-webkit-text-size-adjust:100%;
	text-size-adjust:100%;
}
body {
	width:100%;
	height:100%;
	font-size:1.6em; /* for GC. defalut font-size:1.6rem = 16px */
	line-height:1.5;
	background-color:#212121;
	word-break:break-word;
}
*, *:before, *:after {
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
}
input, textarea {
	margin:0;
	padding:0;
	border:none;
}
input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
	color:#a9a9a9;
}
input {
	-webkit-appearance:none;
	appearance:none;
	outline:none;
}
ol, ul {
	list-style:none;
}
table{
	border-collapse:collapse;
	border-spacing:0;
	width:100%;
}
caption, th, td {
	text-align:left;
}
a {
	color:#333;
	text-decoration:none;
	outline:none;
}
img {
	width:100%;
	height:auto;
	font-size:0;
	vertical-align:top;
}
hr {
	height:1px;
	margin:0;
	border:0;
}
.cf:after {
	content:"";
	clear:both;
	display:block;
}

/*--　Hidden Analysis tag --*/
body > img, body > iframe { display:none !important; }
img[src^="//googleads.g.doubleclick.net"],
img[src^="//cm.g.doubleclick.net"] { display:none !important; }


/*	Icons
------------------------------*/
/*-- Common Icon --*/
[class^="cmn_icon_"],
[class*=" cmn_icon_"] {
	display:inline-block;
	vertical-align:middle;
	background-image:url(/commonY15/img/sprite/icons_common.png?v=161020);
	background-repeat:no-repeat;
	-webkit-background-size:168px 103px;
	background-size:168px 103px;
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
}
.cmn_icon_dom { width:22px; height:23px; background-position:0 0; }
.cmn_icon_inter { width:22px; height:23px; background-position:-27px 0; }
.cmn_icon_tour { width:22px; height:23px; background-position:-54px 0; }
.cmn_icon_jmb { width:22px; height:23px; background-position:-81px 0; }
.cmn_icon_pagetop { width:44px; height:44px; background-position:0px -28px; }
.cmn_icon_relpage { width:44px; height:44px; background-position:-49px -28px; }
.cmn_icon_faq { width:26px; height:26px; background-position:0 -77px; }
.cmn_icon_qa { width:41px; height:24px; background-position:-31px -77px; }
.cmn_icon_search { width:14px; height:14px; background-position:-77px -77px; }
.cmn_icon_alert { width:20px; height:20px; background-position:-96px -77px; }
.cmn_icon_alert_wt { width:20px; height:20px; background-position:-121px -77px; }
.cmn_icon_bc_home { width:10px; height:9px; background-position:-146px -77px; }
.cmn_icon_bc_arw { width:7px; height:6px; background-position:-161px -77px; }


/*	Utility
------------------------------*/
/*-- Display --*/
.disBlo { display:block !important; }
.disInl { display:inline !important; }
.disInB { display:inline-block !important; }
.disTbl { display:table !important; width:100%; }
.disTbc { display:table-cell !important; }
.disNon { display:none !important; }
.visHid { visibility:hidden !important; }
.visVis { visibility:visible !important; }
.hide { position:absolute; width:0; height:0; overflow:hidden; }
.fixed { position:fixed !important; }
.linkNon { pointer-events:none; }
.sp_disNon{display:none!important;}
/*-- Img --*/
.fullImg { width:100%; max-width:none; }

/*-- Text --*/
.fs10 {font-size:1.0rem !important; }
.fs12 {font-size:1.2rem !important; }
.fs14 {font-size:1.4rem !important; }
.fs16 {font-size:1.6rem !important; }
.fs18 {font-size:1.8rem !important; }
.fs20 {font-size:2.0rem !important; }
.fcRD {color:#c00 !important; }
.fcWT {color:#fff !important; }
.fcBK {color:#333 !important; }
.fcGY {color:#999 !important; }
.fwN { font-weight:normal !important; }
b,fwB { font-weight:bold !important; }
.nowrap { white-space:nowrap !important; }
.brAll { word-break:break-all !important; }
.ofHid { overflow:hidden !important; }

/*-- Background  --*/
.bgRD { background-color:#c00 !important; }
.bgGY { background-color:#f5f5f5 !important; }
.bgWT { background-color:#fff !important; }
.bgBK { background-color:#333 !important; }
.bgCL { background-color:transparent !important; }

/*-- Layout --*/
.floatL { float:left; }
.floatR { float:right; }

.alL { text-align:left !important; }
.alC { text-align:center !important; }
.alR { text-align:right !important; }

.vaT { vertical-align:top !important; }
.vaM { vertical-align:middle !important; }
.vaB { vertical-align:bottom !important; }
.vaBL { vertical-align:baseline !important; }
.vt{vertical-align:top!important; font-size: 90%;}
/*-- Border --*/
.brdrNon { border:none !important; }
.brdrGY { border:1px solid #eee; }

/*-- Margin --*/
.mgt0  { margin-top:0px !important; }
.mgt5  { margin-top:5px !important; }
.mgt10 { margin-top:10px !important; }
.mgt15 { margin-top:15px !important; }
.mgt20 { margin-top:20px !important; }
.mgt25 { margin-top:25px !important; }
.mgt30 { margin-top:30px !important; }
.mgt35 { margin-top:35px !important; }
.mgt40 { margin-top:40px !important; }
.mgt45 { margin-top:45px !important; }
.mgt50 { margin-top:50px !important; }
.mgr0  { margin-right:0px !important; }
.mgr5  { margin-right:5px !important; }
.mgr10 { margin-right:10px !important; }
.mgr15 { margin-right:15px !important; }
.mgr20 { margin-right:20px !important; }
.mgr25 { margin-right:25px !important; }
.mgr30 { margin-right:30px !important; }
.mgr35 { margin-right:35px !important; }
.mgr40 { margin-right:40px !important; }
.mgr45 { margin-right:45px !important; }
.mgr50 { margin-right:50px !important; }
.mgb0  { margin-bottom:0px !important; }
.mgb5  { margin-bottom:5px !important; }
.mgb10 { margin-bottom:10px !important; }
.mgb15 { margin-bottom:15px !important; }
.mgb20 { margin-bottom:20px !important; }
.mgb25 { margin-bottom:25px !important; }
.mgb30 { margin-bottom:30px !important; }
.mgb35 { margin-bottom:35px !important; }
.mgb40 { margin-bottom:40px !important; }
.mgb45 { margin-bottom:45px !important; }
.mgb50 { margin-bottom:50px !important; }
.mgl0  { margin-left:0px !important; }
.mgl5  { margin-left:5px !important; }
.mgl10 { margin-left:10px !important; }
.mgl15 { margin-left:15px !important; }
.mgl20 { margin-left:20px !important; }
.mgl25 { margin-left:25px !important; }
.mgl30 { margin-left:30px !important; }
.mgl35 { margin-left:35px !important; }
.mgl40 { margin-left:40px !important; }
.mgl45 { margin-left:45px !important; }
.mgl50 { margin-left:50px !important; }

/*-- Padding --*/
.pdt0  { padding-top:0px !important; }
.pdt5  { padding-top:5px !important; }
.pdt10 { padding-top:10px !important; }
.pdt15 { padding-top:15px !important; }
.pdt20 { padding-top:20px !important; }
.pdt25 { padding-top:25px !important; }
.pdt30 { padding-top:30px !important; }
.pdt35 { padding-top:35px !important; }
.pdt40 { padding-top:40px !important; }
.pdt45 { padding-top:45px !important; }
.pdt50 { padding-top:50px !important; }
.pdr0  { padding-right:0px !important; }
.pdr5  { padding-right:5px !important; }
.pdr10 { padding-right:10px !important; }
.pdr15 { padding-right:15px !important; }
.pdr20 { padding-right:20px !important; }
.pdr25 { padding-right:25px !important; }
.pdr30 { padding-right:30px !important; }
.pdr35 { padding-right:35px !important; }
.pdr40 { padding-right:40px !important; }
.pdr45 { padding-right:45px !important; }
.pdr50 { padding-right:50px !important; }
.pdb0  { padding-bottom:0px !important; }
.pdb5  { padding-bottom:5px !important; }
.pdb10 { padding-bottom:10px !important; }
.pdb15 { padding-bottom:15px !important; }
.pdb20 { padding-bottom:20px !important; }
.pdb25 { padding-bottom:25px !important; }
.pdb30 { padding-bottom:30px !important; }
.pdb35 { padding-bottom:35px !important; }
.pdb40 { padding-bottom:40px !important; }
.pdb45 { padding-bottom:45px !important; }
.pdb50 { padding-bottom:50px !important; }
.pdl0  { padding-left:0px !important; }
.pdl5  { padding-left:5px !important; }
.pdl10 { padding-left:10px !important; }
.pdl15 { padding-left:15px !important; }
.pdl20 { padding-left:20px !important; }
.pdl25 { padding-left:25px !important; }
.pdl30 { padding-left:30px !important; }
.pdl35 { padding-left:35px !important; }
.pdl40 { padding-left:40px !important; }
.pdl45 { padding-left:45px !important; }
.pdl50 { padding-left:50px !important; }

a:focus {outline:1px solid #cc0000;outline-offset:-4px;}


/*MV*/
#wrapper {
    font-family: "游ゴシック","ヒラギノ角ゴ ProN W3","メイリオ",Meiryo,"MS UI Gothic","Tahoma","Lucida Grande","ヒラギノ丸ゴ Pro W4",sans-serif;
    max-width: 100%;
    min-height: 100%;
    background-color: #fff;
    color: #000;
    position: relative;
    overflow: hidden;
}
.mv {
    position: relative;
    margin: 21.86vw 6.66vw 0;
}
.mv__head {
    position: absolute;
    width: 92vw;
    top: -16.53vw;
    left: -2.66vw;
    z-index: 1;
    opacity: 0;
}
.mv__inr {
    position: relative;
    text-align: center;
}
.mv__inrTxt {
    position: absolute;
    top: 12.8vw;
    left: 0;
    right: 0;
    width: 48.26vw;
    margin: auto;
    opacity: 0;
    z-index: 1;
}
.mv__inrBg {
    opacity: 0;
}
.btn--mv {
    position: absolute;
    bottom: -32vw;
    right: -3.8vw;
    font-size: 0;
    cursor: pointer;
    opacity: 0;
}
.btn--mv::before {
    content: "";
    display: inline-block;
    width: 28.26vw;
    height: 29.06vw;
    background-size: contain;
    vertical-align: middle;
    background-image: url(../img/btn_mv.png);
    background-repeat: no-repeat;
}
.mv__parts {
    position: absolute;
    opacity: 0;
}
.mv__parts--01 {
    width: 29.59vw;
    top: -3.73vw;
    right: -4vw; 
}
.mv__parts--02 {
    top: 6.93vw;
    right: -5.06vw;
    width: 19.46vw;
}
.mv__parts--03 {
    top: 22.13vw;
    right: -15.73vw;
    width: 40.8vw;
    z-index: 1;
}
.mv__parts--04 {
    bottom: -5.1vw;
    right: 5vw;
    width: 43vw;
    z-index: 1;
}
.mv__parts--04 img {
    transform: rotate(-17deg);
}
.mv__parts--05 {
    bottom: -7.46vw;
    left: 21.06vw;
    width: 31.46vw;
}
.mv__parts--06 {
    bottom: 15.2vw;
    left: 15.2vw;
    width: 14.66vw;
}
.mv__parts--07 {
    bottom: -5.86vw;
    left: -6.66vw;
    width: 30.4vw;
}
.mv__parts--08 {
    top: 19.2vw;
    left: -9.86vw;
    width: 24.26vw;
}

/*MV アニメーション~~~*/
.mv.is-active .animate__fadeInDown {
  -webkit-animation: fadeInDown .8s forwards;
  animation: fadeInDown .8s forwards;
}
@keyframes fadeInDown {
  0% {
    opacity: 0;
    -webkit-transform: translateY(-40px);
    transform: translateY(-40px);
  }
  100% {
    opacity: 1;
    -webkit-transform: translateY(0);
    transform: translateY(0);
  }
}
/*.mv.is-active .mv__inrTxt.animate__fadeInDown {
    -webkit-animation-delay: .8s;
    animation-delay: .8s;
}*/
.btn--mv:hover::before {
    content: "";
    background-image: url(../img/btn_mv_hover.png);
    background-repeat: no-repeat;
    animation: mvBtnHover .4s;
}
@keyframes mvBtnHover {
  from, to { transform: none; }
	70% { transform: scale(.99); }
}
.mv.is-active .mv__parts--01 {
    -webkit-animation: mvParts01 .4s 1.4s forwards;
    animation: mvParts01 .4s 1.4s forwards;
}
.mv.is-active .mv__parts--02 {
    -webkit-animation: mvParts02 .4s 1.4s forwards;
    animation: mvParts02 .4s 1.4s forwards;
}
.mv.is-active .mv__parts--03 {
    -webkit-animation: mvParts03 .4s 1.4s forwards;
    animation: mvParts03 .4s 1.4s forwards;
}
.mv.is-active .mv__parts--04 {
    -webkit-animation: mvParts04 .4s 1.4s forwards;
    animation: mvParts04 .4s 1.4s forwards;
}
.mv.is-active .mv__parts--05 {
    -webkit-animation: mvParts05 .4s 1.4s forwards;
    animation: mvParts05 .4s 1.4s forwards;
}
.mv.is-active .mv__parts--06 {
    -webkit-animation: mvParts06 .4s 1.4s forwards;
    animation: mvParts06 .4s 1.4s forwards;
}
.mv.is-active .mv__parts--07 {
    -webkit-animation: mvParts07 .4s 1.4s forwards;
    animation: mvParts07 .4s 1.4s forwards;
}
.mv.is-active .mv__parts--08 {
    -webkit-animation: mvParts07 .4s 1.4s forwards;
    animation: mvParts08 .4s 1.4s forwards;
}
.mv.is-active .mv__head {
    -webkit-animation: mvHead .4s 1.4s forwards;
    animation: mvHead .4s 1.4s forwards;
}
.mv.is-active .btn--mv {
    -webkit-animation: mvBtn .6s 2s forwards;
    animation: mvBtn .6s 2s forwards;
}
@keyframes mvParts01 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-5.2vw, 5.2vw, 0)scale(.5);
    transform: translate3d(-5.2vw, 5.2vw, 0)scale(.5);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes mvParts02 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-5.2vw, 5.2vw, 0)scale(.5);
    transform: translate3d(-5.2vw, 5.2vw, 0)scale(.5);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes mvParts03 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-5.2vw, 0, 0)scale(.5);
    transform: translate3d(-5.2vw, 0, 0)scale(.5);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes mvParts04 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(-5.2vw, -5.2vw, 0)scale(.5);
    transform: translate3d(-5.2vw, -5.2vw, 0)scale(.5);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes mvParts05 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2.6vw, -5.2vw, 0)scale(.5);
    transform: translate3d(2.6vw, -5.2vw, 0)scale(.5);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes mvParts06 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(2.6vw, -5.2vw, 0)scale(.5);
    transform: translate3d(2.6vw, -5.2vw, 0)scale(.5);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes mvParts07 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(7.81vw, -2.6vw, 0)scale(.5);
    transform: translate3d(7.81vw, -2.6vw, 0)scale(.5);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes mvParts08 {
  from {
    opacity: 0;
    -webkit-transform: translate3d(5.2vw, 0, 0)scale(.5);
    transform: translate3d(5.2vw, 0, 0)scale(.5);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes mvHead {
  from {
    opacity: 0;
    -webkit-transform: translate3d(5.2vw, 2.6vw, 0)scale(.5);
    transform: translate3d(5.2vw, 2.6vw, 0)scale(.5);
  }
  to {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
@keyframes mvBtn {
  0% {
    opacity: 0;
    -webkit-transform: translate3d(-7.81vw, -5.2vw, 0)scale(.5);
    transform: translate3d(-7.81vw, -5.2vw, 0)scale(.5);
  }
  50% {
    -webkit-transform: translate3d(0, 0, 0)scale(1.1);
    transform: translate3d(0, 0, 0)scale(1.1);
  }
  65% {
    -webkit-transform: translate3d(0, 0, 0)scale(.95);
    transform: translate3d(0, 0, 0)scale(.95);
  }
  75% {
    -webkit-transform: translate3d(0, 0, 0)scale(1.1);
    transform: translate3d(0, 0, 0)scale(1.1);
  }
  85% {
    -webkit-transform: translate3d(0, 0, 0)scale(.95);
    transform: translate3d(0, 0, 0)scale(.95);
  }
  100% {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
  }
}
/*~~~MV アニメーション*/

.mainContents__wrap{
    margin: 5vw auto 25px;
}
.mainContents {
    position: relative;
    margin: 20px auto 0;
}
.mainContents__head {
    margin-top: -20px;
}
.mainContents__inrWrap {
    position: relative;
    margin: 10px 15px 0 35px;
    padding: 30px 25px 42px 5px;
    background-image: radial-gradient(#cb0000 20%, transparent 20%), radial-gradient(#cb0000 20%, transparent 20%);
    background-position: 0 0,2px 2px;
    background-size: 4px 4px;
    z-index: 1;
}
.mainContents__inrWrap + .mainContents__inrWrap {
    margin-top: 80px;
}
.mainContents__inrWrap::after {
    position: absolute;
    top: -10px;
    left: -10px;
    width: 100%;
    height: 100%;
    content: '';
    border: 3px solid #000;
    background-color: #fff;
    background-image: url(../img/bg_contents_dot_sp.png);
    background-repeat: no-repeat;
    background-position: bottom -10px center;
    background-size: contain;
}
.mainContents__inrWrap.mainContents__inrWrap--01::after {
    background-color: #FFAA00;
}
.mainContents__inrWrap.mainContents__inrWrap--02::after {
    background-color: #47BCE8;
}
.mainContents__inrWrap.mainContents__inrWrap--03::after {
    background-color: #5AC88C;
}
.mainContents__inrWrap.mainContents__inrWrap--04::after {
    background-color: #FF6EB4;
}
.mainContents__inrWrap.mainContents__inrWrap--02::before {
    content: "";
    position: absolute;
    top: -73px;
    right: 10px;
    margin-left: -10px;
    background: url(../img/parts_maincontents_02_top_sp.png) no-repeat;
    background-size: cover;
    display: inline-block;
    width: 326px;
    height: 45px;
}
.mainContents__inrWrap.mainContents__inrWrap--03::before {
    content: "";
    position: absolute;
    display: inline-block;
    background: url(../img/parts_maincontents_03_top.png) no-repeat;
    background-size: contain;
    top: -50px;
    right: 84px;
    width: 100px;
    height: 100px;
}
.mainContents__inrBox::before, .mainContents__inrBox::after {
    content: "";
    position: absolute;
}
.mainContents__inrWrap--02 .mainContents__inrBox::before {
    top: 91px;
    left: -43px;
    width: 106px;
    height: 106px;
    background: url(../img/parts_maincontents_02_middle.png) no-repeat;
    background-size: contain;
}
.mainContents__inrWrap--02 .mainContents__inrBox::after {
    bottom: -37px;
    left: -58px;
    width: 105px;
    height: 70px;
    background: url(../img/parts_maincontents_02_btm.png) no-repeat;
    background-size: contain;
    z-index: 1;
}
.mainContents__inrWrap--03 .mainContents__inrBox::after {
    bottom: 0;
    right: -25px;
    width: 74px;
    height: 59px;
    background: url(../img/parts_maincontents_03_btm.png) no-repeat;
    background-size: contain;
    z-index: 1;
}
.mainContents:nth-of-type(2)::after {
    content: "";
    position: absolute;
    bottom: -60px;
    left: 50%;
    transform: translateX(-50%);
    width: 335px;
    height: 70px;
    background: url(../img/parts_maincontents_04_btm_sp.png) no-repeat;
    background-size: contain;
}
.mainContents__subTtl {
    position: absolute;
    width: 131px;
    top: -56px;
    left: -27px;
    z-index: 1;
}
.mainContents__ttl {
    line-height: 1.25;
    position: relative;
    font-weight: bold;
    font-size: 2rem;
    z-index: 1;
}
.mainContents__ttl::before {
    content: "";
    position: absolute;
    display: inline-block;
    z-index: 3;
}
.mainContents__inrWrap--01 .mainContents__ttl::before {
    width: 119px;
    height: 91px;
    bottom: -22px;
    right: -7px;
    background: url(../img/parts_maincontents_01_head.png) no-repeat;
    background-size: contain;
}
.mainContents__inrWrap--02 .mainContents__ttl::before {
    width: 98px;
    height: 136px;
    bottom: -7px;
    right: 3px;
    background: url(../img/parts_maincontents_02_head.png) no-repeat;
    background-size: contain;
}
.mainContents__inrWrap--03 .mainContents__ttl::before {
    width: 154px;
    height: 128px;
    bottom: -2px;
    right: -52px;
    background: url(../img/parts_maincontents_03_head.png) no-repeat;
    background-size: contain;
}
.mainContents__inrWrap--01 .mainContents__ttlInr, .mainContents__inrWrap--02 .mainContents__ttlInr, .mainContents__inrWrap--03 .mainContents__ttlInr {
    width: 48vw;
    max-width: 180px;
}
.mainContents__outer {
    margin-top: 20px;
}
.mainContents__outer + .mainContents__outer {
    margin-top: 15px;
}
.mainContents__inr {
    display: block;
    position: relative;
    text-align: center;
    padding: 32px 15px;
    background: #fff;
     -webkit-box-shadow: 3px 4px 0 #CC0000; 
    box-shadow: 3px 4px 0 #CC0000;
    border: 1px solid #000;
    z-index: 1;
}
.mainContents__inr.mainContents__inr--y {
    background: #FFEB00;
    border: 1px solid #CC0000;
}
.mainContents__inr.mainContents__inr--end, .mainContents__inr.mainContents__inr--comingsoon {
    background: #EEEEEE;
    /*pointer-events: none;*/
}
.mainContents__inr::after {
    position: absolute;
    content: "";
    bottom: 5px;
    right: 0;
    width: 0;
    height: 0;
    border-style: solid;
    border-right: 10px solid transparent;
    border-left: 10px solid transparent;
    border-bottom: 10px solid #CC0000;
    border-top: 0;
    transform: rotate(135deg);
}
.mainContents__inr.mainContents__inr--otherwindow::after {
    bottom: 5px;
    right: 5px;
    width: 20px;
    height: 20px;
    background: url(../img/icon_otherwindow.svg) no-repeat;
    background-size: contain;
    border: none;
    transform: none;
}
.mainContents__inr.mainContents__inr--end::after, .mainContents__inr.mainContents__inr--comingsoon::after {
    content: none;
}
.mainContents__label {
    line-height: 1.2;
    display: inline-block;
    padding: 6px 6px 3px;
    font-size: 1.6rem;
    font-weight: bold;
    color: #fff;
    background: #CC0000;
}
.mainContents__txt {
    line-height: 1.1;
    margin-top: 16px;
    font-size: 1.6rem;
    font-weight: bold;
}
.mainContents__img {
    width: 180px;
    margin: auto;
    padding-top: 10px;
}
.mainContents__img.mainContents__img--01 {
    padding-top: 48px;
}
.mainContents__img.mainContents__img--04 {
    
}
.mainContents__date {
    margin-top: 20px;
    padding: 2px 10px 1px;
    border: 1px solid #CC0000;
    font-size: 1.4rem;
    font-weight: bold;
    color: #CC0000;
}
.mainContents__inr.mainContents__inr--end .mainContents__date {
    color: #000;
    border: 1px solid #000;
}
.movieArea__wrap {
    position: relative;
    text-align: center;
    margin-top: 115px;
}
.movieArea__wrap::before, .movieArea__wrap::after {
     content: "";
    position: absolute;
    display: inline-block;
}
.movieArea__wrap::before {
    top: 0;
    left: -5px;
    width: 156px;
    height: 485px;
    background: url(../img/bg_movieArea_l_sp.png) no-repeat;
    background-size: contain;
}
.movieArea__wrap::after {
    top: 0;
    right: -9px;
    width: 117px;
    height: 485px;
    background: url(../img/bg_movieArea_r_sp.png) no-repeat;
    background-size: contain;
}
.movieArea__head {
    position: relative;
    width: 53.33vw;
    margin: 0 auto;
    padding-top: 19px;
    z-index: 1;
}
.movieArea__inrWrap {
    margin-top: 16px;
}
.movieArea__txtWrap {
    position: relative;
    margin: 0 15px;
    z-index: 1;
}
.movieArea__txt {
    line-height: 1.8;
    font-size: 1.2rem;
    font-weight: bold;
    text-shadow: #fff 2px 0px, #fff -2px 0px, #fff 0px -2px, #fff 0px 2px, #fff 2px 2px , #fff -2px 2px, #fff 2px -2px, #fff -2px -2px, #fff 1px 2px, #fff -1px 2px, #fff 1px -2px, #fff -1px -2px, #fff 2px 1px, #fff -2px 1px, #fff 2px -1px, #fff -2px -1px;
}
.movieArea__txt + .movieArea__txt {
    margin-top: 14px;
}
.movieArea__movie {
    margin-top: 129px;
}
.movieArea__movie .youtubeFrame {
    position: relative;
    width: 100%;
    padding-top: 56.25%;
}
.movieArea__movie iframe {
    position: absolute;
    top: 0;
    right: 0;
    width: 100% !important;
    height: 100% !important;
}
#headerArea .headerTop {
    margin: 18px 10px 0;
}
#headerArea .headerLogo {
    width: 208px;
    line-height: 1.0;
}
#footerArea {
    text-align: center;
    margin-bottom: 24px;
    font-weight: bold;
    font-size: 1rem;
}


@media all and (max-width:739px) {
    .forPC {display:none!important;}
    .mainContents__outer.mainContents__outer--col2 .mainContents__inr + .mainContents__inr {
        margin-top: 20px;
    }
    .mainContents__txt .fsXS_sp {
        font-size: 1.6rem;
    }
    .mainContents__txt .fsS_sp {
        font-size: 2.4rem;
    }
    .mainContents__txt .fsM_sp {
        font-size: 3.2rem;
    }
    .mainContents__txt .fsL_sp {
        font-size: 4rem;
    }
    .mainContents__txt .fsXL_sp {
        font-size: 4.8rem;
    }
    
}
@media all and (max-width:374px) {
    .movieArea__txt {
    }
}

@media all and (min-width:740px) {
    .forSP {display:none!important;}
    #wrapper {
        width: auto;
        min-width: 950px;
        margin: 0 auto;
    }
    .mv {
        width: 59.89vw;
        margin: 7.604vw auto 0;
    }
    .mv__head {
        width: 55.98vw;
        top: -6.77vw;
        left: -8.85vw;
    }
    .mv__inrTxt {
        width: 25.41vw;
        top: 7.5vw;
    }
    .btn--mv {
        bottom: -8vw;
        right: -10vw;
    }
    .btn--mv::before {
        width: 13.75vw;
        height: 14.16vw;
        background-image: url(../img/btn_mv.png);
    }
    .mv__parts--01 {
        top: -2.13vw;
        right: -5.26vw;
        width: 16.92vw;
    }
    .mv__parts--02 {
        top: 2.08vw;
        right: -5.26vw;
        width: 10.57vw;
    }
    .mv__parts--03 {
        top: 6.77vw;
        right: -12.86vw;
        width: 25.98vw;
    }
    .mv__parts--04 {
        bottom: -3.4vw;
        right: 6.3vw;
        width: 25vw;
    }
    .mv__parts--05 {
        bottom: -8.02vw;
        left: 9.42vw;
        width: 22.51vw;
    }
    .mv__parts--06 {
        bottom: 3.64vw;
        left: 5.05vw;
        width: 11.56vw;
    }
    .mv__parts--07 {
        bottom: -6.82vw;
        left: -11.14vw;
        width: 20.20vw;
    }
    .mv__parts--08 {
        top: 9.37vw;
        left: -9.53vw;
        width: 15.93vw;
    }
    .mainContents__wrap {
        width: 950px;
        margin: 1.7vw auto 30px;
    }
    .mainContents:nth-of-type(2)::after {
        width: 950px;
        height: 110px;
        background: url(../img/parts_maincontents_04_btm.png) no-repeat;
        background-size: contain;
        bottom: -100px;
    }
    .mainContents:nth-of-type(2) .mainContents__head {
        margin-left: -40px;
        width: 950px;
    }
    .mainContents__inrWrap {
        margin: 0 -10px 0 10px;
        padding: 46px 50px 58px 30px;
    }
    .mainContents__inrWrap::after {
        background-image: url(../img/bg_contents_dot.png);
        /*background-size: auto;*/
    }
    .mainContents__inrWrap + .mainContents__inrWrap {
        margin-top: 150px;
    }
    .mainContents__inrWrap.mainContents__inrWrap--02::before {
        top: -135px;
        right: 10px;
        width: 950px;
        height: 114px;
        margin-left: -10px;
        background: url(../img/parts_maincontents_02_top.png) no-repeat;
        background-size: cover;
    }
    .mainContents__inrWrap.mainContents__inrWrap--03::before {
        top: -62px;
        right: 191px;
        width: 160px;
        height: 160px;
    }
    .mainContents__inrWrap--02 .mainContents__inrBox::before {
        top: 260px;
        left: -80px;
        width: 132px;
        height: 132px;
    }
    .mainContents__inrWrap--02 .mainContents__inrBox::after {
        bottom: -75px;
        left: -70px;
        width: 170px;
        height: 112px;
    }
    .mainContents__inrWrap--03 .mainContents__inrBox::after {
        width: 129px;
        height: 103px;
        bottom: -26px;
        right: -20px;
    }
    .mainContents__subTtl {
        width: 175px;
        top: -56px;
        left: -42px;
    }
    .mainContents__outer {
        margin-top: 40px;
    }
    .mainContents__outer + .mainContents__outer {
        margin-top: 20px;
    }
    .mainContents__outer.mainContents__outer--col2 {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }
    .mainContents__outer.mainContents__outer--col2 .mainContents__inr {
        width: 427px;
    }
    .mainContents__outer.mainContents__outer--col2 .mainContents__inr:nth-child(n+3) {
        margin-top: 20px;
    }
    .mainContents__ttl {
        line-height: 1;
        text-align: center;
        font-size: 3.2rem;
    }
    .mainContents__inrWrap--01 .mainContents__ttl::before {
        width: 195px;
        height: 150px;
        bottom: -43px;
        right: 0;
    }
    .mainContents__inrWrap--02 .mainContents__ttl::before {
        width: 166px;
        height: 222px;
        bottom: -30px;
        right: -3px;
    }
    .mainContents__inrWrap--03 .mainContents__ttl::before {
        width: 246px;
        height: 204px;
        bottom: -31px;
        right: -101px;
    }
    .mainContents__inrWrap--01 .mainContents__ttlInr, .mainContents__inrWrap--02 .mainContents__ttlInr, .mainContents__inrWrap--03 .mainContents__ttlInr {
        width: auto;
        max-width: initial;
    }
    .mainContents__inr {
        display: flex;
        flex-direction: column;
        padding: 40px 32px;
        transition: .3s;
    }
    .mainContents__inr::before {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        background: #CC0000;
        transform-origin: 100% 50%;
        transform: scaleX(0);
        transition: transform ease .3s;
    }
    a.mainContents__inr:hover {
        color: #fff;
        border: 1px solid #CC0000;
    }
    a.mainContents__inr:hover::before {
        transform-origin: 0% 50%;
        transform: scaleX(1);
    }
    a.mainContents__inr:hover::after {
        border-bottom: 10px solid #fff;
    }
    a.mainContents__inr.mainContents__inr--otherwindow:hover::after {
        background: url(../img/icon_otherwindow_wt.svg) no-repeat;
        border: none;
    }
    .mainContents__label {
        padding: 6px 8px 3px;
        font-size: 2rem;
    }
    .mainContents__txt {
        margin-top: 24px;
        font-size: 2rem;
    }
    a.mainContents__inr:hover .mainContents__txt .fcRD {
        color: #fff!important;
    }
    .mainContents__txt .fsXS_pc {
        font-size: 2.4rem;
    }
    .mainContents__txt .fsS_pc {
        font-size: 3.2rem;
    }
    .mainContents__txt .fsM_pc {
        font-size: 4rem;
    }
    .mainContents__txt .fsL_pc {
        font-size: 4.8rem;
    }
    .mainContents__txt .fsXL_pc {
        font-size: 6.4rem;
    }
    .mainContents__dateWrap {
        margin-top: auto;
    }
    .mainContents__date {
        margin-top: 14px;
        font-size: 1.8rem;
    }
    a.mainContents__inr:hover .mainContents__date {
        color: #fff;
        border: 1px solid #fff;
    }
    .movieArea__wrap::before {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        width: 1075px;
        height: 657px;
        background: url(../img/bg_movieArea.png) no-repeat;
        background-size: contain;
    }
    .movieArea__wrap::after {
        content: none;
    }
    .movieArea__head {
        position: relative;
        width: 425px;
        padding-top: 40px;
    }
    .movieArea__inrWrap {
        position: relative;
        margin-top: 40px;
    }
    .movieArea__txt {
        line-height: 2;
        font-size: 1.8rem;
    }
    .movieArea__txt + .movieArea__txt {
        margin-top: 40px;
    }
    .movieArea__movie {
        margin-top: 80px;
    }
    #headerArea .headerTop {
        margin: 32px 32px 0;
    }
    #headerArea .headerLogo {
        width: 333px;
    }
    #footerArea {
        font-size: 1.4rem;
    }
    
}


