@charset "utf-8";
.content-wrap h2 {
    font-size: 2.059vw;
    letter-spacing: 0.1em;
    font-weight: bold;
    color: #222222;
    display: flex;
    align-items: center;
    margin-left: -3.309vw;
    line-height: 1.35;
    margin-bottom: 3.309vw;
}
.content-wrap h2 span {
    flex: 1;
}
.content-wrap h2::before {
    content: "";
    width: 2.206vw;
    height: 0.074vw;
    background-color: #E72410;
    margin-right: 1.103vw;
}
.content-wrap h3 {
	font-size: 1.471vw;
	font-weight: bold;
	margin-bottom: 1.618vw;
}
@media screen and (min-width: 1360px) {
	.content-wrap h2 {
	    font-size: 28px;
	    margin-left: -45px;
	    margin-bottom: 45px;
	}
	.content-wrap h2::before {
	    width: 30px;
	    height: 1px;
	    margin-right: 15px;
	}
	.content-wrap h3 {
		font-size: 20px;
		margin-bottom: 22px;
	}
}
@media screen and (max-width: 750px) {
   .content-wrap h2 {
        font-size: 5.333vw;
        margin-left: 0;
        letter-spacing: 0.1em;
        line-height: 1.4;
        align-items: flex-start;
    }
   .content-wrap h2::before {
        width: 8vw;
        line-height: 1.5;
        margin-right: 3.733vw;
        margin-top: 4vw;
    }
    .content-wrap h3 {
    	font-size: 5.333vw;
    }
}


/* ストラクチャー */
#structure .triangle_wrap {
	background: url(../../img/business/triangle_bg.png) no-repeat;
	background-size: 100%;
	width: 65.147vw;
	height: 49.779vw;
	margin: 3.676vw auto 0;
}

#structure .triangle_wrap .triangle_item {
	color: #FFFFFF;
	display: flex;
    flex-direction: column;
    align-items: center;

    line-height: 1;
}
#structure .triangle_wrap .triangle_item +.triangle_item {
	border-top: 1px dashed #FFFFFF;
}
#structure .triangle_wrap .triangle_item span {
	font-size: 0.956vw;
	font-weight: bold;
	letter-spacing: 0.12em;
}
#structure .triangle_wrap .triangle_item .title {
	font-size: 1.471vw;
	font-weight: bold;
	margin: 0.441vw 0 0.588vw;
}
#structure .triangle_wrap .triangle_item .text {
	line-height: 1.5;
	color: #FFFFFF;
}
#structure .triangle_wrap .triangle_item:first-child {
	padding-top: 12.868vw;
	padding-bottom: 1.581vw;
}
#structure .triangle_wrap .triangle_item:first-child .title {
	font-size: 2.059vw;
}
#structure .triangle_wrap .triangle_item:nth-child(2) {
	padding: 2.39vw 0 2.61vw;
}
#structure .triangle_wrap .triangle_item:nth-child(3) {
	padding-top: 2.978vw;
}

#structure .anker_wrap {
	display: flex;
	grid-column-gap: 2.721vw;
	width: 68.897vw;

	margin-top: -6.471vw ;
}

#structure .anker_wrap .anker_item {
	flex: 1;
	background: #FFFFFF;
	border-radius: 0.735vw;
	box-shadow: 0px 0.221vw 0.441vw 0px rgba(60, 0, 0, 0.1);
}
#structure .anker_wrap .anker_item a {
	width: 100%;
    height: 11.029vw;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}
#structure .anker_wrap .anker_item a::after {
	content: "";
	display: block;
	background: url(../../img/common/icon_toggle-red.svg) no-repeat center;
	background-color: #FFFFFF;
	border-radius: 3.676vw;
	box-shadow: 0px 0.221vw 0.441vw 0px rgba(0, 0, 0, 0.07);
	width: 3.676vw;
	height: 3.676vw;

	position: absolute;
	bottom: -1.838vw;
}

