@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: -1px;
	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;
}
.cpplus2023 nav .inner .flex{
	justify-content: center;
}
.cpplus2023 nav .inner .flex li{
	margin-left: 35px;
}

.cpplus2023 .arrow{
	font-weight: bold;
}

#contents #tab1 hr.line{
	border: none;
	height: 1px;
	background: #d4d8df;
	margin: 0;
}

/* sec01 */

section.sec01{
	position: relative;
	padding: 50px 40px 0;
	text-align: center;
}
section.sec01::before{
	position: absolute;
	content: '';
	background: #eceef1;
	width: 100%;
	height: 323px;
	top: 320px;
	right: 0;
	left: 0;
	z-index: -1;
}
.cpplus2023 .sec01 h2{
	font-size: 28px;
	margin-bottom: 20px;
}
.cpplus2023 .sec01 .guid-pic{
	margin-bottom: 60px;
}
.cpplus2023 .sec01 .guid-pic ul {
    text-align: right;
    display: flex;
    justify-content: right;
	margin: 50px 50px 0 0;
}
.cpplus2023 .sec01 .guid-pic ul li {
    margin-left: 10px;
}
/* sec02 */

section.sec02{
	position: relative;
	padding: 90px 40px 75px;
	text-align: center;
}

.cpplus2023 .sec02 p.att{
	text-align: right;
	padding-top: 10px;
}

.cpplus2023 .sec02 h2 {
    font-size: 28px;
    margin-bottom: 20px;
}

.cpplus2023 .sec02 .sec02-text {
    text-align: left;
	margin-bottom: 40px;
	padding: 0 120px;
	line-height: 2;
}

.cpplus2023 .sec02 .sec02-movie {
    padding: 70px 120px;
    margin-bottom: 43px;
    background-color: #eceef1;
    justify-content: space-between;
	align-items: center;
}

.cpplus2023 .sec02 .sec02-movie .sec02-moviebox {
    display: flex;
    justify-content: space-between;
}
@media screen and (max-width: 768px){
	.cpplus2023 .sec02 .sec02-movie .sec02-moviebox {
		flex-wrap: wrap;
	}
	.cpplus2023 .sec02 .sec02-movie .sec02-moviebox li:first-child {
		margin-bottom: 30px;
	}
}

.cpplus2023 .sec02 .sec02-movie .sec02-moviebox .sec02-moviebox-info {
    width: 46%;
}
@media screen and (max-width: 768px){
.cpplus2023 .sec02 .sec02-movie .sec02-moviebox .sec02-moviebox-info {
	width: 100%;
}
}
.cpplus2023 .sec02 .sec02-movie .sec02-moviebox .sec02-moviebox-info .mv_link{
	position: relative;
    display: block;
	width: 100%;
	margin-bottom: 20px;
}
.cpplus2023 .sec02 .sec02-movie .sec02-moviebox .sec02-moviebox-info .mv_link img{
	width: 100%;
}
.cpplus2023 .sec02 .sec02-movie .sec02-moviebox .sec02-moviebox-info .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;
}

.cpplus2023 .sec02 .sec02-movie .sec02-moviebox .sec02-moviebox-info .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 .sec02 .sec02-movie img {

}

.cpplus2023 .sec02-moviebox .sec02-moviebox-info .sec02-moviebox-txtbox .sec02-moviebox-txtbox-txt {
	text-align: left;
	line-height: 24px;
}
@media screen and (max-width: 768px){
	.cpplus2023 .sec02-moviebox .sec02-moviebox-info .sec02-moviebox-txtbox .sec02-moviebox-txtbox-txt {
		
	}
}

.cpplus2023 .sec02-movie .sec02-movie-ttl {
	text-align: left;
	margin-bottom: 30px;
}
@media screen and (max-width: 768px){
	.cpplus2023 .sec02-movie .sec02-movie-ttl {
		position: relative;
	}
}
.cpplus2023 .sec02-movie .sec02-movie-ttl p {
	line-height: 24px;
}
@media screen and (max-width: 768px){
	.cpplus2023 .sec02-movie .sec02-movie-ttl p {
	}
}
.cpplus2023 .sec02-movie .sec02-movie-ttl h2 {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 30px;
	text-align: center;
}
@media screen and (max-width: 768px){
	.cpplus2023 .sec02-movie .sec02-movie-ttl h2 {
    	width: 100%;
		font-size: 5vw;
		letter-spacing: 0.5vw;
		margin-bottom: 5vw;
	}
}

.cpplus2023 .sec02-movie-ttl h2 rt {
    letter-spacing: -22px;
    padding-left: 10px;
}
@media screen and (max-width: 768px){
	.cpplus2023 .sec02-movie-ttl h2 rt {
		letter-spacing: -19px;
		padding-left: 10px;
	}
}

@media screen and (max-width: 768px){

	.cpplus2023 .sec02-movie-ttl rt {
		letter-spacing: -32px;
		padding-left: 0px;
	}
	.cpplus2023 .sec02 .sec02-movie {
		flex-wrap: wrap;
		padding: 50px 0;
		margin-bottom: 30px;
		position: relative;
		justify-content: center;
	}
	.cpplus2023 .sec02 .sec02-movie::before {
		content: '';
		width: 139%;
		height: 100%;
		left: -20px;
		position: absolute;
		top: 0;
		background-color: #eceef1;
	}
	.cpplus2023 .sec02 .sec02-movie .sec02-moviebox-txtbox {
		width: 100%;
		position: relative;
	}
	.cpplus2023 .sec02 .sec02-movie .mv_link {
		z-index: 1;
		margin-bottom: 5vw;
	}
}
@media screen and (max-width: 420px){
	.cpplus2023 .sec02 .sec02-movie .mv_link {
		width: 100%;
	}
	
}

.cpplus2023 .sec02 .guid-pic{
	margin-bottom: 43px;
}
.cpplus2023 .sec02 .sec02-imgbox {
    display: flex;
	justify-content: space-between;
}

.cpplus2023 .sec02 .sec02-imgbox picture {
	width: 48%;
}

.cpplus2023 .sec02 .sec02-mv {
    margin-bottom: 90px;
}

/*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: 768px){

	.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;
	}

}

/* sec03 */

section.sec03{
	position: relative;
	text-align: center;
	padding: 110px 0 0;
}
section.sec03::before {
    position: absolute;
    content: '';
    background: #eceef1;
    width: 100%;
    height: 85%;
    top: 0;
    right: 0;
    left: 0;
    z-index: -1;
}
section.sec03 .inner{
	position: relative;
	padding: 75px 120px 50px;
	border: solid 1px #d4d8df;
	background: #fff;
}
section.sec03 .inner::after{
	position: absolute;
	content: '';
	display: inline-block;
	background: url("../../img/cpplus2023-event/mark_icon.png") no-repeat;
	background-size: contain;
	width: 68px;
	height: 68px;
	top: -30px;
	right: 0;
	left: 0;
	margin: 0 auto;
}
section.sec03 .inner h2{
	font-size: 30px;
	margin-bottom: 5px;
}
section.sec03 .inner p.note{
	margin-bottom: 45px;
	font-weight: bold;
}
section.sec03 .inner p.txt{
	text-align: left;
	line-height: 2;
	margin-bottom: 20px;
}
section.sec03 .inner a{
	color: #005bac;
}
section.sec03 .inner ul.txt{
	text-align: left;
	line-height: 2;
	margin-bottom: 20px;
	padding-left: 17px;
}
section.sec03 .inner ul.txt li{
	list-style: disc;
}
section.sec03 .inner .aco span.red{
	color: #e3130e;
}
section.sec03 .inner .icon-blc{
	display: inline-block;
	padding: 0 15px;
	height: 45px;
	line-height: 45px;
	margin: 0 auto;
	border: solid 1px #d4d8df;
	cursor: pointer;
	font-weight: bold;
}
section.sec03 .inner .icon-blc .aco-plus{
	display: inline-block;
	top: 1px;
}
section.sec03 .inner .icon-blc span.txt{
	margin-left: 6px;
}
.icon-blc .aco-plus {
    position: relative;
    width: 15px;
    height: 15px;
}
.icon-blc .aco-plus::before,.icon-blc .aco-plus::after {
    content: '';
    display: block;
    width: 15px;
    height: 2px;
    background: #005bac;
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    -webkit-transform: translateY(-50%);
    -ms-transform: translateY(-50%);
    transition: 0.4s;
}
.icon-blc .aco-plus::after {
    transform: translateY(-50%) rotate(90deg);
    -webkit-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
}
.icon-blc.active .aco-plus::before {
    transform: translateY(-50%) rotate(45deg);
    -webkit-transform: translateY(-50%) rotate(45deg);
    -ms-transform: translateY(-50%) rotate(45deg);
}
.icon-blc.active .aco-plus::after {
    transform: translateY(-50%) rotate(135deg);
    -webkit-transform: translateY(-50%) rotate(135deg);
    -ms-transform: translateY(-50%) rotate(135deg);
}

