@charset "utf-8";

/* overwrite shared.css */
.siteFt{ padding-bottom:60px; }

#sp{
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	width:100%;
	padding: 5px 10px;
	overflow:hidden;
}

/*
#sp h3 br,
#sp div + br,
#sp p + br,
#sp br + br{
	display:none;
}
*/

#special{
	-moz-box-sizing:border-box;
	-webkit-box-sizing:border-box;
	box-sizing:border-box;
	margin:0;
	padding:1.5em 0 10px;
	overflow:hidden;
	zoom:1;
}

#special img{
	vertical-align:top;
	width: 100%;
}

#special h3{
	padding:0;
	color: #366;
	font-weight:bold;
	line-height:1.4;
	margin-bottom:0.5em;
	background:none;
}

#special h2{
	padding:0;
	color: #366;
	font-weight:bold;
	line-height:1.4;
	margin-bottom:0.5em;
	background:none;
}

#special .date {
  position:absolute;
  right:0;
  bottom:0;
}

#special span {
	line-height: 150%;
}

#special p {
	line-height:155%;
	margin-bottom:1em;
	text-indent:1em;
	word-break: normal;
}

#special p.n{
	text-indent:0;
}

#special p a{
	text-decoration:underline;
}

#special div{
	overflow: hidden;
	zoom: 1;
}

#special figure.figC{
	margin-bottom: 15px;
	text-align: center;
}
#special figure.figC img{
	display: block;
	width: 100%;
}
#special figure.figR{
	display: inline;
	float: right;
	margin: 0 0 10px 15px;
	text-align: center;
}
#special figure.figL{
	display: inline;
	float: left;
	margin: 0 15px 10px 0;
	text-align: center;
}
#special figure figcaption {
	display: block;
	margin-top:10px;
	color: #777;
	font-size:90%;
	line-height:1.1;
}

#special .writer { text-align: right; }

/* dialogue */
#special.dialogue .balloon {
    margin-bottom: 2em;
    position: relative;
    display: flex;
  }
  
  #special.dialogue .balloon:before,
  #special.dialogue .balloon:after {
    clear: both;
    content: "";
    display: block;
  }
  
  #special.dialogue .balloon .balloon-image-left,
  #special.dialogue .balloon .balloon-image-right {
    width: 70px;
    height: 70px;
  }
  
  #special.dialogue .balloon-image-left {
    float: left;
    margin-right: 14px;
  }
  
  #special.dialogue .balloon-image-right {
    float: right;
    margin-left: 20px;
  }
  
  #special.dialogue .balloon .balloon-image-left img,
  #special.dialogue .balloon .balloon-image-right img {
    width: 100%;
    height: 100%;
    border: 1px solid #aaa;
    border-radius: 50%;
    margin: 0;
    box-sizing: border-box;
  }
  
  #special.dialogue .balloon-text-right,
  #special.dialogue .balloon-text-left {
    position: relative;
    padding: 8px;
    border: 1px solid;
    border-radius: 10px;
    width: calc(100% - 100px);
    display: inline-block;
    overflow: visible !important;
    box-shadow: 2px 2px 8px 0px rgba(0, 0, 0, 0.1);
  }
  
  #special.dialogue .balloon-text-right {
    border-color: #aaa;
  }
  
  #special.dialogue .balloon-text-left {
    border-color: #aaa;
  }
  
  #special.dialogue .balloon p {
    font-size: 14px;
    margin: 0 0 20px;
    line-height: 200% !important;
    text-indent: 0 !important;
  }
  
  #special.dialogue .balloon p.speaker-name {
    font-weight: bold;
    font-size: 16px;
    margin-bottom: 8px !important;
  }
  
  #special.dialogue .balloon p:last-child {
    margin-bottom: 0 !important;
  }
  
  #special.dialogue .balloon-text-right:before {
    position: absolute;
    content: "";
    border: 5px solid transparent;
    border-right: 11px solid #aaa;
    top: 28px;
    left: -16px;
  }
  
  #special.dialogue .balloon-text-right:after {
    position: absolute;
    content: "";
    border: 5px solid transparent;
    border-right: 11px solid #fff;
    top: 28px;
    left: -14px;
  }
  
  #special.dialogue .balloon-text-left:before {
    position: absolute;
    content: "";
    border: 5px solid transparent;
    border-left: 11px solid #aaa;
    top: 28px;
    right: -16px;
  }
  
  #special.dialogue .balloon-text-left:after {
    position: absolute;
    content: "";
    border: 5px solid transparent;
    border-left: 11px solid #fff;
    top: 28px;
    right: -14px;
  }

#special_image {
	text-align:center;
	overflow:hidden;
	margin-bottom:1em;
	zoom:1;
}
#special_image img{
    margin-bottom: 0.5em;
    display: block;
    width: 99%;
}
#special_image span{
	display:block;
	margin-bottom:0.5em;
}
#special_image em{
	display:block;
	font-size:130%;
	line-height:140%;
}

.ctsBox h3 {
	clear: none;
}


#copyright{ margin-bottom: 0.5em; }


/* for Android4.0 Brawser  */
#special h3,
#special p{
	background:#fff;
}



#sp nav{
    margin:12px 0 6px;
    padding:6px;
    background:#ebeced;
    -moz-border-radius:4px;
    -webkit-border-radius:4px;
    border-radius:4px;
}

#sp nav li{
    padding:6px 0;
    border-bottom:1px solid #d2d2d2;
}

#sp nav li:last-child { border-bottom:none; }

#sp nav ol a{
    display:block;
    padding-left:2em;
    position:relative;
    font-weight:bold;
    cursor:pointer;
    font-weight:bold;
    color:#333;
}

#sp nav ol a[href]{
    font-weight:normal;
    color:#011B8F;
}

#sp nav ol a > span {
    display:block;
    width:1.3em;
    height:1.3em;
    line-height:1.3;
    text-align:center;
    position:absolute;
    left:0;
    top:0;
    font-size:13px;
    border:1px solid #ccc;
    background:#D3E2EF;
}
#sp nav ol a[href] > span {
    background:#fff;
}

img#promo {
  height: 16px;
  vertical-align: middle;
}

#special_bottom .date,
#special_bottom .sponsored {
  font-size: 12px;
  text-align: right;
  padding: 5px 10px 0 0;
}

#special .cts-video-player{
	width:90%;
	margin:0 auto;
}

#special .embedTweet {
  display: flex;
  justify-content: center;
  margin:0 10px 10px;
}

.content-head-banner {
  margin: 0;
}
.content-head-banner img {
  width: 100%;
}
