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

Theme Name: marukiseikaten-theme
Author: Tatsunosuke
Description: marukiseikaten original theme
Version: 1.0

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

/* -----------------------------------
  basic
----------------------------------- */
html{
  margin-top: 0px !important;
  font-size: 62.5%;
}
body {
  font-size: 1.7rem;
  font-family: '游ゴシック体', 'Yu Gothic', YuGothic, 'Roboto', "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", sans-serif;
  font-weight: 500;
  color:#262626;
  background: #ffffff;
}

a {
  text-decoration: none;
	color: #262626;
  transition: .3s
}

b {
  font-weight: bold;
}


/* -----------------------------------
  pc
----------------------------------- */

/* header ------------------ */

div.header_container{
  margin: 40px 0;
  padding:0 105px;
}

h1.header_title{
  float: left;
  width: 158px;
}

nav.header_nav{
  float: left;
  width: 80%;
  margin: 0 auto;
  text-align: center;
}
.hamburger-menu{
	display: inline-block;
}


ul.header_navList{
  column-count: 5;
  margin-top: 40px;
}

ul.header_navList li{
  text-align: center;
  font-size: 0.8em;
  letter-spacing: 0.3em;
}

ul.header_navList li a:hover{
  color:#889399;
}

div.header-instagram-icon{
  text-align: right;
  padding-top: 40px;
}

div.header-instagram-icon img:hover{
  opacity:0.7;
}

/* footer ------------------ */

footer{
	clear:both;
}

div.footer_container{
    margin-top: 40px;
    padding: 80px 105px;
    border-top: solid 1px #ccc;
}

p.footer_title{
  float: left;
  width: 158px;
}

nav.footer_nav{
  float: left;
  width: 60%;
  margin-left: 10%;
}

ul.footer_navList li{
  color:#888;
  font-size:0.8em;
  line-height:2.2em;
}

div.footer-instagram-icon{
  text-align: right;
  color: #333;
  padding-top: 110px;
}

div.footer-instagram-icon span{
    font-size: 0.7em;
    margin-right: 10px;
    letter-spacing: 0.2em;
}


/* main ------------------ */

.pc_only{
	display:inherit;
}

.sp_only,
#menu-btn-check{
	display:none;
}

div.container{
	clear:both;
}

h2,h3{
	margin: 170px auto 150px;
    font-size: 1.2em;
    letter-spacing: 0.2em;
    text-align: center;
}

h4{
	margin: 120px auto 100px;
    font-size: 1.0em;
	text-align: center;
}

.fade-in-bottom,
.wpcf7-form,
h2,
h3,
h4{
   opacity: 0;
   animation-name: fadein-bottom;
   animation-duration: 1.5s;
   animation-timing-function: ease-out;
   animation-fill-mode: forwards;
}
@keyframes fadein-bottom {
   0% {
      opacity: 0;
      transform: translateY(50px);
   }
   100% {
      opacity: 1;
      transform: translateY(0);
   }
}

.fade-in-left{
   opacity: 0;
   animation-name: fadein-left;
   animation-duration: 1.5s;
   animation-timing-function: ease-out;
   animation-fill-mode: forwards;
}
@keyframes fadein-left {
   0% {
      opacity: 0;
      transform: translateX(-50px);
   }
   100% {
      opacity: 1;
      transform: translateX(0);
   }
}

.fade-in-right{
   opacity: 0;
   animation-name: fadein-right;
   animation-duration: 1.5s;
   animation-timing-function: ease-out;
   animation-fill-mode: forwards;
}
@keyframes fadein-right {
   0% {
      opacity: 0;
      transform: translateX(50px);
   }
   100% {
      opacity: 1;
      transform: translateX(0);
   }
}

.fade-in{
   opacity: 0;
   animation-name: fadein-right;
   animation-duration: 1.5s;
   animation-timing-function: ease-out;
   animation-fill-mode: forwards;
}
@keyframes fadein-right {
   0% {
      opacity: 0;
      transform: translateX(0);
   }
   100% {
      opacity: 1;
      transform: translateY(0);
   }
}

div.main_content{
	text-align:center;
	width: 100%;
}