#structure .anker_wrap .anker_item .title {
	font-weight: bold;
	background-color: #C71300;
	color: #FFFFFF;
	border-radius: 3.676vw;
}
#structure .anker_wrap .anker_item:nth-child(1) .title {
	padding: 0 2.206vw;
}
#structure .anker_wrap .anker_item:nth-child(2) .title {
	padding: 0 1.971vw;
}
#structure .anker_wrap .anker_item .text {
	font-size: 1.029vw;
	font-weight: bold;
	text-align: center;
}
#structure .anker_wrap .anker_item:nth-child(1) .img_wrap {
	width: 15.051vw;
	margin-left: 1.272vw;
}
#structure .anker_wrap .anker_item:nth-child(2) .img_wrap {
	width: 7.746vw;
	margin-left: 3.257vw;
}
@media screen and (min-width: 1360px) {
	#structure .triangle_wrap {
		width: 886px;
		height: 677px;
		margin: 50px auto 0;
	}
	#structure .triangle_wrap .triangle_item +.triangle_item {
		border-top: 1px dashed #FFFFFF;
	}
	#structure .triangle_wrap .triangle_item span {
		font-size: 13px;
	}
	#structure .triangle_wrap .triangle_item .title {
		font-size: 20px;
		margin: 6px 0 8px;
	}
	#structure .triangle_wrap .triangle_item:first-child {
		padding-top: 175px;
		padding-bottom: 21.5px;
	}
	#structure .triangle_wrap .triangle_item:first-child .title {
		font-size: 28px;
	}
	#structure .triangle_wrap .triangle_item:nth-child(2) {
		padding: 32.5px 0 35.5px;
	}
	#structure .triangle_wrap .triangle_item:nth-child(3) {
		padding-top: 40.5px;
	}

	#structure .anker_wrap {
		grid-column-gap: 37px;
		width: 937px;

		margin-top: -88px ;
	}

	#structure .anker_wrap .anker_item {
		border-radius: 10px;
		box-shadow: 0px 3px 6px 0px rgba(60, 0, 0, 0.1);
	}
	#structure .anker_wrap .anker_item a {
	    height: 150px;
	}
	#structure .anker_wrap .anker_item a::after {
		border-radius: 50px;
		box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
		width: 50px;
		height: 50px;

		bottom: -25px;
	}

	#structure .anker_wrap .anker_item .title {
		border-radius: 50px;
	}
	#structure .anker_wrap .anker_item:nth-child(1) .title {
		padding: 0 30px;
	}
	#structure .anker_wrap .anker_item:nth-child(2) .title {
		padding: 0 26.8px;
	}
	#structure .anker_wrap .anker_item .text {
		font-size: 14px;
	}
	#structure .anker_wrap .anker_item:nth-child(1) .img_wrap {
		width: 204.69px;
		margin-left: 17.3px;
	}
	#structure .anker_wrap .anker_item:nth-child(2) .img_wrap {
		width: 105.35px;
		margin-left: 44.3px;
	}
}
@media screen and (max-width: 750px) {
	#structure .triangle_wrap {
		background: inherit;
		width: auto;
		height: auto;
		margin: 14.667vw auto 0;
	}

	#structure .triangle_wrap .triangle_item {
		color: #000000;
		text-align: center;
	}
	#structure .triangle_wrap .triangle_item +.triangle_item {
		border-top: 1px dashed #B4B4B4;
	}
	#structure .triangle_wrap .triangle_item span {
		font-size: 3.467vw;
	}
	#structure .triangle_wrap .triangle_item .title {
		font-size: 5.333vw;
		margin: 3.68vw 0 4.24vw;
	}
	#structure .triangle_wrap .triangle_item .text {
		color: #000000;
	}
	#structure .triangle_wrap .triangle_item:first-child {
		padding-top: 0;
		padding-bottom: 4.067vw;
	}
	#structure .triangle_wrap .triangle_item:first-child .title {
		font-size: 7.467vw;
	}
	#structure .triangle_wrap .triangle_item:nth-child(2) {
		padding: 7.067vw 0 7.547vw;
	}
	#structure .triangle_wrap .triangle_item:nth-child(3) {
		padding-top: 8.507vw;
	}
	#structure .triangle_wrap .triangle_item .text {
	    white-space: nowrap;
	}
	#structure .triangle_wrap .triangle_item:nth-child(3) .title {
		margin-bottom: 3.467vw;
	}
	#structure .triangle_wrap .triangle_item-sp {
		background: url(../../img/business/triangle_bg--sp.png) no-repeat;
		background-size: 100%;
		width: auto;
		height: 56.267vw;
		margin: 8vw auto 0;
	}
	#structure .triangle_wrap .triangle_item-sp span {
		font-size: 3.2vw;
		font-weight: bold;
		letter-spacing: 0.12em;
		line-height: 1.25;
		display: block;
		text-align: center;
		color: #FFFFFF;
		padding: 5vw 0;
	}
	#structure .triangle_wrap .triangle_item-sp span:first-child {
		padding-top: 10.333vw;
	}
	#structure .triangle_wrap .triangle_item-sp span:not(:first-child) {
		border-top: 1px dashed #FFFFFF;
	}

	#structure .anker_wrap {
		display: flex;
		margin: 0 -1.867vw;
		grid-column-gap: 2.133vw;
		width: 92.8vw;

		margin-top: -6.933vw ;
	}

	#structure .anker_wrap .anker_item {
		border-radius: 2.667vw;
		box-shadow: 0px 3px 6px 0px rgba(60, 0, 0, 0.1);
	}
	#structure .anker_wrap .anker_item a {
		width: 100%;
	    height: 30.667vw;
        flex-direction: column;
        align-items: center;
        justify-content: flex-start;
        padding: 2.667vw 0;
	}
	#structure .anker_wrap .anker_item a::after {
		background-size: 2.856vw 1.616vw;
		border-radius: 13.333vw;
		box-shadow: 0px 3px 6px 0px rgba(0, 0, 0, 0.07);
		width: 8vw;
		height: 8vw;

		bottom: -4vw;
	}
	#structure .anker_wrap .anker_item .title {
		font-size: 3.2vw;
		border-radius: 13.333vw;
	}
	#structure .anker_wrap .anker_item:nth-child(1) .title {
		padding: 0 6.667vw;
	}
	#structure .anker_wrap .anker_item:nth-child(2) .title {
		padding: 0 3.36vw;
	}
	#structure .anker_wrap .anker_item .text {
		font-size: 3.2vw;
		line-height: 1;
        margin-top: 1.867vw;
        margin-bottom: 2.667vw;
	}
	#structure .anker_wrap .anker_item:nth-child(1) .img_wrap {
		width: 31.149vw;
		margin-left: 0;
	}
	#structure .anker_wrap .anker_item:nth-child(2) .img_wrap {
		width: 20.112vw;
		margin-left: 0 ;
	}
}


