 /* グローバルナビのnav_iconのポジション決め用 */
 .header_area{
    position: relative;
}

/* 全てJSで指定しているのでこれだけでOK */
/* .wrapper 以下を選択不可にする */
  /* タッチ長押しメニュー無効 */
.main-wrapper {
  -webkit-touch-callout: none;
}

/* 画像のドラッグ禁止をスクリプトだけで制御する場合はここでは不要ですが
   WebKit 系ブラウザ向けに付けておくとより確実になります */
.main-wrapper img {
  -webkit-user-drag: none;
}

.title_line{
    margin: 0 10px 10px 10px;
}

.title_line h1{
    font-size: 1.2rem;
    margin: 10px 0 10px 0;
    position: relative;
    padding: .25em 0 .5em .75em;
    border-left: 6px solid #1a3e7e;
    color: #1a3e7e;
}

.title_line h1::after{
    position: absolute;
    left: 0;
    bottom: 0;
    content: '';
    width: 100%;
    height: 0;
    border-bottom: 1px solid #ccc;  
}

.checkpoint{
    display: flex;
    align-items: center;
    margin: 1em 0 1em 0;
}

.intro_txt{
    text-indent: 1rem;
    text-align: justify;
    font-feature-settings : "pkna";
    line-height: 1.5rem;
    font-size: 0.9rem;
    margin: 0 0.5em 0.5rem 1.5em;
    width: calc(100%/2 - 2em);
}

.intro_txt p:not(.announce3 p){
    margin-bottom: 1em;
}

.intro_txt p:last-child:not(.announce3 p){
    margin-bottom: 0em;
}

.article_box{
    display: flex;
    /* margin: 0 auto; */
    margin: 1em 0 1em 0;
    /* border: 3px solid yellow; */
}

.article_box:nth-child(odd) {
	flex-direction: row-reverse;
}

.article_text{
    width: 50%;

    /* align-self: center; */
    /* border: 1px solid pink; */
}

.article_text h3{
    color: #1a3e7e;
    padding: 0.25em;
/*    border-top: solid 2px #6cb4e4;*/
    border-bottom: solid 2px #6cb4e4;
    background: -webkit-repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px,#e9f4ff 3px, #e9f4ff 7px);
    background: repeating-linear-gradient(-45deg, #f0f8ff, #f0f8ff 3px,#e9f4ff 3px, #e9f4ff 7px);
    margin: 1rem 1rem 0.5rem 1rem;
    font-size: 1rem;
}

.article_text a{
    color: #002EE6;
}

.article_text a:hover{
    color: #26ccff;
}


.article_text i{
    font-size: 1rem;
}

.article_text p{
    text-indent: 1rem;
    text-align: justify;
    font-feature-settings : "pkna";
    line-height: 1.5rem;
    margin: 0rem 1.5rem 1rem 1.5rem;
    font-size: 0.9rem;
    color: #333333;
}

.article_text h3 span{
    font-size: 0.9rem;
    vertical-align:middle;
}

.shop_info{
    /* padding: 0.5em 0.5em 0.5em 0em; */
    /* background-color: rgba(220, 247, 84, 0.25); */
    padding: 0.7em 1em 0.5em 0em;
}

.shop_item{
    display: flex;
    margin: 0 0 0.3em 0;
}

.shop_item a{
    color: #002EE6;
}

.shop_item a:hover{
    color: #26ccff;
}

.s_label{
    width: 6.5em;
    text-align: right;
    list-style: none;
    line-height: 1.5em;
    font-size: 0.9em;
    color: #1a3e7e;
    font-feature-settings : "palt";
    white-space: nowrap;
}

.s_info, .s_info_acs{
    flex: 1;
    max-width: calc(100% - 6.5em - 1em);
    list-style: none;
    margin: 0;
    padding-left: 1em;
    line-height: 1.5em;
    text-align: justify;
    font-feature-settings : "palt";
    font-size: 0.9em;
	/* word-break: break-all; */
    word-wrap : break-word;
    overflow-wrap : break-word;
}

.s_info span:not(.vc_txt_li):not(.a8_c2a){
    display: block;
    line-height: 1.3rem;
}

.s_info_acs span{
    display: block;
    line-height: 1.3rem;
    margin-bottom: 0.3em;
    padding-left:1em;
    text-indent: -1em;
}

.s_info_acs span:last-child{
    margin-bottom: 0;
}

.article_img{
    align-self: center;
    width: calc(100%/2 - 1em);
    position: relative;
    margin: 0 0em 0 1em;
    /* border: 3px pink solid; */
}

.article_box:nth-child(even) > .article_img{
    margin: 0 1em 0 0em;
}

.img_caption{
    position: absolute;
    color: #fff;
    background: rgba(0, 0, 0, 0.2);
    bottom: 0;
    right: 0;
    padding: 0 5px 3px 5px;
    font-size: 0.9rem;
}

.img_caption a, .img_caption_top a{
    color: #fff;
}

.img_caption a:hover, .img_caption_top a:hover{
    color: #26ccff;
}

/*２枚画像の共通設定*/
#slide1,#slide2 {
	-webkit-animation-duration: 20s;	/*実行する時間。「s」は秒の事。*/
	animation-duration: 20s;			/*同上*/
	-webkit-animation-iteration-count:infinite;	/*実行する回数。「infinite」は無限に繰り返す意味。*/
	animation-iteration-count:infinite;			/*同上*/
}