ul.col2,
div.shop02 ul{
  column-count: 2;
}

div.shop01{
	background-image: url("images/shop-img01-bg.png");
	background-repeat: no-repeat;
	background-position: center;
    height: 771px;
	margin: 0 auto;
    max-width: 1301px;
}

div.shop01 ul{
    padding: 90px 0 0;
}

div.shop01 li:nth-child(1){
	float:right;
    width: 50%;
}
div.shop01 li:nth-child(2){
	float: left;
    width: 50%;
    padding:40px 0 0;
}

.v-line{
	margin: 80px 0 100px;
	padding:165px 0 0;
	background-image: url("images/Vertical-line01.png");
	background-repeat: no-repeat;
	background-position: top center;
}

div.shop02{
	background-image: url("images/shop-img02.png");
	background-repeat: no-repeat;
	background-position: center;
    height: 826px;
	max-width: 1501px;
    margin: 200px auto 0;
}

div.shop02 h3{
	margin: 100px auto 50px;
    padding: 100px 0 0;
    color: #A0A060;
}

div.shop02 p{
	text-align: left;
    padding: 30px 4% 0;
    color: #ccc;
	font-size:0.8em
}

.wp-post-image,
.attachment-mytheme-news,
.attachment-mytheme-gallery,
.main_contact_btn,
.wpcf7-form,
h2,
h3,
h4,
.sa {
  opacity: 0;
  transition: all 2s ease;
}

.wp-post-image.show,
.attachment-mytheme-news.show,
.attachment-mytheme-gallery.show,
.main_contact_btn.show,
.wpcf7-form.show,
h2 .show,
h3 .show,
h4 .show,
.sa.show {
  opacity: 1;
  transform: none;
}

.sa--lr {
  transform: translate(-100px, 0);
}

.sa--rl {
  transform: translate(100px, 0);
}

.wp-post-image,
.attachment-mytheme-news,
.attachment-mytheme-gallery,
.main_contact_btn,
.wpcf7-form,
h3,
h4,
.sa--up {
  transform: translate(0, 100px);
}

.sa--down {
  transform: translate(0, -100px);
}

.sa--scaleUp {
  transform: scale(.5);
}

.sa--scaleDown {
  transform: scale(1.5);
}

.sa--rotateL {
  transform: rotate(180deg);
}

.sa--rotateR {
  transform: rotate(-180deg);
}

div.map{
    margin: 100px auto 0;
	padding: 0 5% 0;
	max-width: 1301px;
}

div.map h3{
	margin:40px 0;
	text-align:left;
	color:#262626;
}

div.map ul:first-child{
	width:65%;
}

div.map ul li:nth-child(2){
	width:100%;
}

div.map ul li:nth-child(2) iframe{
	width:760px;
	height:600px;
}

div.map ul.sa li:nth-child(2){
	width:100%;
}

div.map li{
	text-align:left;
	font-size:0.9em;
	color:#737373;
	line-height: 2.2em;
}

div.map li ul{
    margin: 0 0 60px;
}

div.map span{
	text-align:left;
	font-size:0.8em;
	color:#737373;
	line-height: 1.9em;
    display: block;
    letter-spacing: 2px;
}

div.line-btn img:hover{
	opacity:0;
}

div.line-btn{
	background-image: url("images/shop-img-line02.png");
	background-repeat: no-repeat;
	background-position: top left;
}

div.main_contact_btn{
    text-align: center;
}


div.main_contact_btn a{
    display: inline-block;
    margin: 0 auto;
    padding: 10px 100px;
    border: solid 1px #ccc;
	margin: 220px auto 200px;
	font-size: 0.9em;
    letter-spacing: 0.4em;
    color: #666;
}

div.main_contact_btn a:hover{
	color:#fff;
	background-color:#ccc;
}

div.content{
	max-width:1301px;
	margin: 0 auto 300px;
	overflow:hidden;
}

div.content_bg{
	background-image: url("images/content-bg.png");
	background-repeat: repeat;
	background-position: top left;
	padding: 150px 0 1px;
	width:100%
	margin: 0 auto;
	overflow:hidden;
}

