@charset "utf-8";
/* CSS Document */

html {
    overflow-y:scroll;
  scroll-behavior: smooth;
}

body {
    color: #333!important;
    font-family: "Open Sans", "Noto Sans JP", Roboto, "Hiragino Kaku Gothic ProN", Meiryo, sans-serif!important;
    display: flex;
    flex-flow: column;
    min-height: 100vh;
}

main {
    flex: 1;
}

.container {
    width: auto;
    max-width: 680px;
    padding: 0 15px;
}

h1 {
    font-size: 2.25rem!important;
}
h1 a {
    color: #0A8400!important;
}
h1 a:hover {
    text-decoration: none;
}

@media (max-width: 575.98px) {
    h1 {
        font-size: 1.75rem!important;
    }
    h3 {
        font-size: 1.5rem!important;
    }
}

.logo {
    max-width: 100%;
}

.nav {
    font-size: 1.25rem;
}
.nav a {
    color: #003775!important;
}

.arrow {
  display: inline-block;
  margin-right: 0.5em;
  vertical-align: 0.125em;
  content: "";
  border-top: 0.5em solid;
  border-right: 0.375em solid transparent;
  border-bottom: 0;
  border-left: 0.375em solid transparent;
    transform: rotate(-90deg);
}

.btn-warning {
    background-color: #f79d5f!important;
    border-color: #f79d5f!important;
    color: #ffffff!important;
}

.btn:focus, .btn-warning:focus {
    box-shadow: none!important;
    outline: none!important;
}

.map {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 75%;
}
.map-title {
    font-weight: bold;
    margin-top: 2rem;
}
.map iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.slides {
    position: relative;
    width: 100%;
    height: 0;
    padding-top: 75%;
}
.slides iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

footer a:hover {
    text-decoration: none;
}


/*---------- contact ----------*/

table.formTable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}
table.formTable td,table.formTable th{
	border:1px solid #ccc;
	padding:10px;
}
table.formTable th{
	width:35%;
	font-weight:normal;
	background:#efefef;
	text-align:left;
}
p.error_messe{
	margin:5px 0;
	color:red;
}
table.formTable td textarea {
    width: 100%;
}
/*　簡易版レスポンシブ用CSS（必要最低限のみとしています。ブレークポイントも含め自由に設定下さい）　*/
@media screen and (max-width:572px) {
#formWrap {
	width:95%;
	margin:0 auto;
}
table.formTable th, table.formTable td {
	width:auto;
	display:block;
}
table.formTable th {
	margin-top:5px;
	border-bottom:0;
}
form input[type="text"], form textarea {
	width:80%;
	padding:5px;
	font-size:110%;
	display:block;
}
form input[type="submit"], form input[type="reset"], form input[type="button"] {
	display:block;
	width:100%;
	height:40px;
}
}

.form-policy {
    height: 240px;
    font-size: 90%;
}


/*---------- kaishaconcierge ----------*/

.border-darkblue {
  border-color: #003775 !important;
}
.text-darkblue {
  color: #003775 !important;
}

.p-concierge .nav-link {
  padding-top: .25rem;
  padding-bottom: .25rem;
}

.p-concierge p,
.p-concierge ol li,
.p-concierge ul li {
  line-height: 1.8;
}


/*---------- member ----------*/
.tel-link {
  pointer-events: none;
}

@media (max-width: 767px) {
  .tel-link {
    pointer-events: auto;
  }
}
