/*-----------------------------------------------------------------------------------

    Template Name: Minifo - Minimal Portfolio Template 
    Template URI: http://HasTech.com
    Description: This is html5 template
    Author: HasTech
    Author URI: http://HasTech.com
    Version: 1.0

-----------------------------------------------------------------------------------
    
    CSS INDEX
    ===================
	
    1. Template default css (css/shortcode/default.css)
    2. Header css (css/shortcode/header.css)
    3. Slider css (css/shortcode/slider.css)
    4. Blog css (css/shortcode/blog.css)
    5. Breadcrumb css (css/shortcode/breadcrumb.css)
    6. Portfolio css (css/shortcode/portfolio.css)
    7. Service css (css/shortcode/service.css)
    8. Testimonial css (css/shortcode/testimonial.css)
    9. Footer css (css/shortcode/footer.css)
    10. About us
    11. Contact us
    12. Scrollup 
    
-----------------------------------------------------------------------------------*/


/* 10. About us */

.single-count {
    text-align: center;
}
.count-icon {} .count-icon span {
    font-size: 35px;
}
.count-title {} .count-title h2 {
    color: #fff;
    font-size: 40px;
    font-weight: 300;
    margin: 15px 0;
}
.count-title span {
    color: #fff;
    font-size: 16px;
    letter-spacing: 1px;
    margin: 0;
    text-transform: capitalize;
}
.hover-style {
    display: block;
    position: relative;
}
.hover-style::before {
    background: #fff none repeat scroll 0 0;
    content: "";
    height: 100%;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: all 0.3s ease-in-out 0s;
    width: 100%;
}
.hover-style:hover::before {
    opacity: 0.95;
}
.bg-img {
    background: rgba(0, 0, 0, 0) url("img/bg-2.jpg") repeat scroll center center / cover;
    height: 100vh;
}
.count-icon {
    color: #fff;
}
.img-overly {
    position: relative;
}
.img-overly::before {
    background: #000 none repeat scroll 0 0;
    bottom: 0;
    content: "";
    height: 100%;
    left: 0;
    opacity: 0.6;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
}

.about-minimal {} .about-minimal h2 {} .minimal-img > img {
    width: 100%;
}
.about-minimal {} .about-minimal ul {} .about-minimal ul li {
    border-top: 1px solid #f6f6f6;
    display: block;
    line-height: 1.3em;
    list-style-type: none;
    margin: 0;
    padding: 15px 0;
    position: relative;
}
.about-minimal ul li:last-child {
    border-bottom: 1px solid #eceaeb;
}
.about-minimal ul li::before {
    color: #444;
    content: "";
    font-family: FontAwesome;
    font-size: 13px;
    line-height: 12px;
    margin-left: 0;
    margin-right: 10px;
    position: relative;
    top: 1px;
}
.about-minimal a {
    border: 1px solid #ddd;
    display: inline-block;
    font-size: 14px;
    font-weight: 600;
    line-height: 16px;
    margin-bottom: 5px;
    padding: 12px 25px;
    text-transform: uppercase;
}
.about-minimal a:hover {
    background: #464646;
    color: #fff;
    border-color: #464646
}
.single-skill-about {
    text-align: center;
}
.progress-h4 {
    font-size: 22px;
    font-weight: 400;
}
.about-us-text > p {
    color: #666;
}
.team-member {
    position: relative;
}
.team-member > img {
    filter: grayscale(100%);
    width: 100%;
}
.team-member::before {
    background: transparent none repeat scroll 0 0;
    content: " ";
    display: block;
    height: 100%;
    left: 0;
    position: absolute;
    top: 0;
    transition: all 0.27s cubic-bezier(0, 0, 0.58, 1) 0s;
    width: 100%;
    z-index: 1;
}
.team-wrapper:hover .team-member::before {
    background: rgba(33, 40, 45, 0.55);
}
.team-info {
    padding: 15px 0;
}
.team-text-icon {
    left: 0;
    position: absolute;
    right: 0;
    text-align: center;
    top: 50%;
    transform: translateY(-50%);
    z-index: 99;
    opacity: 0;
    transition: all .3s ease 0s;
}
.team-info {
    padding: 15px 0;
}
.team-icon > a {
    border: 1px solid transparent;
    color: #fff;
    display: inline-block;
    font-size: 18px;
    height: 40px;
    line-height: 36px;
    text-align: center;
    width: 40px;
    border-radius: 50%;
    margin: 0 10px;
}
.team-icon > a:hover {
    background: #fff;
    color: #666
}
.team-wrapper:hover .team-icon > a {
    margin: 0 5px;
}
.team-wrapper:hover .team-text-icon {
    opacity: 1;
}
.team-info h3 {
    font-size: 20px;
    text-transform: uppercase;
    color: #fff;
}
.team-info span {
    color: #fff;
    text-transform: uppercase;
}
.team-member > img {
    filter: grayscale(100%);
    -webkit-filter: grayscale(100%);
}
.about-minimal > p {
    font-size: 15px;
    line-height: 28px;
    margin: 0 auto;
    text-align: center;
    width: 95%;
}
.about-minimal h2::before {
    background-color: #ccc;
    bottom: 0;
    content: "";
    height: 3px;
    left: 0;
    margin: 0 auto;
    position: absolute;
    right: 0;
    width: 100px;
}
.about-minimal h2 {
  margin-bottom: 30px;
  padding-bottom: 20px;
  position: relative;
  text-transform: uppercase;
}
/*----- Pricing table  ------*/

