@charset "utf-8";
/*
Theme Name: Casa de la Luna
Description: 
Author: Designmarch
Version: 1.0
*/

/*===========
reset_css
===========*/
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, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
/*    font-size: 100%;*/
/*    font-style: normal;*/
/*    font-weight: normal;*/
    vertical-align: baseline;
    background: transparent;
}
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section,p {
    display: block;
}
body {
    line-height: 1;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
img {
    max-width: 100%;
    height: auto;
    border: none;
    vertical-align: middle;
}
b,
strong,
.strong {
font-weight: bold!important;
}

/*======================
basic_setting
======================*/
html {
	font-size: 62.5%;
	font-size: .625vw;
	letter-spacing: 0.07em;
	overflow-y: scroll;
}
body{
	font-family: "メイリオ","Meiryo","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","MS Pゴシック","MS PGothic",sans-serif;
	color: #170C03;
	line-height: 2;
	letter-spacing: 0.05em;
}

a {
	color: #050505;
	text-decoration: none;
}
img {
    max-width: 100%;
    height: auto;
    border: none;
    vertical-align: middle;
}
iframe {
    vertical-align: bottom;
}



/*======================
link_hover色々
======================*/

/*透過する*/
.deco a{
/*	transition: 0.5s ease;*/
}
.deco a:hover{
	opacity: 0.8;
}

/*下線がついている→消える*/
.deco01 a{
	text-decoration: underline;
}
.deco01 a:hover{
	text-decoration: none;
}



/*ゆっくり透過する*/
.deco02 a{
	transition: all .3s;
}
.deco02 a:hover{
	opacity: 0.5;
}

/*下線が無い→下線がつく*/
.deco03 a:hover{
	text-decoration-line: underline;
}

/*ふわっと浮き上がる（ドロップシャドウ）*/
.deco-shadow a{
	transition: all .3s;
}
.deco-shadow a:hover{
	box-shadow: 0px 6px 22px 0px rgba(185,185,185,0.6);
	transform: translateY(-6px);
}

/*ゆっくり色がつく*/
.deco-color a{
	transition: all .3s;
}
.deco-color a:hover{
	color: #B8B8B8;
}

/*青文字下線つき→下線が消える*/
.fo-link {
    color: #0065EE;
	text-decoration: underline;
}
.fo-link:hover{
	text-decoration: none;
}

.link a{
	position: relative;
	padding-right: 24px;
}
/*.link a::after{
	content: "";
	position: absolute;
	right: 0;
	top: 3px;
	display: inline-block;
	background-image: url("images/icon/link.svg");
	width: 14px;
	height: 14px;
	background-repeat: no-repeat;
	background-size: contain;
}*/




/*======================
header
======================*/
.header{
	width: 100%;
	padding-top: 20px;
	padding-bottom: 20px;
	z-index: 999;
}
@media only screen and (max-width: 767px) {
	.header{
	width: 100%;
	padding-top: 10px;
	padding-bottom: 10px;
	z-index: 999;
		/*background-color: rgba(0,0,0,0.50);*/
}
}

/*======================
g_nav 
======================*/
.g_nav{
	width: 100%;
}
.g_nav .header_logo img{
    width: 260px;
	height: auto;
}
.g_nav ul{
	display: flex;
	justify-content: flex-end;
}
.g_nav ul li{
	width: 100%;
	text-align: center;
	line-height: 1;
}
.g_nav ul a{
	color: #000;
}
@media only screen and (max-width: 767px) {
.g_nav ul{
	justify-content: center;
}
.g_nav ul li{
	padding: 0 13px ;
}
}
/*======================
g_nav02 左右端
======================*/
.g_nav02{
	display: flex;
	justify-content:space-between;
	align-items: center;
	padding: 25px 80px;
	background-color:rgba(255,255,255,0.9);
}
.g_nav02 .header_logo a{
	display: block;
}
.g_nav02 .header_logo img{
	width: 152px;
	height: auto;
}


.header_menu_list{
	display: flex;
	justify-content: flex-end;
}
.header_menu_list > li{
/*	margin: 0 0 0 48px;*/
}
.header_menu_list > li > a{
	display: block;
	font-size: 12px;
	text-align: center;
}
.header_menu_list > li:last-child  > a{
	margin-right: 0;
}
.header_menu_list > li:last-of-type{
	position: relative;
}
.header_menu_list > li:last-of-type::before{
	content: "";
	position: absolute;
	width: 1px;
	height: 12px;
	background-color: #000;
	left: -24px;
	bottom: 6px;
}

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


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


}

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

}

/*======================
g_nav03 真ん中
======================*/

.g_nav03{
height: 80px;
}

.g_nav03 .header_menu_list03{
	display: flex;
	justify-content: center;
	align-items: center;
	height: 80px;
	font-family: 'Montserrat', sans-serif;
}
.g_nav03 .header_menu_list03 li{
	font-size: 12px;
	letter-spacing: 2px;
	padding: 0 20px;
}
.g_nav03 .header_menu_list03 li a{
	color: #fff;
	font-weight: 400;
}

.header_menu_sns{
	margin-top: -51px;
	padding-right: 84px;
}
.header_menu_sns ul{
	display: flex;
	justify-content: flex-end;
}
.header_menu_sns li{
	padding: 0 16px;
}
.header_menu_sns .first::after{
	position: relative;
}
.header_menu_sns .first::after{
	content: "/";
	position: absolute;
    top: 50%;
    transform: translateY(-50%);
 font-size: 15px;
	color: #fff;
	padding-left: 13px;
}


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

}


