@charset "UTF-8";
.modal-slide div {
    position: relative;
    display: inline-block;
    overflow: hidden;
    padding-right: 1em;
    padding-bottom: 1em;
}

.modal-slide div img {
    width: 100%;
    height: auto!important;
}

.bx-wrapper {
    margin-left: 54px;
}

.bx-wrapper .bx-controls-direction a {
    top: 120px;
}

.bx-wrapper .bx-pager {
    text-align: center;
    font-size: .85em;
    font-family: Arial;
    font-weight: bold;
    /* color: #666; */
    /*width:12em;*/
    /*padding-top: 15px;*/
    /*overflow:hidden;*/
}

.bx-wrapper .bx-pager .bx-pager-item,
.bx-wrapper .bx-controls-auto .bx-controls-auto-item {
    display: inline-block;
    box-sizing: border-box;
}

.bx-wrapper .bx-pager.bx-default-pager a {
    background: #eaeaf1;
    border-radius: 50%;
    box-sizing: border-box;
    cursor: pointer;
    display: block;
    margin: 0 4px;
    height: 10px;
    width: 10px;
    text-indent: -9999px;
    outline: 0;
}

.bx-wrapper .bx-pager.bx-default-pager a:hover,
.bx-wrapper .bx-pager.bx-default-pager a.active {
    background: #003399;
}

/*「Next」と「Prev」 */
.bx-wrapper {
	position: relative;
	margin-top:10px!important;
}
.bx-wrapper div {
	overflow: hidden;
}
.bx-wrapper .bx-prev {
	left: -30px;
	padding-left: 5px;
}
.bx-wrapper .bx-next {
	right: -16px;
	padding-left: 5px;
}
.bx-wrapper .bx-controls-direction a {
	position: absolute;
	outline: 0;
	width: 20px;
	height: 20px;
	top: 175px;
	text-decoration: none;
	line-height: 20px;
	font-size: 15px;
	color: #fff;
	font-weight: bold;
	background: rgba(0,0,0,0.5);
	padding: 20px 0px;
	border-radius: 5px;
	text-align: center;
	z-index: 9999;
}

span.js-modal-close {
    background-color: black;
    color: #fff;
    font-weight: bold;
    font-size: 80%;
    position: absolute;
    top: 10px;
    right: 10px;
    padding: 4px 8px;
    display: inline-block;
    border-radius: 8px;
    cursor: pointer;
}
body.iframeBody {
    overflow: hidden;
}
.snsInfo{
		display: flex;
		width: 650px;
		margin: 0 auto 20px;
	}
.snsInfo .iconArea{
margin-right: 20px;
}
.snsInfo .iconArea{
    /*background-position: 0% 0%;*/
    background-repeat: no-repeat;
    background-size: 160px auto;
    border-radius: 50%;
    box-sizing: content-box;
    height: 100px;
    width: 172px;
    background-image: url("../../instagram/images/5_others/normal_sonpoppo.png");
	border:solid 1px #ccc;
}
.thumbnailArea {
		background: #eaeaf1;
		padding: 16px 25px;
		display: flex;
		flex-wrap:wrap;
	}
.thumbnailArea div.thum {
	display: inline-block;
	width: 162px;
	margin: 8px;
	background: #fff;
	padding:4px;
	text-align: center;
	font-size: 1.2rem;
	cursor: pointer;
	position: relative;
	box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.2);
}
.thumbnailArea div.thum img {
	width: 100%;
	height: auto;
	vertical-align: top;
	border-radius: 4px;
}
.thumbnailArea div.thum:hover img {
	opacity: .7;
}
.thumbnailArea div.thum:after {
	font-family: FontAwesome;
	content: '\f24d';
	font-weight: 900;
	font-size: 1em;
	position: absolute;
	top:8px;
	right: 8px;
	color: #fff;
	background: rgba(0, 0, 0, 0.4);
	display: inline-block;
	padding: 4px 6px;
	border-radius: 4px;
}
/* モーダル全体(背景＋本体) */
.modal{
  display: none;
  position: fixed;
  top: 0;
  left:0;
  height: 100vh;
  width: 100%;
  z-index: 1;
}
/* モーダル背景 */
.modal-bg{
  position: absolute;
  top:0;
  height: 100vh;
  width: 100%;
  background: rgba(0, 0, 0, 0.6);
}
/* モーダル本体 */
.modal-content{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  /*overflow: scroll;  はみ出た部分はスクロールさせる */
  /*height: 50%; これが無いと「overflow:scroll」が利かない */
  width: 570px;
  height: 530px;/*545*/
  background: white;
  padding: 24px 20px 0;
  border-radius: 10px;
}
.modal-slide div{
	position: relative;
      display: inline-block;
      overflow: hidden;
	  padding-right: 1em;
	  padding-bottom: 1em;
	  text-align: center;
}
.modal-slide div img {
	width: 100%;
	height: auto;
	border: solid 1px #ccc;
}
.modal-content .bx-wrapper {
	margin-left: 54px;
}
.modal-content .bx-wrapper .bx-controls-direction a {
	top:120px;
}
.modal-content .bx-wrapper .bx-pager {
	text-align: center;
	font-size: .85em;
	font-family: Arial;
	font-weight: bold;
	/* color: #666; */
	/*width:12em;*/
	/*padding-top: 15px;*/
	/*overflow:hidden;*/
}
.modal-content .bx-wrapper .bx-pager .bx-pager-item, 
.modal-content .bx-wrapper .bx-controls-auto .bx-controls-auto-item {
	display: inline-block;
	box-sizing: border-box;
}
.modal-content .bx-wrapper .bx-pager.bx-default-pager a {
	background: #eaeaf1;
	border-radius: 50%;
	box-sizing: border-box;
	cursor: pointer;
	display: block;
	margin: 0 4px;
	height: 10px;
	width: 10px;
	text-indent: -9999px;
	outline: 0;
}
.modal-content .bx-wrapper .bx-pager.bx-default-pager a:hover,
.modal-content .bx-wrapper .bx-pager.bx-default-pager a.active {
	background: #003399;
}

span.js-modal-close{
	background-color: black;
	color: #fff;
	font-weight: bold;
	font-size: 80%;
	position: absolute;
	top: 4px;
	right:4px;
	padding: 4px 8px;
	display: inline-block;
	border-radius: 8px;
	cursor: pointer;
}

@media screen and (min-width: 641px) and (max-width: 1000px) {/*タブレット*/
html, body {
	background: #fff;
	color: #333;
}
body {
	-webkit-text-size-adjust: 100%;
	min-width:640px;
}
.pc {
	display: none !important;
}
.sp {
	display: block !important;
}
.thumbnailArea {
    text-align: center;
}
.thumbnailArea div.thum{
    width:calc((100% - 72px) /3);
}

}

@media screen and (max-width: 640px) {/*sp*/
body {
	-webkit-text-size-adjust: 100%;
	min-width:320px;
}
.pc {
	display: none !important;
}
.sp {
	display: block !important;
}
.thumbnailArea {
    text-align: center;
	padding: 16px 6px;
}
.thumbnailArea div.thum{
    width:calc((100% - 48px) /2);
}
.modal-content{
    width: 300px;
	height: 390px;/*410*/
}
.snsInfo{
		display: block;
		width: auto;
		margin: 0 20px 20px;
}
.snsInfo .iconArea{
    margin: 0 auto;
	width: 100px;
}
}
@media screen and (max-width: 600px) {/*pc iframe*/
.bx-wrapper {
    margin-left: 68px;
}
}
@media screen and (max-width: 300px) {
	/*sp iframme*/
.bx-wrapper {
    margin-left: 0px;
}
}