@charset "utf-8";#st40{background-color:#ffffff;}#st40 {
    background-color: rgb(255 255 255 / 0%) !important;
}
.top_concept {
    width: 80vw;
    padding-left: 24.48vw;
    position: relative;
overflow: inherit;
}

.top_concept .common_hd {
text-align: right;
    margin-top: 25px;
    font-size: 12rem;
   font-family: 'Rock 3D', cursive;

}

.top_concept h2 {
    font-size: 2rem;
    font-weight: bold;
    text-align: right;
}

.top_concept .txt {
    width: 100%;
    max-height: 380px;
    text-align: right;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    position: relative;
    z-index: 2;
    margin-top: 90px;
}

.top_concept .txt>div {
    display: inline-block;
    text-align: left;
}

.top_concept .txt p {
    font-size: 2rem;
    font-weight: bold;
    line-height: 2.2;
}

.top_concept .txt p+p {
    margin-right: 30px;
}



.top_concept .h-btn {
    position: relative;
    width: 285px;
    height: 285px;
    border-radius: 50%;
    overflow: hidden;
    margin: -60px 0 0 3.6vw;
}

.btn_ph img {
    width: 100%;
}

.btn_txt {
    position: absolute;
    top: 50%;
    left: 50%;
    text-align: center;
    font-size: 1.7rem;
    width: 90px;
    height: 90px;
    box-sizing: border-box;
    border-radius: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.btn_txt:after {
    content: "";
    display: block;
    width: 90px;
    height: 90px;
    border-radius: 50%;
    border: 2px solid #333;
    background: #fff;
    box-sizing: border-box;
}

.btn_txt span {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    z-index: 2;
}


.btn_txt:after,
.page_nav a:after {
    -webkit-transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1), background 0.2s cubic-bezier(0.19, 1, 0.22, 1);
    transition: transform 0.6s cubic-bezier(0.19, 1, 0.22, 1), background 0.2s cubic-bezier(0.19, 1, 0.22, 1);
}

.h-btn a:hover .btn_txt:after,
.item:hover .btn_txt:after,
.page_nav a:hover:after {
    background: #333;
    -webkit-transform: scale(1.35);
    transform: scale(1.35);
}

.btn_txt span,
.page_nav a span {
    -webkit-transition: color 0.2s cubic-bezier(0.19, 1, 0.22, 1);
    transition: color 0.2s cubic-bezier(0.19, 1, 0.22, 1);
}

.h-btn a:hover .btn_txt span,
.item:hover .btn_txt span,
.page_nav a:hover span {
    color: #fff;
}

.top_concept .bg01 { width: 45.54vw; position: absolute; left: -16.59vw; top: 0px;  }
.top_concept .bg01 img { width: 100%; }
.top_concept .bg02 { width: 21.05vw; position: absolute; right: -6.12vw; bottom: 50px; }
.top_concept .bg02 img { width: 100%; }
.top_concept .btn { position: relative; width: 285px; height: 285px; border-radius: 50%; overflow: hidden; margin: -60px 0 0 3.6vw; }


@media screen and (max-width: 768px) {
 .top_concept {
    width: 90vw;
    padding-left: 5vw;
    position: relative;
    overflow: inherit;
}
    .top_concept .common_hd { text-align: right;     font-size: 5rem;}
    .top_concept h2 { font-size: 0.9rem; font-weight: bold; text-align: right; }
    .top_concept .txt { width: 100%; max-height: auto; text-align: right; -webkit-writing-mode: horizontal-tb; -ms-writing-mode: lr-tb; writing-mode: horizontal-tb; position: relative; z-index: 2; margin-top: 45px;}
    .top_concept .txt > div { display: inline-block; text-align: right; }
    .top_concept .txt p {
font-size: 1.4rem;
    font-weight: bold;
    line-height: 2; }
    .top_concept .txt p + p { margin-right: 0; margin-top: 30px; }
    .top_concept .bg01 { width: 64.54vw; max-width: 300px; position: absolute; left: -5.34vw; top: 50px;transform: translate3d(0px, 0, 0px)!important; }
.top_concept .bg01 img { width: 100%; }
    .top_concept .bg02 { width: 40vw; position: absolute; right:0vw; bottom: 0px; }
.top_concept .bg02 img { width: 100%; }
    .top_concept .btn { position: relative; width: 221px; height: 221px; border-radius: 50%; overflow: hidden; margin: -60px 0 0 0; z-index: 1; }

.top_concept .h-btn {
    position: relative;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    overflow: hidden;
    margin: 0px 0 0 3.6vw;
}


}#st34{background-color:#ffffff;}#st34{
    background-color: rgb(255 255 255 / 0%) !important;
}#st37{background-color:#ffffff;}#st37 {
    background-color: rgb(255 255 255 / 0%) !important;
}
#st37:after {
    bottom: 0;
    border: none;
    line-height: 1;
	    content: '';
    width: 100%;
    height: 8.3vw;
    display: block;
    background: repeat-y center top;
    background-size: 100% 100%;
  
    left: 0;
	background-image: url(../themes/images/bg_white_bottom.png);
}
.toll-box {
    text-align: center;
}