/*======================
sticky-header
======================*/
.sticky-header{
  position: fixed;
  width: 100%;
  height: 80px;
  z-index: 999;
  transition: 0.5s;
  background-color: #fff;
box-shadow: 0px 0px 15px 0px rgba(0,0,0,10%);
}
.sticky-header .g_nav02 {
  max-width: 100%;
  min-width: 1000px;
  margin: 0 auto;
  line-height: 80px;
  overflow: hidden;
}
.sticky-header .g_nav02 img {
  width: 100px;
  height: auto;
  vertical-align: middle;
}
.sticky-header .g_nav02 .header_menu_list li{
	font-size: 1.3rem;
	padding: 0 20px;
}



/*======================
hamberger_menu
======================*/

body.fixed {
　width: 100%;
　height: 100%;
　position: fixed;
}

/*上に設置*/
	.header_sp{
	width: 100%;
	height: 80px;
		background-image: url("images/header_back.png");
	background-position: left;
	background-repeat: repeat-x;
	}

	.header_logo_sp{
		display: inline-block;
	}
	.header_logo_sp a{
		display: block;
	}
	.header_logo_sp img{
		width: 136px;
		height: auto;
	}
@media only screen and (max-width: 767px) {
		.header_sp{
    width: 100%;
	}
		.header_logo_sp img{
		width: 120px;
		height: auto;
	}
}

/*下に設置*/
.header_sp_btm{
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 1000;  
}
.header_sp_btm ul{
	display: flex;
	background-color: #FFFAF2;
}
.header_sp_btm ul li{
	width: 33.33333%;
	height: 70px;
	border-right: 1px solid #E2C59F;
	border-top: 1px solid #fff;
	text-align: center;
	font-size: 12px;
	position: relative;
	padding-top: 10px;
}
.header_sp_btm ul li:last-child{
	background-color: #E2C59F;
	border-right: none;
}
.sp-icon{
	width: 25px;
	height: 25px;
	line-height: 25px;
	font-size: 10px;
	text-align: center;
	background-color: #FFAF38;
	border-radius: 50px;
	color: #fff;
}

/*ハンバーガーメニュー*/
.sp-ham{
	cursor: pointer;
	width: 30px;
	height: 30px;
	position: fixed;
	top: 18px;
	right: 15px;
	z-index: 1000;
	border-radius: 50px;
}

.ham span{
	position: absolute;
	left: 15px;
	width: 20px;
	height: 1px;
	background-color: #fff;
	transition: all 0.3s;
	z-index: 999;
}
.ham .ham-ttl{
	height: 0;
	font-size: 12px;
	color: #000;
	position: absolute;
	top: -11px;
    left: 5px;
	letter-spacing: 2px;
}

.ham span:nth-of-type(1){
	top: 50%;
	left: 50%;
	transform: translate(-50%,-9px);
}
.ham span:nth-of-type(2){
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}
.ham span:nth-of-type(3){
	top: 50%;
	left:50%;
	transform: translate(-50%,7px);
}

.clicked .ham span:nth-of-type(1) {
	transform: translate(-50%,0) rotate(45deg);
	background-color: #170C03;
}
.clicked .ham span:nth-of-type(2) {
	opacity: 0;
}
.clicked .ham span:nth-of-type(3){
transform: translate(-50%,0) rotate(-45deg);
    background-color: #170C03;
}

.ham_menu{
	position: fixed;
	width: 100%;
	height: 100vh;
    top: 0;
	right: 0;
	background-color:#EBE9E4;
	z-index: 999;
	display: none;
	    padding: 90px 65px 50px;
		overflow: scroll;
	overflow-x: hidden;
    overflow-y: auto;
}

.clicked .ham_menu {
	display: block;
}

.ham_menu .ham_menu_list li{
	margin-bottom: 14px;
	border-bottom: 1px solid #A09376;
	position: relative;
}

.ham_menu .ham_menu_list li .blog{
	display: block;
	 font-family: 'Montserrat', sans-serif;
	width: 100%;
	font-size: 20px;
	font-weight: 600;
	color: #170C03;
	letter-spacing: 2px;
		padding: 16px 0;
}
.ham_menu .ham_menu_list li a{
	display: block;
	 font-family: 'Montserrat', sans-serif;
	width: 100%;
	font-size: 20px;
	font-weight: 600;
	color: #170C03;
	letter-spacing: 2px;
		padding: 16px 0;
}

