@charset "UTF-8";
html {
overflow-y: scroll;
}
body {
color: #222222;
margin: 0px;
padding: 0px;
font-size: 19px;
line-height: 2; 
font-family:'Barlow', "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3",  sans-serif;
-webkit-text-size-adjust:100% !important
}
::selection {
background: #0066cc;
color: #ffffff;
}

header#tate{
width: 18%;
background-color: #ffffff;
z-index: 9999;
height:100%;
position: fixed;
left: 0;
top: 0;
box-shadow: 0px 0px 4px 3px rgba(72,42,0,.3);
-webkit-box-shadow: 0px 0px 4px 3px rgba(72,42,0,.3);
-moz-box-shadow: 0px 0px 4px 3px rgba(72,42,0,.3);
overflow-y: scroll;
overflow-x: hidden;
}

header#tate::-webkit-scrollbar-thumb {
background-color: rgb(150,150,150);
border-radius: 5px;
box-shadow: inset 3px 3px 3px rgba(255,255,255,0.2);
}

.sp_title{
display: inline;
height:8em;
margin:0;
padding:.6em .3em .3em 1.6em;
max-width: 80%;
}

#menusp ul{
text-align: left;
margin-top:0;
padding: 0em 0 0.5em 0;
list-style: none;
display: block;
}
#menusp li{
vertical-align: middle;
overflow: hidden;
line-height: 43px;
margin-bottom: 2px ;
}
#menusp li a{
display:block;
text-decoration: none;
font-weight: 700;
color: #a0a0a0;
margin: 0;
text-align: left;
letter-spacing: -0.03em; /*文字幅*/
position: relative;
left:0;
padding-left:1em;
}
.menuspsp {
letter-spacing: 0;
}
.now{
background-color: #0066cc;
}
.nownow{
color:#ffffff;
}

.plusopen.change{
background-color:#0066cc;
transition: .3s;
}

#menusp li #one:hover{
background-color:#0066cc;
color:#ffffff;
transition: .3s;
}

#menusp li #eight:hover{
background-color:#0066cc;
color:#ffffff;
transition: .3s;
}

#menusp .plusopen.change li a{
color:#ffffff;
transition: .3s;
}

.menuspsp {
    letter-spacing: 7px;
    display: inline-block;
    padding: .1em .8em;
    text-decoration: none;
    color: #a0a0a0;
    border: solid 2px #a0a0a0;
    border-radius: 12px;
    transition: .2s;
    margin:20px 52.5px;
	letter-spacing: 0;
box-shadow: 0px 0px 2px 3px rgba(72,42,0,.2);
-webkit-box-shadow: 0px 0px 4px 3px rgba(72,42,0,.2);
-moz-box-shadow: 0px 0px 4px 3px rgba(72,42,0,.2);
}

.menuspsp.en{
letter-spacing: -1px;
margin:20px 45px;
}

.menuspsp:hover {
    background: #0066cc;
	border: solid 2px #0066cc;
    color: #ffffff;
}

.nakami{
display:none;
margin-right:35px;
margin-top:5px;
margin-bottom:0px;
}

.plusopen{
align-items: baseline;
display:flex;
}

.plusplus{
float:right;
position: absolute;
padding-top:2.5px;
right:8px;
}

.plusplus::before{
content: "＋";
color:#a0a0a0;
}

.plusopen.change .plusplus::before{
content: "＋";
color:#ffffff;
}

.plusopen.active .plusplus::before{
content: "－";
color:#a0a0a0;
}

.plusopen.change.active .plusplus::before{
content: "－";
color:#ffffff;
}

.plusopen.plus{
background-color: #0066cc;
padding-top:0;
margin-top:0;
}

.plusopen.plus .plusplus::before{
color:#ffffff;
}

.nakamis{
font-size:14px;
padding-left:5px;
letter-spacing:-0.1em;
}

#menusp .nakami li a{
display:block;
text-decoration: none;
font-weight: 700;
color: #a0a0a0;
margin: 0;
text-align: left;
letter-spacing: -0.03em; /*文字幅*/
position: relative;
left:0;
padding-left:2.3em;
font-size:16px;
line-height: 30px;
}

#menusp .nakami li a::before{
font-family: "Font Awesome 5 Free";
content: "\f0c6";
padding-right:8px;
}

#one,#two,#three,#four,#five,#six,#seven,#eight ::before{
color:#222222;
vertical-align:inherit;
font-weight: 900;
}

#one::before{
font-family: "Font Awesome 5 Free";
content: "\f024";
padding-right:19px;
padding-left:2px;
font-size:1em;
}

#two::before{
font-family: "Font Awesome 5 Free";
content: "\f02d";
padding-right:20px;
padding-left:2px;
font-size:1em;
}

#three::before{
font-family: "Font Awesome 5 Free";
content: "\f15b";
padding-right:20px;
padding-left:4px;
font-size:1em;
}

#four::before{
font-family: "Font Awesome 5 Free";
content: "\f0eb";
padding-right:20px;
padding-left:4px;
font-size:1em;
}

#five::before{
font-family: "Font Awesome 5 Free";
content: "\f086";
padding-right:15px;
font-size:1em;
}

