@import "/css/legacy/font.css";
/* -------------------------------------
GANREF
Copyright (c) 2018 Impress Corporation. All rights reserved.
------------------------------------- */

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,code,form,fieldset,input,p,blockquote,table,th,td,legend,em,strong{margin:0;padding:0;}
table{border-collapse:collapse;border-spacing:0;}
fieldset,img,abbr{border:0;}
address,caption,cite,pre,code,dfn,h1,h2,h3,h4,h5,h6,th,var,em{font-style:normal;font-weight:normal;}
strong{font-style:normal;font-weight:bold;}
caption,th {text-align:left;}
q::before,q::after{content:'';}
a{text-decoration:none;}
ul,ol {list-style-type:none;}

/* === common === */
html {
visibility: hidden;
}
html.wf-active {
visibility: visible;
}
body {
font-family: noto-sans-cjk-jp, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "MS Pゴシック", "MS P Gothic", Osaka, sans-serif;
font-style: normal;
font-weight: 400;
margin: 0;
padding: 0;
background: #fff;
}
a {color:#002f86;}
a:link {text-decoration:underline;}
a:visited {text-decoration:underline; color:#8b5eab;}
a:hover, active {text-decoration: none; color:#0036ff;}

.sp-page {
background-color:#fff;
margin-bottom: 1rem;
font-size: 1.0rem;
line-height: 1.5rem;
font-feature-settings: "palt";
}
b, strong, em, h2, h3 {
font-weight: 700;
}

.title-area {
background: url(img/bg.webp) no-repeat 50% 100%;
background-size: cover;
}
.title-area h1{
text-align: center;
margin: 0;
padding: 0 10px;
}
.title-area h1 img {
width: 100%;
}


h2 {
font-size: 1.3rem;
letter-spacing: 2px;
margin-bottom: 20px;
margin-top: 0;
text-align: center;
}
h2 span {
font-size: 1rem;
white-space: nowrap;
}
h3 {
position: relative;
display: block;
margin-bottom: 50px;
letter-spacing: 2px;
font-size: 1.2rem;
}
h3:before {
content: '';
position: absolute;
bottom: -15px;
display: inline-block;
width: 100%;
height: 2px;
left: 50%;
-webkit-transform: translateX(-50%);
transform: translateX(-50%);
background-color: black;
}

.sns {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: center;
margin-bottom: 20px;
}
.sns li {
margin: 0 5px;
}

.contents p {
margin-bottom: 1rem;
}
.sp-sns {
margin-bottom: 20px;
}

.mb0 {
margin-bottom: 0 !important;
}

.mb20 {
margin-bottom: 20px !important;
}

.mb40 {
margin-bottom: 40px !important;
}

.center {
text-align: center !important;
}
.ext-link::before {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
transform: translate(0, 0);
content: "";
margin-right: 0.2rem;
}
.notice,
p.notes,
ul.notes li {
text-indent:-1rem;
padding-left:1rem;
margin-bottom: 0.4rem;
}
.txtRed {
color: #f00;
}

.onlyPC {
display: none;
}
/* === .zoom === */
.zoom{
display:inline-block;
position:relative;
vertical-align:top;
}
.zoom:after{
content:"";
width:22px;
height:22px;
background:url(img/zoom.png) no-repeat 0 0;
position:absolute; bottom:5px; right:5px;
}
.zoom:hover:after{ background-position:-22px 0; }
span.zoom:after{ display:none; }

#footer {
border-top: 1px solid #ccc;
padding: 20px;
text-align: center;
}
#footerNavi {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
flex-wrap: wrap;
justify-content: center;
margin-bottom: 10px;
}
#footerNavi li {
margin: 5px 5px;
padding-right: 10px;
border-right: 1px solid #ccc;
font-size: 0.8rem;
}
#footerNavi li:last-of-type {
border-right: none;
}
#footer #logoImpress {
display: none;
}

#back-top {
position: fixed;
bottom: 20px;
right:20px;
}
#back-top a {
width: 50px;
height: 50px;
display: block;
background: #00a5ff;
color:#fff;
border-radius:6px;
text-align:center;
border:1px solid #fff;
}
#back-top a .fa{
line-height:50px;
font-size: 16px;
margin-right: 0;
}

/* === .apply === */
.apply {
text-align:center;
padding: 0;
}
.apply p:first-child {
color:#CB1613;
}
.btn-entry a {
display: block;
padding: 10px;
background-color: #FDE823;
border-radius: 6px;
color: #000;
font-size: 1.2rem !important;
text-decoration: none;
line-height: 1.5;
}
.btn-entry a:hover {
opacity: 0.8;
}

