
display: flex;	/*直接の子要素を横並びにする*/
gap: var(--global-space);	/*左右のボックスの間に空けるスペース。css冒頭で指定しているglobal-spaceを読み込みます。*/
}


/*メインコンテンツ
---------------------------------------------------------------------------*/
main {
	flex: 1;
	line-height: 1.5;
}


.contents {
	background-color:#fff;
	padding:0em 1em 1em 1em;
	min-height: 300px;
}











/*フッター設定
---------------------------------------------------------------------------*/
footer small {font-size: 100%;}
footer a {color: inherit;text-decoration: none;}
footer .pr {display: block;}

footer {
font-size: 0.8rem;	/*文字サイズ。80%です。*/
text-align: center;	/*内容をセンタリング*/
padding: 1rem 0 ;
color:#fff;
line-height:1.2;
}







/*PAGE TOP（↑）設定
---------------------------------------------------------------------------*/
.pagetop-show {display: block;}

/*ボタンの設定*/
.pagetop a {
display: block;text-decoration: none;text-align: center;z-index: 99;
position: fixed;	/*スクロールに追従しない(固定で表示)為の設定*/
right: 20px;	/*右からの配置場所指定*/
bottom: 20px;	/*下からの配置場所指定*/
color: #fff;	/*文字色*/
background:#A77BA3;
width: 40px;	/*幅*/
line-height: 40px;	/*高さ*/
}
.pagetop a:hover {
background:#66473E;
}


.adv p {text-align: center !important;margin:10px 0}



/*その他
---------------------------------------------------------------------------*/
.clearfix::after {content: "";display: block;clear: both;}

/*
.color-check, .color-check a {color: red !important;}
.l {text-align: left !important;}
.c {text-align: center !important;}
.r {text-align: right !important;}
.ws {width: 95%;display: block;}
.wl {width: 95%;display: block;}
.mb0 {margin-bottom: 0px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb5vw {margin-bottom: 5vw !important;}
.look {display: inline-block;padding: 0px 10px;background: #fff;color: #333;border: 1px solid #ccc; border-radius: 3px;margin: 5px 0; word-break: break-all;}
*/


.small {font-size: 0.75em;}
.large {font-size: 1.5em; }
/* .pc {display: none;} */
.pc {display: block;}
.sh {display: none;}
.dn {display: none !important;}
.block {display: block !important;}

#logo {
/* padding: 0; */
 padding: 3px;
}
 */

/*ロゴを画像にする場合*/
#logo img {
display: block;
max-width: 100%;	/*ロゴ画像の幅*/
}


/* レスポンシブ */

/* 共通 */
#wrapper {
	margin: 0 auto;
	padding: 0;
	background-color: #fff;
	width: 1060px;
	height: 100%;
    min-height: 100vh;
    position: relative;
    border-right-width: 1px;
	border-left-width: 1px;
	border-right-style: solid;
	border-left-style: solid;
	border-right-color: #c7c7c7;
	border-left-color: #c7c7c7;
}
body > #wrapper {
	height: auto;
}

/* ヘッター */
header dl{
    margin: 0px auto;
    display: flex;
    width: 1030px;
    height: 108px;
}
header dl dt{
    width: 750px;
    display: grid;
   place-items: center start;
}
header dl dt img#ImgPc {
    width: 670px;
    margin-left: 7px;
}
header dl dt img#ImgMb {
   display: none;
}
header dl dd{
    width: 280px;
    display: grid;
    place-items: center end;
}
header dl dd img{
    width: 230px;
    margin-right: 10px;
}
/*
header h1{
    text-align: left;
    margin: 0 auto;
    font-size: 3.8rem;
    line-height: 1.1;
    font-family: "Oswald", serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}
*/


/* マージン調整 */
.mgBtm20 {
    margin-bottom: 20px;
}
.mgBtm30 {
    margin-bottom: 30px;
}
.mgLft15 {
    margin-left: 15px;
}
.mgLft30 {
    margin-left: 30px;
}
.mgRgt15 {
    margin-right: 15px;
}
.mgRgt30 {
    margin-right: 30px;
}

/* 頭出し */
#pagetop {
	position: fixed;
	bottom: -110px;
	right: 20px;
	z-index: 999;
    transition: 0.5s;
    background-color: #c71932;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 60px;
	height: 60px;
    border-radius: 8px;
}

