@charset "UTF-8";

@import url(//fonts.googleapis.com/css?family=Noto+Serif+JP);
@import url(//fonts.googleapis.com/css?family=Noto+Sans+JP);

/*============================================================
reset
============================================================*/

html,
body,
div,
span,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
abbr,
address,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
samp,
small,
strong,
sub,
sup,
var,
b,
i,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
figure,
footer,
header,
hgroup,
menu,
nav,
section,
time,
mark,
audio,
video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

address {
    font-style: normal;
}

article,
aside,
figure,
footer,
header,
hgroup,
nav,
section {
    display: block;
}

img,
object,
embed {
    vertical-align: bottom;
}

html {
    overflow-y: scroll;
}

ul {
    list-style: none;
}

blockquote,
q {
    quotes: none;
}

blockquote:before,
blockquote:after,
q:before,
q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
}

del {
    text-decoration: line-through;
}

abbr[title],
dfn[title] {
    border-bottom: 1px dotted #000;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

th {
    font-weight: bold;
}

td {
    font-weight: normal;
    vertical-align: top;
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 25px 0;
    padding: 0;
}

input,
select {
    vertical-align: middle;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    white-space: pre-line;
    word-wrap: break-word;
}

input[type="radio"] {
    vertical-align: text-bottom;
}

input[type="checkbox"] {
    vertical-align: bottom;
    *vertical-align: baseline;
}

select,
input,
textarea {
    font: 99% sans-serif;
}

table {
    font-size: inherit;
    font: 100%;
}

a:hover,
a:active {
    outline: none;
}

strong,
th {
    font-weight: bold;
}

td,
td img {
    vertical-align: top;
}

sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

pre,
code,
kbd,
samp {
    font-family: monospace, sans-serif;
}

label,
input[type=button],
input[type=submit],
button {
    cursor: pointer;
}

button,
input,
select,
textarea {
    margin: 0;
}

button {
    width: auto;
    overflow: visible;
}

.clear:before,
.clear:after {
    content: "\0020";
    display: block;
    height: 0;
    overflow: hidden;
}

.clear:after {
    clear: both;
}

.clear {
    zoom: 1;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}

/*============================================================
base
============================================================*/
html {
    scroll-behavior: smooth;
}

body {
    min-width: 1100px;
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: normal;
    color: #333;
    background: #fff;
    position: relative;

    font-family: 'Noto Serif JP', sans-serif;
    font-feature-settings: 'palt' 1;
}

.mac body {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.windows body p {
    transform: rotate(0.001deg);
}

main {
    display: block;
}

h1,
h2,
h3,
h4,
h5,
th {
    font-weight: 400;
}

p,
li,
dd,
td {
    text-align: justify;
    text-justify: inter-ideograph;
}

li {
    list-style: none;
}

a {
    color: #007bff;
    text-decoration: underline;
    outline: none;
    -webkit-font-smoothing: antialiased
}

a:hover {
    text-decoration: none;
}

a:hover,
button:hover {
    opacity: 80% !important;
}


img {
    image-rendering: -webkit-optimize-contrast;
    max-width: 100%;
    height: auto;
}

.object-fit-img img {
    max-width: 100%;
    height: auto;
    object-fit: cover;
}

/* IE用ビューポート設定 */
@-ms-viewport {
    width: auto !important;
    initial-scale: 1 !important;
}

@viewport {
    width: device-width !important;
    initial-scale: 1 !important;
}

/* iOS初期仕様解除
input {
  -webkit-appearance: none;
  border-radius: 0;
} */


/* テキストハイライト */
*::selection {}

*::-moz-selection {}

button {
    padding: 0;
    border-width: 0;
    background-color: transparent;
}

.inner {
    padding: 30px 0;
}

.hide {
    display: none;
}

.show {
    display: block;
}

a:hover,
button:hover {
    opacity: 80%;
}


.error_box {
    border: 1px solid #ff5126;
    background: #FADBDA;
    border-radius: 10px;
    padding: 5px 10px;
    margin: 10px 0;
}

.error_box a {
    color: #ff5126;
    text-decoration: underline;
}


.right {
    text-align: right !important;
}

.left {
    text-align: left !important;
}

.center {
    text-align: center !important;
}

video::-webkit-media-controls-panel {
    /*background-image: none !important;*/
}

/*============================================================
============================================================*/
#wrapper {
    width: 100%;
    background-color: #fff;
}


footer {}



#copyright {
    text-align: center;
}

#content {

    padding: 0px 0 0 0;
}

.space-100 {
    min-height: 100px;
}

.space-50 {
    min-height: 50px;
}


#view_head_home {
    position: relative;

}

.view_head_page {
    position: relative;
}

#home_head_image {
    text-align: right;
}

.page_head_image {
    text-align: right;

}

#home_head_left {
    position: absolute;
    top: 120px;
    left: 0;
}

.page_head_left {
    position: absolute;
    top: 100px;
    left: 0;

}


.view_title {
    text-align: center;
}

.view_wrap {
    width: 1170px;
    margin: 0 auto;

}


#home_main {}

#home_logo {
    position: relative;
    width: 100%;
    height: 400px;
    text-align: center;
}

#home_logo>div {
    position: absolute;
    left: 0;
    right: 0;
    top: 80px;
    bottom: 0;
    margin: auto;
}

#home_logo>img {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    width: 300px;
    height: 300px;
    animation: bound-anim 1.2s;
}

@keyframes bound-anim {

    0%,
    100% {
        top: 0;
        transform: scale(1);
    }

    30% {
        top: -60%;
        transform: scale(0.96, 1.04);
    }

    60% {
        transform: scale(1);
    }

    90% {
        top: 0;
        transform: scale(1.15, 0.9);
    }
}

