/*
Theme Name: Cocoon Child
Theme URI: https://wp-cocoon.com/
Template: cocoon-master
Author: わいひら
Author URI: https://nelog.jp/
Description: SEO・高速化・モバイルファースト最適化済みの無料テーマ。
Tags: two-columns,left-sidebar,right-sidebar
Version: 2.7.8.1728805815
Updated: 2024-10-13 16:50:15

*/
/*--------------------------------共通--------------------------------*/
@font-face {
  font-family: 'HarenoSoraMincho';
  src:  url('https://yadorigi.b-tinkerbell.com/wp-content/uploads/2024/10/Harenosora.otf') format('opentype');
  font-weight: normal;
  font-style: normal;
}
body {
    font-family: 'HarenoSoraMincho', sans-serif;
}
.article {
	margin: 0 !important;
}
.home .entry-header,.entry-footer,.date-tags {
	display: none;
}
.content {
	overflow: hidden;
}
.content,.main,.entry-content {
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}
.wrap {
	width: 100%;
}
img {
	width: 100%;
	height: 100%;
	vertical-align: top;
}
p {
	font-size: clamp(14px, 2vw, 18px) !important;
}
.video-container, .instagram-container, .facebook-container {
	max-width: none !important;
}
.center {
	text-align: center;
}
.article h2, .article h3, .article h4, .article h5, .article h6 {
	background: transparent;
	border: 0;
}
.sp_on {
	display: none;
}
.mb-50 {
	margin-bottom: 50px !important;
}
.mb-0 {
	margin-bottom: 0 !important;
}
/*---------------------------------header--------------------------------*/
.header_logo {
	text-align: center;
}
.header_logo img {
	max-width: 290px;
}
#header-container {
	background: rgba(22, 39, 3, 0);
}
.header-container {
    width: 100%;
	position: fixed;
	top:0;
	left:0;
	z-index: 1;
}
.gt_switcher_wrapper {
	top: 3% !important;
}
/* hamburger(ハンバーガーアイコン)
=================================== */
.hamburger {
    position: absolute;
    right: 15px;
    top: 15px;
    width: 55px;
    height: 55px;
    cursor: pointer;
    z-index: 300;
    padding: 20px;
    border-radius: 50%;
}

.hamburger__line {
    position: absolute;
    width: 35px;
    height: 3px;
    right: 10px;
    background-color: #fff;
    transition: all 0.5s;
}

.hamburger__line--1 {
    top: 13px;
}

.hamburger__line--2 {
    top: 25px;
}

.hamburger__line--3 {
    top: 37px;
}

.sp_inner {
    margin-top: 80px;
    padding: 10px;
    text-align: center;
}

.sp_inner img {
    max-width: 400px;
    width: 80%;
}

.sp_inner ul {
    list-style: none;
    padding-left: 20px;
    text-align: left !important;
    margin-top: 50px;
}

.sp_inner ul li {
    font-size: 20px;
    margin: 10px;
}

.sp_inner ul li a {
    text-decoration: none;
    color: #fff;
}

.sp_inner ul .header_contact {
    margin-top: 30px;
    padding: 0;
    text-align: center;
}

.sp_kamon {
    position: absolute;
    bottom: 0;
    right: 0;
    width: 150%;
}

/*ハンバーガーがクリックされたら*/
.open .hamburger__line--1 {
    transform: rotate(-45deg);
    top: 18px;
    background: #fff
}

.open .hamburger__line--2 {
    opacity: 0;
}

.open .hamburger__line--3 {
    transform: rotate(45deg);
    top: 18px;
    background: #fff
}

/* 
sp-nav(ナビ)
=================================== */
.sp-nav {
    position: fixed;
    right: -100%;
    /*ハンバーガーがクリックされる前はWindow右側に隠す*/
    top: 0;
    width: 30%;
    /* 出てくるスライドメニューの幅 */
    height: 100vh;
    background-color: #162703;
    transition: all 0.5s;
    z-index: 200;
    overflow-y: auto;
    /* メニューが多くなったらスクロールできるように */
}

/*ハンバーガーがクリックされたら右からスライド*/
.open .sp-nav {
    right: 0;
}