.ham_menu .ham_menu_list li::after {
    content: "";
	display: inline-block;
	background-image: url( "images/icon/arrow_right_brown.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 8px;
	height: 13px;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
	transition: all .3s;
}


.ham_menu .ham_menu_list_sns ul{
	display: flex;
	justify-content: center;
}
.ham_menu .ham_menu_list_sns ul li:nth-child(2){
	margin-left: 20px;
}


@media only screen and (max-width: 767px) {
	.ham_menu{
	    padding: 60px 25px 50px;
}
		.ham_menu .ham_menu_list li .blog{
		font-size: 14px;
	}
	.ham_menu .ham_menu_list li a{
		font-size: 14px;
	}

}


/*ハンバーガーメニュー　インナー*/
.ham_menu .ham_inner {
	font-family: 'Mulish', sans-serif;
}
.ham_menu .ham_inner > span{
	width: 100%;
	display: inline-block;
	padding: 20px;
	font-weight: 700;
	font-size: 14px;
	color: #fff;
}
.ham_menu .ham_inner > ul{
	width: 100%;
	margin-top: 0!important;
	padding: 20px;
	padding-top: 0;
	border-top: none;
}
.ham_menu .ham_inner > ul > li{
border-bottom: none;
padding-bottom: 20px;
}
.ham_menu .ham_inner > ul > li:last-child{
padding-bottom: 0;
}
.ham_menu .ham_inner .inner_nav > li a{
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	padding: 0;
	padding-left: 2em;
	position: relative;
}
.ham_menu .ham_inner .inner_nav > li a::before{
	content: "";
	position: absolute;
	left: 6px;
    top: 10px;
	width: 8px;
	height: 2px;
	background-color: #fff;
	
}





/*======================
footer_nav
======================*/
.footer_nav li {
	margin-bottom: 10px;
}
.footer_nav li:last-child {
    margin-bottom: 0;
}
.footer_nav li::before{
     content: "";
	display: inline-block;
	background-image: url("images/share/arrow_right.png");
	background-size: contain;
	background-repeat: no-repeat;
	width: 10px;
	height: 10px;
	margin-right: 10px;
}

/*======================
footer_nav02
======================*/
.footer_nav02 ul{
	display: flex;
}
.footer_nav02 li{
	padding-right: 40px;
}
.footer_nav02 li:last-child{
	padding-right: 0;
}
.footer_nav02 li a{
	 font-family: 'Montserrat', sans-serif;
	letter-spacing: 2px;
	display: inline-block;
	font-size: 14px;
	color: #fff;
/*	line-height: 1;*/
	font-weight: 500;
	transition: .3s;
}
.footer_nav02  .blog{
	 font-family: 'Montserrat', sans-serif;
	letter-spacing: 2px;
	display: inline-block;
	font-size: 14px;
	color: #fff;

	font-weight: 500;
	transition: .3s;
}
/*.footer_nav02 li:last-child{
	border-right: none;
}*/
.footer_nav02 li a:hover{
	opacity: 0.5;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
.footer_nav02 .inner{
	display: flex;
	justify-content: center;
}
	.footer_nav02 ul{
	display: block;
}
	.footer_nav02 ul:nth-child(1){
	padding-left: 20px;
}
	.footer_nav02 ul:nth-child(2){
	padding-left: 40px;
}
		.footer_nav02 ul li{
			padding-right: 0;
			padding-bottom: 20px;
}
}
@media only screen and (max-width: 767px) {
	.footer_nav02 .inner{
	display: flex;
	justify-content: center;
}
	.footer_nav02 ul{
	display: block;
}
	.footer_nav02 ul:nth-child(1){
	padding-left: 20px;
}
	.footer_nav02 ul:nth-child(2){
	padding-left: 40px;
}
		.footer_nav02 ul li{
			padding-right: 0;
			padding-bottom: 26px;
}
/*		.footer_nav02 ul{
	display: block;
	padding-bottom: 20px;
	border-bottom: 1px solid #B8B8B8;
}
	.footer_nav02 li{
	padding: 0;
	border-right: none;
		border-bottom: 1px solid #fff;
		position: relative;
}
	.footer_nav02 li:first-child{
		border-top: 1px solid #fff;
	}
	.footer_nav02 li::after {
    content: "";
	display: inline-block;
	background-image: url( "images/icon/arrow_right_w.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 10px;
	height: 20px;
    position: absolute;
    right: 0;
    top: 50%;
	opacity: .6;
    transform: translateY(-50%);
	transition: all .3s;
}
		.footer_nav02 li a{
		display: block;
		padding: 20px 0;
			font-size: 14px;
	}*/
}

/*======================
footer_nav_sns
======================*/
.footer_nav_sns li {
	margin-bottom: 10px;
}
.footer_nav_sns li:last-child {
    margin-bottom: 0;
}
.footer_nav_sns > li > .tw::before{
     content: "";
	display: inline-block;
	background-image: url( "images/share/twitter.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 30px;
	height: 30px;
	margin-right: 10px;
	vertical-align: middle;
}
.footer_nav_sns > li > .fb::before{
     content: "";
	display: inline-block;
	background-image: url( "images/share/facebook.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 30px;
	height: 30px;
	margin-right: 10px;
	vertical-align: middle;
}
.footer_nav_sns > li > .insta::before{
     content: "";
	display: inline-block;
	background-image: url( "images/share/insta.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 30px;
	height: 30px;
	margin-right: 10px;
	vertical-align: middle;
}




/*======================
more-btn
======================*/
.more-btn a {
	font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-size: 20px;
	font-weight: 600;
    line-height: 1;
    color: #584A3E;
    background: #FFFDF9;
	padding: 30px 118px;
    text-decoration: none;
    display: inline-block;
    transition: .5s ease;
    position: relative;
    text-align: center;
    /*min-width: 340px;*/
    border: #4E4A41 solid 1px;
	border-radius: 14px;
	letter-spacing: 1.6px;
}
.more-btn a:after {
	content: "";
	display: inline-block;
	background-image: url( "images/icon/icon_arrow.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 8px;
	height: 13px;
    position: absolute;
    right: 40px;
    top: 50%;
    transform: translateY(-50%);
	transition: .5s;
}
.more-btn a:hover {
    color: #FFFDF9;
	background-color: #4E4A41;
}
.more-btn a:hover::after {
   content: "";
	background-image: url("images/icon/arrow_right_w.svg");
}


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

}

@media only screen and (max-width: 767px) {
.more-btn a {
    font-size: 16px;
    line-height: 2;
	padding: 22px 50px;
    width: 100%;
}
	.more-btn a:after {
    right: 20px;;
}
}


/*======================
more-btn_sub
======================*/
.more-btn_sub a {
	font-family: 'Noto Sans JP', sans-serif;
    font-size: 14px;
	font-weight: 500;
    line-height: 1;
    color: #35ADD3;
    background: #FFFFFF;
    padding: 20px 40px 20px 40px;
    text-decoration: none;
    display: inline-block;
    transition: .5s ease;
    position: relative;
    text-align: center;
    min-width: 100%;
    border: #35ADD3 solid 1px;
	border-radius: 50px;
	letter-spacing: 1.6px;
}
.more-btn_sub  a:after {
	content: "";
	display: inline-block;
	background-image: url("images/icon/arrow_right.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 10px;
	height: 12px;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
	transition: .5s;
}
.more-btn_sub a:hover {
    color: #fff;
	background-color: #35ADD3;
}
.more-btn_sub a:hover:after {
   content: "";
	display: inline-block;
	background-image: url("images/icon/arrow_right_w.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 10px;
	height: 12px;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}

/*======================
more-btn02
======================*/
.more-btn02{
		width: 480px;
	margin: 0 auto;
}
.more-btn02 a {
    font-size: 20px;
	font-weight: 500;
    line-height: 1;
    color: #35ADD3;
    background: #fff;
   padding: 34px 51px 34px 40px;
    text-decoration: none;
    display: block;
    transition: .5s ease;
    position: relative;
    text-align: center;
    min-width: 100%;
	height: 100%;
	border-radius: 6px;
	border:1px solid #35ADD3;
	width: 100%;
}
/*.more-btn02 a:hover {
    color: #060606;
	opacity: 0.8;
}*/
.more-btn02 a:after {
    content: "";
	display: inline-block;
	background-image: url( "images/icon/arrow_right.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 9px;
	height: 14px;
    position: absolute;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
	transition: all .3s;
}
.more-btn02 a:hover{
	background-color: #35ADD3;
	color: #fff;
}
.more-btn02 a:hover::after{
		background-image: url( "images/icon/arrow_right_w.svg");
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.more-btn02{
		width: 100%;
}
}
@media only screen and (max-width: 767px) {
	.more-btn02{
		width: 100%;
	margin: 0 auto;
}
	.more-btn02 a {
    font-size: 14px;
    line-height: 1.3;
    color: #35ADD3;
    background: #FFFFFF;
    padding:  34px 51px 34px 40px;
    text-decoration: none;
    display: inline-block;
    transition: .5s ease;
    position: relative;
    text-align: center;
	min-width: 100%;
}
	.more-btn02 a:after {
	width: 10px;
	height: 20px;
}
}

/*======================
ホバーで半分くるっと回転
======================*/
.more-btn-circle{
	align-items: center;
    border: 1px solid #333;
    border-radius: 46px;
	background-color: #fdfdfd;
    box-sizing: border-box;
    display: flex;
    justify-content: center;
    padding: 8px 10px;
	width: 170px;
	margin: 0 auto;
}
.btn-txt{
	overflow: hidden;
	height: 2em;
	color: #333;
}
.btn-txt span{
	display: block;
	line-height: 2em;
	transform: translateY(0);
	transition: transform 0.6s cubic-bezier(.8, 0, 0, 1);
}
.btn-txt:hover span{
	transform: translateY(-100%);
}
@media only screen and (max-width: 767px) {
	.more-btn-circle{
	width: 100%;
}
}


/*===========
saerch-btn
===========*/
.search-btn{
	    position: relative;
}
.search-btn  input[type="submit"]{
    line-height: 1;
    color: #333;
    background: #FFFFFF;
    padding: 14px 40px 14px 40px;
    text-decoration: none;
    display: inline-block;
    transition: .5s ease;

    text-align: center;
    min-width: 100%;
    border: #E86680 solid 2px;
	border-radius: 50px !important;
	cursor: pointer;
		    font-size: 12px;
	font-weight: 600!important;
		letter-spacing: 3px;
	
}
/*.search-btn span{
	    font-size: 12px;
	font-weight: 600;
		letter-spacing: 3px;
}*/
.search-btn::after {
	content: "";
	display: inline-block;
	background-image: url( "images/icon/ico-search.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 20px;
	height: 20px;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
	transition: .5s;
}
.search-btn input[type="submit"]:hover {
    color: #fff;
	background-color: #E86680;
}
.search-btn:hover::after {
   content: "";
	display: inline-block;
	background-image: url( "images/icon/ico-search-w.svg");
	background-size: contain;
	background-repeat: no-repeat;
	width: 20px;
	height: 20px;
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%);
}


/*===========
link-btn
===========*/
.link-btn span{
	padding-right: 20px;
}
.link-btn a {
    font-size: 1.5rem;
    line-height: 1;
    color: #060606;
    background: #FFFFFF;
    padding: 20px 40px 20px 40px;
    text-decoration: none;
    display: inline-block;
    transition: .5s ease;
    position: relative;
    text-align: center;
    min-width: 400px;
    border: #060606 solid 1px;
}



@media only screen and (max-width: 767px) {
	.link-btn a {
    font-size: 13px;
	font-weight: bold;
    line-height: 1;
    color: #060606;
    background: #FFFFFF;
    padding: 20px 40px 20px 40px;
    text-decoration: none;
    display: inline-block;
    transition: .5s ease;
    position: relative;
    text-align: center;
    min-width: 0;
	width: 100%;
    border: #060606 solid 1px;
}
}


/*===========
pankuzu
===========*/
.pankuzu span{
	vertical-align: top;
	font-size: 12px;
}
.pankuzu span img{
	width: 14px;
	height: auto;
}


/*======================
news_list
======================*/
.news_list{
	width: 100%;
	border-bottom: 1px solid #B9B9B9;
	position: relative;
}
.news_list a{
	display: flex;
	align-items: center;
	transition: all .3s;
	padding-left: 5px;
	padding-bottom: 30px;
	padding-top: 30px;
}
.news_day{
	padding-right: 120px;
}
.news_list a::after{
	content: "";
	position: absolute;
	display: inline-block;
	background-image: url("images/icon/arrow_right.svg");
	background-size: contain;
	background-repeat: no-repeat;
width: 10px;
    height: 16px;
    right: 10px;
    top: 45%;
	opacity: 0.6;
}
.news_list a:hover{
	opacity: 0.5;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
.news_day{
	padding-right: 60px;
}
}
@media only screen and (max-width: 767px) {
	.news_list{
		margin-bottom: 30px;
}
.news_list a{
	display: block;
	padding-top: 0;
}
	/*.news_list a::after{
		top: 28px;
	}*/

}

/*======================
news_list02
======================*/
.news_list02{
	display: grid;
	grid-template-columns: repeat(4,1fr);
	gap:40px;
}
.news_list02 .news_list_img img{
	border: 1px solid #BDBDBD;
    width: 260px;
    height: 226px;
    object-fit: cover;
}
.news_list02 a:hover .news_ttl{
	text-decoration: underline;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.news_list02{
	gap:20px;
}
	.news_list02 .news_list_img img{
    height: 148px;
}
}
@media only screen and (max-width: 767px) {
	.news_list02{
		width: 100%;
	display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	grid-template-columns: repeat(2,1fr);
	gap:20px;
}
	.news_list02 li{
		width: 46%;
	}
		.news_list02 .news_list_img img{
    height: 148px;
}
}


/*======================
news-single
======================*/
.news_article{
	padding-top: 60px;
    border-top: 1px solid #d8d8d8;
    padding-bottom: 60px;
    border-bottom: 1px solid #d8d8d8;
}
.news_article ul{
	list-style-position: inside;
}
@media only screen and (max-width: 767px) {
	.news_article iframe{
	width: 100%;
		height: 200px;
}
}


/*======================
back-triangle
======================*/
  .back::before{
 content:"";
  position: absolute;
  top: 0;
  left: 0;
z-index: -999;
  width: 0;
  height: 0;
  border-style: solid;
  /*三角形のサイズ。幅100vwでブラウザサイズいっぱい*/
  border-width: 0 0 500px 98vw ;
  /*transparentで余分な線を消す*/
  border-color: transparent  transparent  transparent #f1f1f1;
}
  .back02::before{
 content:"";
  position: absolute;
  bottom: 0;
  right: 0;
z-index: -999;
  width: 0;
  height: 0;
  border-style: solid;
  /*三角形のサイズ。幅100vwでブラウザサイズいっぱい*/
  border-width: 0 0 500px 98vw;
  /*transparentで余分な線を消す*/
  border-color: transparent transparent #f1f1f1 transparent; 
}
@media only screen and (max-width: 800px) {
.back::before{
 content:"";
  position: absolute;
  top: 0;
  left: 0;
z-index: -999;
  width: 0;
  height: 0;
  border-style: solid;
  /*三角形のサイズ。幅100vwでブラウザサイズいっぱい*/
  border-width: 0 0 150px 98vw ;
  /*transparentで余分な線を消す*/
  border-color: transparent  transparent  transparent #f1f1f1;
}
 .back02::before{
 content:"";
  position: absolute;
  bottom: 0;
  right: 0;
z-index: -999;
  width: 0;
  height: 0;
  border-style: solid;
  /*三角形のサイズ。幅100vwでブラウザサイズいっぱい*/
  border-width: 0 0 150px 98vw;
  /*transparentで余分な線を消す*/
  border-color: transparent transparent #f1f1f1 transparent; 
}
}

/*======================
under_ttl　見出しの後ろに横線
======================*/
.under_ttl h2{
	position: relative;
  display: inline-block;
}
.under_ttl h2::after{
	content: '';
  position: absolute;
  top: 50%;
	left: 120px;
  display: inline-block;
  width: 120px;
  height: 1px;
  background-color: #707070;
}

/*======================
under_ttl_btm　見出しの下に横線
======================*/
.under_ttl_btm h2{
	position: relative;
  display: inline-block;
}
.under_ttl_btm h2::after{
	content: '';
  position: absolute;
  bottom: -15px;
  left: 50%;
	transform: translateX(-50%);
  display: inline-block;
  width: 40px;
  height: 5px;
border-radius: 5px;
  background-color: #E2C59F;
}

/*======================
under_ttl_left　背景色ありの見出し・左端にボーダー
======================*/
.under_ttl_left{
	background-color: #FFFAF2;
	padding: 10px;
	padding-left: 20px;
	border-left: 7px solid #726048;
}

/*======================
under_ttl_circle　円形
======================*/
.under_ttl_circle{
	position: relative;
	padding-left: 1.5em;
	color: #726048;
}
.under_ttl_circle::before{
	content: "";
	position:  absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-color: #726048;
	width: 20px;
	height: 20px;
	border-radius: 50%;
}

/*======================
dl,dt,dd
======================*/
 .description{
	 font-family:'Mulish', "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic",sans-serif;
}
.description > dl{
	display: flex;
	width: 100%;
}
/*.description > dl:first-child{
	border-top: 1px solid #060606;
}*/
.description > dl > dt{
	width: 30%;
	padding: 20px 0;
	font-size: 14px;
	font-weight: 600;
}
.description > dl > dd{
	width: 70%;
	padding: 20px 0;
		font-size: 14px;
	font-weight: 600;
}
.description .link a{
	position: relative;
	padding-right: 24px;
	word-wrap: break-word;
}
 .link a .link_icon{
	margin-left: 5px;
}
 .link a .link_icon img{
	width: 14px;
	height: 14px;
}
/*.description .link a::after{
	content: "";
	position: absolute;
	right: 0;
	top: 3px;
	display: inline-block;
	background-image: url("images/icon/link.svg");
	width: 14px;
	height: 14px;
	background-repeat: no-repeat;
	background-size: contain;
}*/
@media only screen and (min-width: 768px) and (max-width: 1024px) {
	
}
@media only screen and (max-width: 767px) {
	.description{
	width: 100%;
	margin: 0 auto;
}
	.description > dl{
	display: block;
	width: 100%;
}
.description > dl > dt{
	width: 100%;
	padding: 20px 10px;
	border-right: none;
	background-color: #F7F7F7;
}
.description > dl > dd{
	width: 100%;
	padding: 20px 10px;

}
}


/*======================
table
======================*/
.table{
	width: 618px;
	margin: 0 auto;
}
.table tr{
	background-color: #EBE9E4;
}
.table tr:nth-child(even){
	background-color: #FFFDF9;
}
.table th{
	font-family: 'Noto Sans JP', sans-serif;
	width: 30%;
	padding: 14px 32px;
	color: #584A3E;
	font-size: 14px;
	font-weight: 500;
	letter-spacing: 0.05em;
	text-align: left;
}
.table td{
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 14px;
	color: #584A3E;
	font-weight: 500;
	width: 70%; 
	padding: 14px 32px;
	vertical-align: middle;
}
.repair_price_wrap .table th{
	width: 50%;
}
.repair_price_wrap .table td{
	text-align: right;
	width: 50%;
}


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

}
@media only screen and (max-width: 767px) {
.table{
	width: 100%;
	border-collapse: collapse;
}
	.table tr{
		background-color: #FFFDF9;
	}
.table th{
	display: block;
	width: 100%;
	padding: 16px;
	border-top: none;
	border-bottom: none;
	background-color: #EBE9E4;
}
	.table td{
		display: block;
	width: 100%; 
	padding: 20px 15px;
		border-top: none;
		border-bottom: none;
}
	.repair_price_wrap .table th{
	width: 100%;
}
.repair_price_wrap .table td{
	text-align: left;
	width: 100%;
}
}


/*======================
table-clinic-shedule
======================*/
.table-schedule{
	width: 100%;
	border: 1px solid #E2C59F;
}
.table-schedule th{
	background-color: #E2C59F;
	padding: 8px 10px;
	color: #fff;
	border-bottom: 1px solid #fff;
}
.table-schedule td{
	font-size: 10px;
	color: #726048;
	padding: 10px;
	text-align: center;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.table-schedule{
		font-size: 12px!important;
	}
	@media only screen and (max-width: 800px) {
			.table-schedule{
		font-size: 12px!important;
	}
	}
}

/*===========
form
===========*/

input[type=email], input[type=search], input[type=text], input[type=url],select, textarea,radio{
	-webkit-appearance: none;
}

input[type="submit"] {
  border-radius: 0;
	  border-radius: 10px;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}

input[type="checkbox"]{
	width: auto!important;
	position: relative;
	top: 2px;
}

.form{
	padding: 60px 80px;
}
.form dl{
	display: flex;
	justify-content: space-between;
	margin-bottom: 30px;
}
.form .border-none{
	padding:  0;
	border-top: none;
}
.form dl dt{
	width: 30%;
	color: #584A3E;
}
.form dl dt .hissu{
	padding-left: 10px;
	color: #B61C1C;
	font-weight: 400;
	font-size: 16px;
}
.form dl dt .any{
	padding: 3px 20px;
	background-color: #BDBDBD;
	color: #fff;
	font-weight: 400;
	font-size: 10px;
	margin-right: 20px;
}
.form dl dd{
	width: 70%;
	font-size: 14px;
}

.form .flex-block{
	display: block;
}
.form .flex-block dt{
	width: 100%;
	margin-bottom: 20px;
}
.form .flex-block dd{
	width: 100%;
}

/*入力欄*/
.form dl dd input{
	width: 100%;
	height: 45px;
	padding: 0 20px;
	background-color: #fff;
	border: 1px solid #AAAAAA;
}

/*ラジオボタン*/
 .form dl dd input[type="radio"]{
	width: auto!important;
	height: auto!important;
	position: relative;
	top: 2px;
	cursor: pointer;
}

/*日付選択*/
.form dl dd input[type="date"] {
	width: 360px;
}

/*セレクト　アイコン変更*/
.form dl dd select{
	cursor: pointer;
		width: 100%;
	padding: 15px 20px;
	background-color: #fff;
	border: 1px solid #aaaaaa;
	background-image: url( "images/icon/arrow_btm.svg");
	background-repeat: no-repeat;
	background-size: 15px 9px;
    background-position: right 3% top 50%;
}

/*テキストエリア*/
.form dl dd textarea{
	font-family: 'メイリオ', sans-serif;
	width:100%;
	height: 290px;
	padding:20px;
	background-color: #fff;
	border: 1px solid #aaaaaa;
}

/*送信ボタン*/
.send-btn{
	width: 100%;
	display: inline-block;
}
.form .send-btn input[type="submit"]{
	font-family:  'Noto Sans JP', sans-serif;
	float: right;
    font-size: 15px;
	font-weight: 500;
    line-height: 1;
    color: #4E4A41;
    background:#EFEADE;
    padding: 20px 40px 20px 40px;
    text-decoration: none;
    display: block;
    transition: .5s ease;
    position: relative;
    text-align: center;
    width: 230px;
	height: auto;
	margin: 0 auto;
	border-radius: 14px;
	border: 1px solid #4E4A41;
	cursor: pointer;
}
.form .send-btn input[type="submit"]:hover{
	border: 1px solid #4E4A41;
    color: #EFEADE;
    background:#4E4A41;
}


::placeholder {
  color: #8B8B8B;
}
/* 旧Edge対応 */
::-ms-input-placeholder {
  color: #8B8B8B;
}
/* IE対応 */
:-ms-input-placeholder {
  color:#8B8B8B;
}

/*.send-btn{
	overflow: hidden;
}*/


@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.form{
	    padding: 20px 40px 40px;
}
	.form dl{
	padding: 20px 0;
	display: block;
		margin-bottom: 0;
}
	.form dl dt{
	width: 100%;
		margin-bottom: 10px;
}
.form dl dd{
	width: 100%;
}
	.form dl dd input{
		padding: 10px;
	}
	.form dl dd select{
		width: 100%;
	}
	.form dl dd textarea{
		width: 100%;
	}
}


@media only screen and (max-width: 767px) {
	.form{
	    padding: 20px 0 0;
}
.form dl{
	display: block;
	width: 100%;
	padding: 10px 0;
	margin-bottom: 0;
}

.form dl dt{
	width: 100%;
	margin-bottom: 10px;
}
.form dl dd{
	width: 100%;
}
.form dl dd input{
	width: 100%;
	padding: 10px;
}
	.form dl dd input[type="date"]{
		width: 100%;
		padding: 10px 10px;
	}
	.form dl dd select{
		width: 100%;
	}
.form dl dd textarea{
	width: 100%;
	height: 150px;
	padding: 10px;
}
	.form .send-btn input[type="submit"]{
		width: 100%;
	}
}

/*======================
sideber
======================*/
.side_ttl{
	width: 100%;
	padding: 10px;
	border-left: 7px solid #726048;
}
/*.side ul {
	width: 200px;
	height: 50px;
	margin: 0 auto;
}*/
/*.side ul li{
	border-bottom: 1px solid #060606;
	padding: 10px;
}*/
.side_column li a{
	display: block;
	border-bottom: 1px solid #E2C59F;
	padding: 20px 0;
	padding-left: 40px;
	font-size: 16px;
	color: #726048;
	position: relative;
}
.side_column li a::before{
	content: '';
	display: inline-block;
	width: 10px;
	height: 20px;
	background-image: url("images/arrow_right.svg");
	background-repeat: no-repeat;
	background-size: contain;
  vertical-align: middle;
	position: absolute;
	left: 12px;
    top: 50%;
    transform: translateY(-50%);
}

@media only screen and (max-width: 767px) {
.side_ttl{
	width: 100%;
	height: 50px;
	margin: 0 auto;
	background-color: #060606;
}
.side_taxonomy p{
	width: 100%;
	height: 50px;
	margin: 0 auto;
}
.side_ttl{
	width: 100%;
}
.side ul {
	width: 100%;
}
}


/*======================
my_pagination
======================*/
.pagination {
	float: right;
	overflow: hidden;
}
.pagination span, .pagination a{
display:block;
float:left;
margin: 2px 2px 2px 0;
padding:10px 20px;
text-decoration:none;
width:auto;
color:#fff;
background: #555;
}
 
.pagination a:hover{
color:#fff;
background-color:rgba(187,32,32,0.5);
}
 
.pagination .current{
padding:10px 20px;
background: #BB2020;
color:#fff;
}
@media only screen and (max-width: 800px) {
	.pagination {
	float: none;
	overflow: hidden;
}
 
}


/*======================
blog_single_pagenav
======================*/
.page_nav ul{
	width: 100%;
	overflow: hidden;
}
.page_nav .nav_left{
	width: 40%;
	text-align: left;
	padding-right: 10px;
}
.page_nav .nav_right{
	width: 40%;
	text-align: right;
	padding-left: 10px;
}
.page_nav .nav_top{
	width: 20%;
	text-align: center;
}
@media only screen and (max-width: 800px) {
	.page_nav ul{
	display: block;
}
.page_nav .nav_left{
	width: 100%;
	text-align: center;
	padding-right: 0;
	padding-bottom: 20px;
}
.page_nav .nav_right{
	width: 100%;
	text-align: center;
	padding-left: 0;
	padding-top: 20px;
}
.page_nav .nav_top{
	width: 100%;
	text-align: center;
}
}

/*======================
nav_under_line ホバーで下線
======================*/
.nav_under_line .nav_under_line_menu a {
  position: relative;
}
.nav_under_line .nav_under_line_menu a::after {
  position: absolute;
  left: 0;
  bottom: -5px;
  display: block;
  content: "";
  width: 0%;
  height: 1px;
  background: #fff;
  transition: all 0.2s cubic-bezier(0.455, 0.03, 0.515, 0.955);
}
.nav_under_line .nav_under_line_menu a:hover::after {
  width: 100%;
}



/*======================
wp-pagenav
======================*/
.pagenav {
	text-align: center;
    margin-top: 60px;
	font-size: 14px;
}
.wp-pagenavi a, .wp-pagenavi span {
     color:#398198;
	font-size: 12px;
     background-color:#FFF;
     border:solid 1px #398198;
     padding: 8px 12px;
    margin:0 2px;
     white-space: nowrap;
     -moz-border-radius: 50px;
     -webkit-border-radius: 50px;
     border-radius: 50px;
     -webkit-transition: 0.2s ease-in-out;
     -moz-transition: 0.2s ease-in-out;
     -o-transition: 0.2s ease-in-out;
     transition: 0.2s ease-in-out;
}
.wp-pagenavi a:hover{
     color:#FFF; 
     background-color:#398198; 
     border-color:#398198;
     }
.wp-pagenavi span.current{
     color:#FFF;
	font-size: 12px;
     background-color:#398198;
     border-color:#398198;
     font-weight: bold;
     }
.pagenavi-btn{
	display: flex;
	justify-content: center;
	align-items: center;
}
.pagenavi-btn .prev a,
.pagenavi-btn .next a,
.pagenavi-btn .return a{
	background-color: #398198;
	border-radius: 3px;
	padding: 8px 10px;
	color: #fff;
}
.pagenavi-btn .prev{
	margin-right: 12px;
}
.pagenavi-btn .next{
	margin-left: 12px;
}
.pagenavi-btn .return{
	margin: 0 10px;
}




/*======================
inview
======================*/

.fadeIn_logo {
  opacity: 0;
  transition: 3s;
}
.fadeIn{
  opacity: 0;
  transition: 1.5s;
}
.fadeInTop {
  opacity: 0;
  transition: 2.5s;
}
.fadeIn_logo.is-show,.fadeIn.is-show,.fadeInTop.is-show {
  opacity: 1;
}

/*.fadeIn_up {
  opacity: 0;
  transform: translate(0, 10%);
  transition: 1.5s;
}*/
/*.fadeIn_up_Top {
  opacity: 0;
  transform: translate(0, 30%);
  transition: 1.5s;
}
.fadeIn_up.is-show,.fadeIn_up_Top.is-show {
  transform: translate(0, 0);
  opacity: 1;
}*/

.fadeIn_up {
  opacity: 0;
  transform: translate(0, 10%);
  transition: 0.8s;
}
.fadeIn_up.is-show {
  transform: translate(0, 0);
  opacity: 1;
}


.fadein {
	opacity: 0;
	transition: all 1000ms;
}
.fadein.scrollin {
	opacity: 1;
}


.fadeInTrigger{
	opacity: 0;
}
.delay-time{
	animation-delay: 0.5s;
}


/*======================
scroll
======================*/
/*#scroll_down a {
  display: inline-block;
  position: absolute;
  bottom: 0;
  z-index: 2;
  padding: 10px 10px 84px;
  overflow: hidden;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  letter-spacing: .2em;
  text-transform: uppercase;
  text-decoration: none;
  writing-mode: vertical-lr;
}


#scroll_down a::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 1px;
  height: 74px;
  background: #fff;
	 animation: sdl 1.8s ease-in-out infinite;
}

@keyframes sdl {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  30% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  50.1% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }

}


@media only screen and (max-width: 767px) {
	#scroll_down{
	background-color: rgba(255,255,255,0.00);
	width: 0px;
}
	#scroll_down a{
  position: absolute;
  left: 50%;
	transform: translate(-50%);
  bottom: 0;
		font-size: 12px;
	}
}*/

.scrolldown1{
  position:absolute;
  left: 100px;
  bottom:0;
  height:100px;
}

.scrolldown1 span{
  position: absolute;
  left: -12px;
    top: -66px;
  color: #fff;
 font-size: 12px;
	letter-spacing: 2px;
	writing-mode: vertical-lr
}

.scrolldown1::after{
  content: "";
  position: absolute;
  top: 0;
  width: 1px;
  height: 30px;
  background: #eee;
  animation: pathmove 1.4s ease-in-out infinite;
  opacity:0;
}

@keyframes pathmove{
  0%{
    height:0;
    top:0;
    opacity: 0;
  }
  30%{
    height:60px;
    opacity: 1;
  }
  100%{
    height:0;
    top:84px;
    opacity: 0;
  }
}


@media only screen and (min-width: 768px) and (max-width: 1024px) {
	.scrolldown1{
  left: 50px;
}
}
@media only screen and (max-width: 767px) {
.scrolldown1{
  left: 50px;
}
}

/*======================
横にスクロールできる
======================*/
@media only screen and (max-width: 767px) {
	  .sp-sc::before {
        content: "※横にスクロールできます。";
        display: block;
        color: #DB4619;
        font-size: 12px;
        margin-bottom: 5px;
    }
    .sp-sc {
        width: 100%;
        overflow: auto;
        white-space: nowrap;
        -webkit-overflow-scrolling: touch;
    }
    .sp-sc table {
        width: 100%;
    }
	 .sp-sc img{for
        max-width: 800px;
    }
}


/*------------------------------------------------------------
pagetop_btn
--------------------------------------------------------------*/
.pagetop_btn {
    position: fixed;
    right: 15px;
    bottom: 62px;
   /* display: none;*/
    z-index: 998;
    margin-bottom: 20px;    
/*	mix-blend-mode: difference;*/
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
	    .pagetop_btn {
        width: 42px;
	}
}
@media only screen and (max-width: 800px) {
    .pagetop_btn {
        width: 42px;
	}
}

/*======================
ドロップした時の背景色
======================*/
*::selection {
background-color:rgba(160,147,118,0.2);
}





