@charset "utf-8";

/* font */
@font-face { font-family: 'PADDLERS'; src: url('../font/PADDLERS-Regular.eot'); /* IE9以上用 */ src: url('../font/PADDLERS-Regular.eot?#iefix') format('embedded-opentype'), /* IE8以前用 */ url('../font/PADDLERS-Regular.woff') format('woff'), /* モダンブラウザ用 */ url('../font/PADDLERS-Regular.ttf') format('truetype'); /* iOS, Android用 */ font-weight: normal; font-style: normal; }
@font-face { font-family: 'Gidole'; src: url('../font/Gidole-Regular.ttf') format('truetype'); font-weight: normal; font-style: normal; }

/* reset */
* { padding: 0; margin: 0; box-sizing: border-box; }
table { border-collapse: collapse; border-spacing: 0; }
fieldset, img { border: 0; }
address, caption, cite, code, dfn, em, var { font-style: normal; font-weight: normal; }
ol, ul { list-style: none; }
caption, th { text-align: left; }
h1, h2, h3, h4, h5, h6 { font-size: 100%; font-weight: normal; }
q:before, q:after { content: ''; }
abbr, acronym { border: 0; }
section, article { display: block; }
/* base */
html { -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%; }
body { word-wrap : break-word; overflow-wrap : break-word; font-kerning: normal; -webkit-font-kerning: normal; font-size: 16px; font-family: Gidole, YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; text-align: center; letter-spacing: 0.03em; margin: 0px; box-sizing: border-box; background-color: #FFF; color: #333; padding: 0em; line-height: 2em; }
img { vertical-align: bottom; height: auto; width: 100%; }
::selection { background: #333333; color: #FFF; }
::-moz-selection { background: #333333; }

/* link */
a:link, a:visited, a:active { color: #333333; text-decoration: none; }
a:hover { color: #333333; text-decoration: none; opacity: 0.8; filter: alpha(opacity=80); -ms-filter: "alpha(opacity=80)";  -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }
a:hover img { opacity: 0.8; filter: alpha(opacity=80); -ms-filter: "alpha(opacity=80)";  -webkit-transition: all 0.2s ease; -moz-transition: all 0.2s ease; -o-transition: all 0.2s ease; transition: all 0.2s ease; }

/* clear */
.clear { clear: both; }
.cbox { zoom: 100%; }
.cbox:after { content: " "; clear: both; height: 0; display: block; visibility: hidden; }

/* options */
.r { border-radius: 50%; -webkit-border-radius: 50%; -moz-border-radius: 50%; }
.rl { -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; }

/* wordpress */
.wp-caption.alignleft { float: left; }
.wp-caption.alignleft img { margin-top: 0px; }
.wp-caption.alignleft .wp-caption-text { font-size: 0.8em; }
.wp-caption.alignright { float: right; }
.wp-caption.alignright img { margin-top: 0px; }
img.centered { display: block; margin-left: auto; margin-right: auto; }
img.alignright { padding: 0px; display: inline; max-width: 45%; margin-top: 0px; margin-right: 0; margin-bottom: 2em; margin-left: 3em; }
img.alignleft { padding: 0px; display: inline; max-width: 45%; margin-top: 0; margin-right: 3em; margin-bottom: 2em; margin-left: 0; }
.aligncenter { margin-top: 2em; margin-bottom: 2em; margin-right: auto; margin-left: auto; }
.alignright { float: right; margin-bottom: 2em; margin-left: 3em; }
.alignleft { float: left; margin-bottom: 2em; margin-right: 3em; }
img.aligncenter { display: block; }

/* youtube */
.youtube { position: relative; width: 100%; padding-top: 56.25%; }
.youtube iframe { position: absolute; top: 0; right: 0; width: 100% !important; height: 100% !important; }

/* wrapper */
#wrapper { margin: auto; width: 100%; min-width: 1200px; padding-right: 5%; padding-left: 5%; padding-top: 4em; padding-bottom: 4em; margin-left: auto; margin-right: auto; text-align: left; }
#header { float: left; width: 20%; }

/* header */
#header h1 { margin-bottom: 4em; background-color: #FFF; width: 75%; margin-top: 2em; }
#header nav { display: inline-block; }
#header nav li a{ display: block; font-size: 1.85em; font-family: PADDLERS; margin-bottom: 0.65em; letter-spacing: 0em; }
#header dl { display: inline-block; padding-top: 2em; width: 85%; }
#header dl dt { display: inline-block; font-size: 0.9em; }
#header dl dd a { padding-bottom: 0.35em; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: #000; font-size: 0.8em; }
#header nav li a:hover,
.page-about #header nav li:nth-child(1) a,
.page-access #header nav li:nth-child(2) a,
.post-type-archive-event #header nav li:nth-child(3) a,
.single-event #header nav li:nth-child(3) a,
.post-type-archive-talk #header nav li:nth-child(4) a,
.single-talk #header nav li:nth-child(4) a,
.post-type-archive-shop #header nav li:nth-child(5) a,
.single-shop #header nav li:nth-child(5) a { color: #999; }

/* home */
#main_images  { margin-bottom: 4.5em; float: right; width: 80%; }
#special { width: 80%; margin-right: auto; margin-bottom: 4.5em; margin-left: auto; clear: both; display: block; z-index: 1; padding-top: 0.1px; position: relative; }
#special:after { content: ""; border: 1px solid #000; position: absolute; z-index: 1; height: 100%; width: 100%; left: 0px; top: 0px; }

/* main */
#main { margin-bottom: 4em; overflow:hidden; }
#top { margin-bottom: 4em; overflow:hidden; clear: both; }
#top h2 { font-family: PADDLERS; font-size: 2em; margin-bottom: 0.85em; }
#top h2 span { vertical-align:top; font-family: YuGothic, "Yu Gothic", "游ゴシック", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif, Helvetica, Arial; font-size: 0.45em; margin-left: 1.2em; }
#top h2 i { font-size: 0.95em; display: inline-block; margin-right: 0.3em; }
#top h2 i img { width: 1.2em; }
#top .event { width: 100%; margin-bottom: 4em; overflow: hidden; }
#top .event li { font-size:1.2em; display:inline-block; width: 30.5%; margin-right: 3.5%; text-align: center; }
#top .event li:nth-child(3) { margin-right: 0; }
#top .event dt { margin-bottom: 1.2em; }
#top .event dd.date { text-align: center; margin-bottom: 0.5em; line-height: 1.5em; display: inline-block; padding-bottom: 0.15em; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: #000; margin-right: auto; margin-left: auto; }
#top .event dd.title { line-height: 1.5em; }

/* archive */
#archive { overflow: hidden; }
#archive li { font-size:1.2em; float: left; width: 30%; margin-right: 5%; margin-bottom: 3em; text-align: center; }
#archive li:nth-child(3n) { margin-right: 0px; }
#archive li:nth-child(3n+1) { clear: both; }
#archive dt { margin-bottom: 1em; }
#archive dd.date { text-align: center; margin-bottom: 0.5em; line-height: 1.5em; display: inline-block; padding-bottom: 0.15em; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: #000; margin-right: auto; margin-left: auto; }
#archive dd.title { line-height: 1.5em; }
#archive dd.ex { margin-top:0.8em; font-size: 0.7em; line-height: 1.9em; text-align:left; }

/* footer */
#footer { padding-top: 1.5em; border-top-width: 1px; border-top-style: solid; border-top-color: #000; margin-top: 3em; overflow: hidden; font-size: 0.8em; line-height: 1.8em; }
#footer h1 { font-weight: bold; display: inline-block; margin-right: 3em; float: left; font-size: 1.2em; }
#footer .en ,#footer .jp{ float: left; margin-right: 3em; }
#footer .copyright { float: right; text-align: right; }
#footer .copyright li { display: inline-block; font-size: 1.8em; margin-bottom: 0.5em; margin-left: 0.5em; }

/* layer */
.layer { margin-top:3em; text-align: left; width: 60%; margin-right: auto; margin-left: auto; }
.layer .under_title { vertical-align:top; display:inline-block; width:25%; font-size: 2.8em; line-height: 1em; margin-bottom: 0; margin-top: 0 !important; font-family: PADDLERS; }
.layer .under_text { vertical-align:top; display:inline-block; width:74%; }
.layer h1 { font-size: 2em; line-height: 1.4em; margin-bottom: 1em; margin-top: 2em; }
.layer h2 { font-size: 2em; line-height: 1.4em; margin-bottom: 1em; margin-top: 2em; }
.layer h3 { font-size: 2em; line-height: 1.4em; margin-bottom: 1em; margin-top: 2em; }
.layer h4 { font-size: 1.5em; line-height: 1.4em; margin-bottom: 1em; margin-top: 3em; font-weight: bold; }
.layer h5 { font-size: 1.2em; line-height: 1.4em; margin-bottom: 1em; margin-top: 3em; font-weight: bold; }
.layer h6 { font-size: 1.1em; line-height: 1.4em; margin-bottom: 1em; margin-top: 3em; font-weight: bold; }
.layer p { font-size: 1em; line-height: 2em; margin-bottom: 3em; text-align: justify; }
.layer strong { font-weight: bold; font-size: 1.1em; }
.layer blockquote { padding-right: 10%; padding-left: 10%; position: relative; margin-top: 6em; margin-bottom: 6em; }
.layer blockquote:before { content: "“"; position: absolute; left: 2%; top: 0em; font-size: 7em; }
.layer blockquote:after { content: "”"; position: absolute; right: 2%; bottom: -0.5em; font-size: 7em; }
.layer ul, .layer ol, .layer dl { margin-bottom: 4em; margin-top: 2em; }
.layer li { font-size: 1.4em; line-height: 1.6em; margin-top: 1em; }
.layer li:first-child { margin-top: 0px; }
.layer dt { font-weight: bold; margin-bottom: 0.5em; font-size: 1.2em; margin-top: 2em; }
.layer dt:first-child { margin-top: 0px; }
.layer ul li { padding-left: 1em; border-left-width: 1px; border-left-style: solid; border-left-color: #000000; }
.layer ol li { margin-left: 1.5em; list-style-position: outside; list-style-type: decimal; }
.layer img { margin-top: 1.5em; margin-bottom: 1.5em; }
.layer p img { margin-top: 0em; margin-bottom: 0em; }

/* snap */
.snap { width:100%; margin-right:auto; margin-left:auto; margin-bottom:5em; margin-top:7em; }
.snap li { display:inline-block; width:31%; margin-right:2.5%; }
.snap li:nth-child(3) { margin-right:0; }

/* talk_entry */
.intro { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; text-align: center; width: 60%; margin-top: 1em; margin-right: auto; margin-bottom: 4em; margin-left: auto; }
.intro #title { font-size: 2.5em; font-family: 'Vollkorn', serif; margin-top: 1em; margin-bottom: 0.5em; }
.intro #number { background-size: contain; font-size: 2em; font-family: 'Vollkorn', serif; margin-top: 1em; margin-bottom: 0.5em; background-image: url(../images/coffee.svg); background-repeat: no-repeat; background-position: center center; display: inline-block; margin-right: auto; margin-left: auto; padding-top: 0.8em; padding-right: 2em; padding-bottom: 2.2em; padding-left: 2em; }
.intro #name { font-size: 1.5em; margin-top: 1em; margin-bottom: 1.5em; }
.intro #lead { font-size: 1.1em; line-height: 2.2em; margin-top: 1em; margin-bottom: 0.5em; }
.talk_entry { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; text-align: left; width: 60%; margin-right: auto; margin-bottom: 8em; margin-left: auto; padding: 5%; border: 1px solid #000; }
.talk_entry h1 { font-size: 2em; line-height: 1.4em; margin-bottom: 0.5em; margin-top: 0.5em; }
.talk_entry h2 { font-size: 2em; line-height: 1.4em; margin-bottom: 0.5em; margin-top: 1em; }
.talk_entry h3 { font-size: 2em; line-height: 1.4em; margin-bottom: 0.5em; margin-top: 1em; }
.talk_entry h4 { font-size: 1.5em; line-height: 1.4em; margin-bottom: 1em; margin-top: 3em; font-weight: bold; }
.talk_entry h5 { font-size: 1.2em; line-height: 1.4em; margin-bottom: 1em; margin-top: 3em; font-weight: bold; }
.talk_entry h6 { font-size: 1.1em; line-height: 1.4em; margin-bottom: 1em; margin-top: 3em; font-weight: bold; }
.talk_entry p { font-size: 1em; line-height: 2em; margin-bottom: 1em; text-align: justify; }
.talk_entry strong { font-weight: bold; font-size: 1.1em; }
.talk_entry blockquote { padding-right: 10%; padding-left: 10%; position: relative; margin-top: 6em; margin-bottom: 6em; }
.talk_entry blockquote:before { content: "“"; position: absolute; left: 2%; top: 0em; font-size: 7em; }
.talk_entry blockquote:after { content: "”"; position: absolute; right: 2%; bottom: -0.5em; font-size: 7em; }
.talk_entry ul, .entrybody ol, .entrybody dl { margin-bottom: 4em; margin-top: 2em; }
.talk_entry li { font-size: 1.4em; line-height: 1.6em; margin-top: 1em; }
.talk_entry li:first-child { margin-top: 0px; }
.talk_entry dt { font-weight: bold; margin-bottom: 0.5em; font-size: 1.2em; margin-top: 2em; }
.talk_entry dt:first-child { margin-top: 0px; }
.talk_entry ul li { padding-left: 1em; border-left-width: 1px; border-left-style: solid; border-left-color: #000000; }
.talk_entry ol li { margin-left: 1.5em; list-style-position: outside; list-style-type: decimal; }
.talk_entry img { margin-top: 1.5em; margin-bottom: 1.5em; }
.talk_entry p img { margin-top: 0em; margin-bottom: 0em; }

/* entry */
.entrybody { text-align: left; width: 60%; margin-top: 1em; margin-right: auto; margin-bottom: auto; margin-left: auto; }
.entrybody h1 { font-size: 2em; line-height: 1.4em; margin-bottom: 0.5em; margin-top: 0.5em; }
.entrybody h2 { font-size: 2em; line-height: 1.4em; margin-bottom: 0.5em; margin-top: 1em; }
.entrybody h3 { font-size: 2em; line-height: 1.4em; margin-bottom: 0.5em; margin-top: 1em; }
.entrybody h4 { font-size: 1.5em; line-height: 1.4em; margin-bottom: 1em; margin-top: 3em; font-weight: bold; }
.entrybody h5 { font-size: 1.2em; line-height: 1.4em; margin-bottom: 1em; margin-top: 3em; font-weight: bold; }
.entrybody h6 { font-size: 1.1em; line-height: 1.4em; margin-bottom: 1em; margin-top: 3em; font-weight: bold; }
.entrybody p { font-size: 1em; line-height: 2em; margin-bottom: 3em; text-align: justify; }
.entrybody strong { font-weight: bold; font-size: 1.1em; }
.entrybody blockquote { padding-right: 10%; padding-left: 10%; position: relative; margin-top: 6em; margin-bottom: 6em; }
.entrybody blockquote:before { content: "“"; position: absolute; left: 2%; top: 0em; font-size: 7em; }
.entrybody blockquote:after { content: "”"; position: absolute; right: 2%; bottom: -0.5em; font-size: 7em; }
.entrybody ul, .entrybody ol, .entrybody dl { margin-bottom: 4em; margin-top: 2em; }
.entrybody li { font-size: 1.4em; line-height: 1.6em; margin-top: 1em; }
.entrybody li:first-child { margin-top: 0px; }
.entrybody dt { font-weight: bold; margin-bottom: 0.5em; font-size: 1.2em; margin-top: 2em; }
.entrybody dt:first-child { margin-top: 0px; }
.entrybody ul li { padding-left: 1em; border-left-width: 1px; border-left-style: solid; border-left-color: #000000; }
.entrybody ol li { margin-left: 1.5em; list-style-position: outside; list-style-type: decimal; }
.entrybody img { margin-top: 1.5em; margin-bottom: 1.5em; }
.entrybody p img { margin-top: 0em; margin-bottom: 0em; }
.entrybody .date { font-size:1.3em; padding-bottom: 0.15em; border-bottom-width: 1px; border-bottom-style: dashed; border-bottom-color: #000; }

/* cart */
.cart_box { padding-top: 2em; border-top-width: 1px; border-top-style: solid; border-top-color: #000000; margin-top: 2em; margin-bottom: 2em; }
.cart_box .cartjs_box .cartjs_product_name { font-size: 2em; display: block;  letter-spacing: 0em; }
.cart_box .cartjs_box .cartjs_product_form .cartjs_product_table table { width: 100%; margin-bottom: 1em; }
.cart_box .cartjs_box .cartjs_product_form .cartjs_product_table tr.cartjs_sales_price {  }
.cart_box .cartjs_box .cartjs_product_form .cartjs_product_table tr.cartjs_product_num input[type=text] { border-radius: 5px; -webkit-border-radius: 5px; -moz-border-radius: 5px; font-size: 1em; line-height: 1em; padding-top: 0.3em; padding-right: 0.5em; padding-bottom: 0.3em; padding-left: 0.5em; margin: 0px; border: 1px solid #CCC; background-color: #F3F4F6; text-align: center;  }
.cart_box .cartjs_box .cartjs_product_form .cartjs_product_table th { padding-top: 1em; padding-bottom: 1em; width: 15%; font-size: 1.1em; line-height: 1.2em; vertical-align: middle; }
.cart_box .cartjs_box .cartjs_product_form .cartjs_product_table td { position: relative; padding-top: 0.3em; padding-right: 0px; padding-bottom: 0.3em; padding-left: 0px !important; }
.cart_box .cartjs_box .cartjs_product_form .cartjs_cart_in input { cursor: pointer;  font-size: 1.2em; line-height: 1em; color: #FFF; background-color: #000000; padding-top: 0.8em; padding-bottom: 0.8em; display: block; width: 100%; border-top-style: none; border-right-style: none; border-bottom-style: none; border-left-style: none; margin-bottom: 1em; }
.cart_box .cartjs_box .cartjs_product_form .cartjs_cart_in input:hover { color: #000000; background-color: #eee; }
.cart_box .cartjs_box .cartjs_product_form .cartjs_product_table table tbody .cartjs_product_num td:before { content: ""; }
.cart_box .cartjs_box .cartjs_product_form .cartjs_product_table .cartjs_option td { position: relative; }
.cart_box .cartjs_box .cartjs_product_form .cartjs_product_table .cartjs_option td:before { content: "\f0d7"; position: absolute; left: 0.8em; top: 0.7em; font-family: FontAwesome; z-index: 999; }
.cart_box .cartjs_box .cartjs_product_form .cartjs_product_table .cartjs_option select { -webkit-appearance: none; -moz-appearance: none; appearance: none; background-color: #F3F4F6; padding-top: 0.3em; padding-right: 1em; padding-bottom: 0.3em; padding-left: 2em; border: 1px solid #CCC;  font-size: 1.4em; line-height: 1.2em; }

/* sp */
body { }
body { }
body { }
body { }
body { }
body { }
body { }

@media screen and (min-width: 0px) and (max-width: 1000px) {
body { font-size: 12px; width: 300px; }
}
@media screen and (min-width: 1001px) and (max-width: 1350px) {
body { font-size: 13px; }
}
@media screen and (min-width: 1351px) and (max-width: 1450px) {
body { font-size: 14px; }
}
@media screen and (min-width: 1451px) and (max-width: 1550px) {
body { font-size: 15px; }
}