/* black-bg(ハンバーガーメニュー解除用bg)
=================================== */
.black-bg {
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 5;
    background-color: #000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s;
    cursor: pointer;
    z-index: 100;
}

/*ハンバーガーメニューが開いたら表示*/
.open .black-bg {
    opacity: 0.3;
    visibility: visible;
}
/*---------------------------------main-------------------------------*/
.top_content {
	width: 100%;
	height: 100vh;
	position: relative;
	background-color: #162703;
	color: #fff;
	display: flex;
	justify-content: center;
	align-items: center;
	margin: 0 auto;
}
.main_title {
	display: none;
}

.top_content_inner {
	width: 100%;
	max-width: 1300px; /* 最大幅を制限 */
	padding: 0 2%;
	position: relative;
    z-index: 3;
}
.top_content_inner_flex {
	    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.top_content_inner_left, .top_content_inner_right {
	width: 45%;
	position: relative;
}

.top_content_inner_right_slider {
  width: clamp(250px, 40vw, 500px);
  height: clamp(250px, 40vw, 500px) !important;
  overflow: hidden;
  border-radius: 50%; /* 丸型にする */
  position: relative; /* Vegasが画像を正しく表示するためにpositionをrelativeに */
}

.vegas-container {
  border-radius: 50%; /* Vegasスライダーも丸型にする */
  overflow: hidden;   /* 丸型からはみ出さないように */
  width: clamp(250px, 40vw, 500px);
  height: clamp(250px, 40vw, 500px);
  position: absolute; /* スライダーが正しく表示されるように */
  top: 0;
  left: 0;
}
.vegas-wrapper {
    opacity: 0; /* 透明にして見えなくする */
    z-index: -1; /* 他の要素の背面に移動 */
}
.top_content_inner_right_slider img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.top_content_inner_left_text {
	line-height: 1.8;
    font-size: clamp(14px, 2vw, 24px) !important;
}
.top_content_bg {
    position: absolute;
    top: 0%;
    left: -2%;
    width: 700px;
    mix-blend-mode: screen;
}
.top_content_right_slider_bg {
	position: absolute;
    top: 52%;
    left: 43%;
    transform: translate(-50%, -50%);
    width: clamp(300px, 51vw, 650px);
    height: clamp(300px, 48vw, 600px);
}
/*---------------------------------content02---------------------------------*/
.content02 {
	background: url(https://yadorigi.b-tinkerbell.com/wp-content/uploads/2024/10/content01_bg-scaled.jpeg) no-repeat;
	color: #fff;
	padding: 50px;
	position: relative;
	margin: 0;
}
.content02_inner {
	max-width: 1200px;
	margin: 0 auto;
}
.content02_text {
	width: 80%;
	margin: 150px 0 80px 5%;
	padding-right: 30px;
    border-right: 1px solid #fff;
	position: relative;
}
.content02_text:before {
    content: "ヤドリギとは";
    position: absolute;
    top: -10%;
    right: -12%;
    writing-mode: vertical-rl;
    text-orientation: mixed;
    font-size: 40px !important;
    letter-spacing: 0.6em !important;
    margin-top: 35px;
}

.content02_sub_tit {
	line-height: 2 !important;
    text-align: end;
    font-size: clamp(20px, 3vw, 30px) !important;
}
.content02_inner p {
	line-height: 2.2;
}
.content02_bg01{
	position: absolute;
    top: -140px;
    left: -2%;
    z-index: 2;
    max-width: 500px;
    width: 35%;
}
.content02_bg02 {
	position: absolute;
    top: -105px;
    left: 50%;
    transform: translate(-50%, 0);
    width: 45%;
    max-width: 400px;
}
/*---------------------------------content03---------------------------------*/
.content03,.content05 {
	position: relative;
	margin: 0;
}
.chef_content {
	max-width: 600px;
	margin: 0 auto;
	width: 90%;
}
.chef_content figure {
	    width: 350px;
    margin: 0 auto;
}
.chef_content_title {
	margin: -40px 0 0 0;
}
/*---------------------------------content04---------------------------------*/
.content04 {
	background: #EBE4D9;
	padding: 80px 0;
	margin: 0;
}
.menu_box {
	max-width: 1200px;
	padding: 50px 0;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    align-items: center;
}
.menu_box_left,
.menu_box_right {
	width: 47%;
	padding: 2%;
}
.menu_box_left h2,.menu_box_right h2 {
	margin: 0 0 20px !important;
    font-size: clamp(20px, 3vw, 36px) !important;
    text-align: center;
    border-bottom: 2px solid #573C09;
    padding: 15px !important;
}
.menu_box_left p,.menu_box_right p {
	line-height: 3;
}
.rotate {
	transform: rotate(45deg);
}

/*---------------------------------content06---------------------------------*/
.content06 {
	margin: 0;
	padding: 80px 0;
	background: #241501;
	color: #fff;
	position: relative;
}
.content06 h2 {
	line-height: 2 !important;
	position: relative;
	z-index: 2;
}
.content06_inner {
	width: 80%;
	margin: 0 auto;
	position: relative;
	z-index: 2;
}
.content06_inner p {
	width: 60%;
    margin: 0 auto;
	line-height: 3;
}
.dog_steps {
	width: 150px;
	position: absolute;
}
.dog_steps._1 {
	top: 0;
	left: 0;
	top: 0;
    left: 20%;
    transform: rotate(-21deg);
}
.dog_steps._2 {
	right: 1%;
    bottom: 10%;
    transform: rotate(24deg);
}
.gallery_tit {
	margin: 80px auto 0;
    font-size: clamp(24px, 3vw, 40px) !important;
    border-bottom: 2px solid #fff !important;
    position: relative;
    z-index: 2;
    width: 60%;
}
/*---------------------------------content07---------------------------------*/
.content07,.page-id-107 .container {
	background: url(https://yadorigi.b-tinkerbell.com/wp-content/uploads/2024/10/content01_bg-scaled.jpeg);
	color: #fff;
	padding: 50px 20px;
	position: relative;
	margin: 0;
}
.page-id-107 .main {
	background: transparent !important;
	margin: 100px auto !important;
}
.event_img {
	width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}
.event_list {
	margin: 80px auto;
    padding: 50px 20px;
    max-width: 1000px;
    background: rgba(0, 0, 0, 0.5);
}
.event_list h2 {
	font-size: clamp(24px, 3vw, 30px) !important;
}
.event_box {
	display: flex;
	justify-content: center;
}
.event_box_left,.event_box_right {
	width: 47%;
}
.event_box_left {
	padding: 10px;
}
.event_box_right {
	padding: 20px;
}
.event_box_right h3 {
    padding: 0 0 20px 0 !important;
    margin-bottom: 15px !important;
    border-bottom: 1px solid #fff !important;
}
.event_box_right p {
	line-height: 2.5;
}
.event_under {
    max-width: 750px;
    margin: 50px auto;
    padding: 20px;
	line-height: 3;
}
/*---------------------------------access---------------------------------*/
.access {
    display: flex;
    position: relative;
    z-index: 1;
	margin: 0;
}

.access_right,
.access_left {
    width: 50%;
}

.access_left {
    background: #EBE4D9;
    padding: 4%;
}

.access_left h3 {
	margin: 0 0 20px !important;
    padding: 0 !important;
    font-size: 28px;
    font-weight: 100;
}

.access_left h4 {
	margin: 0 !important;
    padding: 0 !important;
}
.add_small {
	font-size: 15px !important;
}
/*---------------------------------footer--------------------------------*/
.footer {
	margin: 0;
}
.footer-left,.footer-right {
	display: none;
}
.footer-center {
	width: 100%;
}
.footer_logo {
	max-width: 400px;
    margin: 0 auto;
}
.footer_menu ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    padding: 0 !important;
    list-style: none;
}
.footer_menu ul li {
	margin: 10px;
}
.footer_menu ul li a {
	text-decoration: none;
}
.footer_menu ul li a:hover {
	border-bottom: 1px solid #fff;
}

/*------css slider --------*/
.slideshow_content {
    width: 400px;
    height: auto;
}

/* スライドレールの枠 */
.slider_wrap {
    overflow: hidden;
    display: flex;
    align-items: center;
    height: auto;
    margin: 50px auto;
	position: relative;
    z-index: 2;
}

/* contentをまとめたスライドブロック */
.slideshow {
	padding-left: 0 !important;
    list-style: none;
    display: flex;
    -webkit-animation: loop-slide 40s infinite linear 1s both;
    animation: loop-slide 40s infinite linear 1s both;
}

@-webkit-keyframes loop-slide {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

@keyframes loop-slide {
    from {
        transform: translateX(0);
    }

    to {
        transform: translateX(-100%);
    }
}

/*------css slider ここまで --------*/

/*=========================
　　　　お問い合わせ
===========================*/
.cont-form {
	max-width: 800px;
	margin: 0 auto;
}
table tr:nth-of-type(2n+1) {
    background-color: transparent !important;
}

table:not(.has-border-color) :where(th, td) {
    border: 0;
}

.cont-form {
    margin: 0 auto;
}

.form-hissu,
.form-nini {
    display: block;
    text-align: center;
    color: #FFF;
    width: 30px;
    font-size: 11px;
    margin: auto;
}

.form-hissu {
    background: transparent;
}

.form-nini {
    background: transparent;
}

.form-btn {
    text-align: center;
}

.form-btn-font-o {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
    font-size: 16px;
    display: inline-block;
    text-align: center;
    border: 1px solid #000;
    border-radius: 15px;
    margin: 0 auto;
    width: 270px;
    height: 60px;
    background: none;
    color: #000;
}

.form-btn-font-o:hover {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
    background: #241501;
    color: #FFF;
}

.form-btn-font-g {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
    font-size: 16px;
    display: inline-block;
    text-align: center;
    border: 1px solid #000;
    border-radius: 15px;
    margin: 0 auto;
    width: 270px;
    height: 60px;
    background: none;
}

.form-btn-font-g:hover {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: all .3s;
    transition: all .3s;
    background: #241501;
    color: #FFF;
}

.form-bikou {
    width: 100%;
}

.form-btn {
    margin-bottom: 15px;
}

.cont-form table {
    margin: 20px 0;
    width: 100%;
    border-spacing: 0 10px;
}

.cont-form th,
.cont-form td {
    padding: 15px 1% 10px 1%;
	 background: transparent;
}

.cont-form th {
    width: 220px;
    font-weight: normal;
    text-align: left;
}

.cont-form table input,
select,
textarea {
    border-radius: 0;
    background: #FFF;
    border: solid 1px #333333;
    padding: 9px 14px 9px 14px;
    box-sizing: border-box;
    width: 100%;
}

.form_s {
    width: 70px !important;
}

.form_l {
    height: 200px;
}

.cont-form table input[type=radio] {
    width: auto;
}

.cont-form table input[type=checkbox] {
    width: auto;
}

.cont-form table input[type=file] {
    width: auto;
}

.cont-form table select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

.cont-form table select::-ms-expand {
    display: none;
}

.hissu_table {
    text-align: center;
    width: 6%;
    padding: 5px 0 5px 1% !important;
}

.cont-form table select {
    background: #FFF url(img/arrow.svg) 98% center no-repeat;
}

.privacy_btn a {
    display: block;
    margin-bottom: 10px;
    padding: 5px 0;
    text-align: center;
    background: #F1F1F1;
}

.privacy_btn a:hover {
    background: #241501;
}

.ui-datepicker .ui-datepicker-title select {
    padding: 0 !important;
}

.contact_caution {
    margin: auto;
    width: 860px;
    padding: 25px 65px;
    font-size: 13px;
    background: #F7F7F7;
}

.contact_tel,
.contact_info_text {
    vertical-align: middle;
}

.cont_questionnaire {
    margin: 0;
}

.cont_questionnaire th {
    width: 120px;
    background: none;
    vertical-align: top;
}

.mwform-checkbox-field label {
    display: inline-block;
}

.mw_wp_form .horizontal-item+.horizontal-item {
    margin-left: 0 !important;
}
.mw_wp_form_complete {
	    max-width: 800px;
    padding: 20px;
    margin: 0 auto;
}
/*---------------------------------レスポンシブ--------------------------------*/
@media screen and (max-width: 900px) {
	.header_logo img {
		max-width: 200px;
	}
	.top_content_inner_flex {
		display: block;
		margin: 0 auto;
		width: 80%;
	}
	.top_content_inner_left, .top_content_inner_right {
		width: 100%;
	}
	.top_content_inner_left_text {
		font-size: clamp(15px, 2vw, 24px) !important;
	}
	.vegas-container {
		width: clamp(250px, 55vw, 500px);
		left: 12%;
	}
	.top_content_inner_right_slider {
		height: clamp(250px, 55vw, 500px) !important;
	}
	.top_content_right_slider_bg {
		top: 52%;
		left: 47%;
		transform: translate(-50%, -50%);
		width: clamp(300px, 73vw, 650px);
		height: clamp(300px, 69vw, 600px);
	}
	.gt_switcher_wrapper {
		right: 13%;
	}
	.content02_bg01 {
		top: -18px;
		left: -2%;
		width: 40%;
	}
	.content02_bg02 {
		top: 30px;
		width: 25%;
	}
	.content02_sub_tit {
		font-size: clamp(20px, 2.5vw, 30px) !important;
	}
	.content02_text:before {
		right: -18%;
	}
	.menu_box {
		flex-direction: column-reverse;
	}
	.menu_box.reverse {
		flex-direction: column !important;
	}
	.menu_box_left, .menu_box_right {
		width: 80%;
	}
	.event_box_right {
		width: 50%;
	}
}
@media screen and (max-width: 600px) {
	.top_content {
		height: 80vh;
	}
	.content02 {
		padding: 10px;
	}
}
@media screen and (max-width: 480px) {
	.sp_on {
		display: block;
	}
	.sp-nav {
		width: 80%;
	}
	.header-in .logo {
		max-width: 250px;
	}
	.access {
        display: block;
    }

    .access_right,
    .access_left {
        width: 100%;
    }

    .access_right {
        height: 500px;
    }
	.header_logo img {
		max-width: 200px;
	}
	.gt_switcher_wrapper {
		top: auto !important;
		left: 3%;
		bottom: 2% !important;
	}
	.footer-bottom {
		margin-bottom: 50px;
	}
	.content02_bg01 {
        top: -55px;
        width: 50%;
    }
	.content02_bg02 {
        top: 14px;
        width: 38%;
		left: 64%;
    }
	.content02_text {
		margin: 160px 0 80px 3%;
		padding-right: 10px;
	}
	.content02_text:before {
		right: -23%;
		top: -7%;
	}
	.menu_box_left, .menu_box_right {
        width: 95%;
    }
	.content04 {
		padding:0;
	}
	.event_box {
		display: block;
	}
	.event_box_left,.event_box_right {
		width: 100%;
	}
	cont-form {
        width: 100%;
    }

    .contact_caution {
        width: 100%;
        padding: 25px;
    }

    .contact_info_text {
        margin-top: 10px;
        display: block;
    }

    .cont-form th,
    .cont-form td {
        display: block;
        padding: 5px 2%;
        text-align: left;
        border: none;
    }

    .cont-form th {
        margin-right: 5px;
    }

    .cont-form td {
        padding-top: 10px;
    }

    .mw_wp_form_preview .cont-form td {
        padding-top: 5px;
    }

    .contact-form p {
        float: none;
        display: inline-block;
    }

    .contact_item {
        display: inline !important;
    }

    .hissu_table {
        display: inline !important;
        text-indent: 0 !important;
        border: none !important;
    }

    .form-hissu,
    .form-nini {
        display: inline-block;
        margin-bottom: 5px;
    }
	.slideshow_content {
		width: 250px;
	}
	.content06_inner p {
		width: 90%;
	}
}
@media screen and (max-width: 390px) {
    .top_content {
        height: 100vh;
    }
	.vegas-container {
        left: 8%;
    }
	.content02_sub_tit {
        font-size: clamp(17px, 2.5vw, 30px) !important;
    }
	.content02_text {
		margin: 160px 0 30px 3%;
	}
}