
html, body { margin: 0;padding: 0; height: 100%; }
html { font-size: 62.5%; }

.clearfix:after { content: '';display: block;clear: both; }
.clearfix { zoom: 1; /* for IE6/7 */ }

p { margin: 0; padding: 0; }
img { vertical-align: bottom; }

body { text-align: justify; color: #000; margin: 0; padding: 0; 
-moz-font-feature-settings: 'palt' 1; -webkit-font-feature-settings: 'palt' 1; font-feature-settings: 'palt' 1; letter-spacing: .15em; 
-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
.bt_box a { display: inline-block; border: 1px solid hsla(202,56%,71%,1); padding: 10px 20px; background-color: hsla(202,56%,71%,1); color: #fff; font-size: 1.4em; line-height: 1em; }
body, .bunkyu  { font-family: "Toppan Bunkyu Mincho R", serif; }

footer { font-size: .9em; line-height: 1.6em; }
footer { text-align: center }
.phj img { width: 100%; height: auto }
.wht { color: #fff }
.sax { color: hsla(202,56%,71%,1) }
.bigg { font-size: 1.2em }
.bigg .bigs { font-size: .8em }

.pt20 { padding-top: 20px!important }
.pt40 { padding-top: 40px!important }
.pb20 { padding-bottom: 20px!important }
.pb40 { padding-bottom: 40px!important }
.tablelike.mtmb { margin-top: 20px; margin-bottom: 20px; }


h2, h3, h4 { font-weight: 300; text-align: center; padding: 0; margin: 0; }
a { text-decoration: none; color: #000 }
a.iro { display: inline-block; border-bottom: dashed 1px hsla(202,56%,71%,1); padding: 5px 0 5px; line-height: 1em}

ul { margin-left: 0; padding-left: 0; }
li { margin-left: 1em; }

.logob { width: 60px; margin: 0 auto; padding: 0 0 10px }
.sns-box { padding: 20px 0 50px; }
.sns-box a { font-size: 2em; padding: 20px 10px 0; }

.l_sankaku::before{
    left: 3px;
    width: 4px;
    height: 4px;
    border-top: 1px solid #7a0;
    border-right: 1px solid #7a0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.fst { background-color: hsla(202,56%,71%,1); min-height: 100vh; }
body.thanks .fst { min-height: 50vh; }
.bobo { border-bottom: 1px solid hsla(202,56%,71%,.5); margin-bottom: 60px; padding-bottom: 30px; }
.waku  { border: 1px solid hsla(202,56%,71%,1); padding: 5px 0 5px }

h1.ulabo, p.ulabo { color: #fff; font-family: Helvetica, 'sans-serif'; position: absolute; z-index: 100; width: 100%; text-align: center; font-weight: 700; letter-spacing: 0em; }
h1 { }

@media screen and (min-width: 641px)/* PC 最小641px ----------------------------------------------------------------------------*/
{
body { font-size: 1.5rem; }
.sp { display: none}
.wrap { width: 80%; max-width: 1000px; margin: 0 auto; padding: 50px 0; }

h1.ulabo { font-size: 3.5em; line-height: 1.0em; padding: 0; margin: 0; top: 50px; left: 0; }
p.ulabo { font-size: 1.0em; line-height: 1.8em; padding: 0; margin: 0; top: 100px; left: 0; }

h2 { font-size: 1.5em; line-height: 1.4em; margin: 0 0 10px; }
h2 .labo { display: block; font-size: 5.4vw; line-height: 1.4em; letter-spacing: .1em; margin: 10px 0 10px; }
h2.date2021 { font-size: 3.0em; line-height: 1.2em; letter-spacing: .1em }
h2.taiken { font-size: 4.0em; line-height: 1.2em; letter-spacing: .1em }
p { font-size: 1.0em; line-height: 1.8em; }
li span { font-size: 1.3em; line-height: 1.8em; }
p.read { font-size: 1.1em; line-height: 1.8em; }
ul.tablelike { display: table; margin: 0 auto; }
li { padding-bottom: 10px; }

.txt-box { padding: 50px 50px; line-height: 2em }
div.tablelike { display: table; margin: 0 auto 50px;}
div.tablelike span { display: inline-block; color: hsla(202,56%,71%,1); padding-right: .8em; line-height: 1.8em; letter-spacing: .1em; font-size: 1.2em; }
ul.tablelike, div.tablelike { min-width: 550px}

.card img { width: 46%; height: auto; padding: 0 2%; }
.catch { width: 300px; margin: 0 auto;}
.swiper-container#booth { width: 80%; max-width: 100%; margin: 0 auto; padding: 0 0; background-color: #fff; }
.swiper-container#book { width: 80%; max-width: 1000px; margin: 0 auto; padding: 50px 0 0;  }
.zu { max-width: 800px;margin: 0 auto; }
.txc { text-align: center }
.txr { text-align: right}

.pdf_form20 { display: table; margin: 30px auto 0; border: 1px solid hsla(202,56%,71%,.5); padding: 30px; }
.fulheight { height: 100vh; overflow-y: hidden }
.palletbox { padding: 30px 0 0 }
.pallet { width: 33.3333333333333333%; float: left; }

}/*end 641px--*/

@media screen and (max-width: 640px)/* スマホ 最大640px -----------------------------------------------------------------------*/
{
body { font-size: 1.4rem; }
.pc { display: none}
.fulheight { height: 50vh; overflow-y: hidden }
.swiper-container#booth { width: 100%; max-width: 100%; margin: 0 auto; padding: 0; background-color: #fff; }
.swiper-container#booth .swiper-slide { padding: 25vw 0 0; background-color: hsla(202,56%,71%,1); }

.txt-box { padding: 30px 5%; line-height: 2em }
.tablelike { display: table; margin: 0 auto 50px; }
.tablelike span { display: inline-block; color: hsla(202,56%,71%,1); padding-right: .8em; line-height: 1.8em; letter-spacing: .1em; font-size: 1.2em; }
.palletbox { padding: 30px 0 0 }
.pallet { width: 90%; padding: 20px 5% }

.sp-box {  padding: 0 5%; }

/*.container { overflow: auto; scroll-snap-type: y mandatory; height: 100vh; }
.area { scroll-snap-align: start; height: 100vh; }
*/
.wrap { padding: 20px; }
.swiper-container { width: 100%;  margin: 0 0; }
.booth img { width: 100%; height: auto; padding: 0 0%; }

h1.ulabo { font-size: 10vw; line-height: 1.0em; padding: 0; margin: 0; top: 5vw; left: 0; }
p.ulabo { font-size: 3vw; line-height: 1.8em; padding: 0; margin: 0; top: 15vw; left: 0; }

ul.pp { margin-left: 10px}

h2 { font-size: 1.4em; line-height: 1.5em; margin: 0 0 20px; }
h2 .labo { display: block; font-size: 8.5vw; line-height: 1.4em; letter-spacing: .1em; margin: 5px 0 10px; }
h2.taiken { font-size: 4.0em; line-height: 1.2em; letter-spacing: .1em }
p { font-size: 1.0em; line-height: 1.8em; }
p.read { font-size: 1.1em; line-height: 2.0em; }

li { padding-bottom: 5px; }
li span { font-size: 1.3em; line-height: 1.8em; }

.card img { width: 90%; height: auto; padding: 0 5%; }
.catch { width: 50%; margin: 0 auto;}
.txr { text-align: justify}
.txc { text-align: justify}
.txcsp { text-align: center}
.txjsp { text-align: justify}

.pdf_form20 { margin: 10px 0; border: 1px solid hsla(202,56%,71%,.5); padding: 10px; }

}/*end 640px--*/

