body{
    width: 100%;
    margin: auto;
    font-family: "Noto Sans JP", sans-serif;
	font-weight:bold;
}
*{
    box-sizing: border-box;
}
h1,h2,h3,h4,ul,li,p{
    margin:0;
    padding:0;
    list-style: none;
}
.d-flex{
    display: flex;
}
.text-center{
    text-align: center;
}
.shadow{
    box-shadow:4px 4px 4px rgba(0, 0, 0, .25);
}
.shadow2{
    box-shadow: -5px -5px 10px #ffffff, 5px 5px 10px #A6ABBD;
}
.content{
    max-width:800px;
    margin:auto;
}
#header{
  justify-content: space-between;
  align-items: center;
  padding:16px;
}
.main{
    background:url(img/bg_main.png) no-repeat;
    background-size:cover;
    padding:80px 0;
}
.main-inner{
    justify-content: center;
    align-items: center;
}
.main-title{
    max-width: 500px;
    margin-right:50px;
    text-align: right;
}
.main-title h2{
    background:rgba(253,253,253,0.9);
    padding:10px;
    border-radius: 8px;
    display: inline-block;
    color:#313131;
    font-size:42px;
    margin-top:20px;
}
.main-title h2 span{
    color:#E27E7E;
    font-size:1.5em;
    line-height: 3.8rem;
}
.message{
    background:#EBECF0;
    padding:80px 0;
    z-index: -1;
    position: relative;
}
.message-text{
    align-items: center;
    justify-content: space-around;
    margin-bottom:50px;
}
.message-text h2{
    font-size:50px;
    font-family: "Noto Serif JP", serif;
    font-weight: 600;
}
.message-text h2 span{
    display: block;
    font-weight: bold;
}
.message-text h2 span:last-child{
    margin-left:80px;
}
.infomation ul{
    justify-content: center;
}
.infomation li{
    margin: 0 15px;
    flex:0 0 30%;
    padding:20px 15px;
    background:#FFF;
    border-radius: 8px;
}
.infomation li img{
    margin:20px 0;
}
.info-num span{
    font-size:45px;
}
.message2{
    background:url(img/bg_message2.png) no-repeat;
    background-size:cover;
    padding:120px 0 80px; 
    position:relative;
}
.message2_frame{
    position:absolute;
    top:-5px;
    left:0;
    width:100%;
}
.message2_frame img{
    width:100%;
}

.message2 p{
    font-size:30px;
}
.cont-report{
    background:#EBECF0;
    padding:60px 0;
}
.bichiku{
    width: 90%;
    margin: 2vw auto;
    height: 20vw;
    background-image: url(./button.png);
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
}
.cont-map-wrap{
    display:flex;
}
.map{
    width: 65%; 
	height: 40vw; 
}

.bunsho{
	padding-left: 30px;
}
.bunsho h4{
    margin-bottom:20px;
    color:#606060;
    font-size:20px;
}
input {
	-webkit-appearance: none;
}
 
.search_container{
  box-sizing: border-box;
  width:100%;
  display: flex;
  justify-content: center;
}
.search_container input[type="text"]{
    background: #fff;
    width: 50vw;
    height: 50px;
    font-size: 100%;
    border: 1px solid #999;
    border-radius: 3px;
    padding-left:20px;
    font-family: "Noto Sans JP", sans-serif;
}
.search_container input[type="text"]:focus {
  outline: 0;
}
.search_container input[type="submit"]{
    cursor: pointer;
    font-family: FontAwesome;
    border: none;
    background: #B4102D;
    color: #fff;
    outline: none;
    width: 120px;
    height: 50px;
    font-size: 120%;
    border-radius: 8px;
    margin-left:8px;
    font-family: "Noto Sans JP", sans-serif;
}

#search_frame {
	display:flex;
	width:100%;
}
#kensaku{
    padding: 3vw 3vw;
    margin: 0 auto;
    background: #FFF;
}
.main-form {
    max-width:870px;
    margin:30px auto;
    border:4px solid #F6C7C7;
    border-radius:8px;
    overflow: hidden;
}
.main-form .label{
    position: relative;
    background-color: #F6C7C7;
    padding: 12px;
    text-align: center;
    color: #313131;
    font-size:22px;
}
.main-form .label::before {
    content: "";
    position: absolute;
    border: 12px solid transparent;
    border-top: 12px solid #F6C7C7;
    top: 100%;
    left: 50%;
}
.cont-map{
    max-width:1150px;
    margin:50px auto;
    background:#FFF;
    border-radius:10px;
    padding:30px;
    border-top:10px solid #F6C7C7;
    page-break-before: always;
}
.cont-map h3{
    font-size:24px;
    margin-bottom:30px;
}
#kekka{
	width:50%;
	padding:2vw;
}
.btn-dl,.btn-ditiku{
    width:500px;
    margin:30px auto;
}
.btn-dl a,.btn-ditiku a{
    display: block;
}
.btn-dl a {
    background:#FFF;
    border-radius:50px;
    border:2px solid #9A9A9A;
    color:inherit;
    padding:16px 50px;
    text-decoration: none;
}