#six::before{
font-family: "Font Awesome 5 Free";
content: "\e4fa";
padding-right:15px;
font-size:1em;
}

#seven::before{
font-family: "Font Awesome 5 Free";
content: "\f303";
padding-right:18px;
padding-left:2px;
font-size:1em;
}

#eight::before{
font-family: "Font Awesome 5 Free";
content: "\f05a";
padding-right:18px;
padding-left:2px;
font-size:1em;
}


.now #one::before{
color:#ffffff;
}

.now #two::before{
color:#ffffff;
}

.now #three::before{
color:#ffffff;
}

.now #four::before{
color:#ffffff;
}

.now #five::before{
color:#ffffff;
}

.now #six::before{
color:#ffffff;
}

.now #seven::before{
color:#ffffff;
}

.now #eight::before{
color:#ffffff;
}

.scmoji{
font-size:15px;
}

#videoindex{
margin-top:10px;
border: solid 2px #0066cc;
}

.topcontents{
font-size:22px;
margin-top:1em;
margin-bottom:2.5em;
margin-left:.2em;
}


.topcontents #two::before{
color:#0066cc;
font-size:1.4em;
padding-right:22px;
padding-left:15px;
}

.topcontents #three::before{
color:#0066cc;
font-size:1.4em;
padding-right:24px;
padding-left:17px;
}

.topcontents #four::before{
color:#0066cc;
font-size:1.4em;
padding-right:24px;
padding-left:17px;
}

.topcontents #five::before{
color:#0066cc;
font-size:1.4em;
padding-right:16px;
padding-left:10px;
}

.topcontents #six::before{
color:#0066cc;
font-size:1.4em;
padding-right:17px;
padding-left:10px;
}

.topcontents #seven::before{
color:#0066cc;
font-size:1.4em;
padding-right:20px;
padding-left:15px;
}

.topcontentss{
line-height:0;
align-items: baseline;
}

.topcontentss #two:hover{
color:#5C5C5C;
}

.topcontentss #three:hover{
color:#5C5C5C;
}

.topcontentss #four:hover{
color:#5C5C5C;
}

.topcontentss #five:hover{
color:#5C5C5C;
}

.topcontentss #six:hover{
color:#5C5C5C;
}

.topcontentss #seven:hover{
color:#5C5C5C;
}

.topcontents p{
margin:.3em 1em 1.5em 1em;
font-size:19px;
}

dl{
background-color:#ffffff;
padding:20px 30px 15px;
width:85%;
overflow-y: scroll;
overflow-x: hidden;
margin:1em 1em 2em 2.5em;
border: 1px solid #222222;
-webkit-filter: drop-shadow(0px 8px 4px rgba(0,0,0,.3));
        filter: drop-shadow(0px 5px 4px rgba(0,0,0,.3));
height:180px;
}
dt{
background-color:#0066cc;
color:#ffffff;;
padding-right:5px;
padding-left:5px;
width:120px;
float:left;
margin-right:20px;
margin-left:15px;
margin-bottom:7px;
text-align:center;
}
dd{
margin-bottom:10px;
padding-bottom:10px;
border-bottom: 2px solid #0066cc;
margin-left:0px;
margin-right:10px;
}
dl::after {
    content: '';
    display: block;
    clear: both;
}

.activity{
font-size:17px;
}

.activity::before{
font-family: "Font Awesome 5 Free";
content: "\f0c6";
padding-right:5px;
font-weight: 900;
font-size:1em;
}


img {
max-width: 85%;
margin: 0 auto 3em auto;
display:block;
}

.simg{
margin: 0 auto .5em auto;
}


a{
color: #0066cc;	
text-decoration: none;
}
a:hover {
color: #4ca5fe;
text-decoration: none;
}

ol{
margin:0;
padding: 0px 15px 0px 25px;
}

ol li {
padding-left :10px;
}

ol ol{
padding-left :35px;
}

ol ol ol{
padding-left :45px;
}

main {
margin: 1.5em auto 0 17em ;
text-align: left;
max-width: 55em;
z-index: 99;
}

.center{
text-align: center;
display: block;
}

.nav-unshown {
display:none;
}
.pc_unshown{
display: none;
}

/*フッター*/
footer{
margin: 2em auto 0 16.5em;
margin-top:2em;
margin-bottom: 0;
bottom:0;
text-align: center;
font-size:80%;
background-color: #222222;
color: #eeeeee;
padding: 2em;
}
footer a{
color: #0066cc;
}
footer a:hover{
color: #4ca5fe;
}

#top {
width: 75px ;
height: 55px ;
position: fixed ;
right: 5px ;
bottom: 25px ;
}

/*見出したち*/
header#yoko{
margin:0 auto 0 16.5em;
margin-left:260px;
margin-bottom:1em;
font-size:30px;
font-weight: bold;
text-align:left;
background-color: #0066cc;
color: #ffffff;
padding: .4em 0 .3em .8em;
}

p#hum{
font-size:15px;
font-weight:normal;
padding: 0 0 0em .1em;
margin:0;
border-bottom: solid 1px #ffffff;
}

a.ahum{
color:#ffffff;
}

