/*
Theme Name: MI-LAB default
Text Domain: MI-LAB
Version: 1.0
Author: Masaru Ide
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------

	0. 	CSS Reset
	1. 	Document Setup
	2. 	Element Base
	3. 	Helper Classes
	4. 	Site Header
	5. 	Menu Modal
	6. 	Search Modal
	7. 	Page Templates
		a. 	Template: Cover Template
		c. 	Template: Full Width
	8.  Post: Archive
	9.  Post: Single
	10. Blocks
	11. Entry Content
	12. Comments
	13. Site Pagination
	14. Error 404
	15. Widgets
	16. Site Footer
	17. Media Queries

----------------------------------------------------------------------------- */




/* -------------------------------------------------------------------------- */

/*	0. CSS Reset
/* -------------------------------------------------------------------------- */

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, 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%;
  vertical-align:baseline;
  background:transparent;
}

body {
  line-height:1;
}

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

nav ul {
  list-style:none;
}

blockquote, q {
  quotes:none;
}

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

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

/* change colours to suit your needs */
ins {
  background-color:#ff9;
  color:#000;
  text-decoration:none;
}

/* change colours to suit your needs */
mark {
  background-color:#ff9;
  color:#000; 
  font-style:italic;
   font-weight:bold;
}

del {
  text-decoration: line-through;
}

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

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

/* change border colour to suit your needs */
hr {
  display:block;
  height:1px;
  border:0;   
  border-top:1px solid #cccccc;
  margin:1em 0;
  padding:0;
}

input, select {
  vertical-align:middle;
}



/* -------------------------------------------------------------------------- */

/*	1. Document Setup
/* -------------------------------------------------------------------------- */

html {
	font-size: 62.5%; /* 1rem = 10px */
	scroll-behavior: smooth;
}


body {
	background: #fff;
	box-sizing: border-box;
	color: #555;
	font-family:"Noto Sans JP","Helvetica Neue", Helvetica, sans-serif;
	font-size: 1.5rem;
	line-height:1.8em;
	text-align: left;
}

a { color:#5b9b39;}
a:hover {color:#ccc;}
a:active { color:#5b9b39;}
a:visited {color:#999;}

/* -------------------------------------------------------------------------- */

/*	2. Element Base
/* ---------------------------------------------*---------------------------- */



h1,
h2,
h3,
h4,
h5,
h6,
.faux-heading {
	font-feature-settings: "lnum";
	font-variant-numeric: lining-nums;
	font-weight: 700;
	letter-spacing: -0.0415625em;
	line-height: 1.25;
	margin: 3.5rem 0 2rem;
	color:#666;
}

h1,
.heading-size-1 {
	font-size: 2.2rem;
	font-weight: 800;
	line-height: 1.138888889;
}

h2,
.heading-size-2 {
	font-size: 2.8rem;
}

h3,
.heading-size-3 {
	font-size: 2.4rem;

}

h4,
.heading-size-4 {
	font-size: 2.1rem;
}

h5,
.heading-size-5 {
	font-size: 1.6rem;
}

h6,
.heading-size-6 {
	font-size: 1.4rem;
	letter-spacing: 0.03125em;
	text-transform: uppercase;
}

p {
	line-height: 1.6;
	margin: 0 0 1em 0;
}

em,
i,
q,
dfn {
	font-style: italic;
}

em em,
em i,
i em,
i i,
cite em,
cite i {
	font-weight: bolder;
}

big {
	font-size: 1.2em;
}

small {
	font-size: 0.75em;
}

b,
strong {
	font-weight: 700;
}

ins {
	text-decoration: underline;
}

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

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

abbr,
acronym {
	cursor: help;
}

address {
	line-height: 1.5;
	margin: 0 0 2rem 0;
}

hr {
	border-style: solid;
	border-width: 0.1rem 0 0 0;
	border-color: #dcd7ca;
	margin: 4rem 0;
}




/* Lists ------------------------------------- */

ul,
ol {
	margin: 0;
}

ul {
	list-style: disc;
}

ul ul {
	list-style: circle;
}

ul ul ul {
	list-style: square;
}

ol {
	list-style: decimal;
	margin: 0 0 0 2rem;
}

ol ol {
	list-style: lower-alpha;
}

ol ol ol {
	list-style: lower-roman;
}

li {
	line-height: 1.5;
	margin: 0.5rem 0 0 0;
}

li > ul,
li > ol {
	margin: 0 0 0 2rem;
}

.reset-list-style,
.reset-list-style ul,
.reset-list-style ol {
	list-style: none;
	margin: 0;
}

.reset-list-style li {
	margin: 0;
}

dt,
dd {
	line-height: 1.5;
}

dt {
	font-weight: 700;
}

dt + dd {
	margin-top: 0.5rem;
}

dd + dt {
	margin-top: 1.5rem;
}
.clearfix:after {
	content: "";
	display: block;
	clear: both;
}
 
.clearfix:before {
　　　　content: "";
	display: block;
	clear: both;
}
 
.clearfix {
	display: block;
}

/* -------------------------------------------------------------------------- */

/*	4. Site Header
/* ---------------------------------------------*---------------------------- */


header#site-header{
	  position: fixed;
	width: 100%;
	margin: 0;
	height:80px;
		z-index:100;
}

header#site-header div.header-titles h1.site-title { display:inline-block; margin:2rem 0 0 3rem;  background:url(images/common/logo.png) no-repeat; background-size:38px auto; padding-left: 45px; font-size:2.4rem; }
header#site-header div.header-titles h1.site-title a { color:#5b9b39;-webkit-transition: all .0.5s;
    transition: all 0.3s;　}
header#site-header div.header-titles h1.site-title a:visited { color:#5b9b39; }
header#site-header div.header-titles h1.site-title a:hover { color:#ccc; }
header#site-header div.header-titles h1.site-title span { display:block; font-size: 1.1rem;}
header#site-header div#nav-content { position:absolute; top:0; right:0; }

header#site-header div#nav-content nav ul#menu {
	display:flex;
	width:100%;
	margin: 0 0　0　0;
	justify-content: flex-end;
	align-items: center;
}

header#site-header div#nav-content ul#menu li {
	position:relative;
	margin:0;
}

