@charset "utf-8";

html {
    background-color: #fff;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
input,
button,
p {
    margin: 0px;
    padding: 0px;
    font-size: 18px;
	font-family: 'Spartan',"游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
    color: #000000;
    word-wrap: break-word;
    overflow-wrap: break-word;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
form,
input,
button,
p {
    -webkit-font-smoothing: subpixel-antialiased;
    -moz-osx-font-smoothing: unset;
}
.ofimg {
    width: 100%;
    overflow: hidden;
}
.ofimg img,.ofimg video {
    width: 100% !important;
    height: 100% !important;
    -o-object-fit: cover;
    object-fit: cover;
    -o-object-position: center center;
    object-position: center center;
    font-family: 'object-fit: cover; object-position: center center;';
}
@media only screen and (max-width: 1050px){
	.ofimg img,.ofimg video{
		height: 100%;
		width:100%;
	}
}

img {
    vertical-align: top;
    border: none;
    max-width: 100% !important;
    height: auto !important;
}

img:not([src*="."]) {
    display: none;
}

a {
    text-decoration: none;
    /*-webkit-transition: 0.3s linear;
    transition: 0.3s linear;*/
}

a[href*="tel"] {
    pointer-events: none;
}
ul,
li {
    list-style: none;
    text-align: left;
    padding: 0;
    margin: 0;
}
@media (min-width: 768px) {
a[href*="tel:"] {
pointer-events: none;
cursor: default;
text-decoration: none;
}
}

dl,
dt,
dd {
    text-align: left;
    padding: 0;
    margin: 0;
}

p {
    text-align: left;
}

.pc_only{
	display:block;
}
.sp_only{
	display:none;
}
@media (max-width: 767px){
	.pc_only{
		display:none !important;
	}
	.sp_only{
		display:block !important;
	}
}
@media only screen and (-webkit-min-device-pixel-ratio: 2),
(-webkit-min-device-pixel-ratio: 2),
(min-resolution: 2dppx) {

    body,
    div,
    dl,
    dt,
    dd,
    ul,
    ol,
    li,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    form,
    input,
    button,
    p {
        -webkit-font-smoothing: antialiased;
        -moz-osx-font-smoothing: grayscale;
    }
}

figure,
figcaption {
    margin: 0;
    padding: 0;
}

input,
textarea,
select {
    font-size: 16px !important;
}

/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
@media only screen and (max-width: 768px){
    a[href*="tel"] {
        pointer-events: initial !important;
    }
}
/*--------------------- レイアウト系CSS-----------------------*/

.wrapper {
    overflow: hidden;
    min-width: 320px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background-color: #fff;
}

.inner1 {
	max-width:1200px;
	width:100%;
    margin: 0 auto;
	box-sizing: border-box;
}
.inner2 {
	max-width:1000px;
	width:100%;
    margin: 0 auto;
	box-sizing: border-box;
}
.inner3 {
	max-width:800px;
	width:100%;
    margin: 0 auto;
	box-sizing: border-box;
}
@media only screen and (max-width: 1000px){
	.inner{
		padding:0 20px;
	}
}
@media only screen and (max-width: 768px){
    .wrapper {
        padding-top: 0 !important;
    }
    .inner1 {
        width: 100%;
		padding:0;
    }
    .inner2 {
        width: 90%;
		padding:0;
    }
    .inner3 {
        width: 90%;
		padding:0;
    }
}
/*--------------------- ボタン系CSS-----------------------*/

/*--------------------- flex系CSS-----------------------*/

.flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flexc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: justify;
    justify-content: center;
}

.flexs {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: distribute;
    justify-content: space-around;
}

.flexb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}


figure img{
	width:100%;
}

@media only screen and (max-width: 768px) {


    .flex {
        margin: 0 auto;
    }

    .flexc {
        margin: 0 auto;
    }

    .flexs {
        margin: 0 auto;
    }

    .flexb {
        margin: 0 auto;
    }
}




/* hamburger overlay */
.hamburger {
    display: none;
}
@media only screen and (max-width: 768px){

.hamburger {
	position: fixed;
    top: 10px;
    left: 10px;
    z-index: 1000;
	display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    width: 75px;
    height: 75px;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    cursor: pointer;
	transition: ease 0.3s;
	/*margin: 15px 10px 15px 10px;*/
}
	.hc2 .hamburger{
		background-color: #262626;
	}
.hamburger > span{
	font-size:10px;
	transform: scale(0.8);
	letter-spacing: 0;
}
    .hamburger a,
    .hamburger a:hover,
    .hamburger a:focus {
        opacity: 1;
    }

    .menu-trigger,
    .menu-trigger span {
        display: inline-block;
        -webkit-transition: all .4s;
        transition: all .4s;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
    }

    .menu-trigger {
        position: relative;
        width: 45px;
        height: 30px;
        float: right;
    }

    .menu-trigger span {
        position: absolute;
        left: 0;
        width: 80%;
        height: 2px;
		background-color:#fff;
    }

    .menu-trigger span:nth-of-type(1) {
        top: 0;
		left:0;		
    }

    .menu-trigger span:nth-of-type(2) {
        top: 14px;
		right:0;
		left: auto;
    }

    .menu-trigger span:nth-of-type(3) {
		left:0;
        bottom: 0;
    }
    .active .menu-trigger {
        -webkit-transform: rotate(360deg);
        transform: rotate(360deg);
    }

    .active .menu-trigger span:nth-of-type(1) {
        -webkit-transform: translateY(14px) rotate(-45deg);
        transform: translateY(14px) rotate(-45deg);
		width:100%;
    }

    .active .menu-trigger span:nth-of-type(2) {
        -webkit-transform: translateY(0) rotate(45deg);
        transform: translateY(0) rotate(45deg);
		width:100%;
    }

    .active .menu-trigger span:nth-of-type(3) {
        opacity: 0;
    }

    .overlay {
        position: fixed;
        z-index: 3;
        top: 0;
        left: 0;
        display: none;
        width: 100%;
        height: 100%;
        background-color: rgba(77, 66, 62, 0.3);
    }

    .active .overlay {
        display: block;
    }
}





/* hamburger overlay end */