div.content ul{
	width: 85%;
    margin: 0 auto;
}

div.content ul li{
	height:751px;
}

div.content ul li:nth-child(2){
	position: relative;
    z-index: 2;
	float: left;
    width: 50%;
}

div.content ul li:nth-child(1){
	position: relative;
    z-index: 1;
	float: right;
    width: 50%;
}

div.content ul li p{
    font-size: 0.8em;
    text-align: left;
    margin: 70px 0 0;
    max-width: 390px;
    line-height: 2.5em;
    letter-spacing: 0.2em;
}

.wpcf7{
	margin: 0 auto;
    width: 800px;
}

.wpcf7 p{
	text-align: left;
    margin: 0 auto 80px;
	color:#808080;
	font-weight: bold;
    letter-spacing: 0.2em;
}

.wpcf7 p input{
	border: 1px solid #ccc;
    height: 30px;
    width: 100%;
	margin: 10px 0 0;
}

.wpcf7 p textarea{
	border: 1px solid #ccc;
    height: 400px;
    width: 100%;
	margin: 10px 0 0;
}

.wpcf7 p input[type="submit"]{
	background-color: #fff;
	color: #999;
	cursor: pointer;
    height: 50px;
    width: 50%;
	margin: 100px 25% 200px;
}

.wpcf7 p [type="submit"]:hover{
	background-color: #ccc;
	color:#fff;
}

.no_image{
	width: 800px;
    height: 500px;
    background-color: #ccc;
    text-align: center;
    line-height: 500px;
    color: #fff;
	margin: 0 auto;
}

.gallery{
	width:1000px!important;
	margin:0 auto;
}

.gallery img{
	max-width:100%
}

.gallery li{
	margin: 0 0 150px;
}

.text{
	text-align:left;
	font-weight:bold;
}

.text p,
.text span{
	text-align: left;
    font-weight: 100;
    font-size: 0.8em;
    color: #999;
}

.gallery_bottom{
	margin:0 auto 200px;
}
.gallery_bottom a{
	display:block;
}
.gallery_bottom a:nth-child(1){
	margin:0 0 20px;
}

.news{
	max-width: 1220px;
    width: 90%!important;
    margin: 0px auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

.news-box{
	max-width: 600px;
    width: 49%;
    text-align: left;
    margin: 0 0 100px;
}

.no_image02{
	max-width: 600px;
    max-height: 400px;
	width:100%;
	height:auto;
    background-color: #ccc;
    text-align: center;
    line-height: 400px;
    color: #fff;
    margin: 0 auto;
}

.no_image03{
	max-width: 1301px;
    max-height: 751px;
	width:100%;
	height:auto;
    background-color: #ccc;
    text-align: center;
    line-height: 751px;
    color: #fff;
    margin: 0 auto;
}

.wp-post-image{
	max-width: 1125px;
    max-height: 750px;
    width: 100%;
    height: auto;
}

.text_more{
    font-size: 18pt;
    letter-spacing: 0.1em;
}

#template-single{
	max-width: 1301px;
	width:95%;
    margin: 0 auto;
    text-align: center;
}

#template-single .col2{
	max-width: 950px;
	width:93%;
    margin: 100px auto 50px;
}

#template-single .col2 .pagetitle{
    text-align: left;
    margin: 0px;
}

#template-single .col2 li:nth-child(2){
    text-align: right;
    margin: 0px;
	color:#ccc;
	line-height: 40px;
}

#template-single .no-image{
	width:100%;
}

.entry-content{
	max-width: 950px;
	width:93%;
    margin: 0 auto 300px;
	text-align:left;
}


/* -----------------------------------
	tablet
----------------------------------- */
@media screen and (max-width: 1279px) {

	/* この上に記述 */
}

