/***** 要素・共通 *****/

body{ 
 font-family: "メイリオ", "ヒラギノ角ゴシック", Arial, sans-serif;
 font-size: 16px;
 letter-spacing: 0;
 line-height: 130%;
 margin: 0;
 padding: 0;
}
	
h1, h2, h3, h4, h5, h6{
 font-size:medium;
 font-weight:bold;
 padding: 8px 16px 4px;
 margin: 8px 0px;
}

h1.xh1a{
 font-size:x-large;
 padding: 16px 20px 8px;
}

blockquote{
 line-height:130%;
 margin:10px 0px;
 padding:5px 10px;
 overflow-wrap: break-word; 
}

pre {
 font-family: "メイリオ", monospace;
 line-height:130%;
 margin:10px 0px;
 padding:10px;
 white-space: pre-wrap;
 word-break:break-all;
}

pre:has(code){
 padding:0;
}

dl{
 margin-top    : 5px;
 margin-bottom : 5px;
}

dt{
 font-size:small;
 font-weight:bold;
 margin-left:0px;
 line-height:120%;
}

dd{
 font-size:small;
 margin-left:10px;
 line-height:120%;
}

ul{
  line-height   : 120%;
  margin-top    : 5px;
  margin-bottom : 5px;
  margin-left:20px;
  padding-left:0px;
}

ol{
  line-height   : 120%;
  margin-top    : 5px;
  margin-bottom : 5px;
  margin-left:30px;
  padding-left:0px;
}

ul ul,ol ul{
  margin-top    : 0px;
  margin-bottom : 0px;
  margin-left:10px;
  padding-left:0px;
  list-style-type: circle;
}

ol ol,ul ol{
  margin-top    : 0px;
  margin-bottom : 0px;
  margin-left:20px;
  padding-left:0px;
}

li{
  margin-left:0px;
}

table {
 text-align:left;
 margin:10px 0px;
 border-collapse: collapse;
}

th, td {
 padding: 6px;
}

th {
  padding-top: 8px;
  padding-bottom: 8px;
}

img{
 border-style: none;
 border-width: 0;
 vertical-align: middle;
}

sup,sub {
 text-decoration: none;
 font-size: small;
}

/***** クラス・共通 *****/

.mybody{
 text-align: left;
 padding: 15px 25px;
}

.wrapper{
 width: 100%;
 max-width: 1350px;
 margin: 15px auto;
 display: flex;
 justify-content: space-between;
}

.main{
 width: calc(100% - 310px);
}

.sidebar{
 width: 300px;
}

.widget{
 padding: 10px 15px;
 margin-bottom: 10px;
}

.widget dt,.widget dd{
 font-size:medium;
}

.sticky {
  position: sticky;
  top: 10px;
}

div.widget:has(.schedule) {
  --max-height:45vh;
  max-height:var(--max-height);
}

.schedule {
 max-height:calc(var(--max-height) - 50px);
}

div.widget:has(.outline) {
  --max-height:45vh;
  max-height:var(--max-height);
}

.outline {
 font-size: 14px;
 max-height:calc(var(--max-height) - 80px);
}

.outline_expand, .paragraph_expand {
 border: none;
 border-radius: 6px;
 color: brack;
 background-color: #ddd;
 padding: 3px 7px;
 vertical-align: bottom;
 opacity: 0.7;
 transition: 0.3s;
 cursor: pointer;
}

.outline_expand:hover, .paragraph_expand:hover {
 opacity: 1;
}

div.widget:has(.tagcloud) {
  --max-height:27vh;
  max-height:var(--max-height);
}

.tagcloud{
 line-height: 220%;
 max-height:calc(var(--max-height) - 50px);
}

.tagcloud a{
 white-space: nowrap;
}

.scrollable {
 overflow-x: auto;
 overflow-y: auto;
}

.scrollable::-webkit-scrollbar {
  width: 5px;
  height:5px;
}
.scrollable::-webkit-scrollbar-thumb {
  background: #276976;
}
.scrollable::-webkit-scrollbar-track {
  background: #DAEFEF;
}

.item{
 margin-bottom: 10px;
 overflow-wrap: break-word; 
}

.clearfix {
  zoom: 1
}

.clearfix:after {
  content: '';
  display: block;
  clear: both;
}

.caption{
 padding: 10px 15px;
 margin-bottom: 10px;
 overflow-wrap: break-word; 
}

.calendar{
 text-align: center;
 font-weight: bold;
}

.calendar img{
 vertical-align: bottom;
}

.calendar .month{
 font-size: 150%;
}

.title{
 margin-bottom: 20px;
}

.menu{
 float:right;
}

.menu img{
 vertical-align: middle;
 margin-right:2px
}

.ex_holiday img{
 vertical-align: middle;
}

.content{
 padding: 0px;
}

.media{
 margin: 10px;
}

.indent{
 margin: 0px;
 margin-left: 15px;
}

.changed{
 margin-top:10px;
 padding-top:5px;
 text-align:right;
 font-size:small;
 clear:both;
}

.tt{
 font-family:monospace;
}

.u{
 text-decoration:underline;
}

.fb-container{
 display:flex;
 gap: 0px 20px;
}

.fb-item{
}

.right_box{
 float:right;	
 margin: 0;
 padding: 0;
}

blockquote.tiktok-embed{
 margin: 0;
 padding: 0;
}

/***** クラス・export.html *****/

.wrapper-export{
 width: 850px;
 margin: 15px auto;
}

.outline-export {
 font-size:small;
 max-height: 78vh;
}

/*** obsolute ***/
.container{
 width: 100%;
 margin: 15px 0px;
}
