@media screen and (min-width:1200px){
html,body{
}
.container{background:#FFF;
width:1200px;
margin:0 auto;
font-family:'Open Sans', sans-serif;
padding:0 100px;
}

.header img{
width:800px;
height:auto;
text-align:center;
}

h1 img,video{
width:100%;
height:auto;
margin:0 auto;
display:block;
}
h1{
padding:20px 0;
}


.video_wrapper {
    position: relative;
    width: 100%;
    height:100vh;
    overflow: hidden;
}

.video_wrapper > video {
object-fit:contain;
    position: absolute;
    top: 0;
    left:0;
    bottom:0;
    right:0;
    margin:auto;
    width:80%;
    height:100%;
}


.graphbox{
border-bottom:1px solid #666;
text-align:center;
margin:40px 0;
padding-top:40px;
}

.graphbox h2{
font-size:1.7em;
font-weight:bold;
color:#040f70;
padding-top:40px;
}

.graphbox img{
margin:10px 0;
}

.data{
background:#f0f8ff;
padding-top:50px;
padding-bottom:50px;
}

.message{
margin:50px;
padding:50px;
text-align:center;
border-bottom:2px solid #666;
}
.message h2,.news h2,.profile h2,.contact h2,.company h2,.paper h2,.data h2,.souchi h2{
font-size:3em;
margin-bottom:1em;
text-align:center;
font-weight:700;
font-family:'Open Sans', sans-serif;
color:#2a71b1;
}

.oogata{
background:#f0f8ff;
}

.purazumagen{
font-size:2em;
}

.data h2,.oogata h2{
font-size:2em;
font-weight:bold;
}

.dataul{
display:flex;
flex-direction:column;
align-items:stretch;
justify-content:space-between;
text-align:center;
font-family:'Open Sans', sans-serif;
}
.datali{

}

.datali a{
text-decoration:none;
display:block;
color:#2a71b1;
text-align:center;
font-size:2em;
border:1px solid #2a71b1;
border-radius:10px;
width:90%;
margin:10px auto;
padding:20px;
}
.datali a:hover{
background:#2a71b1;
color:#fff;
}

.company{
margin:50px;
text-align:center;
border-bottom:2px solid #666;
}

.company table{
width:90%;
margin:0 auto 40px;
}

.company th,.company td{
border:1px solid #000;
padding:15px;
}


.paper{
margin:50px;
text-align:center;
border-bottom:2px solid #666;
}

.paper table{
width:90%;
margin:0 auto 40px;
}

.paper th,.paper td{
border:1px solid #000;
padding:15px;
text-align:left;
}

.message p{
line-height:1.9em;
padding:5px 40px 30px;
font-size:1.2em;
font-weight:bold;
text-align:left;
}

.profbox{
display:flex;
line-height:1.8em;

}
.profimg img{
width:350px;
height:auto;
}
.proftext{
padding:0 4em;
text-align:justifi;
}
.news{
text-align:left;
margin:50px;
line-height:1.7em;
border-bottom:2px solid #666;
}

.news ul{
border:1px solid #666;
padding:20px;
width:85%;
height:70px;
overflow-y:scroll;
margin:0 auto 40px;
} 

.news a{
text-decoration:none;
color:#e662a4;
padding:15px;

}

.mnpbox{
background:#f0f8ff;
padding-top:50px;
padding-bottom:50px;
}

.alert{
color:#F00;
}

.telbox{
display:none;
}

}
@media screen and (max-width:1199px) {
h1 img{
width:70%;
height:auto;
}

video{
paddding-top:150px;
}
}

.graphbox div{
padding-bottom:0px;
margin-bottom:0px;
}

