﻿
/* ------------------------
nav
------------------------*/
/* main nav */
nav a { text-decoration: none; color: #FFF; transition: 0.2s; }
nav a:hover { filter: opacity(0.8); color: #FFF; }

@media screen and (min-width: 1000px) {
	nav ul li { font-size: 1.3em; letter-spacing: 0.5px; }
	nav ul li p { font-size: 0.65em; letter-spacing: -1px; }
	.fixed_nav li { font-size: 1.3em; }
	.fixed_nav li p { font-size: 0.65em; }
}

@media screen and (max-width: 999px) {
	nav ul li { font-size: 1.05em; }
	nav ul li p { font-size: 0.75em; letter-spacing: -1px; }
	.fixed_nav nav ul li { font-size: 1.05em; }
	.fixed_nav nav ul li p { font-size: 0.75em; letter-spacing: -1px; }
}

@media screen and (min-width: 651px) {
	.above_the_fold nav { position: absolute; bottom: 0; }
	nav .drawer-menu p { display: none; }
	nav dl { display: flex; display: -webkit-flex; justify-content: space-between; align-items: center; -webkit-align-items: center; flex-wrap: nowrap; -webkit-flex-wrap: nowrap; width: 96%; margin-left: 2%; margin-right: 2%; margin-top: 10px; }
	nav dl dt { width: 30%; }
	nav dl dd { width: 70%; }
 nav.topnavi { width: 100%; z-index: 10; padding-bottom: 10px; background: rgba(55,56,60,0.85); }
	nav.topnavi .logo img { max-width: 230px; width: 100%; }
	nav.topnavi ul { display: flex; display: -webkit-flex; justify-content: space-between; width: 100%; }
	nav.topnavi ul li { margin-right: 20px; text-align: center; line-height: 110%; font-family: 'Neuton', serif; color: #FFF; }
	
	.under_nav { position: absolute; top: 0; left: 0; width: 100%; }
	.under_nav .logo img { max-width: 230px; width: 100%; min-width: 230px; }
	.under_nav .under_head { display: flex; justify-content: space-between; flex-wrap: nowrap; width: 98%; padding-left: 1%; padding-right: 1%;
	background: rgb(67,67,72);
	background: -moz-linear-gradient(top, rgb(67,67,72) 0%, rgb(56,56,60) 33%, rgb(56,56,60) 65%, rgb(67,67,72) 100%); 
	background: -webkit-linear-gradient(top, rgb(67,67,72) 0%,rgb(56,56,60) 33%,rgb(56,56,60) 65%,rgb(67,67,72) 100%); 
	background: linear-gradient(to bottom, rgb(67,67,72) 0%,rgb(56,56,60) 33%,rgb(56,56,60) 65%,rgb(67,67,72) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#434348', endColorstr='#434348',GradientType=0 );
	}
	.under_nav .under_head dt { width: 20%; padding-top: 15px; }
	.under_nav .under_head dd { width: 80%; }
	.under_nav .under_head dd ul { display: flex; justify-content: flex-end; }
	.under_nav .under_head dd ul li { margin-right: 10px; font-size: 0.9em; }
	.under_nav .under_head .tel { font-size: 1.3em; font-family: 'Libre Baskerville', serif; letter-spacing: 2px; color: #FFF; padding: 8px 10px; text-align: right; }
	.under_nav .under_head .tel span { font-size: 0.6em; }

	.under_nav nav { background: #FFF; }
	.under_nav nav ul { display: flex; display: -webkit-flex; justify-content: space-between; }
	.under_nav nav ul li { text-align: center; border-left: #EEE 1px solid; border-right: #EEE 1px solid; border-bottom: #EEE 2px solid; width: 18%; font-size: 0.9em; font-family: 'Merriweather', serif; }
	.under_nav nav ul li a { color: #777; display: block; padding-top: 10px; padding-bottom: 10px; }
	.under_nav nav ul li a:hover { background: #EEE; color: #000; }
	
	.fixed_nav { position: fixed; top: 0; left: 0; z-index: 2; width: 100%; transition: .5s; transform: translateY(-100%); padding-bottom: 10px; }
	.fixed_nav .logo img { max-width: 220px; width: 100%; }
	.fixed_nav a { text-decoration: none; transition: 0.2s; }
	
	.fixed_nav .top_fixed { display: flex; display: -webkit-flex; justify-content: space-between; }
	.fixed_nav .top_fixed a { color: #FFF; font-size: 1.4em; }
	.fixed_nav .top_fixed a:hover { color: #EEE; }
	.fixed_nav .under_fixed { background: #FFF; display: flex; display: -webkit-flex; justify-content: space-between; box-shadow: 0px 5px 5px -3px rgba(0,0,0,0.15); z-index: 100; }
	.fixed_nav .under_fixed li { text-align: center; border-left: #EEE 1px solid; border-right: #EEE 1px solid; border-bottom: #EEE 2px solid; width: 18%; font-family: 'Merriweather', serif;  }
	.fixed_nav .under_fixed li a { color: #777; display: block; padding-top: 10px; padding-bottom: 10px; }
	.fixed_nav .under_fixed li a:hover { background: #EEE; color: #000; }
	.is-show { transform: translateY(0); }
}

@media screen and (max-width: 650px) {
	nav { position: absolute; top: 0; width: 100%; font-family: 'Merriweather', serif; }
	nav.topnavi dl dt { background: rgba(55,56,60,0.9); padding: 10px 2%; position: fixed; top: 0; width: 100%; z-index: 1; }
	nav.topnavi .logo img { max-width: 220px; width: 100%; }
	
	.under_head dt { padding: 10px 8px; position: fixed; top: 0; width: 100%; z-index: 100;
	background: rgb(67,67,72);
	background: -moz-linear-gradient(top, rgb(67,67,72) 0%, rgb(56,56,60) 33%, rgb(56,56,60) 65%, rgb(67,67,72) 100%); 
	background: -webkit-linear-gradient(top, rgb(67,67,72) 0%,rgb(56,56,60) 33%,rgb(56,56,60) 65%,rgb(67,67,72) 100%); 
	background: linear-gradient(to bottom, rgb(67,67,72) 0%,rgb(56,56,60) 33%,rgb(56,56,60) 65%,rgb(67,67,72) 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#434348', endColorstr='#434348',GradientType=0 );
}
	.under_head dd { display: none; }
	.under_head .logo img { max-width: 220px; width: 100%; }
}

/* drawer nav */
.drawer-toggle { display: none; }
@media screen and (max-width: 651px) {
	.drawer-menu { z-index: 30; }
	.drawer-menu p { font-family: 'Noto Sans JP', sans-serif; font-size: 0.7em; }
	.drawer-nav ul { background: rgba(55,56,60,0.9); z-index: 30; }
	.drawer-nav ul li { padding-left: 10px; padding-right: 10px; border-bottom: 1px #64666d solid; }
	.drawer-nav ul li a { display: block; padding: 15px 10px 15px 20px; text-decoration: none; color: #FFF; font-size: 1em; }
	.drawer-nav ul li a:hover { color: #EEE; }
}



.maru01 {
 height:25px;
 width:25px;
 border-radius:50%;
 line-height:25px;
 text-align:center;
	background: #E0EFC5;
	color:	#26640D;
	float: left;
	margin-right: 10px;
}

/* pro */
.pro_top_box{background:#000;padding:15px 25px;color:#FFF;}
.pro_top_box a{color:#FFF;text-decoration:none;}

.pro_intro{display:flex; justify-content: space-around;}
.pro_intro li{width:33%;}
.pro_intro li a{text-decoration:none;color:#000;}
.pro_intro .pro_name{text-align:center;margin-top:10px;font-size:1.1rem;}
.pro_intro .pro_name span{display:block;font-size:0.8rem;}

@media screen and (max-width: 650px){
	.pro_intro .pro_name{text-align:center;margin-top:10px;font-size:0.9rem;}
}

.fb_div *, .fb_div_center *, .fb_div_left * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	word-wrap: break-word;
	line-height:1.5em;
}

/*　均等並び　*/
.fb_div {
	width:100%;
	margin:0 auto;
	text-align:center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
	-webkit-box-pack: justify;
	-webkit-justify-content: space-between;
	-ms-flex-pack: justify;
	justify-content: space-between;
  -webkit-box-align: stretch;
     -ms-flex-align: stretch;
        align-items: stretch;
	flex-wrap: wrap;
}

/*　中央寄せ　*/
.fb_div_center {
	width:100%;
	margin:0 auto;
	text-align:center;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: start;
    -webkit-align-items: flex-start;
    -ms-flex-align: start;
    align-items: flex-start;
  -webkit-box-pack: center;
     -ms-flex-pack: center;
   justify-content: center;
  -webkit-box-align: stretch;
     -ms-flex-align: stretch;
        align-items: stretch;
	flex-wrap: wrap;
}

/*　左寄せ（普通？）　*/
.fb_div_left {
	width:100%;
	margin:0;
	padding:0;
	text-align:left;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
  -webkit-box-pack: start;
     -ms-flex-pack: start;
   justify-content: flex-start;
  -webkit-box-align: stretch;
     -ms-flex-align: stretch;
        align-items: stretch;
	flex-wrap: wrap;
}

.fb_div, .fb_div_center, .fb_div_left, .fb_div *, .fb_div_center *, .fb_div_left * { vertical-align:top; }

.flx_item {
	margin:0 0 0.6em;
	-webkit-box-flex:1;
	-webkit-flex:1;
	-ms-flex:1;
	flex:1;
}


.flx_item * img, .fb_div * img, .fb_div_center * img, .fb_div_left * img {
	width:100%;
}



.pro_rireki { display:inline-block; }
.pro_rireki li { list-style-type:none;}
.pro_rireki .nen, .pro_rireki .naiyou { display:inline-block;}
.pro_rireki .naiyou { margin-left:1rem; }

/*ポップアップここから*/
.popup_wrap input {
  display: none;
}

.popup_overlay {
  display: flex;
  justify-content: center;
  overflow: auto;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
  opacity: 0;
  transition: opacity 0.5s, transform 0s 0.5s;
  transform: scale(0);
}

.popup_trigger {
  position: absolute;
  width: 100%;
  height: 100%;
}

.popup_content {
  position: relative;
  align-self: center;
  width: 90%;
  max-width: 800px;
  padding: 36px 30px 30px;
  box-sizing: border-box;
  background: #fff;
  line-height: 1.4em;
  transition: 0.5s;
}

.close_btn {
  position: absolute;
  top: 14px;
  right: 16px;
  font-size: 30px;
  cursor: pointer;
}

.popup_wrap input:checked ~ .popup_overlay {
  opacity: 1;
  transform: scale(1);
  transition: opacity 0.5s;
}

.open_btn {
	color: #99393f;
	text-decoration:underline;
	cursor:pointer;
}
.open_btn:hover{
  color: #ca0000;
}
/*ポップアップココまで*/

@media screen and (min-width: 651px) {
	.col_12p12 { width:100%; }	/* 12分の12 */
	.col_11p12 { width:90.5%; }	/* 12分の11 */
	.col_10p12 { width:82%; }		/* 12分の10 */
	.col_9p12 { width:73.8%; }	/* 12分の9 */
	.col_8p12 { width:65.6%; }	/* 12分の8 */
	.col_7p12 { width:57.4%; }	/* 12分の7 */
	.col_6p12 { width:49.2%; }	/* 12分の6 半分 */
	.col_5p12 { width:41.0%; }	/* 12分の5 */
	.col_4p12 { width:32.8%; }	/* 12分の4 3分割 */
	.col_3p12 { width:24.6%; }	/* 12分の3 4分割 */
	.col_2p10 { width:19.7%; }	/* 10分の2 5分割 */
	.col_2p12 { width:16.4%; }	/* 12分の2 6分割 */
	.col_1p12 { width:8.2%; }		/* 12分の1 12分割 */
}

@media screen and (max-width: 650px) {
	.col_1p12, .col_2p12, .col_2p10, .col_3p12, .col_4p12, .col_5p12, .col_6p12, .col_7p12, .col_8p12, .col_9p12, .col_10p12, .col_11p12, .col_12p12
	{ width:100%; }
	* .ol_lst li, * .ul_lst li { margin-left:2em; }
}