/* コラントッテ事業 */
#colantotte .img_wrap {
	width: 52.632vw;
	margin: 4.412vw auto 0;
}
#colantotte #item h3 + .text {
	font-weight: bold;
}
#colantotte .column3-wrap {
    flex-wrap: wrap;
    grid-column-gap: 0.956vw;
	grid-row-gap: 5.147vw;
}
#colantotte .content-item {
	margin-top: 6.838vw;
}
#colantotte .column3-wrap .column3-item {
	width: 22.868vw;
}
#colantotte .text + .column3-wrap {
	margin-top: 3.529vw;
}
#colantotte .column3-wrap .column3-item figcaption {
	line-height: 1.5;
	letter-spacing: 0.08em;
	margin-top: 0.882vw;
	color: #4B4B4B;
}
@media screen and (min-width: 1360px) {
	#colantotte .img_wrap {
		width: 715.79px;
		margin: 60px auto 0;
	}
	#colantotte .column3-wrap {
	    grid-column-gap: 13px;
		grid-row-gap: 70px;
	}
	#colantotte .content-item {
		margin-top: 93px;
	}
	#colantotte .column3-wrap .column3-item {
		width: 311px;
	}
	#colantotte .text + .column3-wrap {
		margin-top: 48px;
	}
	#colantotte .column3-wrap .column3-item figcaption {
		margin-top: 12px;
	}
}
@media screen and (max-width: 750px) {
	#colantotte {
		padding-top: 0;
	}
	#colantotte.content-wrap h2 {
		margin-bottom: 0;
	}
	#colantotte .img_wrap {
		width: auto;
		margin: 5.867vw auto 0;
	}
	#colantotte .column3-wrap {
	    grid-column-gap: 1.6vw;
		grid-row-gap: 12.8vw;
	}
	#colantotte .content-item {
		margin-top: 6.133vw;
	}
	#colantotte .column3-wrap .column3-item {
		width: 43.8vw;
	}
	#colantotte .text + .column3-wrap {
		margin-top: 7.467vw;
	}
	#colantotte .column3-wrap .column3-item figcaption {
		font-size: 3.733vw;
		line-height: 1.42;
		margin-top: 1.867vw;
	}
}

/* ブランド紹介 */
.brand_img_wrap.column2-wrap {
	width: 100%;
	border: 1px solid #EBEBEB;
}

.brand_img_wrap.column2-wrap .column2-item {
	flex: 1;
}

.brand_img_wrap.column2-wrap .logo_wrap {
    display: flex;
    align-items: center;
    justify-content: center;
}

#colantotte .brand_img_wrap.column2-wrap .logo_wrap img {
	width: 7.837vw;
}
#resno .brand_img_wrap.column2-wrap .logo_wrap img {
	width: 7.837vw;
}
#lierrey .brand_img_wrap.column2-wrap .logo_wrap img {
	width: 12.31vw;
}