/* -----------------------------------
  sp
----------------------------------- */
@media screen and (max-width: 767px) {

.pc_only{
	display:none!important;
}

.sp_only{
	display:initial;
}

/* header ------------------ */
div.header_container {
margin: 30px 0 0;
padding: 0 8%;
}
h1.header_title{
	width: 37%;
}
h1.header_title img{
	width: 100%;
}
.menu-btn {
	position: absolute;
top:32px;
    right: 3%;
    display: flex;
    height: 60px;
    width: 60px;
    justify-content: center;
    align-items: center;
    z-index: 90;
    background-color: unset;
}
.menu-btn span,
.menu-btn span:before,
.menu-btn span:after {
    content: '';
    display: block;
    height: 2px;
    width: 15px;
    border-radius: 3px;
    background-color: #262626;
    position: absolute;
}
.menu-btn span:before {
    bottom: 8px;
}
.menu-btn span:after {
    top: 8px;
}
#menu-btn-check:checked ~ .menu-btn span {
    background-color: rgba(255, 255, 255, 0);/*メニューオープン時は真ん中の線を透明にする*/
}
#menu-btn-check:checked ~ .menu-btn span::before {
    bottom: 0;
    transform: rotate(45deg);
}
#menu-btn-check:checked ~ .menu-btn span::after {
    top: 0;
    transform: rotate(-45deg);
}
#menu-btn-check {
    display: none;
}

.menu-content {
    width: 100%;
    /*height: 100%;*/
    position: absolute;
    top: 105px;
    /*left: 100%;leftの値を変更してメニューを画面外へ*/
	display:none;
    z-index: 80;
    background-color: unset;
    transition: all 0.5s;/*アニメーション設定*/
	background:#fff;
}
.menu-content ul {
    padding: 0px 10px 0;
}
.menu-content ul li {
    border-bottom: solid 1px #262626;
    list-style: none;
}
.menu-content ul li:hover {
	background:#ccc;
}
.menu-content ul li a {
    display: block;
    width: 100%;
    font-size: 15px;
    box-sizing: border-box;
    color:#262626;
    text-decoration: none;
    padding: 9px 15px 10px 0;
    position: relative;
}
.menu-content ul li a:hover {
	background:#ccc;
}
.menu-content ul li a::before {
    content: "";
    width: 7px;
    height: 7px;
    border-top: solid 2px #262626;
    border-right: solid 2px #262626;
    transform: rotate(45deg);
    position: absolute;
    right: 11px;
    top: 16px;
}
#menu-btn-check:checked ~ .menu-content {
    /*left: 0;メニューを画面内へ*/
	display:initial;
	left:0%;
}
#menu-btn-check:checked ~ h2 {
    display:hidden;
}

div.header-instagram-icon {
    margin: 0 25% 0 0;
	padding-top: 20px;
}

div.header-instagram-icon img{
	width:20px;
}

ul.header_navList {
    column-count: 1;
	margin-top:0;
}
h2{
	position:relative;
	z-index:0;
}
.header_nav{
	width:100%
}

/* footer ------------------ */
div.footer_container {
    padding: 40px 7%;
}

p.footer_title {
	float:initial;
    width: 37%;
    margin: 10px auto 40px;
    text-align: center;
}

p.footer_title img{
    width: 100%;
}

nav.footer_nav {
    width: 60%;
	margin: 0 0 50px;
}

ul.footer_navList li {
    color: #777;
    font-size: 0.7em;
	letter-spacing: 0.2em;
}

div.footer-instagram-icon {
    padding-right: 5px;
}

div.footer-instagram-icon img{
    width:20px;
	height:auto;
}

div.footer_nav_btn{
    clear: both;
    text-align: center;
    background-color: #efefef;
    padding: 20px 5%;
	display: inherit;
}

div.footer_nav_btn ul{
	column-count:2;
}

div.footer_nav_btn ul li:nth-child(1){
	padding:0 3% 0 0%;
}

div.footer_nav_btn ul li:nth-child(2){
	padding:0 0% 0 3%;
}

div.footer_nav_btn ul a{
    display: block;
    background: #8D95A0;
    color: #fff;
    font-size: 0.6em;
    letter-spacing: 0.2em;
    padding: 8px 0;
    line-height: 26px;
	border-radius: 10px; 
    -webkit-border-radius: 10px;
    -moz-border-radius: 10px;
}

div.footer_nav_btn ul li:nth-child(1) a{
    background-image: url(images/footer_nav_btn_mail.png);
    background-repeat: no-repeat;
    background-position: 20% 6px;
    padding-left: 20%;
}