/* sec04 */

section.sec04{
    padding: 70px 0;
    text-align: left;
}
.cpplus2023 section.sec04 .inner{
    padding: 0 40px;
    box-sizing: border-box;
}
.cpplus2023 section.sec04 .flex{
	justify-content: space-between;
	align-items: flex-end;
}
section.sec04 .left {
    width: 47%;
}
section.sec04 .right {
    width: 47%;
}
section.sec04 h2 {
    font-size: 28px;
	margin-bottom: 30px;
}
section.sec04 ul li {
    font-size: 14px;
    margin-bottom: 35px;
}
section.sec04 ul li span {
    font-weight: bold;
    font-size: 16px;
	display: inline-block;
    margin-bottom: 10px;
}
section.sec04 h3 {
    padding: 30px 0 20px;
    display: flex;
}
section.sec04 h3 span.txt {
    width: 26%;
}
section.sec04 h3 span.line {
    height: 1px;
    background: #e8e8e8;
    display: block;
    width: 69%;
    position: relative;
    top: 10px;
    left: 20px;
}
section.sec04 h3 span.line img {
    position: absolute;
    top: -9px;
    right: 17px;
}
section.sec04 .flex.sns {
    justify-content: space-between;
    width: 76%;
    margin: 0 auto;
}
section.sec04 .flex p {
    text-align: center;
}
section.sec04 .flex p span {
    display: block;
    line-height: 1;
}
section.sec04 .twitterWrap {
    width: 100%;
    border-radius: 10px;
}
section.sec04 ul li a{
    color: #005bac;
}


.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__event #contents{
		width: 1160px;
	}
.cpplus2023 nav .inner,.cpplus2023 header,section.sec03 .grid-parent,
	.cpplus2023 .breadcrumbs .inner,.cpplus2023 .inner{
		width: 1160px;
		max-width: inherit;
	}
	.cpplus2023 .inner{
		max-width: 100%;
	}
	.cpplus2023 .sec03 .inner{
		max-width: 95%;
	}
	.cpplus2023 .mainvisual{
		width: 1160px;
	}
	.mainvisual h1 img{
		max-width: 1160px;
	}
	.cpplus2023__event nav ul{
		margin-right: 40px;
	}

	.cpplus2023 .breadcrumbs{
		width: 1160px;
	}
	.cpplus2023 .links{
		width: 1160px;
	}
	.cpplus2023 footer{
		width: 1160px;
	}
}

@media screen and (max-width: 768px){
	
	.cpplus2023{
		overflow-x: scroll;
	}
	.dpc{
		display: none;
	}
	.dsp{
		display: block;
	}
	.cpplus2023.cpplus2023__event #contents{
		width: 100%;
	}
.cpplus2023 nav .inner,.cpplus2023 header,section.sec03 .grid-parent,
	.cpplus2023 .breadcrumbs .inner,.cpplus2023 .inner{
		width: 100%;
		max-width: inherit;
	}
	.cpplus2023 nav .inner .flex{
		justify-content: center;
	}
	.cpplus2023 nav .inner .flex li{
		margin-left: 0;
	}
	.cpplus2023 nav .inner .flex li:nth-child(2) {
		margin: 0 6vw;
	}
	.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__event nav ul{
		justify-content: center;
		margin: 0;
	}
	.cpplus2023 .arrow{
		font-size: 3.2vw;
		padding: 0;
	}
	.cpplus2023 .arrow::before{
		right: 0;
		left: 0;
		top: 5.5vw;
		bottom: initial;
		width: 2vw;
    	height: 2vw;
	}
	
	section.sec01{
		padding: 13vw 4vw 0;
		padding-bottom: 3.555vh;
	}
	section.sec01::before{
		bottom: 0;
		top: unset;
		height: 40vw;
	}
	section.sec01 .inner{
		padding: 0;
	}
	.cpplus2023 .sec01 h2{
		font-size: 5vw;
		letter-spacing: 0.5vw;
		margin-bottom: 6.666vw;
	}
	.cpplus2023 .sec01 .guid-pic p.att{
		font-size: 2.666vw;
		padding-top: 4vw;
	}
	.cpplus2023 .sec01 .guid-pic{
		padding: 0 5vw;
		margin-bottom: 6.66vw;
	}
	.cpplus2023 .sec01 .guid-pic ul{
		font-size: 2.666vw;
		text-align: right;
		margin: 2.999vh 0 0;
		flex-wrap: wrap;
	}
	.cpplus2023 .sec01 .guid-pic:last-of-type{
		padding: 0;
    	margin-bottom: 0;
	}
	.cpplus2023 .sec01 .guid-pic:last-of-type p.att{
		padding-right: 5vw;
		padding-top: 1vh;
	}

	section.sec02 {
		padding: 13vw 0 10vw;
	}

	.cpplus2023 .sec02 h2 {
		font-size: 5vw;
		letter-spacing: 0.5vw;
		margin-bottom: 5vw;
	}

	.cpplus2023 .sec02 .sec02-text {
		text-align: left;
		margin-bottom: 3.1vh;
		padding: 0;
	}

	.cpplus2023 .sec02 .sec02-mv {
		margin-bottom: 4vh;
	}
	
	

	.cpplus2023 .sec02 .sp-flex{
		display: flex;
		flex-direction: column-reverse;
	}
	.cpplus2023 .sec02 .guid-pic{
		width: 100vw;
		margin-bottom: 0;
		margin-left: -4.5vw;
		
	}
	.cpplus2023 .sec02 .sec02-imgbox picture {
		display: block;
		margin-bottom: 5vw;
		width: 100%;
	}

	.cpplus2023 .sec02 .sec02-imgbox {
		display: block;
		margin-bottom: 1vw;
	}
	.cpplus2023 .sec02 p.att{
		font-size: 2.6vw;
	}
	
	section.sec03{
		padding: 16vw 5.3vw 0;
		border: none;
	}
	section.sec03 .inner{
		padding: 10.66vw 7vw 0;
	}
	section.sec03::before {
		height: 93%;
	}
	.cpplus2023 .sec03 .inner{
		max-width: 100%;
	}
	section.sec03 .inner::after{
		width: 11.3vw;
		height: 11.3vw;
		top: -5vw;
	}
	section.sec03 .inner h2{
		font-size: 5.333vw;
		letter-spacing: 0.8vw;
	}
	section.sec03 .inner p.note{
		font-size: 3.2vw;
		margin-bottom: 6.66vw;
	}
	section.sec03 .inner p.txt{
		margin-bottom: 1vw;
		line-height: 1.8;
	}
	section.sec03 .inner ul.txt{
		margin-bottom: 8.66vw;
		line-height: 1.8;
		padding-left: 0;
		margin-left: 4vw;
	}
	section.sec03 .inner ul.txt li {
    list-style-position: unset;
		
}
	section.sec03 .inner .icon-blc {
		padding: 0 7vw;
		height: 10.6vw;
		line-height: 10.6vw;
	}
	.icon-blc .aco-plus{
		width: 3vw;
		height: 3vw;
	}
	.icon-blc .aco-plus::before, .icon-blc .aco-plus::after{
		width: 3vw;
	}
	section.sec03 .inner .icon-blc span.txt{
		font-size: 3.2vw;
		margin-left: 2vw;
	}
	
	
	
	section.sec04{
		padding: 14.66vw 0 16vw;
		letter-spacing: 0;
	}
	.cpplus2023 section.sec04 .inner{
		padding: 0 4.5vw;
	}
	.cpplus2023 section.sec04 .flex{
		display: block;
	}
	section.sec04 .inner {
    padding: 0 4.5vw;
}
	section.sec04 .left {
    width: 100%;
}
	section.sec04 h2 {
    font-size: 5vw;
    margin-bottom: 6vw;
	text-align: center;
}
	section.sec04 ul {
    margin-bottom: 9vw;
}
	section.sec04 ul li {
    font-size: 3.2vw;
    margin-bottom: 6vw;
    word-break: break-all;
}
	section.sec04 ul li span {
    font-size: 3.6vw;
	margin-bottom: 1vw;
}
	.cpplus2023 .forPC {
    display: none;
}
	section.sec04 .right {
    width: 100%;
}
	section.sec04 .twitterWrap {
    width: 100%;
}
	section.sec04 h3 {
    padding: 9vw 0 3vw;
    font-size: 3.4vw;
}
	section.sec04 h3 span.txt {
    width: 28vw;
}
	section.sec04 h3 span.line {
    width: calc(100% - 28vw);
    top: 0.7em;
    left: 0;
}
	section.sec04 h3 span.line img {
    top: -3vw;
    right: 0;
    width: 26vw;
}
	.cpplus2023 section.sec04 .flex.sns{
		display: flex;
	}
	section.sec04 .flex.sns {
    width: 90%;
}
	section.sec04 .flex p {
    width: 20%;
}
	section.sec04 .flex p img {
    width: 65%;
}
	section.sec04 .flex p span {
    font-size: 3vw;
	line-height: 2;
}
	
}