h1 {
position: relative;
border-bottom: solid 3.5px #8DAEEB;
font-size:25px;
padding: 0em 0em 0em .6em;
}

h1:after {
position: absolute;
content: " ";
display: block;
border-bottom: solid 3.5px #0066cc;	
bottom: -3.5px;
width:40%;
margin-left:-.6em;
}

h2{
border-bottom: 6px dotted #000;
position:relative;
line-height: 1.2;
font-size:35px;
}

h3{
border-left: 5px solid #0066cc;
padding-left:10px;
margin-bottom:0px;
}

h4{
color: #222222;
font-size: 1.4em;
margin-top:2em;
margin-bottom:0;
padding: 0.2em 0 0.2em 1.2em;
position: relative;
background: linear-gradient(to right, #abc7ea 0%, #97b8e5 0.5%, #c0d8ef 13%, #c0d4ef 16%);
width:8em;
letter-spacing: 0.05em;
text-align: left;
transform: rotate(-2deg);
z-index: -99;
box-shadow: 10px 3px 15px -5px rgba(0, 0, 0, .2);
}

h5{
font-size:20px;
margin:.5em 1em 0em 1em;
}

.topbig{
font-size:30px;
text-align:center;
}

.bottomnavi{
position: relative;
display: flex;
justify-content: space-between;
padding: 1em 0em 0em;
}

.modoru {
font-family: 'Oswald', sans-serif;
font-size:24px;
letter-spacing: 3px;
display: inline-block;
padding: 0.1em 1em 0.1em 1.1em;
text-decoration: none;
color: #0066cc;
border: solid 2px #0066cc;
border-radius: 5px;
transition: .2s;
}

.modoru:hover {
background: #0066cc;
color: #ffffff;
}

.prev{
font-family: 'Oswald', sans-serif;
position: relative;
display: inline-block;
padding: 0 0.4em 0 2.1em;
font-size: 22px;
border-bottom:#0066cc 2.5px solid;
color: #0066cc;
cursor: pointer;
transition: all .2s;
}
.prev::before{
content: '';
position: absolute;
top: 30%;
display: inline-block;
left: 0.7em;
width: 1em;
height: 1.5em;
border-left: 4px solid #0066cc;
transform: skewX(-45deg);
transition: all .2s;
}
.prev:hover{
color: #6699cc;
border-bottom:#6699cc 2.5px solid;
}
.prev:hover::before{
border-left: 4px solid #6699cc;
}
.next{
font-family: 'Oswald', sans-serif;
position: relative;
display: inline-block;
padding: 0 2.2em 0 0.4em;
font-size: 22px;
border-bottom:#0066cc 2.5px solid;
color: #0066cc;
cursor: pointer;
transition: all .2s;
}
.next::after{
content: '';
position: absolute;
top: 30%;
display: inline-flex;
width: 1em;
height: 1.5em;
border-right: 4px solid #0066cc;
transform: skewX(45deg);
right:0.7em;
color: #0066cc;
transition: all .2s;
}
.next:hover{
color: #6699cc;
border-bottom:#6699cc 2.5px solid;
}
.next:hover::after{
border-right: 4px solid #6699cc;
}

.posternum{
display:relative;
font-size:60px;
padding: 0 10px 0 10px;
}

.posternum.en{
display:relative;
font-size:60px;
padding: 0 30px 0 5px;
}

.postermoji{
display:relative;
font-size:25px;
padding-left:25px;
}

.postermoji.en{
display:relative;
font-size:25px;
padding-left:20px;
}

.postermoji2{
display:relative;
font-size:25px;
padding-right:30px;
}

.subposter{
position:absolute;
right:1em;
top:0;
height:110.5px;;
}

.jyoko{
background-color:#CCDAF4;
padding: 20px 25px;
margin: 0 50px 30px;
border-left: 8px solid #0066cc;
}

.sharemoji{
font-family: 'Oswald', cursive;
font-size:1.6em;
margin-top:1em;
margin-bottom: 0.1em;
  position: relative;
  display: inline-block;
  padding: 0px 30px;
}
.sharemenu{
margin:1.5em 0 1em 0; 
text-align: center;
}
.sharelink{
color:#222222;
margin: 0.3em;
font-size:1.2em;
border: #222222 1.5px solid;
border-radius: 100px;
}
.sharelink:hover{
color: #ffffff;
background-color: #0066cc;
transition:.3s;
}
.sharetw{
padding: 0.75em 0.8em;   
}
.sharefb{
padding:0.75em 1em;
}
.shareli{
font-size:1.5em;
padding:0.48em 0.6em;
}

table{
border-collapse:collapse;
display: inline-block;
width:90%;
margin-bottom:1em;
}
th{
padding:0.25em 1em;
border: solid 1px #0066cc;
width:20%;
}
td{
padding:0.25em 1em;
border: solid 1px #0066cc;
}
th{
color: #0066cc;
background: #CCDAF4;
}


.kakoi{
top:0;
margin: 0px 100px 30px;
padding:.5em 1.5em .5em 1.5em;
background-color:rgba(204,218,244,0.5);
}

.kakoi ul{
padding:0em 1em 0em 1em;
}

.skakoimoto{
padding:0;
margin:0;
text-align: right;
}

.kakoimoto{
font-size:13px;
}

.kakoimotos{
margin-top:10px;
font-size:13px;
float:right;
}

/*段落*/
p{
margin:.5em 1em 2em 1em;
line-height: 1.9;
}

.kyocho {
background: linear-gradient(transparent 60%, #B2D8FF 60%);
font-weight: 700; 
}

.menu_btn{
display: flex;
justify-content: space-around;
flex-wrap: wrap;
align-content: space-around;
z-index: 0;
}

.poster_btn{
display: inline-block;
position:relative;
flex-direction: column;
align-content:flex-start;
justify-content: space-around;
align-content: space-around;
width:150px;
height:auto;
-webkit-filter: drop-shadow(0px 3px 4px rgba(0,0,0,.3));
        filter: drop-shadow(0px 3px 4px rgba(0,0,0,.3));
padding:0 .5em 0 .5em;
vertical-align: bottom;
line-height: .1em;
flex-wrap: wrap;
}
.poster_btn:hover{
-webkit-filter: drop-shadow(0px 8px 4px rgba(0,0,0,.3));
        filter: drop-shadow(0px 8px 4px rgba(0,0,0,.3));
transform: translateY(-.3em);
transition: all 0.3s ease 0s;
}
.poster_btn img{
max-width:100%;
}

.poster_btn_all{
margin:2.5em 0 0 0;
}

.modal-wrapper {
    z-index: 1000;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    padding: 40px 10px;
    text-align: center;
}

.modal-wrapper:not(:target) {
    opacity: 0;
    visibility: hidden;
    transition: opacity .3s, visibility .3s;
}

.modal-wrapper:target {
    opacity: 1;
    visibility: visible;
    transition: opacity .4s, visibility .4s;
}

.modal-wrapper::after {
    display: inline-block;
    height: 100%;
    margin-left: -.05em;
    vertical-align: middle;
    content: "";
}

/*四角の中の設定*/
.modal-wrapper .modal-window {
    margin-left: 15.5em ;
    box-sizing: border-box;
    display: inline-block;
    z-index: 20;
    position: relative;
    width:65%;
    max-width: 65vw;
    padding: 1.5em;
    background: #fff;
    box-shadow: 0 0 30px rgba(0, 0, 0, .6);
    vertical-align: middle;
	text-align:left;
}

.modal-wrapper .modal-window .modal-content {
    max-height: 80vh;
    overflow-y: auto;
    text-align: left;
}
.modal-overlay {
    z-index: 10;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background: rgba(0, 0, 0, .8);
}

.modal-wrapper .modal-close {
    z-index: 20;
    position: absolute;
    top: 0;
    right: 0;
	left: 22em;
    width: 35px;
    color: #95979c !important;
    font-size: 40px;
    font-weight: 700;
    line-height: 35px;
    text-align: center;
    text-decoration: none;
    text-indent: 0;
}

.modal-wrapper .modal-close:hover {
color: #b35947 !important;
}

#modal-overlay {
z-index: 1 ;
display: none ;
position: fixed ;
top: 0 ;
left: 0 ;
width: 100% ;
height: 120% ;
background-color: rgba( 0,0,0, 0.8 ) ;
}
#modal-close{
position: absolute;
top: 0;
right: 10px;
text-decoration: none;
transition: 0.5s ease-in-out;
font-size:2em;
color:#666;
}