#pagetop span{
	content: "";
	display: block;
	width: 14px;
	height: 14px;
	border-top: solid 5px #fff;
	border-right: solid 5px #fff;
	transform: rotate(-45deg);
	position: relative;
	top: 5px;
}
#pagetop:hover {
    opacity: 0.7;
}
/* フッター */
footer {
	margin: 0;
	width : 100%;
    position: sticky;
    top: 100vh;
    border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #c71932;
}
footer p#copyright {
    margin: 0;
    padding:1.2em .7em;
    text-align: center;
	box-sizing:border-box;
	width : 100%;
    background-color: #fff;
    color: #999;
    font-size: 1.4rem;
    line-height: 1.3;
}






/* 必須マーク */
.mustmark{
	margin-left: 4px;
	font-size: 1.8rem;
	color: #f00;
}





/* 右コンテンツ */
/*
section#pageBox {
	margin: 0 0 40px 50px;
	width : 700px;
}
p#username {
	margin: 0 0 30px 0;
	padding-left: 20px;
	width: 300px;
	border: #e9a3ad 1px solid;
	border-top: none;
	background-color: #f4d1d6;
	border-radius: 0 0 8px 8px;
	float: right;
	box-sizing: border-box;
}
p#username i {
	margin-right: 10px;
	color: #d85e6f;
}
p.note {
	margin-bottom: 20px;
    line-height: 1.2;
}
h2.pagettl {
    display: inline-block;
    padding: 14px 0 20px 20px;
    margin: 0 0 30px;
    border-top: solid 2px #000;
    border-bottom: solid 6px #c71932;
    border-right: solid 2px #000;
    position: relative;
    color: #c71932;
	font-size: 2.7rem;
    width: 100%;
    box-sizing: border-box;
    font-family: "Oswald", serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    line-height: 1.1;
    background: linear-gradient(#fff 20%, #e8e6f0);
}

h2.pagettl:after {
    content: "";
    border-bottom: solid 4px #000;
    border-left: solid 14px #c71932;
    position: absolute;
    top: 2px;
    left: 0;
    right:0;
    width: calc(100% - 12px);
    height: calc(100% - 8px);
}

table.TwoCol {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-size: 14px;
}
table.TwoCol th {
  width: 22%;
  background: #efefef;
  border: 1px solid #ccc;
  box-sizing: border-box;
  padding: 10px;
  vertical-align: middle;
  font-weight: bold;
  text-align: left;
}
table.TwoCol td {
  background: #fff;
  border: 1px solid #ccc;
  box-sizing: border-box;
  padding: 15px;
  vertical-align: top;
  text-align: left;
}
*/






/* Fujita Add */
.error {
	font-size:small;
	color:#fff;
	width:91%;
	background: #ff2929;
	border-radius: 4px;
	padding-left:4px;
}


/* 完了画面, エラー画面 */
.completeBox {
	text-align:left;
	width:720px;
	margin-left:auto;margin-right:auto;
	margin-top:5px;
	margin-bottom:60px;
	padding: 2px 0px 10px 6px;
        line-height:1.5;

}
.errorBox {
	text-align:left;
	width:720px;
	margin-left:auto;margin-right:auto;
	margin-top:5px;
	margin-bottom:60px;
	background-color: #F5F5F5;
	padding: 12px 0px 10px 6px;
        line-height:1.5;

        filter: alpha(opacity=85);
        -moz-opacity:0.85;
        opacity:0.85;
	border-radius: 5px;
}

section#formBox .completeBox dl.formCate dt {
	width:210px;
	background:#888;
	color:#fff;
    border-radius: 0 0 0 0;
}
section#formBox .completeBox dl.formCate dd {
	width:510px;
border: 2px solid #CCC;
}


.messageLarge {
	font-weight: bold;
	font-size: 2.6rem;
	padding: 0 8px 4px;
	margin: 0 0 20px;
}
.authError {
	font-weight: bold;
	color: #ff0000;
	font-size: 1.2em;
}
.accommodationMessage {
	font-size: 1.0em;
	line-height:1.2;
}
.cancellation {
	font-size: 0.9em;
	font-weight: bold;
	line-height:1.35
}
.cancellation ul li {
	list-style: square;
}