.toll-box h3 {
        font-weight: bold;
    display: block;
    position: relative;
    color: #666;
font-size: 40px;
}
.toll-box p {
        line-height: 2;
}


@media (max-width: 768px) {
.toll-box h3 {
    font-size: 30px;
}
	
}#st39{background-color:#ffffff;}#st39{
    background-color: rgb(255 255 255 / 0%) !important;
position: relative;
}


#st39 .jumbotron {
    margin-bottom: 0px;
    color: inherit;
}
.contest_theme {margin-top:100px;     overflow: initial;}
.contest_theme .content {  width: 60%; position: relative;margin: auto; }
.contest_theme ._box,
.contest_theme .contest_theme_hand img {
	opacity: 0; transform: translateY(40px);
	transition: .8s ease;
}
.contest_theme.anime ._box,
.contest_theme.anime .contest_theme_hand img {  transform:none; opacity: 1; }





.contest_theme ._title {
	position: relative;
	display: inline-block;
	letter-spacing: -0.1em;
	font-size: 33px;
	z-index: 1;
	transition: .6s .6s ease;
	opacity: 0; transform: translateY(20px);
}
.contest_theme.anime ._title { transform:none; opacity: 1; }

.contest_theme ._text_box {
	width: 77.7%;
	margin: 0 auto;
	margin-top: 36px;
	text-align: left;
	transition: .6s 1s ease;
	opacity: 0; transform: translateY(20px);
}
.contest_theme.anime ._text_box { opacity: 1; transform:none; }
.contest_theme ._text {
	line-height: 1.54;
	letter-spacing: -0.05em;
	font-size: 46px;
}

.contest_theme_hand {
	position: absolute;
	z-index: 2;
}
.contest_theme_hand img { width: 100%; height: auto; image-rendering: -webkit-optimize-contrast; }
.contest_theme_hand._left {
	width: 30%;
	bottom: 0;
	right: 100%;
    transform: translateX(34.6%) translateY(10%);
}
.contest_theme_hand._right {
	width: 30%;
	bottom: 0;
	left: 100%;
    transform: translateX(-33%) translateY(10%);
}


.Play {
    height: 250px;
    width: 250px;
    margin: 50px auto;
}

.Play img {
width: 80%;
    left: 50%;
    top: 50%;
    position: relative;
    transform: translateX(-70%) translateY(-50%);
}


  .Circular-animation{
   left: 50%;
    margin-left: 0;
    width: 100%;
    height: 100%;
    border-radius: 60% 40% 48% 20% / 58% 50% 50% 42%;
     background-color: rgb(255 255 255 / 50%);
    overflow: hidden;
    -webkit-animation: ani_round_ti 5s infinite;
    animation: twist_ti 5s infinite;
  }

  @keyframes twist_ti {
    0% {
      border-radius: 60% 40% 48% 52% / 58% 50% 50% 42%;
    }
    25% {
      border-radius: 56% 44% 50% 50% / 50% 55% 45% 50%;
    }
    50% {
      border-radius: 45% 55% 60% 40% / 45% 36% 64% 55%;
    }
    75% {
      border-radius: 35% 65% 45% 55% / 35% 55% 45% 65%;
    }
  }


@media (max-width: 768px) {
.contest_theme .content {
    width: 90%;
}
.Play {
    height: 150px;
    width: 150px;
    margin: 50px auto;
}
.contest_theme_hand._right {
    width: 50%;
}	
.contest_theme_hand._left {
    width: 50%;
}
.contest_theme {
    overflow: hidden;
}
#st39{
    margin-bottom: 100px;
}
}#st7{background-color:#eeeeee;}