@charset "utf-8";

/***************************************************************************
Media Queries
****************************************************************************/

@media only screen and (max-width: 768px) {
}

/***************************************************************************
main_outline
****************************************************************************/

#main_outline {
    display: flex;
}
#main {
    flex: 1;
    position: relative;
}
#side_bar {
    background-color: rgba(255,0,93,0.5);
    width: 200px;
    position: fixed;
    top: 0;
    left: 0;
    height: 100%;
    z-index: 999;
}

@media only screen and (max-width: 768px) {
#side_bar {
    display: none;
}
#main_outline {
    padding-left: 0px !important;
}
}

/***************************************************************************
dummy
****************************************************************************/

.dummy {
    opacity: 0.8;
}

@media only screen and (max-width: 768px) {
.dummy > div span {
    font-size: 32px;
    line-height: 1;
}
}

/***************************************************************************
top_img_youtube
****************************************************************************/

#top_img_youtube:after {
    content: " ";
    position: fixed;
    width: 100%;
    height: 100%;
    background-image: url(../img/bg_top_img_dot.png);
}
#top_img_inner {
    position: fixed;
    overflow: hidden;
}
@media only screen and (max-width: 768px) {
#top_img_inner {
    width: 100% !important;
    height: 100% !important;
}
}
#top_img_youtube video {
    position: relative;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
}

/***************************************************************************
top_img_youtube_api
****************************************************************************/

#top_img_youtube_api {
    position: fixed;
    overflow: hidden;
    /*opacity: 0;
    animation: youtube_fade_in 2s forwards;
    animation-delay: 2s;*/
}
#top_img_youtube_api #youtube {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    /*min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;*/
}

@keyframes youtube_fade_in {
0% {
}
100% {
    opacity: 1;
}
}

@media only screen and (max-width: 768px) {
#top_img_youtube_api {
    height: 100% !important;
}
}

/***************************************************************************
over_lay_block
****************************************************************************/

#over_lay_block {
    position: relative;
    z-index: 99;
}

/***************************************************************************
first_block
****************************************************************************/

#first_block {
    position: relative;
    background: linear-gradient(to bottom, rgba(0,0,0,0) 0%,rgba(0,0,0,0) 60%,rgba(0,0,0,0.4) 100%);
}

/***************************************************************************
top_logo
****************************************************************************/

#top_logo {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    max-width: 502px;
    color: #FFFFFF;
}

/***************************************************************************
scroll_arrow
****************************************************************************/

.scroll_arrow {
    position: absolute;
    bottom: 20px;
    left: 50%;
    transform: translateX(-50%);
    text-align: center;
    padding-top: 80px;
    opacity: 0;
	transition: opacity 0.5s;
}
.scroll_arrow.display  {
    opacity: 1 !important;
}
.scroll_arrow a i {
    font-weight: bold;
    color: #FFFFFF;
}
.scroll_arrow span {
	position: absolute;
	width: 24px;
	height: 24px;
	left: 50%;
	margin-left: -12px;
	border: 2px solid;
	border-color: #FFFFFF #FFFFFF transparent transparent;
	transform: rotate(135deg);
	animation: scroll_arrow 2s infinite;
	opacity: 0;
}
.scroll_arrow span:nth-child(1) {
    top: 0px;
	animation-delay: 0s;
}
.scroll_arrow span:nth-child(2) {
    top: 16px;
    animation-delay: .15s;
}
.scroll_arrow span:nth-child(3) {
    top: 32px;
    animation-delay: .3s;
}

@keyframes scroll_arrow {
0% {
    opacity: 0;
}
50% {
    opacity: 1;
}
100% {
    opacity: 0;
}
}

/***************************************************************************
secound_block
****************************************************************************/

#secound_block {
    background-color: rgba(0,0,0,0.4);
    padding: 0px 2% 0px 2%;
}

@media only screen and (max-width: 768px) {
#secound_block {
    padding: 0px;
}
}

/***************************************************************************
注釈インラインフレーム
****************************************************************************/

#inline_flame::-webkit-scrollbar{ /* スクロールバー本体 */
	width: 5px;
	background: #9aadfc;
}
#inline_flame::-webkit-scrollbar-thumb{ /* スクロールバーの動く部分 */
	background: #435295;
	border-radius: 2px;
}
#inline_flame::-webkit-scrollbar-thumb:horizontal{ /* 横方向のスクロールバーの動く部分 */
	background: #435295;
	border-radius: 2px;
}
#inline_flame::-webkit-scrollbar-corner{ /* スクロールバー角 */
	background: transparent;
}
#inline_flame {
    background-color: #FFFFFF;
    height: 200px;
    overflow: auto;
    overflow-y: scroll;
    overflow-x: hidden;
    font-size: 12px;
    margin: 0px auto 0px auto;
    padding: 20px 15px 20px 15px;
    margin-bottom: 15px;
}
#inline_flame p {
    margin-bottom: 25px;
}
