@charset "UTF-8";
/*
Theme Name: designsodan
Author: tajima
Description: 川越バターサンド
Version:1.5
License: GNU General Public License v2 or later
License URI: LICENSE
*/


body {
font-family: '游ゴシック Medium', '游ゴシック体', 'Yu Gothic', YuGothic, 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic Pro', 'ヒラギノ角ゴ Pro W3', Meiryo, メイリオ, 'MS PGothic', 'ＭＳ Ｐゴシック', sans-serif;
font-size: 16px;
-webkit-text-size-adjust: 100%;
font-weight: 400;
line-height: 1.9em;
background-color: #ffffff;
color: #333333;
text-align: justify;	
font-feature-settings: "palt";
letter-spacing: 0.15em;
}

body,html{padding: 0 ;margin: 0!important}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin: 0;
padding: 0;
}

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

/* テキスト */
h1{font-size: 1.75em; font-weight: 300;}
h2 {font-size: 1.5em;font-weight: 600}
h3 {font-size: 1.25em}
h4 {font-size: 1.125em}
h5 {font-size: 1em}
h6 {font-size: 0.875em}

h1,h2,h3,h4,h5,h6{margin:0 0 10px;}

@media only screen and (max-width:520px){
h1 {font-size: 1.25em;}
h2 {font-size: 1.125em;}
h3 {font-size: 1em}
h4 {font-size: 1em}
}

.mincho{
font-family: "游明朝","Yu Mincho",YuMincho,"Hiragino Mincho ProN","Hiragino Mincho Pro",HGS明朝E,メイリオ,Meiryo,serif;
font-weight: 300;
}

button, input, label, select, textarea{
font-family: inherit;
font-size: 1em;
}

img{max-width: 100%;height: auto;}
a img{
transition: .6s ease;
-webkit-transition: .6s ease;
-ms-transition: .6s ease;}
a img:hover{opacity: .7;}