.pricing-top {
    border-bottom: 1px solid #ddd;
    display: block;
    overflow: hidden;
}
.single-pricing {
    border: 1px solid #ddd;
    padding: 50px;
    text-align: center;
}
.pricing-top h3 {
    font-size: 24px;
    font-weight: 600;
    letter-spacing: 2px;
    margin-bottom: 30px;
    padding-bottom: 10px;
    position: relative;
    text-transform: uppercase;
}
.pricing-top h3::before {
    background: #666 none repeat scroll 0 0;
    bottom: 0;
    content: "";
    height: 1px;
    left: 0;
    margin: auto;
    position: absolute;
    right: 0;
    width: 60px;
}
.pricing-top p {
    font-family: dosis;
    font-size: 36px;
    font-weight: 500;
    margin-bottom: 28px;
}
.pricing-top p span {
    font-size: 18px;
    font-weight: normal;
}
.pricing-tex li {
    color: #333333;
    font-size: 14px;
    padding-bottom: 22px;
    text-transform: capitalize;
}
.pricing-tex li:last-child {
    padding-bottom: 0px;
}
.pricing-tex li i {
    padding-right: 10px;
}
.price-btn a {
    background-color: transparent;
    border: 1px solid #c1c1c1;
    color: #464646;
    font-size: 14px;
    font-weight: bold;
    padding: 10px 20px;
    text-transform: uppercase;
    transition: all 0.3s ease 0s;
}
.price-btn a:hover {
    background-color: #464646;
    border: 1px solid #464646;
    color: #fff;
}
.pricing-tex > ul {
    padding: 40px 0;
}
.price-btn .button i {
    font-size: 14px;
    padding-left: 12px;
}
/*----- 11. Contact us ------*/

#hastech2 {
    height: 402px;
    width: 100%;
}
h3.main-contact {
    font-size: 20px;
    font-weight: 500;
    margin-bottom: 32px;
    text-transform: uppercase;
    letter-spacing: 1px;
}
.main-input input {
    background-color: transparent;
    border: 1px solid #ddd;
    color: #666;
    font-family: "Lato", sans-serif;
    font-size: 14px;
    height: 45px;
    padding-left: 20px;
}
.text-leave2 textarea {
    background: transparent none repeat scroll 0 0;
    border: 1px solid #ddd;
    color: #666;
    font-family: "Lato", sans-serif;
    height: 150px;
    margin-bottom: 40px;
    padding: 14px 20px;
}
.leave-form input:focus,
.main-input input:focus,
.text-leave textarea:focus,
.text-leave2 textarea:focus {
    background: transparent none repeat scroll 0 0;
    border: 1px solid #f6f6f6;
}
.mfp-wrap {
    z-index: 99999999;
}
.mfp-bg {
    z-index: 9999999;
}
/*............. 12. Scrollup   ................*/

#toTop {
    text-align: center;
    bottom: 35px;
    cursor: pointer;
    display: none;
    position: fixed;
    right: 12px;
    z-index: 9999;
}
#toTop i {
    height: 40px;
    width: 40px;
    color: #666;
    line-height: 40px;
    background-color: #ffffff80;
}
#toTop i:hover {
    background-color: #eee;
    color: #666;
}
.conract-area-bottom {
    margin-top: 50px;
}