/*

tab02

*/

#contents #tab2 hr.line{
	border: none;
	height: 1px;
	background: #d4d8df;
	margin: 0;
}

/* sec05 */

section.sec05 {
	position: relative;
    margin-top: 0;
    padding: 50px 40px 0;
}
section.sec05::before {
	position: absolute;
    content: '';
    background: #eceef1;
    width: 100%;
    height: 53%;
    top: 540px;
    right: 0;
    left: 0;
    z-index: -1;
}
section.sec05 .inner{
	text-align: center;
}

section.sec05 .inner h2{
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 35px;
}

section.sec05 .inner .sec05-txtlist{
	text-align: left;
	margin-bottom: 60px;
	line-height: 2;
}

section.sec05 .inner .link-list{
	padding: 50px 0 100px;
	display: flex;
	justify-content: space-between;
}
section.sec05 .link-list .link-box{
	padding: 60px 0 40px;
    font-size: 16px;
    font-weight: bold;
    color: #005bac;
    position: relative;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 170px;
    height: 170px;
    background: #fff;
}
section.sec05 .link-list .link-box .num{
	position: absolute;
	width: 40px;
	height: 40px;
	top: 0;
	right: 0;
	left: 0;
	margin: 0 auto;
}
section.sec05 .link-list .link-box .sec05-anchor{
	position: absolute;
	bottom: 10%;
    left: 50%;
    transform: translate(-50%, 0%);
}

section.sec05 .link-list .link-box .sec05-anchor img{
	display: block;
}

/*
モーダル
*/
.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{
	position: relative;
}
.modaal-container .modaal-content-container .photo .att{
	position: absolute;
    right: 0;
    bottom: 0;
    font-size: 12px;
	font-weight: bold;
	padding: 5px 7px;
	background: #fff;
}
.modaal-container .modaal-content-container .photo img{
	max-width: inherit;
    width: 540px;
    height: 400px;
}
.modaal-container .modaal-content-container .flex .txt{
	position: relative;
	padding: 70px 40px 0;
	background: #005bac;
	color: #fff;
}
.modaal-container .modaal-content-container .flex.only .txt{
	padding: 100px 120px;
}
.modaal-container .modaal-content-container .flex.only{
	display: block;
}
.modaal-container .modaal-content-container .txt .corner{
	font-size: 16px;
	margin-bottom: 10px;
	
}
.modaal-container .modaal-content-container .txt h3{
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 30px;
}
.modaal-container .modaal-content-container .txt p.exp{
	line-height: 1.8;
}
.modaal-container .modaal-content-container .txt p.exp a{
	color: #fff;
	text-decoration: underline;
}

.modaal-container .modaal-content-container .modal-sec09-txt{
	position: relative;
	padding: 40px 40px 50px 50px;
	background: #fff;
}
.modaal-container .modaal-content-container .modal-sec09-txt .furi{
	font-size: 12px;
}
.modaal-container .modaal-content-container .modal-sec09-txt .name{
	font-size: 28px;
	font-weight: bold;
	letter-spacing: 2px;
}
.modaal-container .modaal-content-container .modal-sec09-txt .prof{
	font-weight: bold;
	font-size: 16px;
}
.modaal-container .modaal-content-container .modal-sec09-txt .name span{
	font-size: 22px;
}
.modaal-container .modaal-content-container .modal-sec09-txt .flex{
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 20px;
}
.modaal-container .modaal-content-container .modal-sec09-txt .bio{
	line-height: 1.6;
	margin-bottom: 15px;
}

.modaal-container .modaal-content-container .modal-sec09-txt .link-li-blc{
	 position: absolute; 
	right: 40px;
	bottom: 20px;
}
.modaal-container .modaal-content-container .modal-sec09-txt .link-list{
	display: flex;
	justify-content: flex-end;
	margin-bottom: 10px;
}
.modaal-container .modaal-content-container .modal-sec09-txt .link-list.wrap{
	flex-wrap: wrap;
}
.modaal-container .modaal-content-container .modal-sec09-txt .link-list a{
	position: relative;
	padding: 0 15px 0 30px;
	color: #005bac;
}
.modaal-container .modaal-content-container .modal-sec09-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;
}

@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){


	.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;
	}

}




/*田中氏モーダル */

.modaal-container .modaal-content-container .tanaka .txt{
    padding: 50px 40px 40px 50px;
    background: #fff;
	color: #000;
}
.modaal-container .modaal-content-container .tanaka .txt .furi {
    font-size: 12px;
}
.modaal-container .modaal-content-container .tanaka .txt .flex {
    justify-content: space-between;
    align-items: baseline;
    margin-bottom: 20px;
}

.modaal-container .modaal-content-container .tanaka .txt .name{
	font-size: 28px;
	font-weight: bold;
	letter-spacing: 2px;
}
.modaal-container .modaal-content-container .tanaka .txt .prof{
	font-weight: bold;
	font-size: 16px;
}
.modaal-container .modaal-content-container .tanaka .txt .name span{
	font-size: 22px;
}
.modaal-container .modaal-content-container .tanaka .txt .flex{
	justify-content: space-between;
	align-items: baseline;
	margin-bottom: 20px;
}
.modaal-container .modaal-content-container .tanaka .txt .bio{
	line-height: 1.6;
	margin-bottom: 15px;
}

.modaal-container .modaal-content-container .tanaka .txt .link-li-blc{
	position: absolute;
	right: 40px;
	bottom: 20px;
}
.modaal-container .modaal-content-container .tanaka .txt .link-list{
	display: flex;
	justify-content: flex-end;
	margin-bottom: 10px;
}
.modaal-container .modaal-content-container .tanaka .txt .link-list a{
	position: relative;
	padding: 0 15px 0 30px;
	color: #005bac;
}
.modaal-container .modaal-content-container .tanaka .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,
.modaal-wrapper .modal-sec09-txt .modaal-close{
	display: block;
	position: absolute;
	right: -8px;
    top: -65px;
	
}
.modaal-close:before, .modaal-close:after{
	width: 2px;
	height: 50px;
	background: #000;
   	top: 0;
    right: 0;
}
.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;
}

/* sec06 */