@media screen and (max-width:1199px) {
.container{
width: calc(100% - 10px);
font-family:'Open Sans', sans-serif;
padding:0 10px;
margin:0 auto;
}

img{
width:100%;
height:auto;
}

.graphbox{
border-top:2px solid #666;
text-align:center;
margin:40px 0;
padding-top:40px;
}

.graphbox h2{
font-size:1.2em;
font-weight:bold;
color:#040f70;
padding:40px 60px 0;
line-height:1.5em;
}

.graphbox img{
margin:10px 0;
}

.data{
width: calc(100% - 10px);
font-family:'Open Sans', sans-serif;
padding:0 10px;
margin:0 auto;
}

h1 img,video{
width:100%;
height:auto;
margin:0 auto;
display:block;
}
h1{
padding:20px 0;
}

.company table{
width:90%;
margin:0 auto 40px;
}

.company th,.company td{
border:1px solid #000;
padding:15px;
}

.paper table{
width:90%;
margin:0 auto 40px;
}

.paper th,.paper td{
border:1px solid #000;
padding:15px;
text-align:left;
}

.paper tr{
width:100%;
}

.message{
margin:50px;
text-align:center;
}

.message h2,.news h2,.profile h2,.contact h2,.company h2,.paper h2,.data h2,.souchi h2{
font-size:2em;
margin-bottom:1em;
text-align:center;
color:#2a71b1;
font-family:'Open Sans', sans-serif;
font-weight:700;
}
.data h2,.oogata h2{
font-size:1.7em;
font-weight:bold;
}
.message p{
line-height:1.7em;
padding-bottom:30px;
font-size:1em;
text-align:left;
}

.dataul{
display:flex;
flex-direction:column;
align-items:stretch;
justify-content:space-between;
text-align:center;
font-family:'Open Sans', sans-serif;
}
.datali{

}

.purazumagen{
font-size:1em;
}

.datali a{
text-decoration:none;
display:block;
color:#2a71b1;
text-align:center;
font-size:1em;
border:1px solid #2a71b1;
border-radius:10px;
width:90%;
margin:10px auto;
padding:20px;
}
.datali a:hover{
background:#2a71b1;
color:#fff;
}
.company{
margin:50px;
text-align:center;
border-bottom:2px solid #666;
padding-bottom:60px;
}

.company td{
border:1px solid #000;
padding:15px;
}

.paper{
margin:50px;
text-align:center;
border-bottom:2px solid #666;
padding-bottom:60px;
}

.paper td{
border:1px solid #000;
padding:15px;
text-align:left;
}
.news,.profile{
text-align:left;
margin:50px;
line-height:1.7em;
border-bottom:2px solid #666;
}

.news ul{
border:1px solid #666;
padding:20px;
width:80%;
height:150px;
overflow:scroll;
margin:0 auto 30px;
} 

.news a{
text-decoration:none;
color:#3e78C6;
padding:15px;

}

.profimg img{
width:200px;
height:auto;
}

.proftext{
margin:10px;
line-height:1.7em;
text-align:left;
}

.profbox{
text-align:center;
}
.telbox{
display:none;
}

}
.contact{
text-align:center;
line-height:1.7em;
padding:20px 0;
margin-top:25px;
}

.contact td{
padding:10px 100px 10px 10px;
width:80%;
}

.contact th{
text-align:right;
width:20%;
vertical-align:top;
}

.contact h3{
font-size:1.5em;
margin-bottom:1em;
text-align:center;
}

.contact table{
width:70%;
margin:20px auto;
}

.contact th{
padding:15px 5px;
}

input[type="text"],
input[type="tel"],
input[type="email"]{
width:100%;
padding:3px;
font-size:1.2em;
}

textarea{
width:100%;
}

input[type="submit"]{font-size:1.3em;
background:#3a78c6;
padding:10px 20px;
border-radius:10px;
color:#FFF;
border:none;
margin-bottom:30px;
}

@media screen and (max-width:1199px) {

.video_wrapper {
    position: relative;
    width: 100%;
    height: 400px;
    overflow: hidden;
}

.video_wrapper > video {
object-fit:contain;
    position: absolute;
    top: 0;
    left:0;
    bottom:0;
    right:0;
    margin:auto;
    width:100%;
    height:100%;
}



.contact table{
width:90%;
margin:20px auto;
}

.contact td{
padding:10px;
width:70%;
}

.contact th{
text-align:right;
width:30%;
vertical-align:top;
}

input[type="text"],
input[type="tel"],
input[type="email"]{
width:70%;
padding:3px;
font-size:1.2em;
}

textarea{
width:70%;
}


input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}


input[type="submit"]{font-size:1.3em;
background:#3a78c6;
padding:10px 20px;
border-radius:10px;
color:#FFF;
border:none;
}
.telbox{
position:fixed;
bottom:0;
width:100%;
display:block;
}
.telbox a{
background:#3a78c6;
padding:15px;
text-align:center;
font-weight:bold;
display:block;
color:#FFF;
font-size:130%;
width:100%;
}

.access{
padding-bottom:100px;
}

}

.purazumagen{
border:4px solid #2a71b1;
padding:15px 10px !important;
font-weight:bold;
line-height:1.3em;
margin:40px 10% !important;
font-family:'Open Sans', sans-serif;
text-align:left;
}

.souchi img{
width:100%;
height:auto;
}

#privacy{
width:80%;
margin:40px auto;
height:100px;
overflow-y:scroll;
border:1px solid #666;
padding:20px;
}

.access{
line-height:1.4em;
padding:20px 0;
}
footer{
border-top:1px solid #666;
padding:20px;
margin:0 50px;
}
small{
font-size:80%;
padding:20px 0;
}

/* スライド画像どうしをぴったりくっつける */
.slick-slide img {width: 100%;}

/* ドット */
.slick-dots li button:before{
    font-size: 1.5rem; /* 大きさ調整 */
    opacity: 1; /* 初期は.25で透過されているので戻す(必要であれば) */
    color: grey; /* 色 */
}

/* ドット(アクティブなスライドの) */
.slick-dots li.slick-active button:before{
    color: red;
}