HTML  CSS  JS  Result
Edit on 
@import url(https://fonts.googleapis.com/css?family=Raleway:300,700);
@import url(https://code.ionicframework.com/ionicons/2.0.1/css/ionicons.min.css);
figure.snip1384 {
  font-family: 'Raleway', Arial, sans-serif;
  position: relative;
  float: left;
  overflow: hidden;
  margin: 10px 1%;
  min-width: 230px;
  max-width: 315px;
  width: 100%;
  color: #ffffff;
  text-align: left;
  font-size: 16px;
  background-color: #000000;
}
figure.snip1384 * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
}
figure.snip1384 img {
  max-width: 100%;
  backface-visibility: hidden;
  vertical-align: top;
}
figure.snip1384:after,
figure.snip1384 figcaption {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
}
figure.snip1384:after {
  content: '';
  background-color: rgba(0, 0, 0, 0.65);
  -webkit-transition: all 0.35s ease;
  transition: all 0.35s ease;
  opacity: 0;
}
figure.snip1384 figcaption {
  z-index: 1;
  padding: 40px;
}
figure.snip1384 h3,
figure.snip1384 .links {
  width: 100%;
  margin: 5px 0;
  padding: 0;
}
figure.snip1384 h3 {
  line-height: 1.1em;
  font-weight: 700;
  font-size: 1.4em;
  text-transform: uppercase;
  opacity: 0;
}
figure.snip1384 p {
  font-size: 0.8em;
  font-weight: 300;
  letter-spacing: 1px;
  opacity: 0;
  top: 50%;
  -webkit-transform: translateY(40px);
  transform: translateY(40px);
}
figure.snip1384 i {
  position: absolute;
  bottom: 10px;
  right: 10px;
  padding: 20px 25px;
  font-size: 34px;
  opacity: 0;
  -webkit-transform: translateX(-10px);
  transform: translateX(-10px);
}
figure.snip1384 a {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  z-index: 1;
}
figure.snip1384:hover img,
figure.snip1384.hover img {
  zoom: 1;
  filter: alpha(opacity=50);
  -webkit-opacity: 0.5;
  opacity: 0.5;
}
figure.snip1384:hover:after,
figure.snip1384.hover:after {
  opacity: 1;
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 10px;
  right: 10px;
}
figure.snip1384:hover h3,
figure.snip1384.hover h3,
figure.snip1384:hover p,
figure.snip1384.hover p,
figure.snip1384:hover i,
figure.snip1384.hover i {
  -webkit-transform: translate(0px, 0px);
  transform: translate(0px, 0px);
  opacity: 1;
}
/* Demo purposes only */
body {
  background-color: #272c2e;
}


/* Siiiii */

.imgtop {
  margin-bottom:80px;
}

.imgtop2{
  margin-bottom:0px;
}


/*
@media (min-width: 768px) {
.topfirst{
  margin-top:40px;
}
}
*/

.news {
  padding: 0;
}

.date {
  letter-spacing: 1.6px;
  margin-bottom: 0px;
}

.border {
  padding-bottom: 80px;
}

.space {
  margin-bottom: 40px;
}

.exh {
  margin-top: 80px;
}

.work {
  margin-bottom: 40px;
}

.first {
  margin-top: 20px;
}


#news,#about,#contact {
  margin-top: -60px;
  padding-top:60px;
}



#w1 {
  margin-top: -60px;
  padding-top:60px;
  height:740px;
}

#w2 {
  margin-top: -60px;
  padding-top:60px;
  height:920px;
}

#w3 {
  margin-top: -60px;
  padding-top:60px;
  height:800px;
}


#w4 {
  margin-top: -60px;
  padding-top:60px;
  height:800px;
}

#w5 {
  margin-top: -60px;
  padding-top:60px;
  height:820px;
}




.fixed-footer {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 30%;
    padding: 80px; /* 任意の余白 */
    text-align: left; /* 文字を中央揃えにする場合 */
    z-index: 1000; /* 必要に応じて、他の要素の上に表示する */
}

.fixed-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 40%;
    padding: 80px 0 80px 80px;
    text-align: left; /* 文字を中央揃えにする場合 */
    z-index: 1000; /* 必要に応じて、他の要素の上に表示する */
}



