@charset "utf8  ";
html {
    font-size: 16px;
    font-family: "Mplus 1p", sans-serif;
}
html, body {
    height: 100%;
    font-family: "Mplus 1p", sans-serif;
}
body *, ::before, ::after {
    box-sizing: border-box;
}
body {
    margin: 0;
    font-weight: 300;
    color: black;
    background-color: #f4f5ff;
    font-family: "Mplus 1p", sans-serif;

}
body p,h1,h2,a{
    margin-top: 0px;
    margin-bottom: 0px;
}
body a{
  text-decoration: none;
  font-family: "Mplus 1p", sans-serif;
  margin-top: 0px;
  margin-bottom: 0px;
}
img{
    object-fit: cover;
}

/* ヘッダー */
.headerclass{
    background-color: white;
    padding: 10px;
    text-align: center;
}
.headerimg img{
    width: 50px;
}
/* メイン */
.main1{
    background-image: url(images/image2.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: cover;
    background-color: #464646;
    padding: 10px 0px;
}
/* セレクトボックス */
.cp_ipselect {
	overflow: hidden;
	width: 46%;
	margin: 1.6em auto 1.2em auto;
	text-align: center;
}
.cp_ipselect select {
	width: 100%;
	padding-right: 1em;
	cursor: pointer;
	text-indent: 0.01px;
	text-overflow: ellipsis;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
}
.cp_ipselect select::-ms-expand {
    display: none;
}
.cp_ipselect.cp_sl04 {
	position: relative;
	border-radius: 2px;
	border: 2px solid rgb(204, 0, 255);
  border-radius: 50px;
	background: #ffffff;
}
.cp_ipselect.cp_sl04::before {
	position: absolute;
	top: 0.8em;
	right: 0.8em;
	width: 0;
	height: 0;
	padding: 0;
	content: '';
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: 6px solid rgb(204, 0, 255);
	pointer-events: none;
}
.cp_ipselect.cp_sl04 select {
	padding: 8px 38px 8px 8px;
	color: rgb(204, 0, 255);
}
.gotime{
    text-align: center;
}
input[type="submit"] {
    appearance: none;
    -webkit-appearance: none;
    }
  
.submitbutton{
    padding: 14px 30px;
    font-size: 16px;
    border: none;
    background-color: #333;
    color: #fff;
    border-radius: 10px;
}

.main1box{
    width: 96%;
    max-width: 800px;
    margin: 20px auto;
    background-color: white;
    border-radius: 16px;
    border: 4px solid gray;
}
.main1boxtitle{
    text-align: center;
    padding: 10px;
    background-color: gray;
    border-radius: 10px 10px 0px 0px;
}
.main1boxtitle p{
    font-size: 20px;
    font-weight: 600;
    color: white;
}
.main1boxselect{
    display: flex;
}
.buildinglist{
    display: flex;
    flex-wrap: wrap;
    padding: 10px;
}
.main1boxtitle2{
    width: 46%;
    margin-right: 2%;
    margin-left: 2%;
    margin-top: 10px;
    margin-bottom: 10px;
    min-width: 200px;
    background-color: rgb(204, 0, 255);
    border: 2px solid rgb(204, 0, 255);
    color: white;
    border-radius: 10px;
    padding: 10px;
}
.main1boxtitle2:hover{
    width: 46%;
    margin-right: 2%;
    margin-left: 2%;
    margin-top: 10px;
    margin-bottom: 10px;
    min-width: 200px;
    background-color: white;
    border: 2px solid rgb(204, 0, 255);
    color: rgb(204, 0, 255);
    border-radius: 10px;
    padding: 10px;
}
@media(max-width:482px){
    .main1boxtitle2{
        width: 96%;
        margin: 10px auto;
        min-width: 200px;
        background-color: rgb(204, 0, 255);
        color: white;
        border-radius: 10px;
        padding: 10px;
    }
}

.main2{
    margin-top: 20px;
    margin-bottom: 20px;
}
.main2box{
    width: 96%;
    max-width: 800px;
    margin-right: auto;
    margin-left: auto;
}
.main2boxtitle{
    text-align: center;
    margin: 10px 0px;
}
.main2boxtitle p{
    font-weight: 600;
    font-size: 26px;
    color: rgb(204, 0, 255);
}
.main2boxlist{
    display: flex;
}
.main2boxlistchild{
    width: 30%;
    margin-right: 1.5%;
    margin-left: 1.5%;
    text-align: center;
    border: 2px solid gray;
    border-radius: 10px;
}
.main2boxname{
    background-color: gray;
    border-radius: 7px 7px 0px 0px;
}
.main2boxname p{
    color: white;
    font-weight: 600;
    padding: 10px;
}
.main2boxtext{
    padding: 10px;
}

.maininformationbox{
    display: flex;
    margin: 20px auto;
    width: 96%;
    max-width: 800px;
    text-align: center;
}
.maininformationimg{
    width: 23%;
    margin: 10px 1%;
}
.maininformationimg img{
    width: 100%;
    border-radius: 10px;
}
@media(max-width:700px){
    .maininformationbox{
        display: flex;
        flex-wrap: wrap;
        margin: 20px auto;
        text-align: center;
    }
    .maininformationimg{
        width: 48%;
        margin: 10px 1%;
    }
    .maininformationimg img{
        width: 100%;
        border-radius: 10px;
    } 
}
.footerclass{
    background-color: rgb(204, 0, 255);
    padding: 20px;
    text-align: center;
}
.footerclass p{
    font-size: 15px;
    color: white;
}
.main3boxlist{
    display: flex;
    width: 96%;
    max-width: 600px;
    border-radius: 10px;
    border: 2px solid gray;
    margin: 10px auto;
}
.main3boxflex{
    width: 100%;
}
.main3boximg img{
    width: 90px;
    height: auto;
    border-radius: 7px 0px 0px 7px;
}
.main3boxname {
    background-color: gray;
    padding:10px;
    width: 100%;
    border-radius: 0px 7px 0px 0px;
}
.main3boxname p{
    font-size: 16px;
    color: white;
    font-weight: 600;
}
.main3boxtext{
    padding: 10px;
}
.main3boxtext p{
    font-size: 15px;
}
.main3boxtext p{
    color: rgb(204, 0, 255);
    font-weight: 600;
}

.detail{
        background-image: url(images/image2.png);
        background-position: center center;
        background-repeat: no-repeat;
        background-attachment: fixed;
        background-size: cover;
        background-color: #464646;
        padding-top: 20px;
        padding-bottom: 10px;
}
.detailbox{
    width: 96%;
    max-width: 800px;
    margin: 0px auto;
    background-color: white;
    border-radius: 16px;
    border: 4px solid gray;
}

/* 表 */
table{
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
}
table th,table td{
    padding: 10px 0;
    text-align: center;
}
table tr:nth-child(odd){
    background-color: #eee
}

.detailboxtitle{
    background-color: gray;
    color: white;
    text-align: center;
}
.detailboxtitle p{
    font-weight: 600;
    font-size: 16px;
    padding: 10px;
}

/* 記事リスト */
.articlelist{
    width: 96%;
    max-width: 800px;
    display: flex;
    flex-wrap: wrap;
    margin-right: auto;
    margin-left: auto;
}
.articlechild {
    width: 48%;
    margin: 10px auto;
    text-align: center;
}
.articlechild img{
    width: 100%;
    border-radius: 10px;
}
.articlechild img:hover{
    opacity: 0.6;
}

.main0 {
    padding: 30px 0px 10px 0px;
}
.main0title{
    text-align: center;
    background-color: gray;
    width: fit-content;
    padding: 10px 30px;
    border-radius: 10px;
    margin-right: auto;
    margin-left: auto;
}
.main0title p{
    font-size: 36px;
    font-weight: 600;
    color: white;
}
.main0title p span{
    color: white;
    font-size: 40px;
    margin-right: 4px;
    margin-left: 4px;
}
.detailannounce{
    width: 96%;
    max-width: 800px;
    margin: 10px auto;
    background-color: white;
    border-radius: 10px;
    border: 4px solid gray;
    padding: 10px;
}
.detailannounce p{
    font-size: 15px;
}