header#site-header div#nav-content ul#menu li#menu-item-32 {
	position:absolute;
	top:9rem;
	right:0;
	margin:0;
	background: #999;
	color: #fff;
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
	line-height: 1.5;
	font-size: 1.3rem;
}

header#site-header div#nav-content ul#menu li#menu-item-32 a { ;color: #fff;}

header#site-header div#nav-content ul#menu li#menu-item-32 a:hover {
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
}


header#site-header div#nav-content ul#menu li a { 
	font-weight: 600;
	font-size:1.6rem;
	padding: 1rem 1.5rem;
}
header#site-header div#nav-content nav ul#main-nav li a {display:inline-block;position:relative;cursor:pointer;}
header#site-header div#nav-content ul#menu li a:hover { background-color: #ccc; color: #fff;-webkit-transition: all .0.5s;
    transition: all 0.3s;}


/* SNS ------------------------------------- */
div.sns { margin: 1rem 0 0;}

/* ボタン全体 */
.flowbtn6{
border-radius:12px;		
position:relative;
display:inline-block;
width:25px;
height:25px;
font-size:18px;
color:#fff!important;
transition:.5s;
text-decoration:none;
}	
/* ulタグの内側余白を０にする */
ul.snsbtniti{
padding:0!important;
	width:fit-content;
}
/* アイコンボタン全体の位置 */
.snsbtniti{
display:flex;
flex-flow:row wrap;
justify-content:space-around;
}
/* アイコンボタン同士の余白 */
.snsbtniti li{
flex:0 0 33%;
text-align:center!important;
}