#collaboration .brand_img_wrap .logo_wrap img {
	width: 27.101vw;
	display: block;
	margin: 0 auto;
}
#license .brand_img_wrap .logo_wrap img {
	width: 18.968vw;
	display: block;
	margin: 0 auto;
}
#resno .brand_img_wrap.column2-wrap .img_wrap,
#lierrey .brand_img_wrap.column2-wrap .img_wrap {
	margin-top: 0;
}
.content-wrap h4 {
	font-size: 1.471vw;
	margin-top: 4.853vw;
}
.content-wrap dl {
    margin-top: 3.493vw;
}

.content-wrap dl dt {
	font-weight: 600;
	width: 11.029vw;
}
.content-wrap dl dd {
	border-top: 1px solid #EBEBEB;
	padding-top: 1.471vw;
	margin-top: 0.735vw;
	flex: 1;
}
.content-wrap dl dd .text {
	line-height: 1.75;
}
.content-wrap dl dd .note {
	font-size: 1.029vw;
	margin-top: 0.882vw;
}
.content-wrap dl + dl {
	margin-top: 2.206vw;
}

.content-wrap dl + .img_wrap {
	margin-top: 3.934vw;
}
@media screen and (min-width: 1360px) {
	.brand_img_wrap.column2-wrap {
		border: 1px solid #EBEBEB;
	}
	#colantotte .brand_img_wrap.column2-wrap .logo_wrap img {
		width: 106.58px;
	}
	#resno .brand_img_wrap.column2-wrap .logo_wrap img {
		width: 106.58px;
	}
	#lierrey .brand_img_wrap.column2-wrap .logo_wrap img {
		width: 167.42px;
	}

	#collaboration .brand_img_wrap .logo_wrap img {
		width: 368.58px;
	}
	#license .brand_img_wrap .logo_wrap img {
		width: 257.96px;
	}
	.content-wrap h4 {
		font-size: 20px;
		margin-top: 66px;
	}
	.content-wrap dl {
	    margin-top: 47.5px;
	}

	.content-wrap dl dt {
		width: 150px;
	}
	.content-wrap dl dd {
		border-top: 1px solid #EBEBEB;
		padding-top: 20px;
		margin-top: 10px;
	}
	.content-wrap dl dd .note {
		font-size: 14px;
		margin-top: 12px;
	}
	.content-wrap dl + dl {
		margin-top: 30px;
	}

	.content-wrap dl + .img_wrap {
		margin-top: 53.5px;
	}
}
@media screen and (max-width: 750px) {
	.brand_img_wrap.column2-wrap .column2-item {
		flex: auto;
	}
	.brand_img_wrap.column2-wrap .logo_wrap {
		height: 40vw;
	    display: flex;
	    align-items: center;
	    justify-content: center;
	}

	#colantotte .brand_img_wrap.column2-wrap .logo_wrap img {
		width: 18.667vw;
	}
	#resno .brand_img_wrap.column2-wrap .logo_wrap img {
		width: 18.408vw;
	}
	#lierrey .brand_img_wrap.column2-wrap .logo_wrap img {
		width: 26.133vw;
	}

	#collaboration .brand_img_wrap .logo_wrap img {
		width: 69.029vw;
	}
	#license .brand_img_wrap .logo_wrap img {
		width: 49.496vw;
	}
	.content-wrap h4 {
		font-size: 4.267vw;
		margin-top: 12.533vw;
	}
	.content-wrap dl {
		display: block;
	    margin-top: 12.8vw;
	}

	.content-wrap dl dt {
		width: auto;
        line-height: 1;
        padding-bottom: 4.4vw;
	}
	.content-wrap dl dd {
		border-top: 1px solid #EBEBEB;
		border-left: 0;
		padding-top: 5.6vw;
		padding-left: 0;
	}
	.content-wrap dl dd .note {
		font-size: 3.733vw;
		margin-top: 4.4vw;
	}
	.content-wrap dl + dl {
		margin-top: 10.667vw;
	}

	.content-wrap dl + .img_wrap {
		margin-top: 12.667vw;
	}
}

/* CSS事業 */
#css h3 {
	font-size: 1.765vw;
	letter-spacing: 0.1em;
	line-height: 1;
	margin-top: 2.132vw;
	margin-bottom: 3.088vw;
}