section.sec06 {
	padding: 80px 40px 30px;
}
section.sec06 .sec06-box {
    display: flex;
	margin-bottom: 60px;
}
section.sec06 .sec06-box .sec06-box-left{

}
section.sec06 .sec06-box .sec06-box-left__txt {
    margin-bottom: 20px;
	line-height: 1.7;
}
section.sec06 .sec06-box .sec06-box-left__caution a{
	text-decoration: underline;
}
section.sec06 .sec06-box .sec06-box-right{
    margin-left: 35px;
}
section.sec06 .sec06-box .sec06-box-right img {
    max-width: fit-content;
	width: 437px;
}
section.sec06 .sec06-box .sec06-box-left__title {
	font-size: 28px;
    font-weight: bold;
    margin-bottom: 25px;
    color: #005bac;
    letter-spacing: 0;
    display: flex;
    align-items: center;
}
section.sec06 .sec06-box .sec06-box-left__title .num {
    margin-right: 20px;
}
section.sec06 .sec06-box .sec06-box-left .prof-modal{
	display: inline-block;
	border: solid 1px #d4d8df;
	padding: 10px 20px 10px 25px;
	font-weight: bold;
}

section.sec06 .sec06-box .sec06-box-left .prof-modal span{
	display: inline-block;
	position: relative;
	width: 2px;
	height: 14px;
	background: #005bac;
	margin-right: 15px;
	top: 2px;
	
}
section.sec06 .sec06-box .sec06-box-left .prof-modal span::before{
	content: '';
    display: inline-block;
    background: #005bac;
    position: absolute;
    right: 0;
    top: 50%;
	width: 2px;
	height: 14px;
	transform: translateY(-50%) rotate(90deg);
    -webkit-transform: translateY(-50%) rotate(90deg);
    -ms-transform: translateY(-50%) rotate(90deg);
}

/* sec07 */

section.sec07{
	position: relative;
	background: #eceef1;
}
section.sec07 .inner{
	padding: 80px 40px;
}
section.sec07 .inner h2{
	position: relative;
	font-size: 20px;
	margin-bottom: 40px;
}
section.sec07 .inner h2::after{
	position: absolute;
	content: '';
	display: inline-block;
	background: #d4d8df;
	width: 850px;
	height: 1px;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}
section.sec07 .inner h3{
	font-size: 16px;
	margin-bottom: 15px;
}
section.sec07 .inner h3 span.dia{
	display: inline-block;
	width: 10px;
	height: 10px;
	background: #005bac;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	margin-right: 10px;
}
section.sec07 .cnt-box{
	text-align: center;
}
section.sec07 .flex{
	justify-content: space-between;
}
section.sec07 .lens-box{
	position: relative;
	width: 520px;
	background: #fff;
	padding: 20px 30px;
	margin-bottom: 10px;
	text-align: left;
}
section.sec07 .lens-box::after{
	content: '';
	display: inline-block;
	position: absolute;
	bottom: 10px;
	right: 12px;
	width: 13px;
	height: 10px;
	background-size: contain;
	background:  url("../../img/blank.png") no-repeat;
}
section.sec07 .lens-box .name{
	font-size: 16px;
	font-weight: bold;
}
section.sec07 .lens-box .model{
	font-size: 12px;
}
section.sec07 .lens-box span{
	position: absolute;
	font-size: 12px;
	top: 0;
	right: 0;
	color: #fff;
	padding: 1px 6px;
}
section.sec07 .lens-box span.blue{
	background: #005bac;
}
section.sec07 .lens-box span.blac{
	background: #000;
}

section.sec07 .lens-box .lens-box-flex {
	position: absolute;
	font-size: 12px;
	top: 0;
	right: 0;
	text-align: center;
}

section.sec07 .lens-box .lens-box-flex .blue{
	background: #005bac;
	color: #fff;
    padding: 1px 6px;
}
section.sec07 .lens-box .lens-box-flex .blac{
	background: #000;
	color: #fff;
    padding: 1px 6px;
}

section.sec07 .inner .icon-blc{
	display: inline-block;
	padding: 0 15px;
	height: 45px;
	line-height: 45px;
	margin: 25px auto 20px;
	border: solid 1px #d4d8df;
	cursor: pointer;
}
section.sec07 .inner .icon-blc .aco-plus{
	display: inline-block;
	top: 1px;
}
section.sec07 .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.sec07 .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.sec07 .inner .icon-blc span.txt{
	margin-left: 6px;
}
@media screen and (max-width: 768px){
	section.sec07 .lens-box .lens-box-flex {
		display: flex;
	}
	
	section.sec07 .lens-box .lens-box-flex .blue{
		margin-left: 2px;
	}
}

/* sec08 */

section.sec08{
	padding: 90px 0;
}

section.sec08 .inner{
	max-width: none;
}

section.sec08 .program .program-text {
    max-width: 1160px;
    margin: 0 auto;
    text-align: center;
    margin-bottom: 20px;
}
section.sec08 .program .program-text .sp {
	display: none;
}
section.sec08 .program .contents__inner {
    position: relative;
}
section.sec08 .program .flex.day{
	border-top: solid 2px #bdbec1;
	border-bottom: solid 1px #bdbec1;
	background: #f5f6f8;
}
section.sec08 .program .flex{
	justify-content: center;
}
section.sec08 .program h2{
	font-size: 30px;
	text-align: center;
	margin-bottom: 20px;
}
section.sec08 .program .note{
	text-align: center;
	margin-bottom: 60px;
	letter-spacing: normal;
}

section.sec08 .day.flex li:first-child{
	border-left: solid 1px #bdbec1;
}
section.sec08 .day.flex li{
	max-width: 290px;
	width: 100%;
	text-align: center;
	padding: 5px 0;
	border-right: solid 1px #bdbec1;
}
section.sec08 p.time{
	font-size: 12px;
	margin: 15px 0 5px;
}
section.sec08 .grid-area{
	width: 100%;
    height: 100%;
    border-bottom: solid 1px #bdbec1;
}
section.sec08 .grid-parent{
	position: relative;
	max-width: 1160px;
	margin: 0 auto;
	border-left: solid 1px #bdbec1;
	border-right: solid 1px #bdbec1;
}

section.sec08 .grid-parent > div{
	border-right: solid 1px #bdbec1;
}
section.sec08 .grid-parent .bg{
	min-height: 150px;
	position: relative;
	top: -1px;
	background: #fff;
	padding: 33px 18px 15px;
}
section.sec08 .grid-parent .tag{
	display: none;
	position: absolute;
    top: -26px;
    right: 0;
}
section.sec08 .grid-parent .release-tag.tag{
	display: none;
}
section.sec08 .grid-parent .unpub-tag.tag{
	
}
section.sec08 .grid-parent .ctg{
	font-size: 13px;
    position: absolute;
    top: 0;
    right: 0;
    color: #fff;
    padding: 0 5px;
    height: 24px;
    line-height: 24px;
    text-align: center;
}

/*カテゴリーカラー*/
section.sec08 .grid-parent .ctg.live{
	background: #1270ab;
}
section.sec08 .grid-parent .ctg.lens{
	background: #1daed2;
}
section.sec08 .grid-parent .ctg.photo{
	background: #94b936;
}
section.sec08 .grid-parent .ctg.special{
	background: #ef8700;
}

section.sec08 .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.sec08 .grid-parent h3{
	font-size: 14px;
	margin-bottom: 10px;
	line-height: 1.3;
}

section.sec08 .grid-parent .name{
	font-size: 13px;
	line-height: 1.3;
}
section.sec08 .grid-parent .name span{
	font-size: 11px;
	margin-left: 10px;
}

section.sec08 .icon-blc{
	position: absolute;
	display: flex;
	justify-content: center;
	align-items: center;
	right: 0;
	bottom: 0;
	width: 30px;
	height: 30px;
	border-top: solid 1px #e2e5ea;
	border-left: solid 1px #e2e5ea;
	cursor: pointer;
    transition: 0.3s;
}

.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.sec08 .icon-blc.active{
	background: #000;
	border: none;
}
section.sec08 .icon-blc.active .aco-plus::before{
	background: #fff;
	transform: translateY(-50%) rotate(45deg);
}
section.sec08 .icon-blc.active .aco-plus::after{
	background: #fff;
	transform: translateY(-50%) rotate(135deg);
}

