@charset "UTF-8"; html { scroll-behavior: smooth; } body { font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; background-color: #F0EBEA; } header { background-color: #668E68; } nav { margin: 0; padding: 0 20px 20px; list-style: none; } nav ul { margin: 0; list-style: none; display: flex; gap: 30px; } nav a { color: #fff; } nav a:hover { background-color: #fff; color: #668E68; } h1, .header-logo { color: #fff; font-size: 40px; font-weight: bold; padding: 20px; line-height: 1; } /* ③ポジションを相対位置指定 */ .main-visual { background-image: url(./images/main-bg.png); background-size: cover; background-position: center; height: 600px; text-align: center; position: relative; } /* ③ポジションを絶対位置指定し、下部10%、右側10%、重なり順を手前に。 */ .main-visual h2 { position: absolute; bottom: 10%; right: 10%; z-index: 123456789; } /* ③背景色#f00、文字色#fff、内側余白上下2px、左右16px、ポジションを絶対位置指定し、下部18%、右側10%指定。 */ .main-visual p { background-color: #fff; padding: 2px 16px; position: absolute; bottom: 10%; right: 10%; } h2 { color: #fff; font-size: 65px; font-weight: bold; padding-top: 264px; } h3, .area-title { color: #655046; font-size: 42px; font-weight: bold; margin-bottom: 11px; padding: 0; } h4, .area-subtitle { color: #655046; font-size: 20px; margin-bottom: 44px; padding: 0; } p { font-size: 16px; line-height: 1.8; } .about { padding: 95px 0; text-align: center; color: #655046; } .menu, .contact { padding: 85px 0 95px; text-align: center; color: #655046; background-color: #fff; } .menu-wrapper { width: 1000px; margin: 0 auto; margin-bottom: 58px; display: flex; justify-content: space-between; } .menu-wrapper p { margin-top: 10px; } /* ②ポジションを相対位置に */ .menu-wrapper div { position: relative; } /* ②ポジションを絶対位置にし、上部0、左側0指定。 */ .menu-recommend { position: absolute; top: 0; left:0px; } ul { margin-bottom: 57px; } li { font-size: 16px; padding: 8px 0; } .button { text-decoration: none; color: #fff; background-color: #655046; padding: 20px; border-radius: 30px; transition: all .5s; } .button:hover { background-color: #668E68; } .news { margin: 95px 0; } .box { background-color: #fff; text-align: center; width: 600px; margin: 0 auto; padding: 50px; } .box h3, .box h4, .box li { color: #655046; } .news-list { text-align: left; margin: 0 50px; } .news-list span { font-size: 14px; color: #aaa; margin-right: 40px; } .new::after { content: "New!!"; background-color: #f00; color: #fff; font-size: 12px; } footer { background-color: #668E68; color: #fff; font-size: 14px; padding: 25px 0; text-align: center; } /* ①ポジションを固定に、下部20px、右側20pxに位置指定 */ .back-top { position: fixed; bottom: 20px; right: 20px; } /*********** ここからメニューページ ***********/ table { margin: 0 auto 50px; } th, td { border: 1px dotted #655046; padding: 24px; vertical-align: middle; } th { background-color: #655046; color: #fff; border-style: solid; } /*********** ここまでメニューページ ***********/ /*********** ここからコンタクトページ ***********/ input[type="text"], input[type="email"], select, textarea { font-size: 16px; padding: 8px; width: 100%; } input[type="submit"] { font-size: 16px; padding: 8px 16px; border-radius: 8px; cursor: pointer; } /*********** ここまでコンタクトページ ***********/ /*********** ここからタブレット対応 ***********/ @media screen and (max-width: 1020px) { h1 { font-size: 36px; } .main-visual { height: 480px; } .main-visual p { font-size: 13px; bottom: 17%; } h2 { font-size: 48px; padding-top: 222px; } h3 { font-size: 35px; } h4 { font-size: 18px; margin-bottom: 30px; } p { font-size: 14px; } .about { padding: 65px 0; } .menu { padding-top: 65px; padding-bottom: 75px; } .menu-wrapper { width: 100%; display: block; } .menu-wrapper div { margin-bottom: 30px; } .news-list span { font-size: 13px; } footer { font-size: 12px; } } /*********** ここまでタブレット対応 ***********/ /*********** ここからスマートフォン対応 ***********/ @media screen and (max-width: 620px) { h1 { font-size: 30px; padding: 13px; } .main-visual { height: 320px; } .main-visual p { font-size: 12px; bottom: 18%; } h2 { font-size: 38px; padding-top: 137px; } .about { padding: 45px 16px; } h3 { font-size: 28px; } h4 { font-size: 16px; margin-bottom: 25px; } p { font-size: 13px; } .menu { padding-top: 45px; padding-bottom: 75px; } .menu-wrapper img { width: 250px; } img.menu-recommend { width: 100px; } a { font-size: 14px; } .news { margin: 45px 0; } .box { width: 85%; padding: 25px; } .news-list { margin: 0 24px; } .news-list span { font-size: 13px; display: block; } footer { font-size: 11px; } } /*********** ここまでスマートフォン対応 ***********/