div.footer_nav_btn ul li:nth-child(2) a{
    background-image: url(images/footer_nav_btn_tel.png);
    background-repeat: no-repeat;
    background-position: 37% 10px;
    padding-left: 15%;
    background-size: 17px;
}

div.footer_nav_btn ul li:nth-child(2) a{
    font-size: 0.7em;
    letter-spacing: 0.4em;
}

ul.col2,
div.shop01 ul,
div.shop02 ul,
div.content ul{
  column-count: 1;
}

.sa--lr,
.sa--rl {
  transform: translate(0, 100px);
}

	div.shop01,
	div.shop02{
		background-size: auto 100%;
		background-position: top center;
		height:auto;
		padding:0 0 100px;
	}
	div.shop01{
		background-image: url(./images/shop01-bg-sp.png);
	}
	div.shop02{
		background-image: url(./images/shop02-bg-sp.png);
	}
	div.shop01 li:nth-child(1),
	div.shop01 li:nth-child(2){
    text-align: center;
		float:initial;
		width:100%;
	}
	div.shop01 li img,
	div.shop02 li img{
		width:90%;
	}
	.main_content iframe {
		width: 90%;
		height: 350px;
	}
	div.map ul:first-child{
		width:auto;
	}
	div.map ul.col2 li:first-child{
		margin:0 10%;
	}
	div.map ul.col2 li:nth-child(2){
		padding:80px 0 0;
	}
	div.map ul.sa li:first-child{
		margin:0;
	}
	div.map ul.sa li:nth-child(2){
		padding:0;
	}
	div.map ul.sa li{
		line-height:2em;
		letter-spacing: 0.1em;
		color:#777;
	}
	div.map li ul {
        margin: 0 0 40px;
    }
	div.map h3{
		font-size: 1.1em;
        letter-spacing: 0.1em;
        margin: 0 0 20px;
	}
	div.map ul li:nth-child(2) iframe {
    width: 100%;
	}
	div.map li iframe{
		width:100%;
	}
	div.line-btn {
		background-size: 100%;
	}
	div.line-btn img{
		width:100%;
	}
	div.main_contact_btn {
		margin: 100px auto;
    font-size: 0.6em;
    letter-spacing: 0.6em;
    padding: 8px 19%;
    color: #aaa;
	}
	div.main_contact_btn {
		width: 100%;
    	text-align: center;
    	margin: 0 auto;
    	display: block;
	}
	div.main_contact_btn a {
		margin: 80px auto;
    padding: 8px 29%;
    font-size: 0.7em;
    letter-spacing: 0.7em;
    color: #777;
	}
	div.content{
		margin: 0 auto 100px;
	}
	div.content ul li:nth-child(2){
		margin: 80px 0 0;
	}
	div.content ul li:nth-child(2){
		float: none;
		width: 100%;
	}
	div.content ul li:nth-child(1){
		float: none;
		width: 100%;
	}
	div.content ul li p {
		margin: 70px auto 0;
		max-width: 90%;
	}
	div.content ul li {
    	height: auto;
	}
	div.content ul li img{
    	width:100%;
	}
	.news{
		display:initial;
	}
	.news-box{
		margin:0 auto 100px;
		width:90%;
		max-width:initial;
	}
	.wp-post-image {
    width: 100%;
	}
	#template-single .col2 .pagetitle {
    	text-align: center;
	}
	#template-single .col2 li:nth-child(2) {
    	text-align: center;
	}
	.gallery {
		width: 90%!important;
		margin: 0 5%;
	}
	.no_image {
		width: 100%;
		height: 300px;
		line-height: 300px;
	}
	.no_image02 {
		max-height: 300px;
		line-height: 300px;
	}
	.wpcf7 {
		margin:0 5%;
		width: 90%;
	}
	.box .src1,
	.box .src2,
	.box .src3{
    	background-size: auto 100%;
	}
	.box .logo {
    	top: 15%;
	}
	.box .logo img{
    	width:50%;
	}
	.message{
		width: 324px;
		height: 300px;
		background-image: url(../images/topimg-text2.png);
	}
	/* この上に記述 */
}