section.sec08 .aco{
	padding: 15px 0 25px;
}
section.sec08 .aco > p{
	font-size: 13px;
}
section.sec08 .aco .flex{
	margin: 15px 0 0;
	justify-content: flex-start;
	align-items: center;
}
section.sec08 .aco .model-icon{
	position: relative;
	width: 50px;
	height: 50px;
	border: solid 1px #d4d8df;
}
section.sec08 .aco .model-icon img{
	position: absolute;
	inset: 0;
	margin: auto;
	width: 45px;
	height: auto;
}
section.sec08 .aco .model-name{
	margin-left: 10px;
	font-size: 12px;
	color: #005bac;
}
section.sec08 .aco .model-name::after{
	width: 13px;
	height: 13px;
	content: '';
	display: inline-block;
	background: url("../../img/cpplus2022-online/window_icon.png") no-repeat;
	background-size: contain;
	margin-left: 5px;
    margin-bottom: -3px;
}


section.sec08 .grid-parent {
display: grid;
grid-template-columns: repeat(4, 25%);
grid-template-rows: repeat(8, auto);
grid-column-gap: 0px;
grid-row-gap: 0px;
display: -ms-grid;
-ms-grid-columns: repeat(4, 25%);
-ms-grid-rows: repeat(8, auto);
-ms-grid-row-gap: 0px;
-ms-grid-column-gap: 0px;

}
  section.sec08 .grid-parent .div1 {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }

  section.sec08 .grid-parent .div2 {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }

  section.sec08 .grid-parent .div3 {
    -ms-grid-row: 3;
    -ms-grid-column: 1;
  }

  section.sec08 .grid-parent .div4 {
    -ms-grid-row: 4;
    -ms-grid-column: 1;
  }

  section.sec08 .grid-parent .div5 {
    -ms-grid-row: 5;
    -ms-grid-column: 1;
  }

  section.sec08 .grid-parent .div6 {
    -ms-grid-row: 6;
    -ms-grid-column: 1;
  }

  section.sec08 .grid-parent .div7 {
    -ms-grid-row: 7;
    -ms-grid-column: 1;
  }

  section.sec08 .grid-parent .div8 {
    -ms-grid-row: 8;
    -ms-grid-column: 1;
	  padding-bottom: 40px; 
  }

  section.sec08 .grid-parent .div9 {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }

  section.sec08 .grid-parent .div10 {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
  }

  section.sec08 .grid-parent .div11 {
    -ms-grid-row: 3;
    -ms-grid-column: 2;
  }

  section.sec08 .grid-parent .div12 {
    -ms-grid-row: 4;
    -ms-grid-column: 2;
  }

  section.sec08 .grid-parent .div13 {
    -ms-grid-row: 5;
    -ms-grid-column: 2;
  }

  section.sec08 .grid-parent .div14 {
    -ms-grid-row: 6;
    -ms-grid-column: 2;
  }

  section.sec08 .grid-parent .div15 {
    -ms-grid-row: 7;
    -ms-grid-column: 2;
  }

  section.sec08 .grid-parent .div16 {
    -ms-grid-row: 8;
    -ms-grid-column: 2;
	  padding-bottom: 40px; 
  }

  section.sec08 .grid-parent .div17 {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }

  section.sec08 .grid-parent .div18 {
    -ms-grid-row: 2;
    -ms-grid-column: 3;
  }

  section.sec08 .grid-parent .div19 {
    -ms-grid-row: 3;
    -ms-grid-column: 3;
  }

  section.sec08 .grid-parent .div20 {
    -ms-grid-row: 4;
    -ms-grid-column: 3;
  }

  section.sec08 .grid-parent .div21 {
    -ms-grid-row: 5;
    -ms-grid-column: 3;
  }

  section.sec08 .grid-parent .div22 {
    -ms-grid-row: 6;
    -ms-grid-column: 3;
  }

  section.sec08 .grid-parent .div23 {
    -ms-grid-row: 7;
    -ms-grid-column: 3;
  }

  section.sec08 .grid-parent .div24 {
    -ms-grid-row: 1;
    -ms-grid-column: 4;
	padding-bottom: 40px; 
  }

  section.sec08 .grid-parent .div25 {
    -ms-grid-row: 2;
    -ms-grid-column: 4;
  }

  section.sec08 .grid-parent .div26 {
    -ms-grid-row: 3;
    -ms-grid-column: 4;
  }

  section.sec08 .grid-parent .div27 {
    -ms-grid-row: 4;
    -ms-grid-column: 4;
  }

  section.sec08 .grid-parent .div28 {
    -ms-grid-row: 5;
    -ms-grid-column: 4;
  }

  section.sec08 .grid-parent .div29 {
    -ms-grid-row: 6;
    -ms-grid-column: 4;
  }

  section.sec08 .grid-parent .div30 {
    -ms-grid-row: 7;
    -ms-grid-column: 4;
  }

  section.sec08 .grid-parent .div31 {
    -ms-grid-row: 8;
    -ms-grid-column: 4;
  }

  section.sec08 .grid-parent .div32 {
    -ms-grid-row: 8;
    -ms-grid-column: 4;
	padding-bottom: 20px; 
  }




section.sec08 .grid-parent .div { grid-area: 3 / 1 / 4 / 2; }
section.sec08 .grid-parent .div4 { grid-area: 4 / 1 / 5 / 2; }
section.sec08 .grid-parent .div5 { grid-area: 5 / 1 / 6 / 2; }
section.sec08 .grid-parent .div6 { grid-area: 6 / 1 / 7 / 2; }
section.sec08 .grid-parent .div7 { grid-area: 7 / 1 / 8 / 2; }
section.sec08 .grid-parent .div8 { grid-area: 8 / 1 / 9 / 2;padding-bottom: 30px; }
section.sec08 .grid-parent .div9 { grid-area: 1 / 2 / 2 / 3; }
section.sec08 .grid-parent .div10 { grid-area: 2 / 2 / 3 / 3; }
section.sec08 .grid-parent .div11 { grid-area: 3 / 2 / 4 / 3; }
section.sec08 .grid-parent .div12 { grid-area: 4 / 2 / 5 / 3; }
section.sec08 .grid-parent .div13 { grid-area: 5 / 2 / 6 / 3; }
section.sec08 .grid-parent .div14 { grid-area: 6 / 2 / 7 / 3; }
section.sec08 .grid-parent .div15 { grid-area: 7 / 2 / 8 / 3; }
section.sec08 .grid-parent .div16 { grid-area: 8 / 2 / 9 / 3;padding-bottom: 30px;  }
section.sec08 .grid-parent .div17 { grid-area: 1 / 3 / 2 / 4; }
section.sec08 .grid-parent .div18 { grid-area: 2 / 3 / 3 / 4; }
section.sec08 .grid-parent .div19 { grid-area: 3 / 3 / 4 / 4; }
section.sec08 .grid-parent .div20 { grid-area: 4 / 3 / 5 / 4; }
section.sec08 .grid-parent .div21 { grid-area: 5 / 3 / 6 / 4; }
section.sec08 .grid-parent .div22 { grid-area: 6 / 3 / 7 / 4; }
section.sec08 .grid-parent .div23 { grid-area: 7 / 3 / 8 / 4;}
section.sec08 .grid-parent .div24 { grid-area: 8 / 3 / 9 / 4;padding-bottom: 30px;  }
section.sec08 .grid-parent .div25 { grid-area: 1 / 4 / 2 / 5; }
section.sec08 .grid-parent .div26 { grid-area: 2 / 4 / 3 / 5; }
section.sec08 .grid-parent .div27 { grid-area: 3 / 4 / 4 / 5; }
section.sec08 .grid-parent .div28 { grid-area: 4 / 4 / 5 / 5; }
section.sec08 .grid-parent .div29 { grid-area: 5 / 4 / 6 / 5; }
section.sec08 .grid-parent .div30 { grid-area: 6 / 4 / 7 / 5; }
section.sec08 .grid-parent .div31 { grid-area: 7 / 4 / 8 / 5; }
section.sec08 .grid-parent .div32 { grid-area: 8 / 4 / 9 / 5;padding-bottom: 30px;  }


section.sec08 .grid-parent>div{
	padding: 0 20px;
}
section.sec08 .grid-parent>div.day26{
	border-right: none;
}