/*
.shadow{
    position: absolute;
    left: 0;
    right: 0;
    top:0;
    bottom: -375px;
    margin: auto;
    width: 200px;
    height: 30px;
    border-radius: 50%;
    background: #342d1a;
    filter: blur(6px);
    opacity:0.3;
    animation: shadow-anim 1.2s;
}

@keyframes shadow-anim {
    0%,100%  {transform: scale(1);filter: blur(6px);}
    30% {transform: scale(1.6,1);filter: blur(8px);}
}

*/

#home_main h2 {
    display: none;
}

#home_menu {
    width: 100%;
    height: 200px;
    position: relative;

}


.home_menu_button {
    position: absolute;
    width: 200px;
    height: 200px;
}

.home_menu_button img {
    width: 100%;
    height: 100%;
}

#home_menu_bento {
    top: -150px;
    left: 30vw;
}

#home_menu_shisyu {
    top: -190px;
    right: 30vw;
}

#home_menu_kome {
    top: -190px;
    left: 30vw;
}

#home_menu_instagram {
    top: -50px;
    right: 35vw;
    width: 150px;
    height: 150px;
}


#home_description {
    background: #333;
    padding: 50px 50px;
    color: #fff;
    font-size: 35px;
    text-align: left;

}

#home_description h2 {
    line-height: 180%;
}

#home_description h2>span {
    display: block;
}


#home_description p {
    padding: 20px 0 0 0;
    text-align: center;
    color: #ffffcc;
}

.view_page {
    width: 960px;
    margin: auto;
}

.view_page h2 {
    text-align: center;
    padding: 80px 0 20px 0;
}

.view_page h3 {
    text-align: center;
    padding: 40px 0 20px 0;
    font-size: 30px;
    font-weight: bold;
    line-height: 180%;
}

.slider img {
    width: 100%;
}

#shisyu_video {
    width: 100%;
}

.vsc-controller {
    display: none;
}



#home_bento_image {
    height: 780px;
}

#home_shisyu_video {
    height: 1190px;
}

#home_shisyu_image {
    height: 780px;
}

#home_shisyu_list {
    padding-bottom: 20px;
}


#home_shisyu_list li {
    text-align: center;
    font-size: 20px;
}



#home_kome {
    padding-bottom: 50px;
}

#home_kome p {
    font-size: 20px;
    text-align: center;

}


.view {
    padding: 50px 0 50px 0;
}



.view_obi {
    width: 100%;
    padding: 50px 0;
    margin: 30px 0;
}


.view_obi .view_wrap {
    width: 960px;
}


#home_aboutus {
    margin-bottom: 0;
    background: #fff;
    text-align: center;
    font-size: 18px;
}


#home_aboutus dd,
#home_aboutus dt {
    text-align: center;

}

#home_aboutus>.view_wrap {}


#home_aboutus h3>span {
    font-size: 70%;
}


#home_aboutus h3 img {
    padding-bottom: 15px;

}

.detail_button {
    width: 100%;
    text-align: center;
    margin: 30px 0;
}

#home_aboutus h3 {
    font-size: 28px;
    font-weight: bold;
    padding-bottom: 30px;
}

#home_aboutus .col_image {
    padding-top: 30px;
}

.col_five {
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
}

#home_aboutus .col_left .col_text h3 {
    text-align: right;
}

#home_aboutus .col_right .col_text .detail_button {
    text-align: left;
}

#home_aboutus .col_left .col_text .detail_button {
    text-align: right;
}

#home_inquiry {

    width: 960px;
}

#home_inquiry .col_left .col_text .detail_button {
    text-align: right;
}

#home_inquiry .col_right .col_text .detail_button {
    text-align: left;
}



.detail_button img {
    width: 175px;
}

#home_inquiry h3 {
    font-size: 28px;
    font-weight: bold;
    padding-bottom: 15px;

}

#home_inquiry .col_text h3 {
    padding-bottom: 35px;

}

#home_inquiry dt {
    text-align: center;
    font-size: 20px;
}


.form_page_wrap {
    width: 600px;
    margin: 0 auto;
    padding: 0 0 50px 0;
}


.form_page_wrap input[type=text],
.form_page_wrap input[type=email],
.form_page_wrap input[type=tel],
.form_page_wrap select {
    width: 100%;
    border: 1px solid #666;
    border-radius: 10px;
    margin: 5px;
    height: 40px;
    padding: 3px 5px;
    -webkit-appearance: auto;
}


.form_page_wrap input[type=radio],
.form_page_wrap input[type=checkbox] {
    -webkit-appearance: auto;
    vertical-align: middle;
    margin: 0 10px 0 20px;
}


.form_page_wrap input[type=radio]+label,
.form_page_wrap input[type=checkbox]+label {}

.form_page_wrap textarea {
    width: 100%;
    margin: 5px;
    padding: 3px 5px;
    border: 1px solid #666;
    border-radius: 10px;
    min-height: 160px;
}


.form_page_wrap h2 {
    padding: 60px 0 20px 0;
    font-weight: bold;
    text-align: left;
    color: #ff5126;
}


.form_page_wrap h3 {
    padding: 10px 0 0 0;
}

.form_page_wrap button,
.button>a {
    width: 300px;
    margin: 20px auto;
    color: white;
    font-size: 20px;
    text-align: center;
    background: #342d1a;
    border-radius: 20px;
    line-height: 50px;
    display: block;
    text-decoration: none;
}


.button>a {
    width: 400px;
    margin-top: 40px;
}