@charset "UTF-8";
/* CSS Document */


body{
	letter-spacing: 1px;
}

img{
	vertical-align:top;
}
*:focus {
  outline: none;
}
a {
  -webkit-tap-highlight-color:rgba(0,0,0,0);
  cursor:pointer;
}

a.disabled{
	pointer-events: none;
	opacity: 0.4;
}
.dpc{
	display: block;
}
.dsp{
	display: none;
}
.mainvisual{
	position: relative;
	text-align: center;
}
.mainvisual h1{
	background: #000;
}

ul.tabList{
	position: absolute;
	bottom: 0;
	right: 0;
	left: 0;
	margin: 0 auto;
	text-align: center;
}
ul.tabList li{
	display: inline-block;
	width: 250px;
	height: 60px;
	line-height: 60px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	border-left: solid 2px #fff;
	font-weight: bold;
	text-align: center;
	font-size: 18px;
	letter-spacing: 2px;
}
ul.tabList li:first-child{
	margin-right: 15px;
}
ul.tabList li a{
	display: block;
	color: #fff;
}
ul.tabList li.current{
	background: #fff;
}

ul.tabList li.current a{
	color: #000;
}
/*

tab01

*/

.cpplus2023 nav .inner{
	max-width: 1160px;
	margin: 0 auto;
	padding: 25px 0;
}

#contents #tab1 hr.line{
	border: none;
	height: 1px;
	background: #d4d8df;
	margin: 0;
}
section.sec01{
	padding: 70px 0px 85px;
}
section.sec01 .sec01-archivetxt {
    font-size: 24px;
    text-align: center;
    font-weight: bold;
    margin-bottom: 70px;
}
section.sec01 .sec01-archivetxt .pc {
    display: block;
}
section.sec01 .sec01-archivetxt .sp {
    display: none;
}
@media screen and (max-width: 768px){
	section.sec01 .sec01-archivetxt {
		font-size: 3.8vw;
		margin-bottom: 30px;
	}
	section.sec01 .sec01-archivetxt .pc {
		display: none;
	}
	section.sec01 .sec01-archivetxt .sp {
		display: block;
	}
}
section.sec01 .inner,section.sec02 .inner{
	padding: 0 40px; 
}
.cpplus2023 .sec01 h2{
	font-size: 28px;
	margin-bottom: 30px;
	text-align: center;
}

.cpplus2023 .sec01 .sec01-info{
	margin-bottom: 50px;
	line-height: 30px;
}
.cpplus2023 .sec01 .flex > div{
	margin-left: 40px;
}
.cpplus2023 .flex.pickup{
	margin: 0 auto;
	align-items: flex-end;
}
.cpplus2023 .flex.pickup a{
	position: relative;
	display: block;
}
.cpplus2023 .flex.pickup .mv_link::before{
	position: absolute;
    content: '';
    width: 60px;
    height: 43px;
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: auto;
    background: url(../../img/cpplus2023-online/btn_icon.png) no-repeat;
    background-size: contain;
	z-index: 1;
}
@media screen and (max-width: 768px){
	.cpplus2023 .flex.pickup .mv_link::before{
	}
}
.cpplus2023 .flex.pickup .mv_link::after{
	position: absolute;
    content: '';
    width: 100%;
    height: 100%;
    background-color: #000;
	opacity: 5%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    margin: auto;
    background-size: contain;
}
.cpplus2023 .flex .ytBtn img{
	max-width: fit-content;
}
section.sec01 .flex > div .day{
	margin-bottom: 15px;
}
section.sec01 .flex > div .cat{
	display: inline-block;
	background: #94b936;
	padding: 3px 6px;
	color: #fff;
	margin-bottom: 10px;
}
section.sec01 .flex > div .genre{
	display: inline-block;
	margin-left: 8px;
	padding: 2px 4px;
	color: #626870;
	border-top: solid 1px #a9acb1;
	border-bottom: solid 1px #a9acb1;
}
section.sec01 .flex > div h3{
	font-size: 24px;
    font-weight: bold;
    margin-bottom: 15px;
    line-height: 37px;
}
section.sec01 .flex .right-info{
	margin-bottom: 20px;
    line-height: 24px;
}
section.sec01 .flex .right-info .sp{
	display: none;
}
section.sec01 .flex .right-box{
	display: flex;
	justify-content: space-between;
    align-items: center;
}
section.sec01 .flex .right-box .right-box-camera{
	display: flex;
	padding-right: 40px;
	position: relative;
}
section.sec01 .flex .right-box .right-box-camera::after {
	content: '';
    display: inline-block;
    position: absolute;
    bottom: 10px;
    right: 12px;
    width: 13px;
    height: 10px;
    background: url("../../img/cpplus2023-online/window_icon.png") no-repeat;
    background-size: contain;
}
section.sec01 .flex .right-box .right-box-camera img{
	width: 56px;
	border: solid #d4d8df 1px;
	padding: 10px;
}
section.sec01 .flex .right-box .right-box-camera .right-box-camera__text{
	margin: 5px 0 0 10px;
	color: #005bac;
}
section.sec01 .photographer.flex{
	align-items: center;
	margin-left: 0;
}
section.sec01 .photographer.flex picture{
	border: solid 1px #d4d8df;
}
section.sec01 .flex.pickup .photographer.flex picture{
	border: none;
}
section.sec01 .photographer.flex img{
	width: 150px;
	height: auto;
}
section.sec01 .photographer.flex .name-box{
	margin-left: 25px;
	font-size: 18px;
	margin-bottom: 5px;
}
section.sec01 .photographer.flex .name-box .prf{
	margin-top: 5px;
	font-size: 14px;
}