_:lang(x)::-ms-backdrop, section.sec08 .grid-parent>div{
	width:290px;
}
_:lang(x)::-ms-backdrop, section.sec08 .grid-parent>div.day22{
	width: 289px;
}


section.sec08 .grid-parent hr{
	display: block;
	width: 1px;
	height: 100%;
	border: none;
	background: #bdbec1;
	margin: 0 0 0 -1px;
}

section.sec08 .contents-box {
    background-color: #005bac;
    color: #fff;
	height: 230px;
    position: relative;
	padding: 15px 10px 0 10px;
}

section.sec08 .contents-box-title {
    font-size: 16px;
}

section.sec08 .contents-box-title .subtitle {
    font-size: 10px;
	margin-bottom: 10px;
}

section.sec08 .contents-box-subtitle {
	font-size: 12px;
    margin-bottom: 40px;
}
section.sec08 .contents-box-subtitle.two {
	font-size: 12px;
    margin-bottom: 13.5px;
}

section.sec08 .contents-box-info{

}

section.sec08 .contents-box-ttl{
    font-size: 12px;
    font-weight: bold;
    margin-bottom: 15px;
    height: 50px;
}

section.sec08 .contents-box-lens{
	font-size: 11px;
    height: 50px;
}

section.sec08 .contents-box-label{
	position: absolute;
    top: 0;
    right: 0;
    padding: 2px 10px;
    background-color: #F2F2F2;
    font-size: 12px;
	color: #000;
}

section.sec08 .contents-box-secondlabel{
	position: absolute;
    top: 0;
    right: 0;
}

section.sec08 .contents-box-secondlabel li{
    padding: 2px 10px;
    background-color: #F2F2F2;
    font-size: 12px;
	text-align: center;
	margin-bottom: 2px;
	color: #000;
}

section.sec08 .div2 .contents-box,section.sec08 .div4 .contents-box,section.sec08 .div6 .contents-box,section.sec08 .div8 .contents-box,section.sec08 .div10 .contents-box,
section.sec08 .div12 .contents-box,section.sec08 .div14 .contents-box,section.sec08 .div16 .contents-box,section.sec08 .div18 .contents-box,
section.sec08 .div20 .contents-box,section.sec08 .div22 .contents-box,section.sec08 .div24 .contents-box,section.sec08 .div26 .contents-box,
section.sec08 .div28 .contents-box,section.sec08 .div30 .contents-box{
    background-color: #F2F2F2;
    color: #000;
	height: 230px;
    position: relative;
	padding: 15px 10px 0 10px;
}

section.sec08 .div2 .contents-box-label,section.sec08 .div4 .contents-box-label,section.sec08 .div6 .contents-box-label,section.sec08 .div8 .contents-box-label,section.sec08 .div10 .contents-box-label,
section.sec08 .div12 .contents-box-label,section.sec08 .div14 .contents-box-label,section.sec08 .div18 .contents-box-label,
section.sec08 .div20 .contents-box-label,section.sec08 .div22 .contents-box-label,section.sec08 .div24 .contents-box-label,section.sec08 .div26 .contents-box-label,
section.sec08 .div28 .contents-box-label,section.sec08 .div30 .contents-box-label{
    padding: 2px 10px;
    background-color: #005bac;
	color: #fff;
    font-size: 12px;
	text-align: center;
	margin-bottom: 2px;
}

section.sec08 .div16 .contents-box-secondlabel li{
    padding: 2px 10px;
    background-color: #005bac;
	color: #fff;
    font-size: 12px;
	text-align: center;
	margin-bottom: 2px;
}

@media screen and (max-width: 1180px){

	section.sec08 .div2 .contents-box-label,section.sec08 .div4 .contents-box-label,section.sec08 .div6 .contents-box-label,section.sec08 .div8 .contents-box-label,section.sec08 .div10 .contents-box-label,
	section.sec08 .div12 .contents-box-label,section.sec08 .div14 .contents-box-label,section.sec08 .div18 .contents-box-label,
	section.sec08 .div20 .contents-box-label,section.sec08 .div22 .contents-box-label,section.sec08 .div24 .contents-box-label,section.sec08 .div26 .contents-box-label,
	section.sec08 .div28 .contents-box-label,section.sec08 .div30 .contents-box-label{
		font-size: 10px;
	}

	section.sec08 .div16 .contents-box-secondlabel li{
		font-size: 10px;
	}

	section.sec08 .contents-box-label{
		font-size: 10px;
	}
	
	section.sec08 .contents-box-secondlabel li{
		font-size: 10px;
	}


	section.sec08 .div2 .contents-box,section.sec08 .div4 .contents-box,section.sec08 .div6 .contents-box,section.sec08 .div8 .contents-box,section.sec08 .div10 .contents-box,
	section.sec08 .div12 .contents-box,section.sec08 .div14 .contents-box,section.sec08 .div16 .contents-box,section.sec08 .div18 .contents-box,
	section.sec08 .div20 .contents-box,section.sec08 .div22 .contents-box,section.sec08 .div24 .contents-box,section.sec08 .div26 .contents-box,
	section.sec08 .div28 .contents-box,section.sec08 .div30 .contents-box{
		height: 230px;
	}

	section.sec08 .contents-box {
		padding: 15px 15px 0 15px;
	}

	section.sec08 .contents-box {
		height: 230px;
	}

	section.sec08 .contents-box-lens {
		font-size: 10px;
	}
}

@media screen and (max-width: 768px){

	section.sec08 .contents-box-ttl {
		font-size: 11px;
		font-weight: bold;
		margin-bottom: 15px;
		height: 35px;
	}

	section.sec08 .program .program-text {
		width: 90%;
		font-size: 2.8vw;
	}
	section.sec08 .program .program-text .sp {
		display: block;
	}
	section.sec08 .contents-box {
		height: 460px;
	}
	section.sec08 .div2 .contents-box,section.sec08 .div4 .contents-box,section.sec08 .div6 .contents-box,section.sec08 .div8 .contents-box,section.sec08 .div10 .contents-box,
	section.sec08 .div12 .contents-box,section.sec08 .div14 .contents-box,section.sec08 .div16 .contents-box,section.sec08 .div18 .contents-box,
	section.sec08 .div20 .contents-box,section.sec08 .div22 .contents-box,section.sec08 .div24 .contents-box,section.sec08 .div26 .contents-box,
	section.sec08 .div28 .contents-box,section.sec08 .div30 .contents-box{
    	height: 460px;
	}

	section.sec08 .contents-box-label {
		font-size: 3.73vw;
	}

	section.sec08 .div2 .contents-box-label,section.sec08 .div4 .contents-box-label,section.sec08 .div6 .contents-box-label,section.sec08 .div8 .contents-box-label,section.sec08 .div10 .contents-box-label,
	section.sec08 .div12 .contents-box-label,section.sec08 .div14 .contents-box-label,section.sec08 .div18 .contents-box-label,
	section.sec08 .div20 .contents-box-label,section.sec08 .div22 .contents-box-label,section.sec08 .div24 .contents-box-label,section.sec08 .div26 .contents-box-label,
	section.sec08 .div28 .contents-box-label,section.sec08 .div30 .contents-box-label{
		font-size: 3.73vw;
	}

	section.sec08 .contents-box-title {
		font-size: 5vw;
	}

	section.sec08 .contents-box-title .subtitle {
		font-size: 3.5vw;
	}
	

	section.sec08 .contents-box-subtitle {
		font-size: 3.5vw;
	}

	section.sec08 .contents-box-lens {
		font-size: 3.73vw;
	}

	section.sec08 .contents-box-ttl{
		font-size: 3.73vw;
		height: auto;
	}

	section.sec08 .contents-box-secondlabel li{
		font-size: 3.73vw;
	}

	section.sec08 .div16 .contents-box-secondlabel li {
		font-size: 3.73vw;
	}
}
@media screen and (max-width: 414px){
	section.sec08 .contents-box {
		height: 270px;
	}
	section.sec08 .div2 .contents-box,section.sec08 .div4 .contents-box,section.sec08 .div6 .contents-box,section.sec08 .div8 .contents-box,section.sec08 .div10 .contents-box,
	section.sec08 .div12 .contents-box,section.sec08 .div14 .contents-box,section.sec08 .div16 .contents-box,section.sec08 .div18 .contents-box,
	section.sec08 .div20 .contents-box,section.sec08 .div22 .contents-box,section.sec08 .div24 .contents-box,section.sec08 .div26 .contents-box,
	section.sec08 .div28 .contents-box,section.sec08 .div30 .contents-box{
    	height: 270px;
	}
}
@media screen and (max-width: 390px){
	section.sec08 .contents-box {
		height: 250px;
	}
	section.sec08 .div2 .contents-box,section.sec08 .div4 .contents-box,section.sec08 .div6 .contents-box,section.sec08 .div8 .contents-box,section.sec08 .div10 .contents-box,
	section.sec08 .div12 .contents-box,section.sec08 .div14 .contents-box,section.sec08 .div16 .contents-box,section.sec08 .div18 .contents-box,
	section.sec08 .div20 .contents-box,section.sec08 .div22 .contents-box,section.sec08 .div24 .contents-box,section.sec08 .div26 .contents-box,
	section.sec08 .div28 .contents-box,section.sec08 .div30 .contents-box{
    	height: 250px;
	}
}