ul{padding: 0;margin: 0}
ul li{list-style:none}
a{text-decoration: none;color: #333333;}
p{margin:0 0 1em;}
.bold{font-weight:600}
.sp{display: none!important;}
.ipSp{display: none!important;}

@media only screen and (max-width:768px){
.ip{display: none!important;}
.ipSp{display: inherit!important;}
}

@media only screen and (max-width:480px){
.sp{display: inherit!important;}
.pc{display: none!important;}
}

/* flexbox */
.d-flex{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
}

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

.d-flex-around{justify-content: space-around;}
.d-flex-start{justify-content: flex-start;}
.d-flex-end{justify-content: flex-end;}
.d-flex-center{justify-content: center;}
.align-center{align-items: center;}
.align-end{align-items: end;}
.flex-reverse{flex-wrap: wrap-reverse;}
.text-center {text-align: center;}
.text-right{text-align: right;}
.text-justify{text-align: justify;}

/*p.text-center,.text-center p{line-height: 1.8em;}*/

.col2{width: 48%;}
.col3{width: 30%;margin-right: 5%;margin-bottom: 30px;}
.col3:nth-of-type(3n){margin-right: 0;}

@media only screen and (max-width:768px){
.col2{width: 100%;}
.col3{width: 48%;margin-right: 0;}
.col3:nth-of-type(2n){margin-right: 0;}
.col2:last-child,
.col3:last-child{margin-bottom: 0;}
}

/*@media only screen and (max-width:520px){
.col3{width: 100%;}
}*/

.clear{clear: both;}
.bold{font-weight:bold;}
.normal{font-weight: normal!important;}

.red{color: #d9382b}
.black{color:#333333}
.darkgray{color: #b4b4b5;}


/* ------------------------------------------------
外枠
------------------------------------------------
*/ 

.container-inner{
max-width: 1040px;
padding: 0 20px;
margin: 0 auto;
}

main{margin-bottom: 100px;}

/* Tablet*/
@media only screen and (max-width:920px){
main{margin-bottom: 50px;}
.container-inner{padding: 0px 40px;}
}
/* SP*/
@media only screen and (max-width:520px){
.container-inner{padding: 0px 20px;}
}



/* margin */
.mb-1{margin-bottom: 10px;}
.mb-2{margin-bottom: 20px;}
.mb-3{margin-bottom: 30px;}
.mb-4{margin-bottom: 40px;}
.mb-5{margin-bottom: 50px;}
.mb-6{margin-bottom: 60px;}
.mb-7{margin-bottom: 70px;}
.mb-8{margin-bottom: 80px;}
.mb-9{margin-bottom: 90px;}
.mb-10{margin-bottom: 100px;}

@media only screen and (max-width:520px){
.mb-5{margin-bottom: 30px;}
.mb-6{margin-bottom: 40px;}
.mb-7{margin-bottom: 50px;}
.mb-8{margin-bottom: 60px;}
.mb-9{margin-bottom: 70px;}
.mb-10{margin-bottom: 80px;}
}


/* ------------------------------------------------
共通箇所
------------------------------------------------
*/

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

header{
padding: 15px 30px 13px;
background-color: rgb(255,255,255,0.8);
position: sticky;
top: 0;
z-index: 220;
width: 100%;
}

#header-logo{
max-width: 285px;
height: auto;
z-index: 210;
line-height: 0;
}

.nav-wrapper ul.grand-menu{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: flex-start;
}

.nav-wrapper ul.grand-menu li{
font-size: 14px;
margin-right: 3px;	
}

.nav-wrapper ul.grand-menu li:last-child{margin: 0;}

.nav-wrapper ul.grand-menu li a{
padding: 10px 50px;
border-left: 1px solid #333;
border-bottom: 1px solid #333;	
display: inline-block;
}

/*.nav-wrapper ul.grand-menu li a{position: relative;}

.nav-wrapper ul.grand-menu li a:before{
background-color: #333333;
content: "";
width: 100%;
height: 1px;
position: absolute;
left: 0;
bottom: 0;
margin:auto;
transform-origin: right top;
transform: scale(0,1);
transition: transform .2s;
}

.nav-wrapper ul.grand-menu li a:hover:before{
transform-origin: left top;
transform: scale(1,1);
}*/

/*.nav-wrapper ul.grand-menu li .sub-menu{
position: absolute;
visibility: hidden;
transition: all .4s ease;
left: 0;
width: 230px;
background-color: #333333;
opacity: 0;
}

.nav-wrapper ul.grand-menu li .sub-menu li .sub-menu{
position: absolute;
visibility: hidden;
transition: all .4s ease;
top: 0;
left: 230px;
width: 230px;
background-color: #333333;
opacity: 0;
}*/

.nav-wrapper ul.grand-menu li{
position: relative;
}

/*.nav-wrapper ul.grand-menu li:hover .sub-menu,
.nav-wrapper ul.grand-menu li .sub-menu li:hover .sub-menu{
display: block;
visibility: visible;
transition: all .4s ease;
opacity: 1;
}

.nav-wrapper ul.grand-menu .sub-menu li{
margin-left: 0;
font-size: 12px;
}

.sub-menu li a{
display: block!important;
padding: 0.8em!important;
color: #ffffff;
}

.nav-wrapper ul.grand-menu li .sub-menu li a:hover{
background-color: #666666;
color: #ffffff;
transition: .5s;
}

.nav-wrapper ul.grand-menu li .sub-menu li a:hover:before{
transform-origin: 0;
transform: scale(0);
}*/


.ham,.black-bg{display: none;}

@media only screen and (max-width:1200px){
.nav-wrapper ul.grand-menu li{
font-size: 13px;
margin-right: 2px;	
}	
.nav-wrapper ul.grand-menu li a{
padding: 12px 35px;	
}
}

@media only screen and (max-width:1000px){
.nav-wrapper ul.grand-menu li a{
padding: 5px 20px;	
border-left: none;
border-bottom: none;}	
}

@media only screen and (max-width:768px){
header{padding: 15px 20px 10px;}
#header-logo img {max-width:80%;}
	
.ham {
position: relative;
width: 32px;
height: 32px;
cursor: pointer;
display: inherit;
z-index: 1000;
}

.ham_l {
position: absolute;
width: 32px;
height: 2px;
left: 0;
background-color: #ec6c00;
transition: all .4s;
}

.ham_l-1 {top: 1px;}
.ham_l-2 {top: 10px;}
.ham_l-3 {top: 20px;}

.open .ham_l-1 {transform: rotate(-45deg);top: 11px;background-color: #ec6c00;}
.open .ham_l-2 {opacity: 0;}
.open .ham_l-3 {transform: rotate(45deg);top: 11px;background-color: #ec6c00;}


.header-nav {
position: fixed;
right: -100%;
top: 0;
width: 50%;
height: 100vh;
background-color: #ffffff;
transition: all .4s;
z-index: 220;
overflow-y: auto;
padding: 50px 30px;
}

.open .header-nav {right: 0;}

.black-bg {
position: fixed;
left: 0;
top: 0;
width: 100%;
height: 100vh;
background-color: #333333;
opacity: 0;
visibility: hidden;
transition: all 0.5s;
display: inherit;
cursor: pointer;
z-index: 100;
}

.open .black-bg {opacity: 0.6;visibility: visible;}

.nav-wrapper ul.grand-menu{display: block;}

.nav-wrapper ul.grand-menu li{
font-size: 13px;
margin: 0;
margin-left: 0;
}

.nav-wrapper ul.grand-menu li a{
color: #333333;
border-bottom: 1px solid #333333;
display: block;
padding: 10px;
}

.nav-wrapper ul.grand-menu li a:before{content: none;}

.open .nav-wrapper ul.grand-menu {display: block;transition: .4s;}

.nav-wrapper ul.grand-menu li .sub-menu,
.nav-wrapper ul.grand-menu li .sub-menu li .sub-menu{
position: static;
display: none;
transition: all .4s ease;
left: 0;
width: auto;
background-color: #ffffff;
opacity: 0;
}

.nav-wrapper ul.grand-menu li:hover .sub-menu,
.nav-wrapper ul.grand-menu li .sub-menu li:hover .sub-menu{
display: block;
visibility: visible;
transition: all .4s ease;
opacity: 1;
}

.nav-wrapper ul.grand-menu li .sub-menu li a{
padding: 10px 10px 10px 40px!important;
}

.nav-wrapper ul.grand-menu li .sub-menu li .sub-menu li a{
padding: 10px 10px 10px 70px!important;
}

.nav-wrapper ul.grand-menu li .sub-menu li a:hover{
color: #333333;
background-color: #ffffff;
transition: .5s;
}
}

@media only screen and (max-width:520px){
.header-nav{width: 70%;padding: 50px 20px;}
}

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

footer{
border-top: 1px solid #b4b4b5;
padding: 30px 0;
}

.copyright p{
font-size: 12px;
line-height: 1.5em;	
margin-bottom: 0;
text-align: center;
}

@media only screen and (min-width: 921px){
.footer_cont .footer_menue {
Padding: 0 200px;	
}
}

/* ------------------------------------------------
content
------------------------------------------------*/

/* アニメーション設定*/
.fadein{
opacity: 0;
transform: translate3d(0, 40px, 0);
}

.fadein.is-active{
opacity: 1;
transform: translate3d(0, 0, 0);
transition: 1s;
}

/* --------------パンくず-------------- */
ul.breadcrumb{
font-size: 0.8em;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
margin: 50px 0;
}

ul.breadcrumb li:not(:first-child){
margin-left: 28px;
position: relative;
}

ul.breadcrumb li:not(:first-child):before{
content: "";
position: absolute;
top: 45%;
left: -20px;
display: block;
width: 5px;
height: 1px;
background: #333333;
padding-left: 5px;
}

ul.breadcrumb li:last-child:after{content: ""}
ul.breadcrumb li:last-child{color: #b4b4b5}


@media only screen and (max-width:768px){
ul.breadcrumb{justify-content: flex-start;font-size: 0.677em;margin: 30px 0;}
}

/* --------------pagination-------------- */

.pagination {text-align: center;}

.nav-links{
display: flex;
justify-content: center;
flex-wrap: wrap;
}

.pagination .page-numbers {
display: flex;
align-items: center;
justify-content: center;
width: 35px;
height: 35px;
margin: 0 15px 20px 0;
color: #808080;
background: #ffffff;
border: 1px solid #808080;
border-radius: 5px;
line-height: 0;
}

.pagination a:hover{
transition: .3s;
background: #ec6c00;
border: 1px solid #ec6c00;
color: #ffffff;
}

.pagination .current {
display: flex;
align-items: center;
justify-content: center;
width: 35px;
height: 35px;
color: #ffffff;
background: #ec6c00;
border: 1px solid #ec6c00;
border-radius: 5px;
}

.pagination .dots {background: transparent;}


/* ------------------------------------------------
ブログ
------------------------------------------------*/

.text_area {width: 75%;}
.top_post-thumbnail {width: 22%;}

.news_post h6 {
font-size: 1em;
line-height: 1.6em;
margin-bottom: 10px;}

.news_post .post-text {font-size: 0.87em; line-height: 1.7em;}

@media only screen and (max-width:520px){
.text_area {width: 62%;}
.top_post-thumbnail {width: 35%;}
.news_post h6 {margin-bottom: 5px;}	
}

/*------------------------------------*/
.archive-post{width: 22%;margin: 0 4% 50px 0;}
.archive-post:nth-child(4n){margin: 0 0 50px 0;}

.post-thumbnail {
overflow: hidden;
line-height: 0;
margin-bottom: 10px;
display: block;
position: relative;
}

.post-thumbnail img{
position: absolute;
width: 100%;
height: 100%;
top: 0;
object-fit: cover;
}

.post-thumbnail:before {
content: "";
display: block;
padding-top: 100%;
}

.archive-post img{transition: transform .4s;}

.archive-post a:hover img{
transform: scale(1.1);
-webkit-transform: scale(1.1);
opacity: 1;
transition: .4s;
}

.archive-post h3{
font-size: 1.2em;
font-weight: 300;
line-height: 1.6em;
margin-bottom: 0;
}

.post-time{
text-align: right;
margin-bottom: 0.2em;
color: #808080;
}


@media only screen and (max-width: 1200px){
.archive-post{width: 22%;margin: 0 4% 50px 0;}
}

@media only screen and (max-width: 768px){
.archive-post{width: 48%;margin-bottom: 25px;} 
.archive-post:nth-child(2n){margin:0 0 25px 0}
.archive-post .post-categories li a{font-size: 12px;}
}

@media only screen and (max-width: 520px){
.archive-post h3{font-size:1em;line-height:1.5em}
.archive-post p{font-size:0.8em}
}


/* ------------------------------------------------
共通箇所
------------------------------------------------
*/

.main-tit{
font-size: 2em;
text-align: center;
margin-bottom: 50px;
}

.post-time {
font-size: 0.8em;
color: #888;
padding: 0;
margin: 8px 0 5px 0;
max-height: 30px;
line-height: 150%;	
}

.pagetitle {
font-size: 20px;
font-style: bold;
}

.blog-tit {
font-size: 27px;
line-height: 130%;
font-weight: normal;
color: #333;
margin: 5px 0px 20px 0px;
padding: 18px 0px 15px 0px;
border-top: 1px solid #ccc;
border-bottom: 1px solid #ccc;
}
																	
@media only screen and (max-width: 1000px){
.page-tit{font-size: 2em;margin: 0 auto 50px;}
}

@media only screen and (max-width: 520px){
.main-tit{font-size: 1.5em;margin-bottom: 20px;}
.page-tit{font-size: 1.8em;margin: 0 auto 20px;}
.blog-tit{font-size: 1.125em;margin: 10px 0;}
}

/* ------------------------------------------------
投稿ページ
------------------------------------------------
*/

.col--l .content{width: 70%;}
.sidebar{width: 25%;}

.col--l .content p a{
font-size: 1.2em;
color: #f39e52;
border: 2px solid #f39e52;
border-radius: 50px;
padding: 12px 20px;
display: inline-block;
}

.col--l .content p a:hover{
opacity: 1;
color: #ffffff;
background-color: #f39e52;
}

@media only screen and (max-width: 768px){
.col--l .content{width: 100%;}
.col--l .sidebar{width: 100%;}	
/*.col--l .sidebar{display: none;}*/
.col--l .content p a{font-size: 1em;padding: 10px 15px;border: 1px solid #f39e52;}
}

.post-item{margin-top: 50px;}

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

.post-tags li{
font-size: 0.8em;
letter-spacing: 0.1em;
text-align: center;
display: inline-block;
margin-right: 15px;
}

.post-tags li a{color:#b4b4b5;}
.post-tags li a::after{content: ",";}
.post-tags li:last-of-type a::after{content: none;}
.post-tags li{margin-right: 5px;}

@media only screen and (max-width: 768px){
.post-item{margin-top: 30px;}
}


/* sidebar */
.sidebar .side-area{margin-bottom: 50px;}

.sidebar h3{
color: #888;
font-size: 1.1em;
font-weight: bold !important;
letter-spacing: 0.05em;
margin: 0 0 10px;
padding: 0 0 0.5em;
position: relative;
border-bottom: 1px solid #ccc;
background: 0;
border-radius: 0;
}

.sidebar h3:after {
content: ".";
line-height: 0;
display: block;
overflow: hidden;
position: absolute;
bottom: -1px;
width: 30%;
border-bottom: 2px solid #c30d23;
}

.sidebar .side-area ul li{border-bottom: 1px dotted #ddd; font-size: 0.9em;}

.sidebar .side-area ul li a{display: block; padding: 15px 0px 7px 0px;}

.sidebar .side-area ul li:first-child a{padding-top: 0;}


/* 検索フォーム */
.search-container {
box-sizing: border-box;
position: relative;
border: 1px solid #808080;
width: 100%;
overflow: hidden;
margin-bottom: 50px;
}

.search-container input[type="text"] {
border: none;
padding: 6px;
width: 100%;
}

.search-container input[type="text"]:focus {
outline: 0;
}

.search-container input[type="submit"] {
cursor: pointer;
background-image: url(./images/common/search.png);
background-size: 20px;
background-repeat: no-repeat;
background-color: #ffffff;
background-position: 16px 17px;
font-size: 1.3em;
border: none;
position: absolute;
width: 2.5em;
height: 2.5em;
right: 0;
top: -8px;
outline: none;
}

@media only screen and (max-width: 768px){
.search-container{width: 50%;margin: 0 auto 5%}
}

@media only screen and (max-width: 480px){
.search-container{width: 60%;}
}

.sidebar .side-active select{
color: #333333;
border: 1px solid #333333;
border-radius: 7px;	
width: 100%;
padding: 10px
}

@media only screen and (max-width: 520px){
.page-article{margin-top: 30px;margin-bottom: 15px;}
.previous-article,
.next-article{width: 100%;}
.previous-article{margin-bottom: 20px;}
.previous-article a:before,
.next-article a:after{padding-left: 11px;height: 11px;}
.side-area{margin-bottom: 20px;}
}

.col--l p,figure{margin-bottom: 1.5em;}


/*----------------------------
top
----------------------------*/
.tategaki {
writing-mode: vertical-rl;
font-size: 1.5em;
Line-height: 2em;
border-right: 1px solid #333;
padding-right: 20px;
width: 20%;	
}

.main-copy{
font-size: 0.9em;	
Line-height: 2.5em;
width: 75%;
margin-left: 5%;	
}

@media only screen and (max-width:1000px){
.col2L {width: 55%;}
.col2R {width: 43%;}	
}

@media only screen and (max-width:920px){
.topcopy_area .d-flex .col2 {width: 100%;}	
}
@media only screen and (max-width:550px){
.tategaki {	
font-size: 1.2em;
Line-height: 1.6em;
padding-right: 20px;}
.main-copy {
font-size: 0.8em;	
Line-height: 2em;
padding-left: 20px;}
	
}

#kodawari,#shop {
background-image: url("./images/common/back.png");
padding: 70px 0;	
}

.concept_tit h3 {color: #b73c2c; font-size: 1.3em; margin-bottom: 5px;}
.concept_tit img {margin-right: 20px;}

h2.midashi {display: inline-block;}
h2.midashi .midashiT{width: 100%;}
.midashiT {
font-size: 1.4em;
padding-bottom: 5px;
position: relative;
margin-bottom: 0.2rem;
padding: 12px 0 7px;
border-bottom: 1px solid;	
}

.midashiT:before {
position: absolute;
bottom: -0.8rem;
left: 0rem;
right: 0rem;
border-bottom: 1px solid;
content: '';	
}

.osusume {
font-size: 1.5em;	
border-bottom: 1px solid #333;
border-top: 1px solid #333;
text-align: center;	
padding: 15px 0;
}

h4 {
font-size: 1.4em;
color: #b73c2c;
border-bottom: 4px solid #b73c2c;
display:inline-block;
}

h4:before{
content: url("./images/common/tit_left.png"); 
margin-right:5px; 
position:relative;
top:0; 
left:0;
}

h4:after{
content: url("./images/common/tit_right.png"); 
margin-left:5px; 
position:relative;
top:0; 
right:0;
}

.product_detail {font-size: 0.9em; line-height: 1.7em;}

.temiyage {
background-color: #fef9ee;
padding: 15px;
}

.line_b {border-bottom: 1px solid #333; padding: 0 0 40px;}

@media only screen and (min-width:921px){
.menu_img img {width:85%; margin-bottom: 7px;}
}
@media only screen and (max-width:768px){
.sp-item01 {order: 1;} 
.sp-item02 {order: 2;}	
}

/*--------------------map----------------------*/
.google-maps {
    position:relative;
    width:100%;
    height:0;
    padding-top:40%;
}
.google-maps iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}
@media (max-width: 767px) {
    .google-maps {
    padding-top:60%;
}
}

/*--------------------ボタン----------------------*/
.contact_bt a {
border: 1px solid #333;
position: relative;
display: flex;
align-items: center;
max-width: 260px;
padding: 10px 25px;
color: #333;
transition: 0.3s ease-in-out;
font-weight: 500;
}
.contact_bt a:after {
content: '';
position: absolute;
top: 50%;
right: 25px;
transform: translateY(-50%);
width: 0;
height: 0;
border-style: solid;
border-width: 5px 0 5px 8px;
border-color: transparent transparent transparent #333;
}
.contact_bt a:hover {
background: #b73c2c;
color: #FFF;
border: none;
}
.contact_bt a:hover::after {
border-color: transparent transparent transparent #fff;
}

.more-link a {
text-align: center;
color: #333;
font-size: 17px;
font-style: normal;
border: 1px solid #333;
display:inline-block;
margin: 0;
padding: 5px 35px;
border-radius: 25px;
transition: .6s;
z-index: 1;	
}

.more-link a:hover{
color: #fff;
background-color: #c30d23;
border: 1px solid #c30d23;
transition: .6s;
}

@media only screen and (min-width: 1000px){
#news,#insta {padding: 0 130px;}
}

/*---------------スライダー-------------------*/

.slider {
  margin-inline: auto;
}
.slider-img {
  margin: 0 5px;
}
.slider-img img {
  height: auto;
  width: 100%;
}
/*---------------TOPボタン-------------------*/
.float-Btn {
position: fixed;
right: 10px;
bottom: 20px;
z-index: 1001;
width: 65px;
}

#top-float-Btn,
#top-cont-Btn{line-height: 0;}

@media (max-width: 768px) {
#top-float-Btn {
right:20px;
bottom: 20px
}
}

.float-Btn {
  opacity: 0;
  visibility: hidden; 
  transition: opacity 0.4s ease;
}

.float-Btn.show {
  opacity: 1;
  visibility: visible;
}

/* --------------お問い合わせ-------------- */

#page h1.page-tit {text-align: center; margin-bottom:40px;}
.contact-inner{margin-top: 60px;}

.contact dl{
display: -webkit-box;
display: -ms-flexbox;
display: flex;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
justify-content: space-between;
align-items: center;
margin-bottom: 50px;
}

.contact dl dt{width: 25%;}
.contact dl dd{width: 72%;}

.contact p span,
.contact dt span{
font-size: 0.813em;
color: #ff0000;
}

.contact dl dd.d-flex div{width: 48.5%;}

.contact dl dd span input,
.contact dl dd span textarea{
font-size: 1em;
display: block;
width: 100%;
padding: 10px 12px;
background-color: #f2f2f2;
border: none;
}

@media only screen and (max-width: 520px){
.contact-inner{margin-top: 30px;}
.contact dl dt,
.contact dl dd{width: 100%;}
.contact dl{margin-bottom: 30px;}
}

.contact-btn{
max-width: 318px;
margin: 0 auto 20px;
display: block;
text-align: center;
}

.contact-btn input{
font-size: 1em;
width: 100%;
background-color: #595757;
border: 1px solid #595757;
border-radius: 50px;
color: #ffffff;
transition: .5s ease;
padding: 15px;
}

.contact-btn input:hover{
cursor: pointer;
background-color: #ffffff;
color: #595757;
}

.contact .text-center .orange{font-size: 45px;}

.contact select{padding: 10px 15px;}

.wpcf7 form.invalid .wpcf7-response-output, 
.wpcf7 form.unaccepted .wpcf7-response-output, 
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.payment-required .wpcf7-response-output{
border: none;
text-align: center;
color: #dc3232;
}

.wpcf7-radio .wpcf7-list-item input{
display: inherit;
width: inherit;
}

.wpcf7-list-item-label::before,
.wpcf7-list-item-label::after{
content: none;
}

.wpcf7-list-item{margin: 0 0 0 1.2em;}
.wpcf7-list-item:first-child{margin: 0;}


@media only screen and (max-width: 768px) {
.wpcf7-list-item{font-size: 13px;}
.contact .wpcf7-form input[type="submit"]{padding: 15px 10px;}
.contact .text-center .orange{font-size: 1.75em;}
}

@media only screen and (max-width: 520px){
.contact .text-center .orange{font-size: 1.125em;}
.wpcf7-list-item:nth-child(3){margin:0}
} 

/* reCAPTCHA */
.contact-privacy{
text-align: center;
font-size:0.875em;
}

.grecaptcha-badge { visibility: hidden; }


/* --------------お問い合わせ-------------- */
.contact h1{
font-size: 1.5em;
border-top: 1px solid #595757;
border-bottom: 1px solid #595757;
position: relative;
padding: 15px 0;
margin-bottom: 40px;
}

.contact h1:before,
.contact h1:after{
content: "";
position: absolute;
background-color: #595757;
width: 100%;
height: 1px;
left: 0;
}

.contact h1:before{top: 5px;}
.contact h1:after{bottom: 5px;}

.contact h4{
border-bottom: 1px solid #595757;
display: inline-block;
display: -webkit-box;
display: -ms-flexbox;
display: flex;
align-items: center;
max-width: 220px;
margin-bottom: 20px;
}

.contact h4::before{
content: "";
background-color: #136eab;
display: block;
width: 15px;
height: 15px;
margin-right: 10px;
}

.formBtn{
max-width: 300px;
margin: 0 auto;
}

.formBtn a{
color: #ffffff;
display: block;
text-align: center;
background-color: #136eab;
border: 1px solid #ffffff;
box-shadow: 0 0 0px 10px #136eab;
padding: 5px 15px;
transition: ease .4s;
}

.formBtn a:hover{opacity: .7;}

@media only screen and (max-width:480px){
.contact h1{font-size: 1.25em;margin-bottom: 20px;}
.contact h4::before{margin-right: 5px;}
}