section.sec01 .flex .prf-blc .img-blc {
    position: relative;
}
section.sec01 .flex .prf-blc .icon-blc{
	display: flex;
    justify-content: center;
    align-items: center;
	position: absolute;
	width: 36px;
	height: 36px;
	border: solid 1px #d7dae1;
	background: #fff;
	bottom: 0;
	right: 0;
	cursor: pointer;
}

section.sec02{
	padding: 70px 0 0;
	background: #eceef1;
}
section.sec02 .gallery {
	text-align: center;
}
section.sec02 .gallery .flex.day{
	border-top: solid 2px #bdbec1;
	border-bottom: solid 1px #bdbec1;
}
section.sec02 .gallery .flex{
	justify-content: center;
}
section.sec02 .gallery h2{
	font-size: 28px;
	text-align: center;
	margin-bottom: 2px;
	margin-bottom: 30px;
}
section.sec02 .gallery .note{
	text-align: center;
	margin-bottom: 60px;
	letter-spacing: normal;
}
section.sec02 .gallery .gallery-list {
	display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
section.sec02 .gallery .gallery-list .modal_btn{
	position: relative;
	margin-bottom: 20px;
}
section.sec02 .gallery .gallery-list .modal_btn::after{
	position: absolute;
	content: '';
	width: 42px;
	height: 30px;
	top: 0;
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
    background: url("../../img/cpplus2023-online/btn_icon.png") no-repeat;
	background-size: contain;
	
}
section.sec02 .gallery .gallery-list .gallery-list-item{
	width: 250px;
	cursor: pointer;
	filter: brightness(70%);
}
section.sec02 .gallery .gallery-list .lens-aco-content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

section.sec02 .gallery .gallery-list .lens-aco-content .active {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

section.sec02 .inner .icon-blc{
	display: inline-block;
	padding: 0 15px;
	height: 45px;
	line-height: 45px;
	margin: 50px auto 70px;
	border: solid 1px #d4d8df;
	cursor: pointer;
}
section.sec02 .inner .icon-blc .aco-plus{
	display: inline-block;
	top: 1px;
}
section.sec02 .inner .icon-blc.active .aco-plus::before {
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
}
section.sec02 .inner .icon-blc.active .aco-plus::after {
    transform: translateY(-50%) rotate(135deg);
    -webkit-transform: translateY(-50%) rotate(135deg);
    -ms-transform: translateY(-50%) rotate(135deg);
}
section.sec02 .inner .icon-blc span.txt{
	margin-left: 6px;
}

section.sec02 .day.flex li:first-child{
	border-left: solid 1px #bdbec1;
}
section.sec02 .day.flex li{
	max-width: 290px;
	width: 100%;
	text-align: center;
	padding: 5px 0;
	border-right: solid 1px #bdbec1;
}
section.sec02 p.time{
	font-size: 12px;
	margin: 15px 0 5px;
}
section.sec02 .day.flex li.today{
	background: #e2e5ea;
}
section.sec02 .grid-area{
	width: 100%;
	height: 100%;
}
section.sec02 .grid-parent{
	position: relative;
	max-width: 1160px;
	margin: 0 auto;
	border-left: solid 1px #bdbec1;
	border-right: solid 1px #bdbec1;
}

section.sec02 .grid-parent > div{
	border-right: solid 1px #bdbec1;
}
section.sec02 .grid-parent > div.day25{
	border-right: none;
}
section.sec02 .grid-parent .bg{
	min-height: 150px;
	position: relative;
	top: -1px;
	background: #fff;
	padding: 33px 18px 15px;
}
section.sec02 .grid-parent .tag{
	display: block;
	position: absolute;
    top: -26px;
    right: 0;
}
section.sec02 .grid-parent .release-tag.tag{
	display: none;
}

section.sec02 .grid-parent .ctg{
	font-size: 13px;
	position: absolute;
	top: 0;
	left: 0;
	color: #fff;
	padding: 0 5px;
	height: 24px;
	line-height: 24px;
	text-align: center;
}

/*カテゴリーカラー*/
section.sec02 .grid-parent .ctg.live{
	background: #1270ab;
}
section.sec02 .grid-parent .ctg.lens{
	background: #1daed2;
}
section.sec02 .grid-parent .ctg.photo{
	background: #94b936;
}
section.sec02 .grid-parent .ctg.special{
	background: #ef8700;
}

section.sec02 .grid-parent .genre{
	position: absolute;
	font-size: 12px;
	color: #626870;
	top: 0;
	right: 0;
	padding: 3px;
	border-bottom: solid 1px #a9acb1;
	text-align: center;
}

section.sec02 .grid-parent h3{
	font-size: 14px;
	margin-bottom: 10px;
	line-height: 1.3;
}

section.sec02 .grid-parent .name{
	font-size: 13px;
	line-height: 1.3;
}
section.sec02 .grid-parent .name span{
	font-size: 11px;
	margin-left: 10px;
}

.aco-plus {
	position: relative;
	width: 15px;
	height: 15px;
}
 /* 二本の横棒を作成する */
  .aco-plus::before,
  .aco-plus::after {
    content: '';
    display: block;
    width: 15px;
    height: 2px;
    background: #005bac;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    transition: 0.3s;
  }
  
  .aco-plus::after {
    background: #005bac;
    transform: translateY(-50%) rotate(90deg);
  }

section.sec02 .aco{
	padding: 15px 0 25px;
}
section.sec02 .aco > p{
	font-size: 13px;
}
section.sec02 .aco .flex{
	margin: 15px 0 0;
	justify-content: flex-start;
	align-items: center;
}
section.sec02 .aco .model-icon{
	position: relative;
	width: 50px;
	height: 50px;
	border: solid 1px #d4d8df;
}
section.sec02 .aco .model-icon img{
	position: absolute;
	inset: 0;
	margin: auto;
	width: 45px;
	height: auto;
}
section.sec02 .aco .model-name{
	margin-left: 10px;
	font-size: 12px;
	color: #005bac;
}
section.sec02 .aco .model-name::after{
	width: 13px;
	height: 13px;
	content: '';
	display: inline-block;
	background: url("../../img/cpplus2023-online/window_icon.png") no-repeat;
	background-size: contain;
	margin-left: 5px;
    margin-bottom: -3px;
}


section.sec02 .grid-parent {
display: grid;
grid-template-columns: repeat(4, 25%);
grid-template-rows: repeat(7, auto);
grid-column-gap: 0px;
grid-row-gap: 0px;
display: -ms-grid;
-ms-grid-columns: repeat(4, 25%);
-ms-grid-rows: repeat(7, auto);
-ms-grid-row-gap: 0px;
-ms-grid-column-gap: 0px;

}
  section.sec02 .grid-parent .div1 {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }

  section.sec02 .grid-parent .div2 {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }

  section.sec02 .grid-parent .div3 {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }

  section.sec02 .grid-parent .div4 {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
  }

  section.sec02 .grid-parent .div5 {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }

  section.sec02 .grid-parent .div6 {
    -ms-grid-row: 6;
    -ms-grid-column: 1;
  }

  section.sec02 .grid-parent .div7 {
    -ms-grid-row: 7;
    -ms-grid-column: 1;
	  padding-bottom: 40px; 
  }

  section.sec02 .grid-parent .div8 {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }

  section.sec02 .grid-parent .div9 {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
  }

  section.sec02 .grid-parent .div10 {
    -ms-grid-row: 3;
    -ms-grid-column: 2;
  }

  section.sec02 .grid-parent .div11 {
    -ms-grid-row: 4;
    -ms-grid-column: 2;
  }

  section.sec02 .grid-parent .div12 {
    -ms-grid-row: 5;
    -ms-grid-column: 2;
  }

  section.sec02 .grid-parent .div13 {
    -ms-grid-row: 6;
    -ms-grid-column: 2;
  }

  section.sec02 .grid-parent .div14 {
    -ms-grid-row: 7;
    -ms-grid-column: 2;
	  padding-bottom: 40px; 
  }

  section.sec02 .grid-parent .div15 {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }

  section.sec02 .grid-parent .div16 {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
  }

  section.sec02 .grid-parent .div17 {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }

  section.sec02 .grid-parent .div18 {
    -ms-grid-row: 4;
    -ms-grid-column: 3;
  }

  section.sec02 .grid-parent .div19 {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
  }

  section.sec02 .grid-parent .div20 {
    -ms-grid-row: 6;
    -ms-grid-column: 3;
  }

  section.sec02 .grid-parent .div21 {
    -ms-grid-row: 7;
    -ms-grid-column: 3;
	  padding-bottom: 40px; 
  }

  section.sec02 .grid-parent .div22 {
    -ms-grid-row: 1;
    -ms-grid-column: 4;
  }

  section.sec02 .grid-parent .div23 {
    -ms-grid-row: 2;
    -ms-grid-column: 4;
  }

  section.sec02 .grid-parent .div24 {
    -ms-grid-row: 3;
    -ms-grid-column: 4;
  }

  section.sec02 .grid-parent .div25 {
    -ms-grid-row: 4;
    -ms-grid-column: 4;
  }

  section.sec02 .grid-parent .div26 {
    -ms-grid-row: 5;
    -ms-grid-column: 4;
  }

  section.sec02 .grid-parent .div27 {
    -ms-grid-row: 6;
    -ms-grid-column: 4;
  }

  section.sec02 .grid-parent .div28 {
    -ms-grid-row: 7;
    -ms-grid-column: 4;
	  padding-bottom: 40px; 
  }



section.sec02 .grid-parent .div1 { grid-area: 1 / 1 / 2 / 2; }
section.sec02 .grid-parent .div2 { grid-area: 2 / 1 / 3 / 2; }
section.sec02 .grid-parent .div3 { grid-area: 3 / 1 / 4 / 2; }
section.sec02 .grid-parent .div4 { grid-area: 4 / 1 / 5 / 2; }
section.sec02 .grid-parent .div5 { grid-area: 5 / 1 / 6 / 2; }
section.sec02 .grid-parent .div6 { grid-area: 6 / 1 / 7 / 2; }
section.sec02 .grid-parent .div7 { grid-area: 7 / 1 / 8 / 2;padding-bottom: 40px; }
section.sec02 .grid-parent .div8 { grid-area: 1 / 2 / 2 / 3; }
section.sec02 .grid-parent .div9 { grid-area: 2 / 2 / 3 / 3; }
section.sec02 .grid-parent .div10 { grid-area: 3 / 2 / 4 / 3; }
section.sec02 .grid-parent .div11 { grid-area: 4 / 2 / 5 / 3; }
section.sec02 .grid-parent .div12 { grid-area: 5 / 2 / 6 / 3; }
section.sec02 .grid-parent .div13 { grid-area: 6 / 2 / 7 / 3; }
section.sec02 .grid-parent .div14 { grid-area: 7 / 2 / 8 / 3;padding-bottom: 40px;  }
section.sec02 .grid-parent .div15 { grid-area: 1 / 3 / 2 / 4; }
section.sec02 .grid-parent .div16 { grid-area: 2 / 3 / 3 / 4; }
section.sec02 .grid-parent .div17 { grid-area: 3 / 3 / 4 / 4; }
section.sec02 .grid-parent .div18 { grid-area: 4 / 3 / 5 / 4; }
section.sec02 .grid-parent .div19 { grid-area: 5 / 3 / 6 / 4; }
section.sec02 .grid-parent .div20 { grid-area: 6 / 3 / 7 / 4; }
section.sec02 .grid-parent .div21 { grid-area: 7 / 3 / 8 / 4;padding-bottom: 40px;  }
section.sec02 .grid-parent .div22 { grid-area: 1 / 4 / 2 / 5; }
section.sec02 .grid-parent .div23 { grid-area: 2 / 4 / 3 / 5; }
section.sec02 .grid-parent .div24 { grid-area: 3 / 4 / 4 / 5; }
section.sec02 .grid-parent .div25 { grid-area: 4 / 4 / 5 / 5; }
section.sec02 .grid-parent .div26 { grid-area: 5 / 4 / 6 / 5; }
section.sec02 .grid-parent .div27 { grid-area: 6 / 4 / 7 / 5; }
section.sec02 .grid-parent .div28 { grid-area: 7 / 4 / 8 / 5;padding-bottom: 40px;  }


section.sec02 .grid-parent .today{
	background: #e2e5ea;
}


section.sec02 .grid-parent>div{
	padding: 0 20px;
}

_:lang(x)::-ms-backdrop, section.sec02 .grid-parent>div{
	width:290px;
}
_:lang(x)::-ms-backdrop, section.sec02 .grid-parent>div.day22{
	width: 289px;
}


section.sec02 .grid-parent hr{
	display: block;
	width: 1px;
	height: 100%;
	border: none;
	background: #bdbec1;
	margin: 0 0 0 -1px;
}

section.sec03 .inner{
	padding: 40px 0 ;
	text-align: center;
}

section.sec03 .inner > p{
	margin-bottom: 15px;
}

section.sec03 .inner a{
	display: block;
	width: 420px;
	height: 60px;
	line-height: 60px;
	color: #000;
	border: solid 1px #000;
	margin: 0 auto;
	text-align: center;
	font-weight: bold;
}
section.sec03 .inner .btm-btn p{
	position: relative;
}

section.sec03 .inner .btm-btn p::after{
	position: absolute;
	content: '';
	display: inline-block;
	background: url("../../img/cpplus2023-online/window_icon.png") no-repeat;
	background-size: contain;
	width: 13px;
	height: 10px;
	top: 0;
	bottom: 0;
	right: 20px;
	margin: auto;
}
.cpplus2023 .breadcrumbs{
	background: #eceef1;
}
.cpplus2023 .breadcrumbs .inner{
	max-width: 1160px;
	text-align: right;
	padding: 20px 0 20px 20px;
	letter-spacing: 0;
}
.cpplus2023 .breadcrumbs .inner span span{
	padding: 0 10px 0 5px;
}
.cpplus2023 .breadcrumbs .inner span span.disabled{
	opacity: 0.4;
}
.cpplus2023 footer{
	position: relative;
	letter-spacing: 0;
}

.cpplus2023 footer .pagetop img{
	vertical-align: baseline;
}
.cpplus2023 .links{
	letter-spacing: 0;
}

@media screen and (max-width: 1160px){
	
	.cpplus2023{
		overflow-x: scroll;
	}
	.cpplus2023.cpplus2023__online #contents{
		width: 1160px;
	}
.cpplus2023 nav .inner,.cpplus2023 header,section.sec02 .grid-parent,
	.cpplus2023 .breadcrumbs .inner,.cpplus2023 .inner{
		width: 1160px;
		max-width: inherit;
	}
	.cpplus2023 .inner{
		max-width: 100%;
	}
	.cpplus2023 .mainvisual{
		width: 1160px;
	}
	.mainvisual h1 img{
		max-width: 1160px;
	}
	.cpplus2023__online nav ul{
		margin-right: 40px;
	}
	.cpplus2023 .breadcrumbs{
		width: 1160px;
	}
	.cpplus2023 .links{
		width: 1160px;
	}
	.cpplus2023 footer{
		width: 1160px;
	}
	
}

@media screen and (max-width: 1000px){
	
	.modaal-wrapper .iframe_cont{
		position: relative;
		width: 100%;
    	padding-top: 56.25%;
	}
	.modaal-wrapper .iframe_cont iframe{
		position: absolute;
		top: 0;
		right: 0;
		width: 100%;
		height: 100%;
	}
	.modaal-wrapper .modaal-close.mov_close{
		right: 10px;
	}
	
}

@media screen and (max-width: 768px){
	
	.cpplus2023{
		overflow-x: scroll;
	}
	.dpc{
		display: none;
	}
	.dsp{
		display: block;
	}
	.cpplus2023.cpplus2023__online #contents{
		width: 100%;
	}
.cpplus2023 nav .inner,.cpplus2023 header,section.sec02 .grid-parent,
	.cpplus2023 .breadcrumbs .inner,.cpplus2023 .inner{
		width: 100%;
		max-width: inherit;
	}
	.mainvisual h1 img{
		max-width: 100%;
	}
	.cpplus2023 .mainvisual,.cpplus2023 .breadcrumbs,.cpplus2023 .links,.cpplus2023 footer{
		width: 100%;
	}
	.cpplus2023 header .cpplus_logo{
		width: 12.8vw;
		height: auto;
	}
	.cpplus2023 header .logo{
		width: 22.6vw;
		height: auto;
	}
	.cpplus2023 header .inner{
		padding: 0;
	}
	.cpplus2023__lower header{
		padding: 2.4vw 5.333vw;
	}
	
	
	
	
	.cpplus2023{
		font-size: 3.4vw;
	}
	.cpplus2023 .mainvisual h1 img{
		vertical-align: bottom;
	}
	
	ul.tabList{
		bottom: -1px;
	}
	ul.tabList li{
		width: 42.333vw;
		height: 14.666vw;
		line-height: 14.666vw;
		font-size: 3.466vw;
	}
	ul.tabList li:first-child{
		margin-right: 2.6vw;
	}
	.cpplus2023 nav .inner{
		padding: 5.333vw 0 6.666vw;
		text-align: center;
	}
	.cpplus2023__online nav ul{
		justify-content: center;
		margin: 0;
	}
	section.sec01{
		padding: 8vw 0vw 4.15vh;
	}
	section.sec01 .inner{
		padding: 0 5vw;
	}
	.cpplus2023 .sec01 .sec01-info {
		line-height: 1.5;
		margin-bottom: 2.97vh;
	}
	section.sec01 .flex .right-info {
		margin-bottom: 2.5vh;
		line-height: 1.5;
	}
	section.sec01 .flex .right-info .sp{
		display: block;
	}
	section.sec01 .flex .right-box {
		flex-wrap: wrap;
	}
	section.sec01 .flex .prf-blc .icon-blc{
		width: 8vw;
		height: 8vw;
	}
	section.sec01 .photographer.flex {
		width: 100%;
		margin-bottom: 2.97vh;
		border: solid #d4d8df 1px;
	}
	section.sec01 .flex .right-box .right-box-camera .right-box-camera__text{
		margin: 4vw 0 0 4vw;
	}
	section.sec01 .flex .right-box .right-box-camera {
		width: 100%;
		border: solid #d4d8df 1px;
	}
	section.sec01 .flex .right-box .right-box-camera::after{
		width: 4.8vw;
		height: 3.4vw;
		right: 0;
		top: 50%;
		transform: translate(-50%, -50%);
	}
	section.sec01 .flex .right-box .right-box-camera img {
		width: 20vw;
		border-right: solid #d4d8df 1px;
		border-left-style: none;
		border-top-style: none;
		border-bottom-style: none;
		padding: 3.5vw;
	}
	.cpplus2023 .sec01 h2{
		font-size: 5vw;
		letter-spacing: 0.5vw;
		margin-bottom: 5vw;
	}	
	.cpplus2023 .flex.pickup{
		display: block;
	}	
	.cpplus2023 .flex .ytBtn{
		margin-bottom: 6.44vw;
	}
	.cpplus2023 .flex .ytBtn img{
		max-width: 100%;
		width: 100%;
	}
	.cpplus2023 .sec01 .flex > div{
		margin: 0;
	}
	section.sec01 .flex > div .day{
		margin-bottom: 4vw;
	}
	section.sec01 .flex > div .cat{
		font-size: 3.5vw;
		margin-bottom: 2vw;
		padding: 3px 8px;
	}
	section.sec01 .flex > div .genre{
		margin-left: 2vw;
		font-size: 3.5vw;
	}
	section.sec01 .flex > div h3{
		font-size: 4.5vw;
		margin-bottom: 2vw;
		line-height: 28px;
	}
	section.sec01 .flex > div h3 br{
		display: none;
	}
	section.sec01 .photographer.flex > picture{
		width: 42vw;
	}
	section.sec01 .photographer.flex img{
		width: 100%;
	}
	section.sec01 .photographer.flex .name-box{
		margin: 0 0 0 5vw;
		font-size: 4vw;
	}
	section.sec01 .photographer.flex .name-box .prf{
		font-size: 3.2vw;
		margin: 0;
	}
	
	section.sec02{
		padding: 13.33vw 5vw 10vw;
		border: none;
	}
	
	section.sec02 .inner{
		padding: 0;
	}
	section.sec02 .inner .icon-blc {
		margin: 5vw 0 0 0;
	}
	section.sec02 .gallery {
		margin-bottom: 0;
	}
	section.sec02 .gallery .flex.day{
		border-bottom: none;
	}
	section.sec02 .gallery .gallery-list .gallery-list-item {
		width: 43vw;
	}
	section.sec02 .gallery .gallery-list .modal_btn::after{
		width: 9.3vw;
		height: 6.6vw;
	}
	section.sec02 .gallery h2{
		font-size: 5vw;
		margin-bottom: 5vw;
	}
	section.sec02 .gallery .note{
		margin-bottom: 10vw;
	}
	section.sec02 .day.flex li{
		max-width: 100%;
		padding: 5vw 0;
		font-size: 3.733vw;
		border-bottom: solid 1px #bdbec1;
	}
	section.sec02 .day.flex li.today{
		border-bottom: none;
	}
	
	section.sec02 .grid-parent{
		display: block;
		padding: 1vw 5.333vw 8.6vw;
		border: none;
	}
	section.sec02 .grid-parent>div{
		width: 100%;
		padding: 0;
		margin: 0;
		border: none;
	}
	section.sec02 .grid-parent>div.day22,section.sec02 .grid-parent>div.day23{
		width: 100%;
	}

	
	section.sec02 .grid-parent .div7,section.sec02 .grid-parent .div14,section.sec02 .grid-parent .div21,section.sec02 .grid-parent .div28{
		padding-bottom: 0;
	}
	section.sec02 p.time{
		font-size: 3.4666vw;
	}
	section.sec02 .grid-parent .bg{
		padding: 12vw 5vw 12vw;
		margin-bottom: 6vw;
		min-height: 23.6vw;
	}
	section.sec02 .grid-parent .tag{
		width: 44.2vw;
		height: 9.3vw;
		top: -9.3vw;
	}
	section.sec02 .grid-parent .ctg {
    position: absolute;
	font-size: 3.7vw;
    top: 0;
    height: 8vw;
    line-height: 8vw;
}
	section.sec02 .grid-parent .genre{
		font-size: 3.7vw;
		padding: 1vw 2vw;
	}
	section.sec02 .grid-parent h3{
		font-size: 4vw;
		margin-bottom: 2vw;
		line-height: 1.6;
	}
	section.sec02 .grid-parent .name{
		font-size: 4vw;
		line-height: 1.3;
	}
	section.sec02 .grid-parent .name span{
		font-size: 3.2vw;
	}
	section.sec02 .aco{
		padding: 4vw 0 0;
	}
	section.sec02 .aco > p{
		
	}
	section.sec02 .aco .flex{
		font-size: 5.333vw;
		justify-content: flex-start;
		margin: 6vw 0 0;
	}
	section.sec02 .aco .model-icon{
		width: 20vw;
		height: 20vw;
	}
	section.sec02 .aco .model-icon img{
		width: 15.2vw;
	}
	section.sec02 .aco .model-name{
		font-size: 3.4666vw;
		margin-left: 4vw;
	}
	section.sec02 .aco .model-name::after{
		width: 3.5vw;
		height: 3.5vw;
	}
	section.sec02 .icon-blc{
		height: 10.6vw;
	}
	.aco-plus{
		width: 4.333vw;
		height: 4.333vw;
	}
	.aco-plus::before, .aco-plus::after{
		width: 4.333vw;
	}
	section.sec02 .inner .icon-blc .aco-plus{
		top: 1vw;
	}
	section.sec02 .gallery .gallery-list .modal_btn {
		margin-bottom: 2vh;
	}
	
	.cpplus2023 section.sec03 .inner {
		padding: 5.33vw 0;
		max-width: 95%;
	}
	section.sec03 .inner > p{
		font-size: 3.2vw;
		margin-bottom: 6.66vw;
	}
	section.sec03 .inner a{
		width: 90vw;
    	height: 16vw;
    	line-height: 16vw;
	}
	section.sec03 .inner .btm-btn p::after{
		width: 3.5vw;
		height: 3.5vw;
		right: 4vw;
	}
	.cpplus2023 .breadcrumbs .inner{
		padding: 3vw 0;
	}
	

section.sec02 .grid-parent .today{
	background: none;
}

}