/* === intro === */

#intro {
padding: 30px 20px;
background: #fff url(img/bg2.png)repeat-x 0 100%; 
background-position: bottom; 
background-size: 100px;
}
#intro-inner {
max-width: 1292px;
margin: auto;
}


/* === talk-show === */
#talk-show {
background: #d2efff;
padding: 20px 0;
background: #d2efff url(img/bg1.png)repeat-x 0 100%; 
background-position: bottom; 
background-size: 100px;
}
#talk-show-inner .mw950 {
margin: 0 20px;
}

.swiper-slide {
margin: 10px 10px 20px;
/* display: flex; */
background: #fff;
padding: 10px;
box-sizing: border-box;
border-radius: 12px;
justify-content: center;
align-items: center;
width: calc(100vw - 30px) !important;
max-width: 600px;
}
.swiper-wrapper {
transition-timing-function: linear;
}
.swiper-slide p {
margin-bottom: 0;
text-align: left;
}
.swiper-slide .img-wrap {
margin-bottom: 10px;
}
.swiper-slide .img-wrap img {
width: 100%;
}

.swiper-slide .profile {
font-size: 1rem;
margin: 0 10px 0 0;
}
.swiper-slide .profile span{
display: block;
margin-top: 5px;
line-height: 1.4;
}
.swiper-slide .profile img {
width: 80px;
border-radius: 50%;
vertical-align: middle;
}
.swiper-slide .profile.nobr img {
border-radius: 0;
}
.swiper-slide .txt {
max-width: 100%;
}
.swiper-slide .txt dt{
display: flex;
}
.swiper-slide .txt dd {
font-size: 14px;
line-height: 1.3;
border-top:1px dotted #ccc;
margin-top: 10px;
padding-top: 10px;
}


/* === exhibition === */
#exhibition {
padding: 20px;
background: #fff url(img/bg3.png)repeat-x 0 100%; 
background-position: bottom; 
background-size: 100px;
padding-bottom: 40px;
}
#exhibition-inner {
margin: auto;
}
#exhibition-inner .time-table-wrap {
margin-bottom: 40px;
}
.makers {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: center;
flex-wrap: wrap;
list-style-type: none;
padding:0;
margin-bottom: 40px;
}
.makers li {
list-style-type: none;
text-align: center;
margin: 0 5px 10px;
padding: 0;
}
.makers li .logo {
vertical-align: middle;
margin-bottom: 10px;
height: 50px;
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
align-items: flex-end;
justify-content: center;
}
.makers li img {
max-width: 130px;
max-height: 50px;
}
.makers li .company-name {
margin-top: auto;
margin-bottom: 0;
line-height: 1.4;
}

.seminar .logo {
width: 100px;
max-height: 90px;
margin-right: 10px;
}
.seminar .logo img {
width: 100%;
max-height: 90px;
}
.seminar .company {
flex-grow: 1;
font-size: 1.2rem;
line-height: 1.6;
margin-right: 0;
}

@media screen and (max-width:589px) {
	#exhibition .time-table th {
	width:auto;
	}
	.seminar .logo {
	margin: 0 auto 10px;
	}
	.seminar .logo img {
	width: 100%;
	max-height: 90px;
	}
	.seminar .company {
	font-size: 1.1rem;
	line-height: 1.5;
	margin-right: 0;
	text-align:center;
	}
	.seminar .profile {
	margin-bottom:0;
	}
}




/* === detail === */
#detail {
padding: 20px;
/* background: #eee; */
}
#detail-inner {
max-width: 1292px;
margin: auto;
}
dl.detail {
margin-bottom: 20px;
}
dl.detail dt {
display: block;
font-weight: bold;
}
dl.detail dd {
display: block;
margin-bottom: 10px;
}

p.icon-a {
display: inline-block; 
padding: 15px 40px;
font-weight: 700;
color: #fff;
background: #000;
font-size: 1.3rem;
letter-spacing: 3px;
border-radius: 6px;
margin-bottom: 20px;
}


@font-face {
font-family: 'FontAwesome';
src: url("/fonts/sp/font-awesome//fontawesome-webfont.eot?v=4.3.0");
src: url("/fonts/sp/font-awesome//fontawesome-webfont.eot?#iefix&v=4.3.0") format("embedded-opentype"), url("/fonts/sp/font-awesome//fontawesome-webfont.woff2?v=4.3.0") format("woff2"), url("/fonts/sp/font-awesome//fontawesome-webfont.woff?v=4.3.0") format("woff"), url("/fonts/sp/font-awesome//fontawesome-webfont.ttf?v=4.3.0") format("truetype"), url("/fonts/sp/font-awesome//fontawesome-webfont.svg?v=4.3.0#fontawesomeregular") format("svg");
font-weight: normal;
font-style: normal; }
.fa {
display: inline-block;
font: normal normal normal 14px/1 FontAwesome;
font-size: inherit;
text-rendering: auto;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
transform: translate(0, 0); }