/* sec09 */

section.sec09 {
	background: #eceef1;
}

section.sec09 .inner{
	padding: 80px 40px 40px;
}

section.sec09 .ttl{
	text-align: center;
	margin-bottom: 50px;
}
section.sec09 .ttl h2{
	font-size: 28px;
	margin-bottom: 5px;
}

section.sec09 .pc-flex{
	display: flex;
	justify-content: space-between;
}

section.sec09 .pc-flex:last-child{
	justify-content: left;
}

section.sec09 .flex .prf-blc{
	width: 240px;
	margin-right: 40px;
	text-align: center;
	padding-bottom: 60px;
}
section.sec09 .pc-flex .flex:last-of-type .prf-blc:last-of-type{
	margin-right: 0;
}
section.sec09 .flex .prf-blc .name{
	font-size: 18px;
	padding-top: 20px;
	margin-bottom: 5px;
}
section.sec09 .flex .prf-blc .img-blc:hover{
	opacity: .75;
	transition: .2s;
}
section.sec09 .flex .prf-blc .img-blc{
	position: relative;
	border: solid 1px #d4d8df;
}
section.sec09 .flex .prf-blc .img-blc a:hover{
	opacity: 1;
}
section.sec09 .flex .prf-blc .img-blc img{
	vertical-align: bottom;
}
section.sec09 .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;
}

@media screen and (max-width: 1160px){
	.modaal-container .modaal-content-container .photo{
		width: 45%;
		background-color: #Fff;
	}
	.modaal-container .modaal-content-container .txt{
		width: 65%;
	}
	.modaal-container .modaal-content-container .flex.only .txt{
		width: 100%;
	}
	.modaal-container .modaal-content-container .flex .txt{
		padding: 40px 30px 30px;
	}
	.modaal-container .modaal-content-container .photo img{
		max-width: 540px;
		height: auto;
		width: auto;
	}
}