/*山下公園*/
#slide1 {
	-webkit-animation-name: slide1;		/*上で設定しているキーフレーム（keyframes）の名前*/
	animation-name: slide1;				/*同上*/
	position: relative;
	width: 100%;
	height: auto;
}

/*みなとみらい夜景*/
#slide2 {
	-webkit-animation-name: slide2;		/*上で設定しているキーフレーム（keyframes）の名前*/
	animation-name: slide2;				/*同上*/
	position: absolute;
	left:0px;
	top:0px;
	width: 100%;
	height: auto;
}

/*１枚目*/
@keyframes slide1 {
	0% {opacity: 0;}
	10% {opacity: 1;}
	30% {opacity: 1;}
	40% {opacity: 1;}
    50% {opacity: 1;}
    60% {opacity: 0;}
	100% {opacity: 0;}
}

/*２枚目*/
@keyframes slide2 {
	0% {opacity: 0;}
	30% {opacity: 0;}
	60% {opacity: 1;}
	70% {opacity: 1;}
	80% {opacity: 1;}
	100% {opacity: 0;}
}

.tekuteku{
    background-color: floralwhite;      
   }
   
.teku_txt{
    text-indent: 1rem;
    text-align: justify;
    font-feature-settings : "pkna";
    line-height: 1.5rem;
    font-size: 0.9rem;
    margin: 0 1.5em 1em 1.5em;
}

.teku_txt:last-child{
    padding-bottom: 0.5em;
}

.teku_txt a{
    color: #002EE6;
}

.teku_txt a:hover{
    color: #26ccff;
}

.sanpo_ttl{
    margin: 1em 1em 0em 1em;
    padding-top: 0.5em;
    color: #1a3e7e;
}

.sanpo{
    display: flex;
    margin: 0 1em;
    justify-content: space-around;
}

.sanpo_img{
    max-width: calc(100%/3);
    margin: 0.5em;
}

.sanpo_img2{
    max-width: calc(100%/3);
    margin: 0.5em;
}

.ward{
    font-size: 0.9rem;
}

.rights{
    font-size: 0.5rem
}

/* .video{
    width: calc(100%/2 - 1em);
    margin: 0.5em 0em 0em 1em;
    align-self: center;
} */

.top_text{
    width: calc(100%/2);
}

.video{
    width: 560px;
    max-width: 560px;
    margin: 0 auto 1em auto;
}

.youtube_video {
    position: relative;
    padding-bottom: 56.25%;
    height: 0; 
    overflow: hidden;
}

.youtube_video iframe,
.youtube_video object,
.youtube_video embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.video_caption, .video_date{
    text-align: center;
    font-feature-settings : "palt";
    color: #333333;
    margin: 0;
}

.video_date{
    font-size: 1em;
}

.video_caption::before{
    /*    content: "\f1b0";*/
    /*        content: "\026fa";*/
    font-family: FontAwesome;
    /*    color: olivedrab;*/
    color: #E2AF7C;
    vertical-align: baseline;
}

.video_caption span{
    display: block;
}

.announce3{
    border: 2px solid #E5C100;
    max-width: 728px;
    margin: 1.5rem auto;
}

.announce3 h3{
    text-align: center;
    background-color: #E5C100;
    color: #fff;
    padding: 3px;
    font-size: 1.2rem;
    font-feature-settings: "palt";
}

.announce3 p{
    text-indent: 1rem;
    margin: 0.8rem;
    text-align: justify;
    font-feature-settings : "pkna";
    font-size: 0.9rem;
    line-height: 1.5rem;
    color: #555555;
}

@media screen and (max-width: 667px) {
.title_line h1{
    font-size: 0.9em;
}

.checkpoint{
    flex-flow: column;
    margin-top: 0em;
}

.article_box, .article_box:nth-child(odd) {
    flex-flow: column;
}

.article_text{
    width: 100%;
}

.article_text h3{
    font-size: 0.9em;
}
        
.intro_txt{
    font-size: 0.9rem;
    margin: 0;
    width: 100%;
} 
    
.intro_txt p{
    margin: 0.5em 1em;
    /* border: 1px solid red; */
}

.intro_txt p:last-child{
    margin-bottom: 1em;
}

.article_img, .article_box:nth-child(even) > .article_img{
    width: calc(100% - 2em);
    margin: 0 1em 0 1em;
}

.s_info{
        text-align:inherit;
}
    
.sanpo_ttl{
    font-size: 1em;
    } 

.video{
    width: calc(100%/1 - 2em);
    margin: 0.5em 1em 0em 1em;
}

.youtube_video{
    margin: 0 0em;
}
    
.video_caption{
    text-align: inherit;
    font-size: 1rem;
    /* margin-left: 0.5em; */
}
    
.video_date{
    text-align: end;
    font-size: 0.8rem;
    color: navy;
    /* margin-right: 0.7em; */
    
}

.announce3{
    margin: 0.5rem;
}

.announce3 h3{
    font-size: 1rem;
}
    
.announce3 p{
    margin: 0.5rem;
    font-size: 16px;
}

}