@charset "utf-8";

@media screen and (max-width: 768px){
	.main-wrap1{
		width: 100%;
		margin: 0 auto;
		padding: 0;
		position: relative;
		background-color: #e9e4d9;
	}
	.main-wrap1 .content-wrap{
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
	}
	.main-wrap1 .content {
		width: 100%;
		margin: 0 auto 0 auto;
		position: relative;
        color:#403a3a;
        padding: 4px 15px 4px 15px;
		white-space: nowrap;
		overflow-x: scroll;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
	}
    .main-wrap1 .content .breadcrumbfr{
		width:auto;
		list-style: none;
        text-align: left;
	}
	.main-wrap1 .content .breadcrumb{
		display: inline-block;
		margin:0 0 3px 0;
        color:#403a3a;
	}
    .main-wrap1 .content .breadcrumb .breadcrumblnk{
		padding:0 20px;
		vertical-align: middle;
		display: inline-block;
		color:#403a3a;
        font-weight: 300;
    }
    .main-wrap1 .content .breadcrumb a.breadcrumblnk:hover{
        color:#403a3a;
    }
    .main-wrap1 .content .breadcrumb:first-child .breadcrumblnk{
        padding:0 20px 0 0;
    }
    .main-wrap1 .content .breadcrumb:last-child .breadcrumblnk{
        padding:0 20px 0 20px;
    }
	.main-wrap1 .content .breadcrumb span.breadcrumbborder{
		vertical-align: middle;
		display: inline-block;
		position: relative;
		color:#403a3a;
        font-weight: 300;
		top:1px;
	}
	.main-wrap2{
        width:100%;
        height: 23.4375vw;
        margin: 0 auto;
        background: url("../images/bg_top_02_item01_sp.jpg") no-repeat center center;
        background-size: cover;
    }
	.main-wrap2 .content-wrap{
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap2 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
	}
	.main-wrap2 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
        text-align: center;
	}
	.main-wrap2 .inner img{
        position: relative;
        width: 31.5%;
        max-width: 295px;
        margin: 5.5vw auto 0 auto;
    }
	.main-wrap3{
        width:100%;
        margin: 0 auto;
    }
	.main-wrap3 .content-wrap{
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap3 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
        text-align: center;
	}
	.main-wrap3 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
        text-align: center;
	}
	.main-wrap3 .inner .inner-left{
        width: 100%;
        height: 59.8958vw;
        background-color: #e9e4d9;
        position: relative;
    }
	.main-wrap3 .inner .inner-left .detailfr{
        display: block;
        position: absolute;
        top:50%;
        left: 50%;
        transform: translate(-50%,-50%);
        text-align: center;
        border-left: solid 2px #403a3a;
        border-right: solid 2px #403a3a;
        width: 80%;
        padding: 12vw 1vw 12vw 1vw;
    }
	.main-wrap3 .inner .inner-left .detailfr p{
        font-size: 16px;
        font-weight: 800;
        line-height: 1.3em;
		color: #403a3a;
    }
	.main-wrap3 .inner .inner-left .detailfr h4{
        min-width: 10px;
        font-size: 18px;
        font-weight: 600;
        margin: 1vw 0 0 0;
		color: #403a3a;
    }
	.main-wrap3 .inner .inner-left .detailfr h4 span{
        display: block;
        font-size: 14px;
        font-weight: 500;
    }
	.main-wrap3 .inner .inner-right{
        width: 100%;
        height: 59.8958vw;
        background: url("../images/bg_top_03_item01.jpg") no-repeat center center;
        background-size: cover;
    }
    .main-wrap4{
		width: 100%;
		margin: 0 auto;
		padding: 50px 0 50px 0;
		position: relative;
	}
	.main-wrap4 .content-wrap{
		width: 100%;
		margin: 0 auto 0 auto;
		position: relative;
	}
	.main-wrap4 .content {
		width: 100%;
		margin: 0 auto 0 auto;
		position: relative;
	}
	.main-wrap4 .inner-wrap {
		width: 100%;
		margin: 0 auto;
		padding: 0;
		position: relative;
        order:2;
	}
	.main-wrap4 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
        text-align: center;
	}
    .main-wrap4 .inner .list-wrap{
		display: block;
		width: 90%;
		margin: 0 auto 0 auto;
		position: relative;
        text-align: center;
		background-image: url("../images/listbg.png");
		background-repeat: repeat-x;
		background-position: left bottom;
		background-size: 8px 5px;
    }
    .main-wrap4 .inner .list-wrap:last-of-type{
		background: none;
	}
    .main-wrap4 .inner .list-wrap dl{
        display: block;
        width: 100%;
		font-size: 0;
    }
    .main-wrap4 .inner .list-wrap dl dt{
        display: block;
        width: 100%;
        text-align: center;
        margin:30px 0 0 0;
        padding: 0;
    }
    .main-wrap4 .inner .list-wrap:nth-child(1) dl dt{
        margin:0 0 0 0;
	}
    .main-wrap4 .inner .list-wrap dl dd{
        width: 100%;
        text-align: left;
        padding: 0px 0 30px 0;
        margin: 20px auto 0 auto;
    }
    .main-wrap4 .inner .list-wrap:last-of-type dl dd{
        padding: 0px 0 0 0;
    }
    .main-wrap4 .inner .listttl{
        display: inline-block;
        width: 12%;
        text-align: left;
        vertical-align: middle;
    }
    .main-wrap4 .inner dt .listttl span{
        display: block;
        width: 70%;
        border-radius: 50%;
        background-color: #ff0000;
        color:#fff;
        border:solid 2px transparent;
    }
    .main-wrap4 .inner dd .listttl span{
        display: block;
        width: 70%;
        border-radius: 50%;
        background-color: #fff;
        color:#fff;
        border:solid 2px #ff0000;
	}
    .main-wrap4 .inner .listttl span img{
        width: 100%;
    }
    .main-wrap4 .inner .listbody{
        display: inline-block;
        width: 88%;
        padding: 0;
        text-align: left;
        position: relative;
        vertical-align: top;
    }
    .main-wrap4 .inner .listbody .listsubttl{
		display: block;
		margin: 0 0 10px 0;
	}
}