#css h4 {
	font-size: 1.471vw;
	font-weight: bold;
	letter-spacing: 0.1em;
	line-height: 1;
	margin-top: 0;
}
#css h5 {
	font-size: 1.471vw;
	font-weight: bold;
	margin-top: 2.941vw;
}
#css h4 {
	margin-bottom: 1.838vw;
}
#css h5 {
	margin-bottom: 1.471vw;
}
#css ul {
	margin-top: 2.206vw;
}
#css ul li {
	background-color: #3DAE2B;
	color: #FFFFFF;
	font-weight: bold;
	border-radius: 2.574vw;
	padding: 0 2.059vw;
}
#css ul li + li {
	margin-left: 1.029vw;
}
#css ul li span {
	font-size: 1.765vw;
}

#css .content-item + .content-item {
	margin-top: 4.632vw;
}

#css .img_wrap .column2-wrap {
	grid-column-gap: 4.706vw;
    justify-content: center;
    margin-top: 3.088vw;
	margin-bottom: 2.353vw;
}
#css .img_wrap .column2-wrap img {
	width: 28.529vw;
}
#css .img_wrap .text {
	text-align: center;
}
#css .img_wrap figcaption {
	margin-top: 1.691vw;
}
@media screen and (min-width: 1360px) {
	#css h3 {
		font-size: 24px;
		margin-top: 29px;
		margin-bottom: 42px;
	}

	#css h4 {
		font-size: 20px;
	}
	#css h5 {
		font-size: 20px;
		margin-top: 40px;
	}
	#css h4 {
		margin-bottom: 25px;
	}
	#css h5 {
		margin-bottom: 20px;
	}
	#css ul {
		margin-top: 30px;
	}
	#css ul li {
		border-radius: 35px;
		padding: 0 28px;
	}
	#css ul li + li {
		margin-left: 14px;
	}
	#css ul li span {
		font-size: 24px;
	}

	#css .content-item + .content-item {
		margin-top: 63px;
	}

	#css .img_wrap .column2-wrap {
		grid-column-gap: 64px;
	    margin-top: 42px;
		margin-bottom: 32px;
	}
	#css .img_wrap .column2-wrap img {
		width: 388px;
	}
	#css .img_wrap figcaption {
		margin-top: 23px;
	}
}
@media screen and (max-width: 750px) {
	#css {
		padding-top: 0;
	}
	#css h3 {
		font-size: 4.8vw;
		letter-spacing: 0.04em;
		line-height: 1.55;
		margin-top: 13.067vw;
		margin-bottom: 6.4vw;
	}

	#css h4 {
		font-size: 4.8vw;
        line-height: 1.6;		
	}
	#css h5 {
		font-size: 4.8vw;
		margin-top: 12.533vw;
	}
	#css h4 {
		margin-bottom: 6.667vw;
	}
	#css h5 {
		margin-bottom: 4vw;
	}
	#css ul {
		margin-top: 5.333vw;
        display: flex;
        align-items: center;
	}
	#css ul li {
		border-radius: 9.333vw;
		padding: 2vw 6.4vw;
        display: inline-block;
	}
	#css ul li + li {
		margin-left: 0;
		margin-top: 5.333vw;
	}
	#css ul li span {
		font-size: 5.333vw;
	}

	#css .content-item + .content-item {
		margin-top: 12.533vw;
	}

	#css .img_wrap .column2-wrap {
		grid-column-gap: 0;
	    justify-content: center;
	    margin-top: 7.2vw;
		margin-bottom: 7.2vw;
	}
	#css .img_wrap .column2-wrap img {
		width: auto;
	}
	#css .img_wrap .column2-wrap img + img {
		margin-top: 5.333vw;
	}
	#css .img_wrap figcaption {
		margin-top: 7.2vw;
		line-height: 1.75;
	}
}


/* 販売チャネル */
#channel {
	padding-top: 0;
}

#channel h2 {
	margin-bottom: 1.691vw;
}

#channel .img_wrap {
	margin-top: 2.059vw;
}
#channel .img_wrap + .text {
	margin-top: 1.691vw;
}
@media screen and (min-width: 1360px) {
	#channel h2 {
		margin-bottom: 23px;
	}

	#channel .img_wrap {
		margin-top: 28px;
	}
	#channel .img_wrap + .text {
		margin-top: 23px;
	}
}
@media screen and (max-width: 750px) {
	#channel h2 {
		margin-bottom: 6.667vw;
	}

	#channel .img_wrap {
		margin-top: 6.667vw;
	}
	#channel .img_wrap + .text {
		margin-top: 8vw;
	}
	#channel .text {
		line-height: 1.75;
	}
}