@media(max-width: 768px){
	
	.page-main{ width:calc(100% - 50px); height:377.5px; margin:0;}
	.page-main.square{height: 325px;}
	
	.sub_mv_01{background-image:url(../images/sub_mv/001_sp.jpg);}
	.sub_mv_02{background-image:url(../images/sub_mv/002_sp.jpg);}
	.sub_mv_03{background-image:url(../images/sub_mv/003_sp.jpg);}
	.sub_mv_04{background-image:url(../images/sub_mv/004_sp.jpg);}
	.sub_mv_05{background-image:url(../images/sub_mv/005_sp.jpg);}
	.sub_mv_06{background-image:url(../images/sub_mv/006_sp.jpg);}
	.sub_mv_07{background-image:url(../images/sub_mv/007_sp.jpg);}
	
	.sub_mv_08{background-image:url(../images/sub_mv/008_sp.jpg);}
	.sub_mv_09{background-image:url(../images/sub_mv/009_sp.jpg);}
	.sub_mv_10{background-image:url(../images/sub_mv/010_sp.jpg);}
	.sub_mv_11{background-image:url(../images/sub_mv/011_sp.jpg);}
	.sub_mv_12{background-image:url(../images/sub_mv/012_sp.jpg);}
	.sub_mv_13{background-image:url(../images/sub_mv/013_sp.jpg);}
	.sub_mv_14{background-image:url(../images/sub_mv/014_sp.jpg);}
	.sub_mv_15{background-image:url(../images/sub_mv/015_sp.jpg);}
	.sub_mv_16{background-image:url(../images/sub_mv/016_sp.jpg);}
	.sub_mv_17{background-image:url(../images/sub_mv/017_sp.jpg);}
	.sub_mv_18{background-image:url(../images/sub_mv/018_sp.jpg);}
	.sub_mv_19{background-image:url(../images/sub_mv/019_sp.jpg);}
	.sub_mv_20{background-image:url(../images/sub_mv/020_sp.jpg);}
	.sub_mv_21{background-image:url(../images/sub_mv/021_sp.jpg);}
	
	.container_wrap{padding:20px 0px 70px;}
	.container{ width: 100%; padding:40px 25px; margin: 0 0 30px; }
	
	h1{ font-size:24px; margin:40px 0 50px; line-height:1.5;}
	h2{font-size:20px; letter-spacing:2px; margin-bottom:30px;}
	h3{ font-size:18px; line-height:1.5; margin-bottom:20px;}
	h4{ font-size:17px; margin-bottom:10px;}
	.container p{ margin-bottom: 1em; line-height:2; }
	
	.container .side-img{ margin:30px 0 15vw; }
	.container .side-img .img h3{margin-bottom:-10px;}
	.container .side-img .content{width:380px;}
	.container .side-img .half{width: calc(50% - 5px);}
	.container .side-img .half.block{width: 100%;}
	.container .side-img .half.block:first-child{margin-bottom: 3vw;}
	.container .side-img + p{margin-top: -12vw;}

	.pankuzu{ width:100%; margin:0 auto 8vw; padding: 0 25px 0;}

	.container table th{ padding:15px; box-sizing:border-box; border-right:none; }
	.container table td{text-align:right; padding:15px 10px;}
	.container table{ width:100%; margin: 0 0 40px; }
	.container table th,.container table td{ width:100%; display:block; letter-spacing:0.2px; font-size: 14px; text-align:center; }
	.container table.fix-table{table-layout: auto;}
	.container table.fix-table th,.container table.fix-table td{display: revert;}
	.container table.fix-table th{width: 35%;}
	.container table.fix-table td{width: 65%;}
	.container table + p.text{margin-bottom:25px;}
	.container table tr:last-child th{ border-bottom:#D8CDC0 1px dashed;}

	.container ul.number li span{ display:initial;}
	.container ul.number{ margin:0; padding-bottom:0; }
	.container ul.number li{ margin-bottom:20px; line-height:1.5;}
	.container ul.number li:before{ top:14px;}

	.dr_css h3 span{font-size:13px;}
	.dr_css h4{margin-bottom:20px;}
	.dr_css img{margin:0 auto;}
	.dr_css img + .side-img{margin:0; padding-top:25px;}
	.dr_css .side-img h3{text-align:center;}
	.dr_css .box_wrap{margin-top:30px; padding-top:30px;}
	.dr_css .side-img .img{margin-bottom:10px;}
	.dr_css .flex_50{ display:block;}
	.dr_css .box{width:100%;}
	.dr_css table,.dr_css table th,.dr_css table td{ display:table-cell;padding:0; text-align:left; line-height:1.5; padding-bottom:10px; margin-bottom:0;}
	.dr_css table th{width:65px;}
	.dr_css table td{width:auto;}
	.dr_css  table tr:last-child th{border:none;}
	.dr_css ul li:last-child{padding-bottom:0;}

	.flex_33{ display:block;}
	.flex_33 h3{padding:0 0 15px 40px; line-height:1.6;}
	.flex_33 h3 span{padding-left:2px; top:0px;}
	.flex_33 .box{width:100%; margin-bottom: 12vw;}
	.flex_33 .box img{width:100%;}
	.flex_33 .box:last-child p,.flex_33 .box:last-child{margin-bottom:0;}
	.group-list{
    column-count: 1;
    }
}	

@media(max-width: 599px){
	
	.container .side-img{ flex-wrap: wrap;}
	.container .side-img .content{ width: 100%; order: 2; }
	.container .side-img .content img.sp{ margin-bottom: 20px; }
	.container .side-img .img{ width: 100%; order: 1; margin-bottom:20px; }
	
}

@media(max-width: 320px){
	.container_wrap,.container{padding-left:15px; padding-right:15px;}
}