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

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;
}

img.media {
 transition: transform .5s ease;
}

img.media:hover {
 transform: scale(1.05);
}

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

button {
 border: none;
 border-radius: 6px;
 color: brack;
 background-color: #ddd;
 padding: 2px 5px;
 vertical-align: bottom;
 opacity: 0.7;
 transition: 0.3s;
 cursor: pointer;
}

button:hover {
 opacity: 1;
}

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

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

.wrapper{
 width: 100%;
 max-width: 1350px;
 margin: 15px auto;
}

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

.wrapper_rel{
 position: relative;
}

.wrapper_flex{
 display: flex;
 justify-content: space-between;
}

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

.btns_x_pos{
 position: absolute;
 left: -15px;
}

.btns_y_pos{
 position: fixed;
 bottom: 30px;
 z-index:10;
 display: flex;
 flex-direction:column;
 gap:5px;
}

.sidebar{
 width: 300px;
}

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

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

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

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

.outline>ul {
	margin-left:0px;
}

.outline li {
    display: block;
    list-style-type:none;
}

.outline_sidebar.close_start ul ul {
    display: none;
}

.outline_item.close_start ul ul {
    display: none;
}

.outline_export.close_start ul ul ul {
    display: none;
}

.outline li .btnE {
    cursor: pointer;
}

.outline li .btnE:hover {
    color: #aaa;
}

.outline_item {
	max-height:50vh;
}

.outline_sidebar {
 font-size: 14px;
 max-height:calc(48vh - 80px);
}

.outline_export {
 font-size:small;
 max-height: 80vh;
}

.tagcloud{
 line-height: 220%;
 max-height:calc(27vh - 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{
 display:flex;
 justify-content: space-between;
 align-items: flex-start;
 margin-bottom: 20px;
}

.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{
}

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