@media screen and (min-width: 769px){
    .main-wrap{
        overflow: hidden;
    }
	.main-wrap1{
		width: 100%;
		margin: 0 auto;
		padding: 0;
		position: relative;
		background-color: #e9e4d9;
	}
	.main-wrap1 .content-wrap{
		margin: 0 auto 0 auto;
		padding: 0 0 0 0;
	}
	.main-wrap1 .content {
        max-width: 1100px;
		width: 100%;
		margin: 0 auto 0 auto;
		position: relative;
        color:#403a3a;
        padding: 8px 50px 8px 50px;
	}
	.main-wrap1 .content .breadcrumbfr{
		width:auto;
		list-style: none;
        text-align: right;
	}
	.main-wrap1 .content .breadcrumb{
		display: inline-block;
		margin:0 0 3px 0;
        color:#403a3a;
	}
    .main-wrap1 .content .breadcrumb .breadcrumblnk{
		padding:0 20px;
		vertical-align: middle;
		display: inline-block;
		color:#403a3a;
        font-weight: 300;
    }
    .main-wrap1 .content .breadcrumb a.breadcrumblnk:hover{
        color:#403a3a;
    }
    .main-wrap1 .content .breadcrumb:first-child .breadcrumblnk{
        padding:0 20px 0 0;
    }
    .main-wrap1 .content .breadcrumb:last-child .breadcrumblnk{
        padding:0 0 0 20px;
    }
	.main-wrap1 .content .breadcrumb span.breadcrumbborder{
		vertical-align: middle;
		display: inline-block;
		position: relative;
		color:#403a3a;
        font-weight: 300;
		top:1px;
	}
	.main-wrap2{
        width:100%;
        height: 14.5833vw;
        margin: 0 auto;
        background: url("../images/bg_top_02_item01.jpg") no-repeat center center;
        background-size: cover;
    }
	.main-wrap2 .content-wrap{
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap2 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
        text-align: center;
	}
	.main-wrap2 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
        text-align: center;
	}
	.main-wrap2 .inner img{
        position: relative;
        width:15.5%;
        max-width: 295px;
        margin: 4.25vw auto 0 auto;
    }
	.main-wrap3{
        width:100%;
        margin: 0 auto;
    }
	.main-wrap3 .content-wrap{
		width: 100%;
		margin: 0 auto;
	}
	.main-wrap3 .content {
		width: 100%;
		margin: 0 auto;
		position: relative;
        text-align: center;
	}
	.main-wrap3 .inner {
		width: 100%;
        height: 29.1666vw; 
		margin: 0 auto;
		position: relative;
        text-align: center;
	}
	.main-wrap3 .inner .inner-left{
        width: 50%;
        height: 100%;
        position: absolute;
        top:0;
        left:0;
        background-color: #e9e4d9;
    }
	.main-wrap3 .inner .inner-left .detailfr{
        display: block;
        position: absolute;
        top:50%;
        left: 50%;
        transform: translate(-50%,-50%);
        text-align: center;
        border-left: solid 2px #403a3a;
        border-right: solid 2px #403a3a;
        width: 60%;
        padding: 7vw 1vw 7vw 1vw;
    }
	.main-wrap3 .inner .inner-left .detailfr p{
        font-size: 1.6vw;
        line-height: 1.3em;
		color: #403a3a;
        font-weight: 800;
    }
	.main-wrap3 .inner .inner-left .detailfr h4{
        min-width: 10px;
        font-size: 2vw;
        font-weight: 600;
        margin: 0.7vw 0 0 0;
		color: #403a3a;
    }
	.main-wrap3 .inner .inner-left .detailfr h4 span{
        display: block;
        font-size: 1.0vw;
        font-weight: 500;
    }
	.main-wrap3 .inner .inner-right{
        width: 50%;
        height: 100%;
        position: absolute;
        top:0;
        right:0;
        background: url("../images/bg_top_03_item01.jpg") no-repeat center center;
        background-size: cover;
    }
    .main-wrap4{
        width:100%;
        margin: 100px auto 100px auto;
	}
	.main-wrap4 .content-wrap{
        max-width: 1100px;
		width: 100%;
		margin: 0 auto 0 auto;
		position: relative;
        color:#403a3a;
        padding: 0 50px 0 50px;
	}
	.main-wrap4 .content {
		width: 100%;
		margin: 0 auto 0 auto;
		position: relative;
	}
	.main-wrap4 .inner-wrap {
		width: 100%;
		margin: 0 auto;
		padding: 0;
		position: relative;
	}
	.main-wrap4 .inner {
		width: 100%;
		margin: 0 auto;
		position: relative;
        text-align: center;
	}
    .main-wrap4 .inner .list-wrap{
		display: block;
		width: 100%;
		margin: 0 auto 0 auto;
		position: relative;
        text-align: center;
		background-image: url("../images/listbg.png");
		background-repeat: repeat-x;
		background-position: left bottom;
		background-size: 8px 5px;
    }
    .main-wrap4 .inner .list-wrap:last-of-type{
		background: none;
	}
    .main-wrap4 .inner .list-wrap dl{
        display: block;
        width: 100%;
		font-size: 0;
    }
    .main-wrap4 .inner .list-wrap dl dt{
        display: block;
        width: 100%;
        text-align: center;
        margin:50px 0 0 0;
        padding: 0;
    }
    .main-wrap4 .inner .list-wrap:nth-child(1) dl dt{
        margin:0 0 0 0;
	}
    .main-wrap4 .inner .list-wrap dl dd{
        width: 100%;
        max-width: 1000px;
        text-align: left;
        padding: 0px 0 50px 0;
        margin: 40px auto 0 auto;
    }
    .main-wrap4 .inner .list-wrap:last-of-type dl dd{
        padding: 0px 0 0 0;
    }
    .main-wrap4 .inner .listttl{
        display: inline-block;
        width: 10%;
        text-align: left;
        vertical-align: middle;
    }
    .main-wrap4 .inner dt .listttl span{
        display: block;
        width: 66.6%;
        border-radius: 50%;
        background-color: #ff0000;
        color:#fff;
        border:solid 2px transparent;
    }
    .main-wrap4 .inner dd .listttl span{
        display: block;
        width: 66.6%;
        border-radius: 50%;
        background-color: #fff;
        color:#fff;
        border:solid 2px #ff0000;
	}
    .main-wrap4 .inner .listttl span img{
        width: 100%;
    }
    .main-wrap4 .inner .listbody{
        display: inline-block;
        width: 90%;
        padding: 0.6vw 0 0 0;
        text-align: left;
        position: relative;
        vertical-align: top;
    }
    .main-wrap4 .inner .listbody .listsubttl{
		display: block;
		margin: 0 0 20px 0;
	}
}