
#gnav{
	position: relative;
}
#gnav .new-mark {
	background:transparent;
	font-size:1em;
	letter-spacing:0.03em;
	color:red;
  box-sizing: border-box;
  display: block;
  position: absolute;
	top:-20px;
	right:0;
	left:-3px;
	z-index:999;
	-webkit-animation:blink 1s infinite alternate;
    -moz-animation:blink 1s infinite alternate;
    animation:blink 1s infinite alternate;
}
#gnav-sp .new-mark {
	background:transparent;
	font-size:13px;
	letter-spacing:0.03em;
	color:red;
	padding: 1px 8px;
  box-sizing: border-box;
  position: inline-block;
	top:10px;
	right: auto;
	left: auto;
	z-index:999;
	-webkit-animation:blink 1s infinite alternate;
    -moz-animation:blink 1s infinite alternate;
    animation:blink 1s infinite alternate;
}
.new_section{
	float:none;
	margin : 0 auto;
	margin-bottom:20px;
}

.new_txt_info{
	float:none;
	width:80%;
}

.left{
	float:none;
	width:80%;
	margin:0 auto;
}

.txt_dec{
	color:red;
}

.history_box{
   width: 100%;
   max-width: 80%;
   margin: 0 auto;
   display: flex;
   justify-content: center;
}

.year{
 　　　　width: 100%;
   max-width: 100px;
   text-align: center;
}

.year p{
	width: 60px
}

.month{
   width: 100%;
   max-width: 100px;
   text-align: center;
}

.event{
   width: 100%;
	padding-left: 10px
}
#blog .parent .postInfo{
	position: relative;
}
#blog .new-mark {
	background:red;
	font-size:10px;
	color:white;
	padding: 1px 8px;
  box-sizing: border-box;
  display: block;
  position: absolute;
	top:-1px;
	right:0;
	z-index:999;
	-webkit-animation:blink 1s infinite alternate;
    -moz-animation:blink 1s infinite alternate;
    animation:blink 1s infinite alternate;
}
.post-header .new-mark {
	position: relative;
}
.post-header .new-mark {
	background:red;
	font-size:14px;
	color:white;
	padding: 3px 16px;
  box-sizing: border-box;
  display: block;
  position: absolute;
	top:30px;
	right:30px;
	z-index:999;
	-webkit-animation:blink 1s infinite alternate;
    -moz-animation:blink 1s infinite alternate;
    animation:blink 1s infinite alternate;
}

@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}

@media screen and (max-width:680px) { 

    .left{
        width: 100%;
    }
	


    article.page .post-content{
      padding: 20px;
			padding:10px;
    }

    .history{
        width: 100%;
        max-width: 100%;
			overflow: scroll;
    }
	
	.history .history_box{
		max-width:100%;
	}	
}


#header-nav-btn {
	    display: none !important;
}

#gnav-sp a{
	text-align: center;
	padding-left: 0px;
}

@media screen and (max-width: 767px) 
 {
    #gnav-sp {
	  display: block !important;
    height: auto !important;
    position: static;
    }
 }

#gnav-sp .wrap {
 width: 100%;
 margin: 0;
 padding: 0;
}

#gnav-sp #header-cont-content {
	 background: #fff;
}

#gnav-sp #header-cont-content #gnav-container-sp {
	
}

#gnav-sp #header-cont-content #gnav-container-sp #gnav-ul-sp {
	  display: grid;
    grid-template-columns: 1fr 1fr;
    padding: 0;
    margin: 0;
    gap: 1px;
}

@media screen and (max-width: 991px) {
    #gnav-sp #header-cont-content li a:before {
    display: none !important;
    }
}

@media screen and (max-width: 767px) {
    #gnav-sp #header-cont-content li {
        margin-left: 0;
        float: left;
        width: 100%;
        background: #3B4552;
    }
}

@media only screen and (max-width: 767px) {
    header#header #header-right #header-gnav-area nav#gnav {
        background: none;
        display: none;
    }
}

@media only screen and (max-width: 767px) {
    header#header #header-tel-area {
			display: none;
    }
}
			
@media only screen and (min-width: 641px) {
    header#header #header-tel-area {
        float: right;
        margin: 19px 0 0 24px;
    }
}	

@media only screen and (max-width: 767px) {
    header#header .wrap {
        margin: 3% auto;
        width: 96%;
    }
}

@media only screen and (max-width: 767px) {
    header#header .wrap #logo {
        padding: 0;
        width: 60%;
        float: none;
        margin: 0 auto;
    }
}

.floating_banner {
    position: fixed;
    top: calc(95px);
    right: 0;
    bottom: auto;
    z-index: 1000;
    transition: top 0.3s;
}


@media only screen and (max-width: 767px) {
    .floating_banner {
        width: 14%;
			  top: calc(26.6vh);
    }
}

@media only screen and (max-width: 640px) {
    .floating_banner {
			  top: calc(25.2vh);
    }
}