@media screen and (max-width: 768px){
	html,body{
		overflow-x: hidden !important;
	}
	section.sec05 {
		padding: 0;
	}
	section.sec05 .inner{
		padding: 13vw 5.33vw 0;
	}
	section.sec05 .inner .sec05-txtlist {
		line-height: 1.8;
		margin-bottom: 8vw;
	}
	section.sec05 .inner .topTxt{
		padding: 0;
		margin-bottom: 8vw;
		line-height: 1.8;
	}
	section.sec05 .inner .guidelines{
		height: 10.666vw;
		line-height: 10.666vw;
		margin: 0;
	}
	section.sec05 .inner .guidelines p{
		font-size: 4vw;
		padding-right: 5vw;
	}
	section.sec05 .inner .icon-blc{
		width: 10vw;
		height: 10vw;
	}
	section.sec05 .inner .icon-blc .aco-plus{
		width: 4.6vw;
		height: 4.6vw;
	}
	section.sec05 .icon-blc .aco-plus::before, section.sec05 .icon-blc .aco-plus::after{
		width: 4.6vw;
	}
	section.sec05 .inner .guidelines-aco{
		padding: 6.6vw 8vw 10.6vw;
		line-height: 1.8;
		margin: 0;
	}

	section.sec05 .inner .guidelines-aco ul{
		padding-left: 0;
	}
	section.sec05 .inner .guidelines-aco ul li{
		list-style-position: inside;
	}
	section.sec05::before{
		height: 59%;
		bottom: 0;
		top: auto;
	}
	section.sec05 .inner h2{
		font-size: 5vw;
		margin-bottom: 3.333vw;
	}
	section.sec05 .inner .link-list{
		display: block;
		padding: 5.5vw 0 8.5vw;
	}
	section.sec05 .link-list .link-box{
		padding: 5.5vw 5.33vw;
		font-size: 3.73vw;
		justify-content: flex-start;
		width: 100%;
		height: auto;
		margin-bottom: 2vw;
		text-align: left;
	}
	/* section.sec05 .link-list a:first-of-type .link-box{
		padding: 4vw 5.33vw;
	} */
	section.sec05 .link-list .link-box .num {
    width: 6.666vw;
    height: 6.666vw;
    top: 0;
	bottom: 0;
    left: 5.33vw;
    margin: auto 0;
}
section.sec05 .link-list .link-box p{
	padding-left: 10vw;
	line-height: 1.3;
}

section.sec05 .link-list .link-box .sec05-anchor {
	position: absolute;
	bottom: 50%;
	left: auto;
	right: 5%;
	transform: translate(-50%, 50%);
}

	
/* モーダル */
	.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; */
		position: unset;
		transform: none;
		/* width: 100%; */
	}

	.modaal-container .modaal-content-container .mov_modal_inner > .flex {
		max-width: 950px;
		margin: 0 auto;
	}

	.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 .att{
		font-size: 2.8vw;
		padding: 1vw 2vw;
	}
	.modaal-container .modaal-content-container .photo{
		width: 100%;
	}
	.modaal-container .modaal-content-container .txt{
		width: 100%;
	}
	.modaal-container .modaal-content-container .photo img {
    width: 100%;
    height: auto;
	max-width: 100%;
}
	.modaal-container .modaal-content-container .flex.only .txt{
    padding: 7vw 8vw 6vw;
	}
	
	.modaal-container .modaal-content-container .txt .corner{
		font-weight: bold;
		font-size: 4vw;
		margin-bottom: 2.6vw;
	}
	.modaal-container .modaal-content-container .txt h3{
		font-size: 6vw;
		margin-bottom: 4vw;
		line-height: 1.4;
	}
	
	.modaal-wrapper .txt .modaal-close,
	.modaal-wrapper .modal-sec09-txt .modaal-close {
		top: -76vw;
		right: 0;
		width: 11vw;
		height: 11vw;
	}
	.modaal-wrapper .flex.only .txt .modaal-close,
	.modaal-wrapper .flex.only .modal-sec09-txt .modaal-close{
		top: -14vw;
	}
	.modaal-close:before, .modaal-close:after{
		height: 11vw;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .link-list.wrap{
		flex-wrap: wrap;
		row-gap: 1vw;
		
	}
	.modaal-container .modaal-content-container .modal-sec09-txt{
		width: 100%;
		padding: 7vw 8vw 6vw;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .furi{
		font-size: 3vw;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .flex{
		margin-bottom: 4vw;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .name{
		font-size: 6.6vw;
    	letter-spacing: 1px;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .prof{
		font-size: 4vw;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .bio{
		margin-bottom: 5.33vw;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .link-li-blc{
		position: initial;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .link-list{
		margin-bottom: 1vw;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .link-list{
		justify-content: space-around;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .link-list a{
		padding: 0 5vw 0 0;
    	margin-right: 3px;
	}
	.modaal-container .modaal-content-container .modal-sec09-txt .link-list a p::after{
		width: 3.8vw;
		height: 3.8vw;
		right: -0.7vw;
	}
	
	
	
	
	
	
	
	

	section.sec06 {
		padding: 13.3vw 0 0 0;
	}

	
	section.sec06 #sec06-box_03{
		position: relative;
		padding-bottom: 18vw;
	}
	section.sec06 .sec06-box .sec06-box-left__title {
		font-size: 4.5vw;
		margin-bottom: 2.999vh;
		line-height: 3vh;
		position: relative;
		padding-left: 50px;
		height: 40px;
	}
	section.sec06 .sec06-box .sec06-box-left__title .num {
		position: absolute;
		left: 0;
	}
	section.sec06 .sec06-box .sec06-box-left__title img {
		width: 40px;
	}
	section.sec06 .sec06-box {
		flex-wrap: wrap;
		margin-bottom: 5.924vh;
	}
	section.sec06 .sec06-box .sec06-box-right {
		margin-left: 0;
		width: 100%;
	}
	section.sec06 .sec06-box .sec06-box-right img {
		margin-top: 0;
	}
	section.sec06 .sec06-box .sec06-box-left {
		width: 100%;
	}
	section.sec06 .sec06-box .sec06-box-left .prof-modal{
		display: block;
		width: 100%;
		padding: 3vw 0;
		text-align: center;
		position: absolute;
		bottom: 0;
		
	}
	section.sec06 .sec06-box .sec06-box-left .prof-modal span{
		width: 1px;
		height: 3vw;
		top: .2vw;
		margin-right: 3vw;
	}
	section.sec06 .sec06-box .sec06-box-left .prof-modal span::before{
		width: 1px;
		height: 3vw;
	}
	section.sec06 .sec06-box .sec06-box-left .sec06-box-left__txt {
		margin-bottom: 7vw;
		line-height: 1.7;
	}
	section.sec06 .sec06-box .sec06-box-right img {
		width: 100%;
		max-width: 100%;
	}
	
	section.sec07 .inner{
	    padding: 7.11vh 5.333vw;
	}
	section.sec07 .inner h2{
		font-size: 4.533vw;
		margin-bottom: 8vw;
	}
	section.sec07 .inner h2::after {
    width: 36vw;
	}
	section.sec07::before{
		bottom: -44%;
	}
	section.sec07 .inner h3{
		font-size: 3.7vw;
		margin-bottom: 3.5vw;
	}
	section.sec07 .inner h3 span.dia{
		width: 2.5vw;
		height: 2.5vw;
		margin-right: 2.3vw;
	}
	section.sec07 .flex{
		display: block;
	}
	section.sec07 .lens-box {
    width: 100%;
    padding: 6.5vw 0 6vw 5.33vw;
    margin-bottom: 2vw;
}
	section.sec07 .lens-box .name{
		font-size: 3.73vw;
	}
	section.sec07 .lens-box .model{
		font-size: 3.2vw;
	}
	section.sec07 .lens-box::after {
    bottom: 2vw;
    right: 3vw;
    width: 4vw;
    height: 3.73vw;
    background: url(../../img/blank_sp.png) no-repeat;
	background-size: contain;
}
	section.sec07 .inner .icon-blc {
    padding: 0 7vw;
    height: 10vw;
    line-height: 10vw;
    margin: 4vw auto 6vw;
	letter-spacing: normal;
}
	section.sec07 .inner .icon-blc span.txt {
    margin-left: 2vw;
}
	
	
	section.sec08{
		padding: 12.82vw 0 0;
		margin-bottom: 5vh;
		border: none;
	}

	section.sec08 .inner{
		padding: 0;
	}
	section.sec08 .program .flex.day{
		border-bottom: none;
	}

	section.sec08 .program h2{
		font-size: 5vw;
		margin-bottom: 5vw;
	}
	section.sec08 .program .note{
		margin-bottom: 10vw;
	}
	section.sec08 .day.flex li{
		max-width: 100%;
		padding: 5vw 0;
		font-size: 3.733vw;
		background-color: #eceef1;
		letter-spacing: normal;
	}
	section.sec08 .day.flex li:first-child{
		border-left: none;
	}
	section.sec08 .day.flex li:last-child{
		border-right: none;
	}
	section.sec08 .day.flex li.today{
		background: #fff;
	}

	section.sec08 .grid-parent{
		display: block;
		padding: 1vw 5.333vw 6.41vw;
		border: none;
	}
	section.sec08 .grid-parent>div{
		width: 100%;
		padding: 0;
		margin: 0;
		border: none;
	}
	section.sec08 .grid-parent>div.day22,section.sec08 .grid-parent>div.day23{
		width: 100%;
	}


	section.sec08 .grid-parent .div7,section.sec08 .grid-parent .div14,section.sec08 .grid-parent .div21,section.sec08 .grid-parent .div28{
		padding-bottom: 0;
	}
	section.sec08 p.time{
		font-size: 3.4666vw;
	}
	section.sec08 .grid-parent .bg{
		padding: 12vw 5vw 12vw;
		margin-bottom: 6vw;
		min-height: 23.6vw;
	}
	section.sec08 .grid-parent .tag{
		width: 44.2vw;
		height: 9.3vw;
		top: -9.3vw;
	}
	section.sec08 .grid-parent .ctg {
	position: absolute;
	font-size: 3.7vw;
	top: 0;
	height: 8vw;
	line-height: 8vw;
	}
	section.sec08 .grid-parent .genre{
		font-size: 3.7vw;
		padding: 1vw 2vw;
	}
	section.sec08 .grid-parent h3{
		font-size: 4vw;
		margin-bottom: 2vw;
		line-height: 1.6;
	}
	section.sec08 .grid-parent .name{
		font-size: 4vw;
		line-height: 1.3;
	}
	section.sec08 .grid-parent .name span{
		font-size: 3.2vw;
	}
	section.sec08 .aco{
		padding: 4vw 0 0;
	}
	section.sec08 .aco > p{
		
	}
	section.sec08 .aco .flex{
		font-size: 5.333vw;
		justify-content: flex-start;
		margin: 6vw 0 0;
	}
	section.sec08 .aco .model-icon{
		width: 20vw;
		height: 20vw;
	}
	section.sec08 .aco .model-icon img{
		width: 15.2vw;
	}
	section.sec08 .aco .model-name{
		font-size: 3.4666vw;
		margin-left: 4vw;
	}
	section.sec08 .aco .model-name::after{
		width: 3.5vw;
		height: 3.5vw;
	}
	section.sec08 .icon-blc{
		width: 10.6vw;
		height: 10.6vw;
	}
	.aco-plus{
		width: 5.333vw;
		height: 5.333vw;
	}
	.aco-plus::before, .aco-plus::after{
		width: 5.333vw;
	}
	.cpplus2022 .breadcrumbs .inner{
		font-size: 3.2vw;
		text-align: center;
		padding: 3vw 0;
	}




	section.sec09{
		padding: 10.66vw 0 7vw;
		letter-spacing: 0;
	}
	.cpplus2023 section.sec09 .inner{
		padding: 0 4.5vw;
	}

	section.sec09 .inner{
		padding: 9vw 5vw;
	}
	section.sec09 .pc-flex{
		display: block;
	}
	section.sec09 .pc-flex > .flex{
		justify-content: space-between;
	}
	section.sec09 .ttl{
		margin-bottom: 6vw;
	}
	section.sec09 .ttl h2{
		font-size: 5vw;
		margin-bottom: 0;
	}
	section.sec09 .flex .prf-blc {
		width: 43vw;
		margin-right: 0;
		padding-bottom: 8vw;
	}
	section.sec09 .flex .prf-blc .icon-blc{
		width: 8vw;
		height: 8vw;
	}
	section.sec09 .aco-plus{
		width: 4vw;
		height: 4vw;
	}
	section.sec09 .aco-plus::before,section.sec09 .aco-plus::after{
		width: 4vw;
	}
	section.sec09 .flex .prf-blc .name{
		font-size: 4vw;
		padding-top: 2.6vw;
		margin-bottom: 2px;
	}
	section.sec09 .flex .prf-blc .prof{
		font-size: 3.2vw;
	}

	section.sec09 .pc-flex:last-child{
		justify-content: space-between;
	}
	
	

}
