/*用語集用*/
.midashi{
font-size:30px;
}
.midashi::before {
content: "【 ";
font-size:30px;
}
.midashi::after {
content: " 】";
font-size:30px;
}
.setsumei{
line-height: 1.8;
padding-left:15px;
}

/*図鑑用*/

rt {
font-size: 15px;
}


/*権利の歴史用*/
#conference-timeline {
  position: relative;
  display:inline-block;
  width: 100%;
  margin: 0 auto;
}

#conference-timeline .conference-center-line {
  position: absolute;
  width: 7px;
  height: 100%;
  top: 0;
  left:8%;
  margin-left: -5px;
  background-image: -webkit-linear-gradient(top, transparent, #6bb38b 2%, #6bb38b 98%, transparent);
    background-image: linear-gradient(to bottom, transparent, #6bb38b 2%, #6bb38b 98%, transparent);
  z-index: -1;
}
#conference-timeline .conference-center-line2 {
  position: absolute;
  width: 7px;
  height: 100%;
  top: 0;
  right:8%;
  margin-left: -5px;
  background-image: -webkit-linear-gradient(top, transparent, #eda6ed 2%, #eda6ed 98%, transparent);
    background-image: linear-gradient(to bottom, transparent, #eda6ed 2%, #eda6ed 98%, transparent);
  z-index: -1;
}

#conference-timeline .conference-timeline-content {
  padding-top: 67px;
  padding-bottom: 67px;
}
.timeline-article {
  width: 100%;
  height: 100%;
  position: relative;
  overflow: hidden;
  margin: 20px 0;
}
.timeline-article .content-right-container {
  max-width:100%;
  width: 100%;
}
.timeline-article .content-right {
  position: relative;
  width: 45%;
  border: 3px solid #6bb38b;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,.03);
  padding: 22px 10px;
  margin-left:170px;
}
.timeline-article .content-right2 {
  position: relative;
  width: 30%;
  border: 3px solid #eda6ed;
  background-color: #fff;
  box-shadow: 0 1px 3px rgba(0,0,0,.03);
  padding: 22px 10px;
  margin-left:530px;
}

.timeline-article p {
  margin: 0 15px;
  padding: 0;
  font-weight: 400;
  color: #242424;
  font-size: 19px;
  line-height: 30px;
  position: relative;
}
.timeline-article .content-right-container {
  float: right;
}
.timeline-article .content-right:before{
  position: absolute;
  top: 13px;
  font-size: 25px;
  font-family: "FontAwesome";
  color:  #6bb38b;
}
.timeline-article .meta-date {
  position: absolute;
  top: 0;
  left: 8%;
  width: 80px;
  height: 55px;
  margin-left: -40px;
  color: #fff;
  background: #6bb38b;
  font-family: 'Oswald', cursive;
}
.timeline-article .meta-date2 {
  position: absolute;
  top: 0;
  right:4.5%;
  width: 80px;
  height: 55px;
  margin-left: -100px;
  color: #fff;
  background: #eda6ed ;
  font-family: 'Oswald', cursive;
}

.timeline-article .meta-date::after{
bottom:25px;
left:80px;
content:"";
display:block;
width:50px;
height:5px;
background-color:#6bb38b;
position:absolute;
}

.timeline-article .meta-date2::after{
bottom:25px;
right:80px;
content:"";
display:block;
width:50px;
height:5px;
background-color:#eda6ed;
position:absolute;
}

.timeline-article .meta-date .date {
  display: block;
  text-align: center;
  font-weight: 900;
  font-size: 27px;
  vertical-align: middle;
}
.timeline-article .meta-date2 .date {
  display: block;
  text-align: center;
  font-weight: 900;
  font-size: 27px;
  vertical-align: middle;
}
.timeline-article .contenta :hover {
  background-color: rgba(107,179,139,0.35);
transition:.2s;
}
.timeline-article .content2a :hover {
  background-color: rgba(237,166,237,0.35);
transition:.2s;
}
.content-right p{
pointer-events: none;
}
.content-right2 p{
pointer-events: none;
}


.kuni{
display: flex;
font-size:25px;
margin-bottom:15px;
}
.sekai{
margin-left:1%;
background-color:#6bb38b;
padding:5px 15px;
}
.japan{
margin-left:68%;
background-color:#eda6ed;
padding:5px 15px;
}

.kuni.en{
display: flex;
font-size:20px;
margin-bottom:15px;
}
.sekai.en{
margin-left:1%;
background-color:#6bb38b;
padding:5px 15px;
}
.japan.en{
margin-left:55%;
background-color:#eda6ed;
padding:5px 15px;
}

.historynum{
display:relative;
font-size:50px;
padding: 0 10px 0 10px;
padding-left:25px;
}

.kaizen_btn{
display: inline-block;
position:relative;
flex-direction: column;
align-content:flex-start;
justify-content: space-around;
align-content: space-around;
width:215px;
height:auto;
-webkit-filter: drop-shadow(0px 3px 4px rgba(0,0,0,.3));
        filter: drop-shadow(0px 3px 4px rgba(0,0,0,.3));
padding:0 1.5em 0 .5em;
vertical-align: bottom;
line-height: .1em;
}
.kaizen_btn:hover{
-webkit-filter: drop-shadow(0px 8px 4px rgba(0,0,0,.3));
        filter: drop-shadow(0px 8px 4px rgba(0,0,0,.3));
transform: translateY(-.3em);
transition: all 0.3s ease 0s;
}
.kaizen_btn img{
max-width:100%;
margin-bottom:2em;
}
.kaizen_btn_all{
margin:3em 0 0 0;
text-align:center;
}

/*関連するコンテンツ*/
.kanren{
position: relative;
margin: 50px 90px 50px 110px;
line-height:1.7;
}

.kanren .midashi{
position: relative;
background: #ffd171;
padding: 1px 5px 1px 25px;
font-size:22px;
color: #474747;
border-radius: 0 20px 20px 0;
}

.kanren .midashi:before {
  font-family: "Font Awesome 5 Free";
  content: "\f0c1";
  display: inline-block;
  line-height: 50px;
  position: absolute;
  padding: 0em;
  color: white;
  background: #ff9900;
  font-weight: 900;
  width: 50px;
  text-align: center;
  height: 50px;
  left: -1.35em;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border: solid 3px white; 
  border-radius: 50%;
}
.kanren .midashi:after {
content:none;
}
.kanren .youso{
margin:0px 15px 0 -10px;
padding:10px 20px;
background-color:#ffeabd;
border-radius: 0 0 20px 20px;
}
.kanren small{
font-size:17px;
padding:0 0 0 10px;
}
.sitemap{
padding-left:5%;
line-height:2;
}
.plus{
padding-top:1em;
}

.sitemap::before{
font-family: "Font Awesome 5 Free";
content: "\f0c1";
color:#222222;
font-size:0.95em;
vertical-align:inherit;
font-weight: 900;
padding-right:15px;
}
.siteinfo{
padding-left:5%;
line-height:2;
}
.siteinfo::before{
font-family: "Font Awesome 5 Free";
content: "\f111";
color:#222222;
font-size:0.85em;
vertical-align:inherit;
font-weight: 900;
padding-right:15px;
}
.infoafter{
padding-left:8%;
line-height:1.6;
}

.worksheet{
margin:2em 0 3em 0;
display:flex;
justify-content: center;
}

.worksheets{
line-height:0;
margin-top:0em;
margin-right:40px;
font-size:17px;
}

.worksheets img{
width:180px;
border: 1.5px solid #222222;
margin-bottom:1.5em;
}

.mojisize{
width: 95%;
padding:5px 10px 10px 18px;
display: flex; 
align-items: baseline;
position: absolute;
}

.mojisize.en{
width: 95%;
padding:5px 10px 10px 40px;
display: flex; 
align-items: baseline;
position: absolute;
}

.ms{
font-size:15px;
padding-right:10px;
}

.msms{
margin-left:0;
float:right;
}


button.small,.middle,.big{
background-color:#ffffff;
border: #222222 1.5px solid;
border-radius: 4px;
padding:1px 4px;
margin-top:0px;
margin-right:5px;
font-size:17px;
}

button.small.en,.middle.en,.big.en{
background-color:#ffffff;
border: #222222 1.5px solid;
border-radius: 4px;
padding:2px 5px;
margin-top:0px;
margin-right:5px;
font-size:18px;
}

.msms .small:hover{
background-color:#0066cc;
color:#ffffff;
transition: .2s;
}

.msms .middle:hover{
background-color:#0066cc;
color:#ffffff;
transition: .2s;
}

.msms .big:hover{
background-color:#0066cc;
color:#ffffff;
transition: .2s;
}

.anq{
padding:0 20px 20px 40px;
}

.anqsentaku{
margin-left:30px;
bottom:30px;
}

.anqsentaku br{
display: block;
content: "";
margin: 15px 0;
}

.anqsentaku.plusp br{
display: block;
content: "";
margin: 15px 0;
}

.anqsentaku.plus br{
display: block;
content: "";
margin: 0px 0;
}

.anqanq{
margin-left:50px;
}


.talk {
  width: 100%;
  margin: 1.5em 0 1em .5em;
}

.talk.plus {
  width: 100%;
  margin: 2em 0 1em .5em;
}

.talk .talkicon {
  float: left;
  margin-right: -90px;
  width: 80px;
}

.talk .talkicon img{
  width: 80%;
  height: auto;
}

.talk .talking {
  width: 90%;
}

.comment.w {
  display: inline-block;
  position: relative; 
  margin: 1px 0 0 105px;
  padding: 15px 20px;
  border-radius: 20px;
  background: #d3e7ef;
}

.comment.s {
  display: inline-block;
  position: relative; 
  margin: 1px 0 0 105px;
  padding: 15px 20px;
  border-radius: 20px;
  background: #e7f6ed;
}

.comment.y {
  display: inline-block;
  position: relative; 
  margin: 1px 0 0 105px;
  padding: 15px 20px;
  border-radius: 20px;
  background: #feedf2;
}

.comment.r {
  display: inline-block;
  position: relative; 
  margin: 1px 0 0 105px;
  padding: 15px 20px;
  border-radius: 20px;
  background: #ffe8db;
}

.comment.w:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #d3e7ef;
}

