@charset "Shift-JIS";

header,footer,header#id_nav_menu_1{position:relative !important;}
header#id_nav_menu_1{background-color:#fff;}
#wrapper{position:relative !important;}
#container{background:#fff;}

/*z-index*/
#main > #main-inner              {z-index:2;}

header#id_nav_menu_1              {z-index:9999 !important;}
footer                            {z-index:11 !important;}
/*
================================================================================================================
COMMON
================================================================================================================
*/
*{padding:0; margin:0; border:0;}
*, *:before, *:after{
-webkit-box-sizing:border-box;
-moz-box-sizing:border-box;
-o-box-sizing:border-box;
-ms-box-sizing:border-box;
box-sizing:border-box;}

html{width:100%; height:100%; overflow-wrap:break-word; margin:0 auto;scroll-behavior: smooth;}
body{
min-width:320px !important;
background:#000 !important;
margin:0 auto;
font-family:"メイリオ", "Meiryo", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
overflow-x:hidden;}
a{outline:none;}
a:link,a:visited,a:hover,a:active{text-decoration:none;}
a img{transition:opacity .3s ease;}
img{padding:0; margin:0; border:0; vertical-align:bottom;}
ul{margin:0; padding:0; border:0;}
li{list-style:none;}
strong,em,b{font-weight:700; font-style:normal;}
table{width:100%; color:#000; border-collapse:collapse; border-spacing:0; margin:0 auto;}

.no-show{display:none;}



/*
================================================================================================================
MAIN
================================================================================================================
*/
#main,
#main > #main-inner,#main > #main-inner > .inner{display:block; position:relative; width:100%; height:100%;}
#main img{width:100%;}
#main::before{
display:block;
content:"";
position:fixed;
top:0;
left:0;
width:100%;
height:100%;
background-image:url(../img/common/bg_earth.png),url(../img/common/pc_bg_rail1.png),url(../img/common/pc_bg_rail2.png),url(../img/common/pc_bg_rail3.png),url(../img/common/pc_bg_rail4.png),url(../img/common/pc_bg_pattern.jpg);
background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,repeat;
background-size:auto,230px auto,290px auto,190px auto,250px auto,auto 100%;
background-position:center top -85%,left bottom,left top,right top,right bottom,center;
pointer-events:none;}
#main::after{
display: block;
content: "";
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 23px;
z-index: 900;
background:linear-gradient(to bottom, rgba(255,255,255,0.5) 5%, transparent),repeating-linear-gradient( -45deg, #55c7ff, #55c7ff 30px, #fff 0, #fff 60px, #ff5059 0, #ff5059 90px, #fff 0, #fff 120px);
pointer-events: none;}

#main > *:not(#menu,#page-top){max-width:480px; margin:0 auto;}
#main > *:not(#menu,#page-top)::before,#main > *:not(#menu,#page-top)::after{display:block; content:""; position:absolute; top:0; width:5px; height:100%; background:#1957a8;}
#main > *:not(#menu,#page-top)::before{left:-5px;}
#main > *:not(#menu,#page-top)::after{right:-5px;}

#main > #main-inner{
position:relative;
min-height:calc(100vh - 100px); 
font-size:15px;
padding-bottom:20px;}

#main:not(.top) > #main-inner{
background-color: #ffffe1;
background-image: radial-gradient(rgba(255,255,255,1.0) 30%, transparent 31.5%), radial-gradient(rgba(255,255,255,1.0) 30%, transparent 31.5%);
background-position: 0 0, 15px 15px;
background-size: 30px 30px, 30px 30px;
}

#main > #main-inner .inner{position:relative;overflow:hidden;}

#main > #main-inner > #main-title{
width:100%;
position:relative;
filter: drop-shadow(0px 4px 4px rgba(0,0,0,0.6));
}

#main > #main-inner > .out_box{
width:calc(100% - 10px);
margin:20px auto;
padding:14px;
background:repeating-linear-gradient( -45deg, #55c7ff, #55c7ff 20px, #fff 0, #fff 40px, #ff5059 0, #ff5059 60px, #fff 0, #fff 80px);
}
#main > #main-inner > .out_box > .in_box{
width:100%;
background-color:#faf8f1;
padding:20px 0;
}
#main > #main-inner > .out_box > .in_box > .line_box{
position:relative;
width:calc(100% - 20px);
margin:0 auto;
border-radius:10px;
  background-image: repeating-linear-gradient(90deg, #00f0ff, #00f0ff 14px, transparent 14px, transparent 20px), repeating-linear-gradient(180deg, #00f0ff, #00f0ff 14px, transparent 14px, transparent 20px), repeating-linear-gradient(90deg, #00f0ff, #00f0ff 14px, transparent 14px, transparent 20px), repeating-linear-gradient(180deg, #00f0ff, #00f0ff 14px, transparent 14px, transparent 20px);
  background-position: left top, right top, left bottom, left top;
  background-repeat: repeat-x, repeat-y, repeat-x, repeat-y;
  background-size: 100% 3px, 3px 100%, 100% 3px, 3px 100%;
}


@media screen and (min-width:1101px){
#main > #main-inner > #main-title{top:-80px;margin-bottom:-80px;}
}

/* ページトップボタン */
#page-top {
  bottom: 0;
  position: fixed;
  z-index:2;
  right: 0;
  width:120px;
  cursor: pointer;
background-image:url("../img/common/pegetop.webp");
background-repeat:no-repeat;
background-size:100% auto;
background-position:center;  
}


@media screen and (max-width: 480px){
#page-top {width:100px;}
}

/*
================================================================================================================
外部権利表記
================================================================================================================
*/
#special_copy{margin:20px auto 0;font-size:87.5%;text-align:center;}
#special_copy br{display:none;}
@media screen and (max-width: 480px){
#special_copy br{display:block;}
}