li a {
  position: relative;
  display: inline-block;
  text-decoration: none;
  color:#000;
  font-size: 16px;
}
li a::after {
  position: absolute;
  bottom: 8px;
  left: 0;
  content: '';
  width: 100%;
  height: 1px;
  background: #fff;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
li a:hover::after {
  transform: scale(1, 1);
}




.containerbar1 {
    width: 100%;
    overflow: hidden; /* 画像の幅を超えた部分を隠す */
    background-image: url(img/karyon_01212436377.jpg);
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
    background-size:cover;
    background-position: center center;
}

.containerbar1 img {
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
}


.containerbar2 {
    width: 100%;
    overflow: hidden; /* 画像の幅を超えた部分を隠す */
    background-image: url(img/karyon_01212436347.jpg);
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
    background-size:cover;
    background-position: center center;
}

.containerbar2 img {
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
}


.containerbar3 {
    width: 100%;
    overflow: hidden; /* 画像の幅を超えた部分を隠す */
    background-image: url(img/karyon_01212436331.jpg);
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
    background-size:cover;
    background-position: center center;
}

.containerbar3 img {
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
}

.containerbar4 {
    width: 100%;
    overflow: hidden; /* 画像の幅を超えた部分を隠す */
    background-image: url(img/karyon_01212436178.jpg);
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
    background-size:cover;
    background-position: center center;
}

.containerbar4 img {
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
}

.containerbar5 {
    width: 100%;
    overflow: hidden; /* 画像の幅を超えた部分を隠す */
    background-image: url(img/karyon_01212436347.jpg);
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
    background-size:cover;
    background-position: center center;
}

.containerbar5 img {
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
}

.containerbar6 {
    width: 100%;
    overflow: hidden; /* 画像の幅を超えた部分を隠す */
    background-image: url(img/karyon_01212436014.jpg);
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
    background-size:cover;
    background-position: center center;
}

.containerbar6 img {
    width: 100%; /* 画像を親要素の幅いっぱいに広げる */
    height: 300px; /* 高さを自動で調整する */
    object-fit: cover; /* 画像をコンテナにフィットさせる */
    display: block; /* インライン要素をブロック要素に変更 */
}


.img1-2 {
    bottom:580px;width: 360px;
}

.spimg {
    width: 100%;
    margin-bottom: 20px;
}


.bar2 {
margin:220px 0 0 100px;
}

.mar1 {
margin-top:80px;
margin-left:0px;
}

.mar2 {
margin-top:80px;
margin-left:0px;
}

.WH1 {
padding-top:120px;
margin-bottom:60px;
}

.footermargin {
margin-bottom:60px;
}



.menu, .price {
    flex: 1;
}

.menu ul, .price ul {
    list-style-type: none;
    padding: 0;
}

.menu li, .price li {
    margin: 0px 0;
}

.menu li {
    text-align: left;
}

.price li {
    text-align: right;
}

.containercellars {
    width:80%;
    display: flex;
    justify-content: space-between;
}

.Cellarsh2{
    margin-top: 60px;
    margin-bottom: 20px;
}




.file{
    margin-top: 120px;
}





@media (max-width: 768px) {
.sp-none {
    display: none;
}

.body {
    font-size: 13px;
    line-height: 26px;
}

html,body {
    overflow-x: hidden;
}

p  {
    font-size: 13px;
    line-height: 26px;
}

.fixed-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 30px; /* 任意の余白 */
    text-align: left; /* 文字を中央揃えにする場合 */
    z-index: 1000; /* 必要に応じて、他の要素の上に表示する */
}

.img1-2 {
    bottom:0px;width: 100%;
}

.bar2 {
margin:80px 0 0 20px;
}

h1 {
  font-weight:400;
  font-size:26px;
}

h2 {
  font-weight:400;
  font-size:18px;
}

.mar1 {
margin-top:120px;
margin-left:0px;
}

.mar2 {
margin-top:40px;
margin-left:0px;
}

.footermargin {
margin-bottom:0px;
}

.file{
    margin-top: 240px;
}

}



@media (min-width: 768px) {

.pc-none {
    display: none;
}

}











h1, h2 {
    margin: 20px 0 30px;
    font-weight: normal;
}

.containercellars {
    display: table;
    width: 100%;
    margin-bottom: 20px;
}

.item {
    display: table-row;
}

.menu, .price {
    display: table-cell;
    padding: 4px;
    border-bottom: 1px solid #333;
}

.menu {
    text-align: left;
    width: 70%;
}

.price {
    text-align: right;
    width: 30%;
}

@media (max-width: 320px) {
    .container {
        width: 100%;
        padding: 10px;
    }

    .containercellars {
        display: block;
    }

    .item {
        display: flex;
        justify-content: space-between;
    }

    .menu, .price {
        display: block;
        width: auto;
        text-align: left;
        padding: 5px 0;
    }

    .price {
        text-align: right;
    }
}