.comment.s:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #e7f6ed;
}

.comment.y:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #feedf2;
}

.comment.r:after {
  content: "";
  display: inline-block;
  position: absolute;
  top: 18px; 
  left: -24px;
  border: 12px solid transparent;
  border-right: 12px solid #ffe8db;
}


.comment p {
  margin: 0;
  padding: 0;
}





@media screen and (max-width: 1024px) {
body {	
font-size: 18px;
}

header#tate{
width: 20%;
}
.sp_title{
height:7em;
margin:0;
padding:.5em .3em 0 1.3em;
max-width: 80%;
}
#menusp li a{
padding-left:.8em;
}
.menuspsp {
    letter-spacing: 0px;
    padding: .1em .5em;
    margin:15px 35px;
}
img {
max-width: 95%;
}
main {
margin: 1.5em 1.5em 0 14em ;
max-width: 40em;
}
footer{
margin: 2em auto 0 13.5em;
}
#top {
width: 65px ;
height: 55px ;
position: fixed ;
right: 5px ;
bottom: 15px ;
}
header#yoko{
margin:0 auto 0 16.5em;
margin-left:200px;
}
h2{
font-size:32px;
}
.poster_btn{
width:90px;
}
.modal-wrapper .modal-window {
    margin-left: 11em ;
}
.timeline-article .content-right {
  margin-left:130px;
}
.timeline-article .content-right2 {
  margin-left:350px;
}
.timeline-article .meta-date::after{
width:32px;
}

