@charset "utf-8";
/*
Theme Name: Aichi Tourism Information
*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+SC:400,500&display=swap');


/*reset*/
/*******************************************************************/
html{box-sizing:border-box;overflow-y:scroll;-webkit-text-size-adjust:100%}*,:after,:before{background-repeat:no-repeat;box-sizing:inherit}:after,:before{text-decoration:inherit;vertical-align:inherit}*{padding:0;margin:0}audio:not([controls]){display:none;height:0}hr{overflow:visible}article,aside,details,figcaption,figure,footer,header,main,menu,nav,section,summary{display:block}summary{display:list-item}small{font-size:80%}[hidden],template{display:none}abbr[title]{border-bottom:1px dotted;text-decoration:none}a{background-color:transparent;-webkit-text-decoration-skip:objects}a:active,a:hover{outline-width:0}code,kbd,pre,samp{font-family:monospace,monospace}b,strong{font-weight:bolder}dfn{font-style:italic}mark{background-color:#ff0;color:#000}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}input{border-radius:0}[role=button],[type=button],[type=reset],[type=submit],button{cursor:pointer}[disabled]{cursor:default}[type=number]{width:auto}[type=search]{-webkit-appearance:textfield;appearance:textfield}[type=search]::-webkit-search-cancel-button,[type=search]::-webkit-search-decoration{-webkit-appearance:none}textarea{overflow:auto;resize:vertical}button,input,optgroup,select,textarea{font:inherit}optgroup{font-weight:700}button{overflow:visible}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:0;padding:0}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button:-moz-focusring{outline:1px dotted ButtonText}[type=reset],[type=submit],button,html [type=button]{-webkit-appearance:button;appearance:button}button,select{text-transform:none}button,input,select,textarea{background-color:transparent;border-style:none;color:inherit}select{-moz-appearance:none;-webkit-appearance:none;appearance:none}select::-ms-expand{display:none}select::-ms-value{color:currentColor}legend{border:0;color:inherit;display:table;max-width:100%;white-space:normal}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}[type=search]{-webkit-appearance:textfield;appearance:textfield;outline-offset:-2px}img{width:auto;max-width:100%;height:auto;border-style:none;vertical-align:middle}i{vertical-align:middle}progress{vertical-align:baseline}svg:not(:root){overflow:hidden}audio,canvas,progress,video{display:inline-block}@media screen{[hidden~=screen]{display:inherit}[hidden~=screen]:not(:active):not(:focus):not(:target){position:absolute!important;clip:rect(0 0 0 0)!important}}[aria-busy=true]{cursor:progress}[aria-controls]{cursor:pointer}[aria-disabled]{cursor:default}::-moz-selection{background-color:#b3d4fc;color:#000;text-shadow:none}::selection{background-color:#b3d4fc;color:#000;text-shadow:none}ul,ol{list-style:none}
a { color: #555; transition: all 0.2s ease-out; text-decoration: none;}
a:hover { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=60); opacity: 0.6;}
*:focus { outline: none;}
a[href^="tel:"] { cursor: default; pointer-events: none;}


/*LAYOUT*/
/*******************************************************************/
html { font-size: 62.5%;}
body { -webkit-text-size-adjust: 100%; -webkit-overflow-scrolling: touch; height: 100%; font-family: Arial, Helvetica, 'Noto Sans SC', sans-serif; font-size: 1.6rem; font-feature-settings: 'palt' 1; color: #555;}
#container { position: relative; width: 100%; min-width: 1008px; background: url(images/common/map.svg) center bottom 4vw no-repeat; background-size: 100% auto; overflow: hidden;}


/*HEADER*/
/*******************************************************************/
#header { position: relative; background: #FFF; box-shadow: 0 3px 3px rgba(0,0,0,.2); z-index: 5555;}
#headercontent { position: relative; display: flex; align-items: center; width: calc(960px + 48px); margin: 0 auto; padding: 24px; line-height: 1;}
#nav { margin-left: auto;}
#nav > ul { display: flex;}
#nav > ul > li { position: relative; display: flex; padding: 8px 16px; background-image: repeating-linear-gradient(180deg, #bf2922, #bf2922 5px, transparent 5px, transparent 10px); background-position: left top; background-repeat: repeat-y; background-size: 2px 100%;}
#nav > ul > li > a { display: block; min-height: 80px; text-align: center; background-position: center bottom; background-repeat: no-repeat; font-weight: 700; color: #BF2922;}
#nav > ul > li > a.area { background-image: url("images/common/area.svg");}
#nav > ul > li > a.purpose { background-image: url("images/common/purpose.svg");}
#nav > ul > li > a.booking { background-image: url("images/common/booking.svg");}
#nav > ul > li > a.on { background-color: rgba(0,0,0,.054);}
#nav .navbox { position: absolute; top: 80px; left: 50%; transform: translateX(-50%); padding: 24px; background: #bf2922; border-radius: 10px; font-size: 1.6rem; color: #FFF; pointer-events: none; opacity: 0; transition: all 0.2s ease-out; z-index: 4444;}
#nav .area + .navbox { min-width: 680px;}
#nav .purpose + .navbox { min-width: 160px;}
#nav .navbox a { display: block; color: #FFF;}
#nav .navbox dt { padding: 8px 4px; text-align: center; border: 1px solid #FFF; border-radius: 8px;}
#nav .navbox li { padding: 8px 0;}
#nav .navbox li a { display: flex; align-items: center; gap: 8px;}
#nav .navbox li a::before { content: ''; display: block; width: 0; height: 0; border-style: solid; border-color: transparent transparent transparent #ffffff; border-width: 5px 0px 5px 10px;}
#nav > ul > li > a.area + .navbox { left: 0; display: flex; flex-wrap: wrap; gap: 1%;}
#nav > ul > li > a.area + .navbox dl { width: 24%; padding: 4px 0;}
#nav > ul > li.show .navbox { top: 96px; opacity: 1; pointer-events: auto;}
#global { display: flex; align-items: center; background-image: repeating-linear-gradient(180deg, #bf2922, #bf2922 5px, transparent 5px, transparent 10px); background-position: right top; background-repeat: repeat-y; background-size: 2px 100%;}
#global > div { padding: 8px 16px; background-image: repeating-linear-gradient(180deg, #bf2922, #bf2922 5px, transparent 5px, transparent 10px); background-position: left top; background-repeat: repeat-y; background-size: 2px 100%;}
#global > div:not(#open) a { display: block; min-height: 80px; text-align: center; background-position: center bottom; background-repeat: no-repeat; font-weight: 700; color: #BF2922;}
#global #bookmark a { background-image: url("images/common/favorites.svg");}
#global #search a { background-image: url("images/common/search.svg");}
#open { display: none;}


/*FOOTER*/
/*******************************************************************/
#footer { position: relative; margin-top: 24vw; background: #8F0300; font-size: 1.4rem; z-index: 1111;}
#sitemap { width: calc(360px + 48px); margin: 0 auto; padding: 24px;}
#sitemap nav { display: flex; justify-content: space-between; color: #FFF;}
#sitemap nav > ul { width: calc(100% / 2);}
#sitemap nav > ul > li { padding: 4px; text-align: center; font-weight: 700;}
#sitemap a { color: #FFF;}
#sitemap li ul { margin-top: 4px;}
#sitemap li ul li { padding: 4px 0;}
#sitemap li ul li a::before { content: '・'; display: inline; vertical-align: middle;}
#pagetop { position: fixed; right: 20px; bottom: 20px; display: none; text-align: center; z-index: 9999;}
#footer address { padding: 24px; text-align: center; background: #FFF; font-weight: 700; font-style: normal; color: #BF2922;}


/*ASIDE*/
/*******************************************************************/
#aside { width: 300px;}
#aside h4 { width: 100%; margin-bottom: 24px; padding-bottom: 8px; text-align: center; background-image: repeating-linear-gradient(90deg, #bf2922, #bf2922 5px, transparent 5px, transparent 10px); background-position: left bottom; background-repeat: repeat-x; background-size: 100% 2px; font-size: 2.4rem; font-weight: 700; color: #BF2922;}
#aside h4:not(.flat):first-letter { font-size: 3.6rem;}
#aside .box { margin-bottom: 24px;}
#aside .wpp-list { counter-reset: item;}
#aside .wpp-list > li { position: relative; display: flex; justify-content: space-between; align-items: flex-start; margin-bottom: 12px; padding-bottom: 12px; background-image: repeating-linear-gradient(90deg, #999999, #999999 5px, transparent 5px, transparent 10px); background-position: left bottom; background-repeat: repeat-x; background-size: 100% 1px;}
#aside .wpp-list > li::before { counter-increment: item; content: counter(item); position: absolute; top: 0; left: 0; display: flex; justify-content: center; align-items: center; width: 20px; height: 20px; background: #BF2922; font-weight: 700; color: #FFF; z-index: 1;}
#aside .wpp-list > li figure { width: 40%; border-radius: 2px 2px 22px 2px; overflow: hidden;}
#aside .wpp-list > li div { width: 56%; margin-top: 0;}
#aside .wpp-list > li div p { padding-bottom: 8px; font-size: 1.2rem; color: #000;}
#aside .sns li { padding: 24px; border-bottom: 1px dashed #CCC;}
#aside .sns li { display: flex; align-items: center;}
#aside .sns li img { margin-right: 16px;}


/*CONTENTS*/
/*******************************************************************/
#main { display: flex; justify-content: space-between; width: calc(960px + 48px); margin: 0 auto; padding: 32px 24px;}
#contents { width: 620px;}
article + article { margin-top: 48px;}
article header { position: relative; display: flex; align-items: center; margin-bottom: 24px;}
article header .icon { width: 50px;}
article .bookmark { position: absolute; top: 0; right: 0; cursor: pointer;}
article .bookmark img { width: 42px; height: 42px;}
article header.img .bookmark { top: auto; bottom: 8px; right: 8px;}
article header:not(.img) h1, article header h2 { width: 100%; padding-bottom: 8px; background-image: repeating-linear-gradient(90deg, #bf2922, #bf2922 5px, transparent 5px, transparent 10px); background-position: left bottom; background-repeat: repeat-x; background-size: 100% 2px; font-weight: 700; color: #BF2922;}
article header:not(.img) h1::first-letter, article header h2::first-letter { font-size: 3.6rem;}
article header:not(.img) h1 a { color: #BF2922;}
article header h1 { font-size: 2.4rem;}
article header h2 { font-size: 2.1rem;}
section { position: relative;}
section + section { margin-top: 48px;}
section h2:not(.frame) { margin-bottom: 24px; padding-left: 8px; border-left: 2px solid #BF2922; font-size: 2.4rem; font-weight: 400; color: #BF2922;}
section h2.frame { margin-bottom: 8px; padding: 8px 16px; border: 1px solid #CCC; font-size: 1.6rem; font-weight: 700; color: #666;}
section h3 { margin-bottom: 8px; padding-bottom: 8px; border-bottom: 1px solid #333; font-size: 1.6rem; font-weight: normal;}
section h4 { margin-bottom: 24px; font-size: 1.8rem;}
section h5 { margin-bottom: 16px; font-size: 1.6rem;}
section p { line-height: 1.4;}
section p:not(:last-child), section table:not(:last-child) { margin-bottom: 24px;}
section table { width: 100%; border-collapse: collapse;}
section tr { border-bottom: 1px dashed #CCC;}
section th { width: 22%; padding: 8px 0; text-align: left; font-weight: normal;}
section td { padding: 8px 0; word-break: break-all;}
figure img { width: 100%; max-width: initial;}
figure + * { margin-top: 24px;}
figcaption { padding-top: 8px; text-align: center; font-size: 1.2rem; color: #AAA;}
.bg { margin-bottom: 24px; padding: 16px; background: #f2f2f2;}
.ul, .ol { margin: 0 0 32px 32px;}
.ul { list-style: disc;}
.ol { list-style: decimal;}
.effect { position: relative; overflow: hidden;}
.effect::before, .effect::after { content: ""; position: absolute; width: 150%; height: 100%; right: 0; top: 0; transform: skew(-15deg) translateX(10%); transition: all .6s cubic-bezier(.215,.61,.355,1); transition-timing-function: cubic-bezier(.215,.61,.355,1);}
.effect::before { z-index: 1; background-color: #EEE; transition-delay: .4s;}
.effect::after { background-color: #FFF; z-index: 2; transition-delay: .1s;}
.effect.inview:before, .effect.inview:after { transform: skew(-15deg) translateX(120%);}
.center { text-align: center!important;}
.right { text-align: right!important;}
.btn { text-align: center;}
.btn a { position: relative; display: inline-block; padding: 16px 80px 16px 24px; text-align: left; background: #DC000C url("images/common/arr_w.svg") right 16px center no-repeat; border-radius: 2px; color: #FFF; overflow: hidden;}
.btn a::after { content: ''; position: absolute; left: -45%; top: 0; height: 100%; background: #DC000C; transform: skew(50deg); transition-duration: 0.6s; transform-origin: top left; width: 0; z-index: -1;}
.btn a:hover { padding: 16px 64px 16px 40px; background-color: transparent; background-position: right 8px center; opacity: 1;}
.btn a:hover::after { width: 145%;}

.list { display: flex; flex-wrap: wrap; justify-content: space-between;}
.list > li { position: relative; width: 48%; max-width: 300px; margin-bottom: 24px;}
.list.three::after { content: ''; display: block; width: 31%; max-width: 198px;}
.list.three > li { width: 31%; max-width: 198px; margin-bottom: 40px;}
.list figure { border-radius: 2px 2px 22px 22px; overflow: hidden;}
.prof { position: absolute; top: 0; left: 0; width: 100%; z-index: 1;}
.prof .face { position: absolute; top: 5px; left: 5px;}
.prof .face img { width: 50px; height: 50px;}
.face img { border: 1px solid #FFF; border-radius: 50%;}
.list.three .face { text-align: center;}
.list.three .face img { width: 150px; height: 150px;}
.blogname { padding: 8px 8px 8px 60px; background: url("images/common/mask.png") 0 0 repeat; font-size: 1.4rem; color: #FFF;}
.title { position: relative; margin: 16px 0;}
.title h1 { padding-right: 50px; font-size: 3rem; font-weight: 400; line-height: 1.2;}
.pr { float: right; display: block; margin-left: 8px; padding: 2px 8px; background:  #F00; font-size: 1.4rem; color: #FFF;}
.name { font-weight: 500; color: #BF2922;}
.info figure { border-radius: 2px 2px 22px 22px; overflow: hidden;}
.info .face { top: 12px; left: 12px;}
.info .face img { width: 100px; height: 100px; border-width: 2px;}
.info .blogname { padding-left: 120px; font-size: 2.6rem;}
.loading { display: none; height: 10px; background: url("images/common/loading.svg") center center no-repeat; background-size: auto 10px;}
#bookinglist > li { display: grid; grid-template-columns: 48% 1fr; align-items: flex-start; gap: 24px; width: 100%; max-width: initial;}
#bookinglist figure { border-radius: 22px;}
#bookinglist .title { margin: 0;}
#bookinglist .contents { margin-top: 0;}
#bookinglist h3 { font-weight: 700;}
#bookinglist p { margin-bottom: 0;}
#bookinglist .price { font-size: 1.8rem; font-weight: 700;}

.related-gallery { display: flex; flex-wrap: wrap; justify-content: space-between;}
.related-gallery::after { content: ''; display: block; width: 31%;}
.related-gallery dl { width: 31%; max-width: 198px; margin-bottom: 24px; text-align: left!important;}
.related-gallery img { margin-bottom: 8px; border: none!important; border-radius: 2px 2px 22px 22px;}

.cat li { display: inline-block;}
.cat li a, .tagcloud a { display: inline-block; margin: 0 4px 4px 0; padding: 4px; background: #F0F0F0; border: 1px solid #CCCCCC; border-radius: 4px; font-size: 1rem; color: #999;}
.cat + * { margin-top: 8px;}
.meta { display: flex; align-items: center; margin-bottom: 16px; font-size: 1.2rem;}
.meta li:first-child { padding-right: 16px;}
.more, .accordion { display: flex; justify-content: center; align-items: center; text-align: center; max-width: 180px; padding: 8px; margin: 0 auto; border: 1px solid #BF2922; border-radius: 2px; font-size: 1.4rem; color: #BF2922; cursor: pointer;}
.accordion::after { content: ''; display: inline-block; width: 15px; height: 15px; margin-left: 8px; vertical-align: middle; background: url("images/common/arr_down.svg") 0 0 no-repeat;}
.accordioncontent { display: none;}
.ancker { margin: 24px 0; padding: 16px; border-top: 1px dashed #CCC; border-bottom: 1px dashed #CCC;}
.ancker li { padding: 2px 0;}
.ancker li a { color: #BF2922;}
.ancker li a::before { content: '・'; display: inline-block; vertical-align: middle;}

.paging { display: -webkit-flex; display: flex; -webkit-justify-content: center; justify-content: center; -webkit-align-items: center; align-items: center; font-size: 1.4rem;}
.nav-numbers { padding: 16px;}
.pagination a { display: inline-block; margin: 2px; padding: 0 14px;}
.pagination a:not(.prev):not(.next):not(.top) { padding: 8px 14px; background-color: #DBDBDB; color: #FFF;}
.pagination span { display: inline-block; margin: 2px; padding: 8px 14px;}
.pagination span.current { background-color: #000; color: #FFF;}
.prev, .next { margin: 0 16px!important;}


/*TOP*/
#topmain { position: relative; z-index: 1111; }
#topmain .link { position: absolute; bottom: 24px; right: 24px;}
#topmain .link a { display: flex; justify-content: center; align-items: center; padding: 16px 40px; background: url(images/common/more.svg) center no-repeat; background-size: 100% 100%; color: #FFF;}
.discover { display: grid; grid-template-columns: repeat(4,1fr); gap: 32px;}
.discover h3 { margin: 16px 0 0; padding-bottom: 0; text-align: center; border-bottom: none; font-weight: 700;}


/*CONTENTS*/
.map { width: 100%; height: 600px; margin-bottom: 16px;}
.map img { max-width: inherit;}
.couponbox { margin-bottom: 48px; padding: 24px; background: #fafafa; border: 1px solid #CCC; border-top-width: 20px;}
.couponbox h2 { padding: 8px; text-align: center; background: #e6e6e6; border: none; font-size: 2.4rem; color: #333;}
.comment { margin: 24px 0; padding: 24px 0; border-top: 1px solid #CCC; border-bottom: 1px solid #CCC; font-size: 1.2rem;}
.bookmarklist { border-top: 1px dashed #CCC;}
.bookmarklist li { padding: 4px 0; border-bottom: 1px dashed #CCC;}
.bookmarklist li a { display: inline-block; padding: 4px 0 4px 32px; vertical-align: middle; background: url("images/common/bookmark.svg") left center no-repeat;}
.bookmarklist li span { display: inline-block; width: 16px; height: 16px; margin-left: 16px; text-align: center; vertical-align: middle; border: 1px solid #999; border-radius: 50%; line-height: 16px; color: #999; cursor: pointer;}

.searchbox { padding-bottom: 24px;}
.searchbox label { display: inline-block; padding: 2px 8px;}
.btn button { display: inline-block; padding: 8px 32px; background: #999; color: #FFF;}
.searchchild { margin-bottom: 4px; padding: 0 0 4px 16px; border-bottom: 1px dashed #CCC;}





@media only screen and (max-width: 768px){
a:hover { filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=100); opacity: 1;}
a[href^="tel:"] { pointer-events: auto;}
body { font-size: 1.4rem;}
#container { min-width: auto; background-position: left 38% bottom 100px; background-size: 1000px auto;}
#headercontent, #main, #sitemap { width: 100%; padding: 0 16px;}
#headercontent { height: 60px;}
#logo { width: 180px;}
#nav { position: fixed; right: -100vw; top: 0; display: block; width: 100%; height: 100vh; overflow: auto; background: rgba(255,255,255,.95); opacity: 0; -webkit-transition: .3s ease-in-out; transition: .3s ease-in-out; z-index: 8888;}
#nav a { color: #FFF;}
#nav > ul { display: block; padding: 0;}
#nav > ul > li { display: block; padding: 16px;	background-image: repeating-linear-gradient(90deg, #bf2922, #bf2922 5px, transparent 5px, transparent 10px); background-position: left bottom; background-repeat: repeat-x; background-size: 100% 2px;}
#nav > ul > li a { margin: 8px 0;}
#nav > ul > li a br { display: none;}
#nav .navbox { position: relative; left: 0; transform: translateX(0); display: none; top: auto; padding: 16px; font-size: 1.3rem;}
#nav .area + .navbox { min-width: initial;}
#nav .purpose + .navbox { min-width: initial;}
#nav .navbox li { padding: 8px 0;}
#nav > ul > li > a.area + .navbox { display: none;}
#nav > ul > li > a.area + .navbox dl { width: 48%;}
#nav > ul > li.show .navbox { top: auto; display: block;}
#nav > ul > li.show > a.area + .navbox { display: flex;}
#open { display: block; z-index: 9999;}
#open div { position: relative; display: block; width: 24px; height: 24px;}
#open span { position: absolute; left: 0; display: block; width: 24px; height: 2px; background: #666; -webkit-transition: .15s ease-in-out; -moz-transition: .15s ease-in-out; transition: .15s ease-in-out;}
#open span:nth-child(1) { top: 4px;}
#open span:nth-child(2) { top: 12px;}
#open span:nth-child(3) { top: 20px;}
.open #open span:nth-child(1) { top: 12px; -webkit-transform: rotate(45deg); -moz-transform: rotate(45deg); transform: rotate(45deg);}
.open #open span:nth-child(2) { width: 0;}
.open #open span:nth-child(3) { top: 12px; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg);}
.open #nav { right: 0; opacity: 1;}
#global { margin-left: auto; background: none;}
#global > div { padding: 0 8px; background: none;}
#global > div:not(#open) a { width: 30px; height: 30px; min-height: 30px; background-size: contain;}
#global > div:not(#open) a span { display: none;}

#footer { margin-top: 240px; font-size: 1.3rem;}
#sitemap nav { display: block;}
#sitemap nav > ul { width: 100%;}
#sitemap nav > ul > li { padding: 16px 0; border-bottom: 1px solid #CCC;}
#sitemap li ul { display: flex; flex-wrap: wrap; justify-content: space-between;}
#sitemap li ul::after { content: ''; display: block; width: calc(100% / 3);}
#sitemap li ul li { width: calc(100% / 3);}
#pagetop { bottom: 60px; width: 40px;}

#aside { width: 100%; padding-bottom: 24px;}
#aside h4 { text-align: left;}
.cat li { display: inline-block; padding: 0 4px 8px 0;}
.cat li a { padding: 2px; font-size: 1.1rem;}
#aside .sns li { justify-content: center;}

#main { display: block;}
#contents { width: 100%; padding: 24px 0 48px;}
section h2 { font-size: 2.2rem;}
section h3 { font-size: 1.8rem;}
section h4 { font-size: 1.6rem;}
section h5 { font-size: 1.4rem;}
section table { width: 100%; border-collapse: collapse;}
section tr { border-bottom: 1px dashed #CCC;}
section th { display: block; width: 100%; padding: 8px 0 2px; font-weight: 700;}
section td { display: block; padding: 0 0 8px;}
.sp { display: block;}
.pc { display: none;}

.list > li { max-width: 100%;}
.list.three > li { width: 48%; max-width: 100%;}
.related-gallery dl { width: 48%!important; max-width: 100%;}
#bookinglist > li { grid-template-columns: 32% 1fr; gap: 24px;}

.prof { position: relative;}
.prof .face img { width: 30px; height: 30px;}
.blogname { display: flex; align-items: center; height: 40px; padding: 6px 8px 6px 40px; font-size: 1.2rem; line-height: 1.4; overflow: hidden;}
.title { font-size: 1.4rem;}
.title h1 { font-size: 2rem;}
.pr { font-size: 1.2rem;}
.info .face { top: 5px; left: 5px;}
.info .face img { width: 30px; height: 30px; border-width: 1px;}
.info .blogname { padding-left: 40px; font-size: 1.2rem;}
.ancker { padding: 16px 0;}

#topmain .link a { padding: 8px;}
.discover { grid-template-columns: repeat(auto-fit,minmax(140px,1fr)); gap: 24px;}
.discover figure { max-width: 160px; margin: 0 auto;}

.map { height: 360px;}
}


@media print {
#container { width: 1024px;}
}