.btn-dichiku a{
    position: relative;
    width:500px;
    margin:30px auto;
    display: block;
    border-radius:60px;
    padding:16px 50px 16px 150px;
    color:#000;
    background:url(img/icon_bichiku.png) no-repeat 60px center;
    font-size:18px;
    text-decoration: none;
}
.btn-dichiku a:before{
    content:'';
    position:absolute;
    width:8px;
    height: 8px;
    border-top:2px solid #E27E7E;
    border-right:2px solid #E27E7E;
    transform:rotate(45deg);
    right:20px;
    top:0;
    bottom:0;
    margin:auto;
}
#para{
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 1150px;
    margin: 0 auto;
}

#para table{
  border-collapse: collapse;
  border-radius: 8px;
  overflow: hidden;
}
.tb01 {
    display: inline-table;
    width: 100%;
}
.tb01 th {
    background: #848484;
    color: #FFF;
    padding:15px;
}

#para td{
    background:#FFF;
    padding: 15px;
    border-bottom: 1px solid #848484;
    border-right: 1px solid #848484;
    width: 50%;
}
#para tr:last-child td{
    border-bottom:none;
}
#para td:last-child{
    border-right: none;
}
#chart{
    display: flex;
    width: 100%;
    align-items: baseline;
    flex-direction: row-reverse;
    justify-content: center;
}
@media screen and (min-width:768px){
    .map{
        flex:0 0 65%;
    }
}
@media print,screen and (min-width:768px){ 
    #para table,#chart{
        flex:0 0 45%;
    }
    #para table{
        margin-right:30px;
    }
}
@media print,screen and (max-width:767px){
    .main{
        padding: 40px 0;
    }
    .main-title{
        margin:0 15px 0px 15px;
    }
    .main-title h2{
        font-size: 18px;
        padding: 8px;
        margin-top: 10px;
    }
    .main-title h2 span{
        line-height: 1rem;
    }
    .main-img {
        width: 50%;
        margin: 0 10px 0 0;
    }
    .main-img img {
        width:100%;
    }
    .main-form{
        width:94%;
    }
    .main-form .label{
        font-size:18px;
    }
    .search_container{
        flex-wrap:wrap;
    }
    .search_container input[type="text"]{
        width:100%;
        margin-bottom:15px;
    }
    .message-text{
        flex-wrap:wrap;
    }
    .message-text h2{
        font-size:25px;
        margin-bottom:10px;
    }
    .message-text h2 span{
        display:inline;
    }
    .message-text h2 span:last-child{
        margin-left:0;
    }
    .message{
        padding: 40px 0;
    }
    .message2{
        background:url(img/bg_message_sp.png) no-repeat;
        background-size:cover;
        padding: 50px 0 40px;
    }
    .infomation ul{
        flex-wrap:wrap;
    }
    .infomation li{
        display:flex;
        align-items: center;
        flex:0 0 94%;
        margin-bottom:15px;
        text-align: left;
    }
    .info-num {
        width: 20%;
        text-align: center;
    }
    .infomation li img {
        margin: 0 8px;
        width: 40px;
        height: auto;
    }
    .message2 p{
        font-size:18px;
    }
    .cont-report{
        overflow: hidden;
    }
    #header{
        padding:10px;
    }
    header h1{
        width:70%;
    }
    header p{
        width:20%;
    }
    header img{
        width:100%;
    }
    .report-title h1{
        font-size:20px;
    }
    #para{
        flex-direction: column;
        padding:20px;
        width:90%;
        margin:auto;
    }
    .cont-map{
        max-width:94%;
        padding: 20px;
    }
    .cont-map-wrap{
        flex-direction: column;
    }
    .map{
        width:100%;
        height: 50vh;
    }
    .cont-map h3{
        font-size:18px;
    }
    .bunsho{
        padding:20px 0 0 0;
    }
    .btn-dl,.btn-dichiku a{
        width:96%;
    }
    .btn-dichiku a{
        background: url(img/icon_bichiku.png) no-repeat 25px center;
        padding: 10px 30px 10px 90px;
        font-size:16px;
    }
    .btn-dl a{
        padding: 16px 0px;
    }
}