.timeline-article .meta-date2::after{
width:32px;
}
.kuni{
font-size:15px;
}
.kanren .midashi:before {
  line-height: 40px;
  width: 40px;
  height: 40px;
}
	
.ms{
font-size:12px;
}
.mojisize{
padding:0px 10px 0 6px;
}

button.small,.middle,.big{
font-size:14px;
}
}



@media screen and (width: 2560px) {
body {	
font-size:20px;
max-width:100%;
}

header#tate{
width: 17%;
}
.sp_title{
height:10em;
margin:0;
padding:2em .3em 2em 2.5em;
max-width: 80%;
}
img {
max-width:60%;
}
main {
margin: 1.5em 1.5em 0 25em ;
max-width:100em;
}
footer{
margin: 2em auto 0 27em;
}
#top {
width: 150px ;
height: 100px ;
position: fixed ;
right: 5px ;
bottom: 15px ;
}
header#yoko{
margin:0 auto 0 16.5em;
margin-left:430px;
}
.poster_btn{
width:300px;
}
.modal-wrapper .modal-window {
    margin-left: 22em ;
}
#conference-timeline .conference-center-line {
  position: absolute;
  width: 10px;
  left:5%;
}
#conference-timeline .conference-center-line2 {
  position: absolute;
  width: 10px;
  right:35%;
}
.timeline-article .content-right {
  margin-left:185px;
}
.timeline-article .content-right2 {
  margin-left:570px;
}
.timeline-article .meta-date {
  margin-left: -100px;
}
.timeline-article .meta-date2 {
  margin-right: 570px;
}
.kuni{
font-size:15px;
}
.kanren .midashi:before {
  line-height: 40px;
  width: 40px;
  height: 40px;
}
.kuni{
font-size:30px;
}
.japan{
margin-left:50%;
}
}