.fa-chevron-up:before {
content: ""; }


#photographers {
padding: 20px;
}
#photographers-inner {
margin: auto;
}
.photographers-wrap {
margin-bottom: 60px;
}
.photographers-wrap h3 {
margin-bottom: 40px;
}
.photographers-wrap .image {
width: 30%;
max-width: 200px;
margin: 0 auto 10px;
}
.photographers-wrap .image img {
width: 100%;
border-radius: 50%;
}
.photographers-wrap .work {
display: flex;
margin-top: 20px;
justify-content: center;
align-items: center;
flex-wrap: wrap;
}

@media screen and (max-width:589px) {
.photographers-wrap .work li {
width: calc((100% - 20px)/2);
margin:0 5px 10px;
text-align: center;
}
}

@media screen and (min-width:590px) {
.photographers-wrap .work li {
width: calc((100% - 30px)/3);
margin:0 5px 10px;
text-align: center;
}
}

.photographers-wrap .work li img {
max-width: 100%;
max-height: 50vw;
vertical-align: bottom;
}

.photographers-wrap .work.vertical li:first-of-type {
text-align:right;
}

.photographers-wrap .work.vertical li:last-of-type {
text-align:left;
}

.photographers-wrap .work.single li img {
width: 100%;
max-width: 70vw;
}


a.link-button {
border-radius: 8px;
padding: 10px 15px;
display: inline-block;
font-size: 1.0rem;
background: #fff;
text-decoration: none;
color: #000;
background: #FDE823;
}


ul.ul li {
list-style-type:disc;
line-height:1.4;
margin:0.4em 0 0.4em 1.5em;
}.exhibition {
max-width: 880px;
margin: 0 auto 40px;
}
.exhibition dt {
font-size: 2rem;
margin-bottom: 2rem;
line-height: 1.2;
}
.exhibition dt em {
color: #c14594;
font-size: 4rem;
font-family: "zen-old-mincho", sans-serif;
font-weight: 900;
font-style: normal;

}
.exhibition dd {
text-align: left;
font-size: 1.1rem;
}
.ex-maker {
padding-top: 20px;
margin-top: 20px;
border-top: 2px dotted #999;
}


.ex-maker dt {
font-weight: normal;
font-size: 0.9em;
margin: 0 auto 10px;
text-align: center;
}

.ex-maker dt .logo-h {
margin-bottom: 5px;
}

.ex-maker dt img{
max-height: 50px;
max-width: 100%;
}

.ex-maker dt .logo-s img{
max-height: 100px;
}

.ex-maker ul img{
max-width: 100%;
max-height: 30vw
}

.ex-maker dd h4 {
font-weight: bold;
font-size: 1.2em;
margin-bottom: 10px;
}

.ex-maker dd ul {
display: -webkit-flex;
display: -moz-flex;
display: -ms-flex;
display: -o-flex;
display: flex;
justify-content: center;
flex-wrap: wrap;
}


.ex-maker dd ul.col2 li {
flex-shrink: 0;
flex-basis: calc((100% - 10px)/2);
text-align: center;
box-sizing: border-box;
}

.ex-maker dd ul.col3 li {
flex-shrink: 0;
flex-basis: calc((100% - 10px)/3);
text-align: center;
box-sizing: border-box;
}

.ex-maker dd ul.col3 li p {
font-size: 0.9em;
line-height: 1;
margin-bottom: 0;
margin-top: 5px;
}


/* === event === */
#event {
background: #fbeff5;
padding: 20px 20px 40px;
background: #ffe7f3 url(img/bg1.png)repeat-x 0 100%; 
background-position: bottom; 
background-size: 100px;
}
#event-inner{
max-width: 1292px;
margin: auto;
}
.event-wrap {
display: flex;
flex-wrap: wrap;
justify-content: center;
/* border-top:2px dotted #999; */
margin-top: 20px;
padding-top: 20px;

}

.event-wrap li:last-of-type {
border-right:none;
margin-top: 40px;
}

.event-wrap li p {
margin-bottom: 0;
}

.model-col2 {
display: flex;
margin: auto;
justify-content: center;
}

.model-col2 li {
width: 40%;
max-width: 300px;
text-align: center;
}

.model-col2 li:first-of-type {
margin-right: 40px;
}


.model-col2 li img {
border-radius: 50%;
width: 100%;
}