/*

tab02

*/

section.sec04 .inner{
	padding: 80px 40px 40px;
	background: #fff;
}

section.sec04 .ttl{
	text-align: center;
	margin-bottom: 50px;
}
section.sec04 .ttl h2{
	font-size: 28px;
	margin-bottom: 5px;
}

section.sec04 .pc-flex{
	display: flex;
	justify-content: space-between;
}

section.sec04 .flex .prf-blc{
	width: 240px;
	margin-right: 40px;
	text-align: center;
	padding-bottom: 60px;
}
section.sec04 .pc-flex .flex:last-of-type .prf-blc:last-of-type{
	margin-right: 0;
}
section.sec04 .flex .prf-blc .name{
	font-size: 18px;
	padding-top: 20px;
	margin-bottom: 5px;
}
section.sec04 .flex .prf-blc .img-blc:hover{
	opacity: .75;
	transition: .2s;
}
section.sec04 .flex .prf-blc .img-blc{
	position: relative;
	border: solid 1px #d4d8df;
}
section.sec04 .flex .prf-blc .img-blc a:hover{
	opacity: 1;
}
section.sec04 .flex .prf-blc .img-blc img{
	vertical-align: bottom;
}


/*
モーダル
*/
.modal-content  .modal-blc{
	display: none;
}
.modaal-overlay{
	opacity: 1 !important;
}
.modaal-container .modaal-content-container .inner{
	max-width: inherit;
    position: fixed;
    right: 0;
    left: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: #eceef1;
}
.modaal-container .modaal-content-container .inner > .flex{
	max-width: 1160px;
    width: 95%;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.modaal-container .modaal-content-container .mov_modal_inner > .flex{
	max-width: 950px;
    margin: 0 auto;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.modaal-container .modaal-content-container .photo img{
	max-width: inherit;
	width: 540px;
	height: 400px;
}

.modaal-container .modaal-content-container .txt{
	position: relative;
	padding: 50px 40px 40px 50px;
	background: #fff;
}
.modaal-container .modaal-content-container .txt .furi{
	font-size: 12px;
}
.modaal-container .modaal-content-container .txt .name{
	font-size: 28px;
	font-weight: bold;
	letter-spacing: 2px;
}
.modaal-container .modaal-content-container .txt .prof{
	font-weight: bold;
	font-size: 16px;
}
.modaal-container .modaal-content-container .txt .name span{
	font-size: 22px;
}
.modaal-container .modaal-content-container .txt .flex{
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 20px;
}
.modaal-container .modaal-content-container .txt .bio{
	line-height: 1.6;
	margin-bottom: 15px;
}

.modaal-container .modaal-content-container .txt .link-li-blc{
	position: absolute;
	right: 40px;
	bottom: 20px;
}
.modaal-container .modaal-content-container .txt .link-list{
	display: flex;
	justify-content: flex-end;
	margin-bottom: 10px;
}
.modaal-container .modaal-content-container .txt .link-list a{
	position: relative;
	padding: 0 15px 0 30px;
	color: #005bac;
}
.modaal-container .modaal-content-container .txt .link-list a p::after{
	position: absolute;
	display: inline-block;
	content: '';
	background: url("../../img/cpplus2023-online/window_icon.png") no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	top: 0;
	bottom: 0;
	margin: auto 0;
	right: -2px;
}

/*closeボタン*/

.modaal-wrapper .modaal-close{
	display: none;
}
.modaal-wrapper .txt .modaal-close{
	display: block;
	position: absolute;
	right: -7px;
    top: -65px;
}
.modaal-wrapper .iframe_cont{
	position: relative;
}
.modaal-wrapper .modaal-close.mov_close{
	display: block;
	position: absolute;
	right: -3px;
	width: 30px;
	height: 30px;
    top: -40px;
}

.modaal-close:before, .modaal-close:after{
	width: 2px;
	height: 50px;
	background: #000;
   	top: 0;
    right: 0;
}
.modaal-close.mov_close:before, .modaal-close.mov_close:after{
	position: initial;
	height: 1px;
	width: 30px;
	
}
.modaal-close:focus, .modaal-close:hover{
	background:none;
}
.modaal-close:focus:before, .modaal-close:focus:after, .modaal-close:hover:before, .modaal-close:hover:after{
	background: #000;
}

@media screen and (max-width: 1160px){
	.modaal-container .modaal-content-container .inner > .flex .photo{
		width: 45%;
	}
	.modaal-container .modaal-content-container .inner > .flex .txt{
		width: 55%;
		min-height: 33.313vw;
		padding: 50px 40px 80px 50px;
}
	.modaal-container .modaal-content-container .photo img{
		max-width: 540px;
    	width: 100%;
    	height: auto;
	}

}

@media screen and (max-width: 768px){
	html,body{
		overflow-x: hidden !important;
	}
	section.sec04 .inner{
		padding: 9vw 5vw;
	}
	section.sec04 .pc-flex{
		display: block;
	}
	section.sec04 .pc-flex > .flex{
		justify-content: space-between;
	}
	section.sec04 .ttl{
		margin-bottom: 6vw;
	}
	section.sec04 .ttl h2{
		font-size: 5vw;
		margin-bottom: 0;
	}
	section.sec04 .flex .prf-blc {
		width: 42.6vw;
		margin-right: 0;
		padding-bottom: 8vw;
	}
	section.sec04 .flex .prf-blc .icon-blc{
		width: 8vw;
		height: 8vw;
	}
	section.sec04 .aco-plus{
		width: 4vw;
		height: 4vw;
	}
	
	section.sec04 .aco-plus::before,section.sec04 .aco-plus::after{
		width: 4vw;
	}
	section.sec04 .flex .prf-blc .name{
		font-size: 4vw;
		padding-top: 2.6vw;
		margin-bottom: 2px;
	}
	section.sec04 .flex .prf-blc .prof{
		font-size: 3.2vw;
	}
	.modaal-container .modaal-content-container .inner{
		margin: 0;
		padding: 18.6vw 5.33vw;
		top: 0;
		height: 100%;
		overflow-y: scroll!important;
	}
	.modaal-container .modaal-content-container .inner > .flex{
		display: block;
	}
	.modaal-container .modaal-content-container .inner > .flex .photo{
		width: 100%;
	}
	.modaal-container .modaal-content-container .photo img{
		width: 100%;
		height: auto;
		max-width: 100%;
	}
	.modaal-container .modaal-content-container .inner > .flex .txt{
		width: 100%;
		padding: 7vw 8vw 6vw;
	}
	.modaal-container .modaal-content-container .txt .furi{
		font-size: 3vw;
	}
	.modaal-container .modaal-content-container .txt .flex{
		margin-bottom: 4vw;
	}
	.modaal-container .modaal-content-container .txt .flex.wrap{
		display: block;
	}
	.modaal-container .modaal-content-container .txt .flex.wrap .prof{
		text-align: right;
	}
	.modaal-container .modaal-content-container .txt .name{
		font-size: 6.6vw;
		letter-spacing: 1px;
	}
	.modaal-container .modaal-content-container .txt .prof{
		font-size: 4vw;
	}
	.modaal-container .modaal-content-container .txt .bio{
		margin-bottom: 5.33vw;
	}
	.modaal-container .modaal-content-container .txt .link-li-blc{
		position: initial;
	}
	.modaal-container .modaal-content-container .txt .link-list{
		justify-content: flex-end;
		margin-bottom: 1vw;
		flex-wrap: wrap;
	}
	.modaal-container .modaal-content-container .txt .link-list.wrap{
		line-height: 1.8;
	}
	.modaal-container .modaal-content-container .txt .link-list.right{
		justify-content: space-around
	}
	.modaal-container .modaal-content-container .txt .link-list a:first-child{
		margin-right: 5vw;
	}
	.modaal-container .modaal-content-container .txt .link-list a{
		padding: 0 5vw 0 0;
		margin-right: 0;
	}
	.modaal-container .modaal-content-container .txt .link-list a p::after{
		width: 3.8vw;
		height: 3.8vw;
		right: -0.7vw;
	}
	
	.modaal-container .modaal-content-container .mov_modal_inner > .flex{
		display: flex;
		align-items: center;
		height: 100%;
	}
	.modaal-wrapper .modaal-close.mov_close{
		display: block;
		position: absolute;
		right: -1vw;
		width: 11vw;
		height: 11vw;
		top: -13vw;
	}

	.modaal-close.mov_close:before, .modaal-close.mov_close:after{
		position: initial;
		height: 1px;
		width: 11vw;

	}
	.modaal-close:before, .modaal-close:after{
		height: 11vw;
	}
	.modaal-wrapper .txt .modaal-close{
		top: -81vw;
		right: 0;
		width: 10vw;
    	height: 10vw;
	}

}

