@media screen and (max-width: 768px) {
body {	
font-size: 15px;
}

header#tate{
width: 20%;
}
.sp_title{
height:8em;
margin:0;
padding:.3em .3em 0 1.3em;
max-width: 80%;
}
#menusp li a{
padding-left:.8em;
}
#one::before{
font-family: "Font Awesome 5 Free";
content: "\f024";
padding-right:12px;
padding-left:2px;
font-size:1em;
}

#two::before{
font-family: "Font Awesome 5 Free";
content: "\f02d";
padding-right:13px;
padding-left:2px;
font-size:1em;
}

#three::before{
font-family: "Font Awesome 5 Free";
content: "\f15b";
padding-right:13px;
padding-left:4px;
font-size:1em;
}

#four::before{
font-family: "Font Awesome 5 Free";
content: "\f0eb";
padding-right:13px;
padding-left:4px;
font-size:1em;
}

#five::before{
font-family: "Font Awesome 5 Free";
content: "\f086";
padding-right:9px;
font-size:1em;
}

#six::before{
font-family: "Font Awesome 5 Free";
content: "\e4fa";
padding-right:9px;
font-size:1em;
}

#seven::before{
font-family: "Font Awesome 5 Free";
content: "\f303";
padding-right:11px;
padding-left:2px;
font-size:1em;
}

#eight::before{
font-family: "Font Awesome 5 Free";
content: "\f05a";
padding-right:10px;
padding-left:2px;
font-size:1em;
}
img {
max-width: 95%;
}
main {
margin: 1.5em 1.5em 0 12em ;
max-width:37.5em;
}
footer{
margin: 2em auto 0 12.5em;
}
#top {
width: 50px ;
height: 40px ;
position: fixed ;
right: 5px ;
bottom: 15px ;
}
header#yoko{
margin:0 auto 0 16.5em;
margin-left:150px;
}
h2{
font-size:25px;
}
.poster_btn{
width:70px;
}
.modal-wrapper .modal-window {
    margin-left: 10em ;
}
.timeline-article .content-right {
  margin-left:115px;
}
.timeline-article .content-right2 {
  margin-left:235px;
}
.timeline-article .meta-date::after{
width:32px;
}

.timeline-article .meta-date2::after{
width:32px;
}
.kuni{
font-size:15px;
}
.kanren .midashi:before {
  line-height: 40px;
  width: 40px;
  height: 40px;
}
}



/*smartphones-------smartphones-------smartphones-------smartphones-------*/
@media screen and (max-width: 700px) {

body {	
max-width: 100% ;
font-size: 15px;
line-height: 1.8; 
margin-bottom: 0.5em;
overflow-x: hidden;
}
	
header#tate{
width: 100%;
background-color: #ffffff;
z-index: 9999;
height:9%;
position: fixed;
left: 0;
top: 0;
box-shadow: 0px 0px 4px 3px rgba(72,42,0,.3);
-webkit-box-shadow: 0px 0px 4px 3px rgba(72,42,0,.3);
-moz-box-shadow: 0px 0px 4px 3px rgba(72,42,0,.3);
overflow-y: hidden;
overflow-x: hidden;
}

.sp_title2{
display: inline-block;
margin-top:4%;
margin-right:5%;
width:75%;
float:right;
}
	
.humberger {
color: #222222;
}
	