/* Twitter */
.fl_tw1{
background:#55acee;
}
/* Instagramアイコン位置 */
.insta_btn6 .fa-instagram{
font-size:40px;
}
/* Instagram紫グラデ背景 */
.insta_btn6 {
background:-webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
background:linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
overflow:hidden;	
}
/* Instagramオレンジグラデ背景 */
.insta_btn6:before{
content: '';
position: absolute;
top:27px;
left:-12px;
width:59px;
height:40px;
background:-webkit-radial-gradient(#ffdb2c 7%, rgba(255, 105, 34, 0.3) 60%, rgba(255, 88, 96, 0) 70%);
background:radial-gradient(#ffdb2c 7%, rgba(255, 105, 34, 0.3) 60%, rgba(255, 88, 96, 0) 70%);
}
/* Facebookアイコン位置 */
.fl_fb6 .fa-facebook-f{
position:relative;
top:3px;
left:2px;
font-size:20px;
}
/* Facebookアイコン背景*/
.fl_fb6{
background:-webkit-linear-gradient(top, #5c80c6 0%, #34528c 74%);	
background:linear-gradient(to bottom, #5c80c6 0%, #34528c 74%);	
}

/* YouTube */
.fl_yu6 {
color:#fc0d1c!important;
box-shadow:0 0 2px #888;	
}

div#site-container { padding-top:80px; }

article {
	width: 100%;
}

div#article-container {
	width:80%;
	margin: 0 auto;
	padding: 0 0 5rem;
}

article div.page { padding: 0;}
/*article div.page h2 { display: inline; text-align:center; color:#5b9b39; margin: 0 auto; padding: 1rem 2rem ;line-height: 4rem; border: 0.5rem solid #5b9b39; border-radius: 3rem;}*/
article div.page h3 { font-size: 2.5rem; line-height: 5rem;}

/*------- 検索フィールド -------*/

article div.page div#child-cat { margin: 5rem 0 0;}
article div.page div#child-cat　ul {
	list-style-type: none;
}

div#child-cat　ul li.cat-item {
	width: 5rem;
	background: #f7c81a;
	border-radius:10px;
}


/* meta-date*/
article.page h2.top,article div.post h2.top { margin: 0 0 2rem; padding: 5rem 0 0 2rem; border-left: 1px solid #ccc; color: #666; clear:both; text-align:justify;  }
article div.page div.meta-date { margin: 9rem 0; text-align:center;}
article.post { margin: 0; }
/*article div.post h2,article div.post h3,article.page h2,article.page h3  { word-break:break-all; } */

article.page h2.bdr_none { border-left: none; padding-top:0; }

article section#Contents { padding:0;}
span.post-month,span.post-cat { background: #efefef; margin: 0 1rem; padding: 0.3rem 0.5rem; border-radius:8px;}
span.post-month { margin-left: 0; color: #666;}
div.post-date { color: #ccc;}

article.page div.entry h3.Instructors  { background: #f0f0f0; color: #666; font-size: 2.1rem; margin: 4rem 0 1rem; padding: 0.2rem 0.5rem; }

article.page div.post div.wp-block-column h3  {border-left: none; margin:0 0 1rem; padding: 0;}


article div.post div.entry,article div.page div.entry {
	margin: 5rem 0;
}

article div.page div.entry {
	float:left;
	width: 100%;
	margin: 0 0 5rem;
}
article div.post div.entry table {
	clear:both;
	margin:2rem 0 3rem;
}
article div.post div.entry table th {
	text-align:left;
	font-weight:800;
}

article div.post div.entry table th ,article div.post div.entry table td {
	padding: 1rem;
	border: 1px solid #ccc;
}
figure.wp-block-table.is-style-stripes { border-bottom:none;}


article div.entry iframe {
	width: 100%;
	min-height: 50rem;
	margin: 0 0 5rem;
}
article.page div.meta-date {position:relative;}
article.page ul.post-categories { position:absolute; list-style-type: none; top: 0; right:0; font-size: 1.2rem;}
article.page ul.post-categories li　a { color: #999; }
article.page ul.post-categories li　a:visited { color: #999; }

/* Categories Archives*/
div#List {
	display: flex;	
	flex-wrap: wrap;
	width:100%;
	margin: 0 auto;
}

div.List_box {
	display:inline-block;
	width:46%;
	margin: 2em 1% 1em;
}

div.List_box p.thumb { display:block; width:auto; border: 2px solid; background: #ccc; height: 12em;  overflow:hidden;}


div.List_box.workshop p.thumb{
	border-color: #3366cc;
background-image:url(images/common/blank-img.png);
	background-color: rgba(0, 0, 0, 0.6);
background-blend-mode: darken;
}

div.List_box.exhibition p.thumb { border-color: #cc3333; background-color:#cc3333;　}
div.List_box p.thumb img { width:100%; height:12em;  object-fit: cover; }
div.List_box p.date { display:inline; font-size: 1.2rem; color: #fff; padding: 0.3rem 0.5rem; border-radius:6px;}
div.List_box.workshop p.date { background: #3366cc; }
div.List_box.exhibition p.date { background: #cc3333;  }
div.List_box.publishing p.date { background: #339933;  }

div.List_box h3 {
	font-size: 1.2em;
	font-weight: 600;
	margin: 0.5rem 0 1rem;
	min-height:  3em;

}

article div.post div.entry figure.wp-block-gallery　{ margin: 5rem 0!important;}
article div.post div.entry figure.wp-block-gallery a　{ overflow:hidden!important;}

section#Contents div.navigation {
	width: 100%;
	display: flex;
	margin: 3em 0 3em;
	line-height: 1.4em;
	-webkit-justify-content: center;
    justify-content: center;
}
section#Contents div.navigation .page-numbers {
	width: 2em;
	height: 2em;
	margin: 0 0.5em;
	text-align:center;
  line-height: 2em;
  vertical-align: middle;
}
section#Contents div.navigation ul.page-numbers {
	border:none;
	width: 100%;

}
section#Contents div.navigation ul.page-numbers li {
	display:inline;

}

section#Contents div.navigation .page-numbers.next,section#Contents div.navigation .page-numbers.prev {
	width: 3em;
	border-radius: 0;
	border:none;
	text-align:left;
}
section#Contents div.navigation .page-numbers.current {
	background:#5b9b39;
	padding: 0.5em;
	color: #fff;
	border-radius:6px;
}



article div.page div.entry ul li { margin: 1rem 0 0 2rem; }
article div.post div.entry ul  { margin: 0 0 2rem 2rem; list-style-type:disc; }
article div.post div.entry ul.table  { clear:both; margin:0; }
article div.post div.entry ul.table li  { list-style-type:none; margin:0 0 4rem; font-weight:800; color: #999; }
article div.post div.entry ul.table li ul  { margin:0 0 1rem 0; border-top: 1px dotted #ccc;}
article div.post div.entry ul.table li ul li { margin:0 0 0.5rem 0; font-weight:400; color: #333;}


article div.page table {
	width: 100%;
	margin: 3rem 0;
}

article div.page table thead th {
	padding: 2rem 0;
	text-align:center;
	border-bottom: 2px solid #333!important;
}

article div.page table td {
	padding: 3rem;
}

article div.post div.entry img {
	height: auto;
}
article div.post div.entry img.s-100 {
	margin: 3rem 2rem;
	width: 100%;
	height: auto;
}
article div.post div.entry img.s-50 { width: 50%; }
article div.post div.entry img.s-30 { width: 30%; }
div#child-cat ul li {
	display:inline;
	list-style-type:none;
	margin: 1rem;
	padding: 1.5rem 2rem;
	background:  #f7c81a;
	font-weight: bold;
	border-radius: 10px;
}

article div.post div.entry p.apply {
	padding: 1em 1.5em;
	margin: 2em 0 1em;
	border: 2px solid #999;
	border-radius:20px;
	background:#efefef;
	text-align:center;
	font-size: 1.1em;
}


section#newentry h2 {
	font-size: 2.3rem;
	margin: 0;
	color:#ccc;
	padding:5rem 0 0 2rem;
	border-left: 1px solid #ccc;
}
div.category-description {
position:absolute;
	top: 0; 
	left: 12rem;
}
div.List {

}
div.article_box {
	position:relative;
	float: left;
	width:30%;
	margin: 3em 1.65% 3em;
	text-align:justify;
}
div.article_box p.thumb { display:block; width:auto; background: #ccc; }
div.article_box p.thumb img { width:100%; height:auto; object-fit: fill; }
div.Link_more { position:absolute; top :0rem; right: 2rem;}
div.Link_more p { background: #eee; padding:0 1.5rem; line-height:2.5; border-radius:10px;}
div.Link_more a { display:block; color: #333;text-align:center;}



div#newentries div.article_box p.thumb { height: 12rem; overflow:hidden; border: 1px solid #ccc;}
div#newentries div.article_box h4 { font-size: 1.6rem; margin: 1rem 0 0;}

section#sidebar {
	width: 100%;
	border-top: 1px solid #5b9b39;
}
div#sidebar {
	width:90%;
	display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: top;
    align-items: top;
    min-height:15%;
	margin: 0 5%;
}


div#sidebar div.col_02 { margin: 2em 1.5%; width:45%; }
div#sidebar div.col_02 h3 { font-weight:600; margin: 0 0 1em; line-height: 3.0; font-size: 1.8rem; border-bottom: 1px dotted #5b9b39;}
div#sidebar div.col_02 ul li { list-style-type:none; }

/* AIR PROGRAMS */
div#news { position:relative;display:flex; background :#f0f0f0; border-radius:10px; margin: 5rem 0; padding: 2rem 2.5rem;}
div#news h3 {display:inline; font-size: 1.6rem;  padding-right: 1rem; margin: 0.6em 0 0;  }
div#news div.list {display:inline;}
div#news ul li { line-height: 1.8em;}
div#news ul li span {margin: 0 1rem 0; color: #999;}
div#news ul li a:visited {color :#5b9b39;}

div.entry .wp-block-columns { margin: 3rem 0 0; }


/* NEWS */

section#newentry { width:100%; margin: 0 0 8rem;}
section#newentry div.tab_container { position:relative; width:80%; margin: 0 10% 0; }
article section#newentry div.tab_container h2 { display:inline;line-height:5rem; margin:0; }
section#newentry div.tab_container div.tab_area h3 { font-size:2.3rem; margin:-3.2rem 0; color: #666;}
ul.tab { position:absolute; right:0; top:0;}

ul.tab li{ /*タブ部分*/
	margin: 0;
	padding: 1rem 3rem;
	list-style:none;
	line-height:1.8;
	font-weight:bold;
	color: #333;
}
ul.tab li a { color: #333; }
ul.tab li.hover a { color: #ccc; }
ul.tab li.active a { color: #333; }

.tab_content{ /*内容*/
	width: 100%; /*幅*/
	margin:3rem 0 0;
	clear: both;
	overflow: hidden;
}
.tab_content ul { margin: 5rem 0 2rem; }

.tab_content ul li{ 
	clear: both; 
	list-style:none;
	margin: 1rem 0 0rem;
	padding: 0 0 0.5rem 0.2rem;
	line-height:1.6;
	border-bottom: 1px dotted #666;

	}

.tab_content ul li span {
	font-size: 1.2rem;
	line-height:1.0;
	color: #999;
	margin: 0 1rem 0 0;
	}
.tab_content ul li a{ color:#777;	}
.tab_content ul li a:hover { color:#ccc;	}

.tab_content ul li img{ /*リスト内画像*/
	float: left;
	margin: 0 1.5rem 0 0;
	width: 5rem;
	height:auto;
	border-radius:10px;
	}
.tab_area { position:relative; margin: 3rem 0 5rem; padding:1rem 2rem; background:#f6f6f6;  }
.tab_area p { position: absolute; top:-2rem; right: 0; display: inline; font-size:1.2rem;  }
.tab_area p a { color: #666; padding: 0.5rem 1rem; background:#f6f6f6; }
.tab_area p a:hover { color: #999; opacity:0.7;  }

.tab_area.gallery,.tab_area.gallery p a{ background:#faf1f1;}
.tab_area.workshop ,.tab_area.workshop p a { background:#f1f1fa;}
.tab_area.publishing,.tab_area.publishing p a { background:#f1faeb;}


article div.post div.entry figure.instructor table tr td:nth-child(1) { width:30%;font-weight:600;!important}

article div.post div.entry figure.instructor table tr td:nth-child(2) { width:70%;!important}

/* -------------------------------------------------------------------------- */

/*	16. Site Footer
/* -------------------------------------------------------------------------- */

footer {
	margin: 0 0 0 0;
	width:100%;
	background:url(images/common/bg_slash.png);
	color: #666;
	font-size:1.3rem;

}

div#footer_container {
	display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
	width: 90%;
	padding: 4rem 5% 6rem;
}
footer div#footer_text { float:left; position:relative; width: 100%; text-align:justify;}
footer div#footer_text h2 { margin:0!important; color: #5b9b39; }
footer div#footer_text ul { display:flex; list-style-type:none; margin: 0 0 3rem;}
footer div#footer_text ul.staff { padding: 2rem 0; border-top: 1px dotted #5b9b39; border-bottom: 1px dotted #5b9b39;}
footer div#footer_text ul li { font-weight:800; margin: 0 2rem 0 0; width:20%; }
footer div#footer_text ul li ul { display:list-item; margin: 0.5rem 0 0;}
footer div#footer_text ul li ul li { font-weight: 400; width:100%;  }

footer div#footer_text ul.col_03 { padding-bottom:2rem;border-bottom: 1px dotted #5b9b39;}
footer div#footer_text ul.col_03 li {  width:25%; margin:0 5% 0 0;}
footer div#footer_text ul.col_03 li ul li {  width:100%; }

footer div#footer_text p {margin: 0.7rem 0 2rem; line-height:1.5em;}

footer div#footer_text .wp-block-columns {  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  grid-gap: 0;}

footer div#footer_text .wp-block-columns figure a {
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%;
}

footer div#footer_text .wp-block-columns figure img {
    width: 130px;
    height: 110px;
    object-fit: contain;
}

footer div#footer_text .wp-block-columns .wp-block-column {margin-left:0; }
footer div#footer_text .wp-block-columns figure figcaption { margin:0; line-height:1.2; font-size:0.8em;}
footer div#footer_text ul.btn { margin: 3.5rem 0; font-size:1.4rem; }
footer div#footer_text ul.btn li{ width:auto;  min-width: 6rem; margin:0 2rem 0 0; word-break:keep-all;}

footer div#footer_text ul.btn li a { color: #5b9b39;padding: 0.8rem 1.5rem ; background: #e4eee2; border: 1px solid #5b9b39; border-radius:8px;-webkit-transition: all .0.5s;
    transition: all 0.3s;}

footer div#footer_text ul.btn li a:hover { background: #fff; }


/* -------------------------------------------------------------------------- */

/*	17. Contact form
/* -------------------------------------------------------------------------- */
article div.post div.wpcf7 {
	width: 100%;
	margin: 3rem auto;
}
article div.post div.wpcf7 label {
	font-weight:600;
}
article div.post div.wpcf7 input,article div.post div.wpcf7 select,article div.post div.wpcf7 textarea {
	width: 96%;
	margin: 0 0rem 3rem;
	font-size:1.8rem;
	padding: 2rem 2%;
	border: none;
	border-radius: 5px;
	background: #ccc;
}
article div.post div.wpcf7 input:hover,article div.post div.wpcf7 textarea:hover {background: #f0f0f0; }
article div.post div.wpcf7 select {width:100%;}
article div.post div.wpcf7 textarea { line-height:2rem; font-size: 2.0rem;}
article div.post div.wpcf7 input.wpcf7-submit { background:#666; color: #fff; width:100%; letter-spacing:1.0rem;}
article div.post div.wpcf7 input.wpcf7-submit:hover { opacity:0.8;}

article div.post div.wpcf7 span.ws-select01 span.wpcf7-checkbox,article div.post div.wpcf7 span.ws-select02 span.wpcf7-checkbox { display:block; margin-bottom:4rem; }
article div.post div.wpcf7 span.ws-select01 span.wpcf7-checkbox span.wpcf7-list-item,article div.post div.wpcf7 span.ws-select02 span.wpcf7-checkbox span.wpcf7-list-item,article div.post div.wpcf7 span.family span.wpcf7-checkbox span.wpcf7-list-item  { display:inline-block; background: #f0f0f0; margin: 1rem 1%; padding:1rem; border-radius:10px; width:28%;}
article div.post div.wpcf7 span.ws-select01 span.wpcf7-checkbox span.wpcf7-list-item input,article div.post div.wpcf7 span.ws-select02 span.wpcf7-checkbox span.wpcf7-list-item input,article div.post div.wpcf7 span.family span.wpcf7-checkbox span.wpcf7-list-item input { width: 2rem; margin:-3px 0 0 0;}


article div.post div.wpcf7 small { margin-left: 1rem; font-size: 0.9em; color: #888; }
article div.post div.wpcf7 sapn.wpcf7-form-control-wrap.date { padding:2rem 0 0!important;}
article div.post div.wpcf7 span.wpcf7-list-item input { width: auto; margin: 0; line-height:2.5em; }

#form{
 position:relative;
}
#s-box{
 height: 38px;
 padding: 0 10px;
width: 25rem;
 border-radius:2px;
 border:solid 3px #eaeaea;
 outline: 0;
font-size: 1.6rem;
}

#s-btn-area{
 position: absolute;
 right:2rem;
 background:none;
 color:#666;
 border:none;
 font-size:20px;
 outline: 0;
}
#s-btn{
float: left;
 background: #f7c81a;
padding: 0.5rem 2rem;
 border-radius: 3px;
 font-size: 16px;
font-weight:bold;
 line-height: 31px;
	border:none;
}

article div.page div.entry form.groupsearch {
	width: 38%;
	margin:  0 auto 6rem;
	padding: 3rem;
	background: #efefef;
}