.container{
display: block;
}
#nav-drawer {
display: block;
position: relative;
}
#nav-open {
padding:20px;
display: inline-block;
width: 25px;
height: 20px;
vertical-align: middle;
}	
.nav-closed{
display: none;
position: fixed;
z-index: 99;
top: 0;
left: 0;
width: 100%;
height: 100%;
background: black;
opacity: 0;
transition: .3s ease-in-out;   
}  
#nav-content {
overflow: auto;
position: fixed;
top: 0;
left: 0;
z-index: 997;
width: 65%;
height: 100%;
background: #fff;
transition: .3s ease-in-out;
-webkit-transform: translateX(-105%);
transform: translateX(-105%);
}
#nav-input:checked ~ #nav-close {
display: block;
opacity: 0.3;
}
#nav-input:checked ~ #nav-content {
-webkit-transform: translateX(0%);
transform: translateX(0%);
box-shadow: 6px 0 25px rgba(0,0,0,0.15);
}
.pc_unshown{
display: block;
}
	
#menusp ul{
top: 0;
bottom: auto;
margin: 0; 
padding:0; 
width:100%;
}
#menusp li{ 
padding:0.1em;
margin: 0;
width:100%;
clear: left;
}
#menusp li a{
letter-spacing: 0;
display: block; 
padding: 0.2em 0.8em;
text-decoration: none;
color: #333;
margin: 0px;
text-align: left;
font-size:17px;
}
#menusp li a::after {
display: none;
}
#menusp li a:hover::after {
display: none;
}
.menu_close{
font-weight: 700;
padding: 0.8em 0;
position: fixed;
bottom: 0;
text-align: center;
color: #ffffff;
background-color: #0066cc;
width: 100%;
letter-spacing: 0.3em;
}
.menu_moji_sp{
font-size:1.4em;
color: #0066cc;
font-weight: 700;
padding: 0.6em 0 0.5em 0.6em;
text-align: left;
}
	
.bottomnavi{
position: relative;
display: flex;
justify-content: space-between;
padding: 1em 0.5em;
}
	
.menuspsp {
margin:25px 60px;
}
	
.ph_unshown{
display:none;
}
	
	
img{
max-width:100%;
height:auto;
}
	
ol{
padding: 0px 10px 0px 20px;
}
	
main{
margin: 2em 0.8em 0.5em 0.8em;
}
	
footer{
width:100%;
margin-top:5em;
margin-left:0;
margin-right:0;
margin-bottom: 0;
bottom:0;
text-align: center;
font-size:60%;
padding: 2em 0em;
}
	
#top {
width: 45px;
height: 30px ;
position: fixed ;
right: 5px ;
bottom: 25px ;
}
	
header#yoko{
width:100%;
margin-left:0;
margin-top:18.5%;
font-size:25px;
font-weight: bold;
text-align:left;
background-color: #0066cc;
color: #ffffff;
padding: .4em 0 .3em .7em;
}
	
p#hum{
font-size:10px;
padding: 0 0 0em .1em;
margin:0;
border-bottom: solid 1px #ffffff;
}
	
h1 {
font-size:20px;
}
	
h2{
border-bottom: 5px dotted #000;
font-size:25px;
}
	
h3{
margin-left:.3em;
}
	
h4{
width:7em;
margin-left:.4em;
}

.topbig{
font-size:20px;
}
	
.modoru {
font-size:18px;
}
	
.posternum{
font-size:45px;
padding: 0 8px 0 8px;
}
	
.postermoji{
font-size:20px;
padding-left:20px;
}
	
.postermoji2{
font-size:20px;
padding-right:25px;
}
	
.jyoko{
padding: 15px 15px;
margin: 0 35px 30px;
border-left: 8px solid #0066cc;
}
	
.kakoi{
margin: 0px 10px 30px;
}
	
.poster_btn{
width:90px;
padding:0 .3em 0 .5em;
}
	
.modal-wrapper .modal-window {
    margin-left: 0em ;
    padding: 1em;
}
	
#conference-timeline .conference-center-line {
  left:13%;
}
	
#conference-timeline .conference-center-line2 {
  right:11%;
}
	
#conference-timeline .conference-timeline-content {
  padding-top: 60px;
  padding-bottom: 60px;
}
	
.timeline-article {
  margin: 10px 0;
}
	
.timeline-article .content-right {
  width: 45%;
  margin-left:97px;
  margin-bottom:20px;
}
	
.timeline-article .content-right2 {
  width: 45%;
  margin-left:70px;
  margin-bottom:20px;
}
	
.timeline-article p {
  font-size: 17px;
  line-height: 25px;
}
	
.timeline-article .meta-date {
  left: 14%;
  width: 70px;
}
	
.timeline-article .meta-date2 {
  right: 2.5%;
  width: 70px;
}
	
.timeline-article .meta-date::after{
left:60px;
width:30px;
}
	
.timeline-article .meta-date2::after{
right:60px;
width:30px;
}
	
.timeline-article .meta-date .date {
  padding-top:4px;
  font-size: 25px;
}
	
.timeline-article .meta-date2 .date {
  padding-top:4px;
  font-size: 25px;
}
	
.kuni{
font-size:12px;
}
	
.sekai{
margin-left:2%;
}
	
.japan{
margin-left:44%;
}
	
/*kanrenから*/
	

}