@charset "utf-8";

/*　751px以上の対応
////////////////////////////////////////////////////*/
@media screen and (min-width:751px) {
	#function #wrap{
		width: 100%;
		min-width: 980px;
		margin: 0 auto;
		letter-spacing: 0.06em;
	}
	#function #wrap #contents{
		width: 980px;
		margin: 0 auto;
	}

	/* ファーストビューエリア */
	.underlayer--firstview__wrap{
		width: 100%;
		min-width: 980px;
		margin: 0 auto 40px;
		background: #F9F1F1;
		padding: 32px 0;
	}
	.underlayer--firstview__inr{
		width: 980px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: space-between;
	}
	.underlayer--firstview__left{
	}
	.underlayer--firstview__ttl h1{
		font-size: 38px;
		color: #EA0029;
		letter-spacing: 0.03em;
		margin-bottom: 18px;
	}
	.underlayer--firstview__ttl h1 span{
		font-size: 16px;
		letter-spacing: 0.06em;
		display: block;
		margin-bottom: 8px;
	}
	.underlayer--firstview__lead{
		font-size: 14px;
		line-height: 1.86;
		letter-spacing: 0.05em;
		font-weight: 500;
	}
	.underlayer--firstview__image{
		margin-bottom: 12px;
		position: relative;
	}
	.underlayer--firstview__image::before{
		content: "資料配布中";
		font-size: 13px;
		letter-spacing: 0.04em;
		text-align: center;
		color: #fff;
		line-height: 78px;
		background: #EA0029;
		border-radius: 50px;
		width: 78px;
		height: 78px;
		position: absolute;
		top: -20px;
        right: -34px;
	}
	.underlayer--firstview__btn {
		text-align: center;
	}
	.underlayer--firstview__btn p{
		margin-bottom: 10px;
        font-weight: 500;
        letter-spacing: 0;
	}
	.underlayer--firstview__btn a{
		display: inline-block;
		letter-spacing: 0;
		color: #fff;
		font-weight: 700;
		background: #185ABC;
		border-radius: 4px;
		padding: 16px 40px;
		position: relative;
		transition: 0.3s;
	}
	.underlayer--firstview__btn a:hover{
		background-image: linear-gradient(to right, #185ABC, #0c3169);
	}
	.underlayer--firstview__btn a::before{
		content: "";
		background: url("../../case-studies/img/fv-document-dl-icon.svg");
		width: 18px;
		height: 18px;
		position: absolute;
		top: 14px;
        right: 12px;
	}




	/* 各セクション共通ヘッダーの対応（三角グレーと見出し） */
	.sections {
		position: relative;
		padding-top: 80px;
		margin-bottom: 80px;
	}
	.sections:before{
		position: absolute;
		top: 0;
		left: 0;
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 160px 190px 0 0;
		border-color: #fafafa transparent transparent transparent;
		z-index: -1;
	}
	.sections h2{
		font-size: 20px;
		margin-bottom: 30px;
		font-weight: bold;
		padding-left: 50px;
		line-height: 1.6;
	}
	.sections .sections-ttl-lead{
		margin-bottom: 30px;
		padding-left: 50px;
	}



	.tabmenu--btn{
		margin: 0 0 30px 0;
	}
	.tabmenu--btn ul{
		display: flex;
		flex-wrap: wrap;
		gap: 15px;
	}
	.tab--content { display: none; } /* 初期状態で非表示 */
	.active { display: block; } /* 表示するタブ */
	.tab--button { 
		cursor: pointer;
		text-align: center;
		width: 184px;
		height: 158px;
		border-radius: 22px;
	}
	.tab--button:hover{
		box-shadow: 0px 0px 4px 0px #d6d6d6;
	}
	.tab--button.active {
		box-shadow: 0px 0px 8px 0px #d6d6d6;
	}
	.design--customize div{
		margin: 20px 0 18px 0;
	}
	.design--customize div img{
		width: 66px;
		height: 65px;
	}
	.order div{
		margin: 39px 0 32px 0;
	}
	.order div img{
		width: 63px;
		height: 42px;
	}
	.print div {
		margin: 23px 0 20px 0;
	}
	.print div img{
		width: 54px;
		height: 70px;
	}
	.menu div {
		margin: 27px 0 14px 0;
	}
	.menu div img{
		width: 71px;
		height: 71px;
	}
	.promotion div{
		margin: 24px 0 20px 0;
	}
	.promotion div img{
		width: 61px;
		height: 58px;
	}
	.timer--schedule div{
		margin: 22px 0 19px 0;
	}
	.timer--schedule div img{
		width: 48px;
		height: 57px;
	}
	.alignment div{
		margin: 26px 0 18px 0;
	}
	.alignment div img{
		width: 73px;
		height: 54px;
	}
	.notice div{
		margin: 28px 0 18px 0;
	}
	.notice div img{
		width: 55px;
		height: 61px;
	}
	.others div {
		margin: 28px 0 16px 0;
	}
	.others div img{
		width: 64px;
		height: 62px;
	}
	.tab--button h3{
		font-size: 14px;
		font-weight: 600;
		letter-spacing: 0;
		line-height: 1.28;
	}
	.tab--button h3 span{
		font-size: 12px;		
	}
	.funtion--detail{
		width: 880px;
        margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		gap: 16px;
		row-gap: 16px;
	}
	.funtion--list{
		width: 432px;
		min-height: 144px;
		padding: 38px 16px 30px;
		box-sizing: border-box;
		border: 1px solid #E0DCDC;
		border-radius: 4px;
	}
	.funtion--list h3{
		font-size: 16px;
		margin-bottom: 20px;
	}
	#function #contents .funtion--list p{
		line-height: 1.5;
	}
	#function #contents .funtion--list .regi_attention{
		font-size: 12px;
		line-height: 1.5;
		position: relative;
		padding-left: 1.3em;
		display: block;
		margin-top: 3px;
	}
	#function #contents .funtion--list .regi_attention a{
		color: #EA0029;
		text-decoration: underline !important;
	}
	#function #contents .funtion--list .regi_attention::before{
		content: "※";
		font-size: 12px;
		position: absolute;
		left: 0;
		top: 0;
	}

}







/*////////////////////////////////////////////////////////////////////////////

　750px以下の対応

////////////////////////////////////////////////////////////////////////////*/

@media screen and (max-width:750px) {
	#header{
		padding-bottom: 5%;
	}
	#function #wrap{
		width: 100%;
		letter-spacing: 0.06em;
	}
	#function #wrap #contents{
		width: 90%;
		margin: 0 auto 10%;
	}
	#function #wrap #contents p{
		line-height: 1.6;
	}

	/* ファーストビューエリア */
	.underlayer--firstview__wrap{
		width: 100%;
		margin-bottom: 3.8%;
		background: #F9F1F1;
		padding: 10% 0;
	}
	.underlayer--firstview__inr{
		width: 90%;
		margin: 0 auto;
	}
	.underlayer--firstview__left{
		margin-bottom: 10%;
	}
	.underlayer--firstview__ttl h1{
		font-size: 28px;
		color: #EA0029;
		letter-spacing: 0.03em;
		margin-bottom: 3%;
		line-height: 1.3;
	}
	.underlayer--firstview__ttl h1 span{
		font-size: 16px;
		letter-spacing: 0.06em;
		display: block;
	}
	.underlayer--firstview__lead{
		font-size: 14px;
		line-height: 1.6;
		letter-spacing: 0.03em;
		font-weight: 400;
	}
	.underlayer--firstview__image{
		margin-bottom: 1.5%;
		position: relative;
		width: 88%;
		margin: 0 auto 3%;
	}
	.underlayer--firstview__image::before{
		content: "資料配布中";
		font-size: 12px;
		letter-spacing: 0;
		text-align: center;
		color: #fff;
		line-height: 70px;
		background: #EA0029;
		border-radius: 60px;
		width: 70px;
		height: 70px;
		position: absolute;
		top: -22%;
        right: -7%;
	}
	.underlayer--firstview__btn {
		text-align: center;
	}
	.underlayer--firstview__btn p{
		margin-bottom: 10px;
        font-weight: 400;
        letter-spacing: 0;
        font-size: 14px;
		line-height: 1.5;
	}
	.underlayer--firstview__btn a{
		display: inline-block;
		letter-spacing: 0;
		color: #fff;
		font-weight: 700;
		background: #185ABC;
        border-radius: 5px;
        padding: 6.5% 16%;
        position: relative;
        transition: 0.3s;
        font-size: 14px;
        line-height: 1;
	}
	.underlayer--firstview__btn a::before{
		content: "";
		background: url("../../case-studies/img/fv-document-dl-icon.svg");
		width: 26px;
        height: 26px;
        position: absolute;
        top: 27%;
        right: 5%;
        background-size: contain;
	}


	/* 各セクション共通ヘッダーの対応（三角グレーと見出し） */
	.sections {
		position: relative;
		padding-top: 8%;
	}
	.sections:before{
		position: absolute;
		top: 0;
		left: -2.5%;
		content: "";
		width: 0;
		height: 0;
		border-style: solid;
		border-width: 80px 100px 0 0;
		border-color: #fafafa transparent transparent transparent;
		z-index: -1;
	}
	.sections h2{
		font-size: 16px;
		font-size: 1.6rem;
		margin-bottom: 20px;
		font-weight: bold;
		line-height: 1.6;
	}
	.sections .sections-ttl-lead{
		margin-bottom: 30px;
	}
	.tabmenu--btn{
		margin: 0 0 5% 0;
	}
	.tabmenu--btn ul{
		width: 100%;
		display: flex;
		overflow-x: scroll;
		padding: 2% 0;
	}
	.tab--content { display: none; } /* 初期状態で非表示 */
	.active { display: block; } /* 表示するタブ */
	.tab--button { 
		min-width:30%;
		border-radius: 8px;
		box-sizing: border-box;
		display: flex;
		align-items: center;
	}
	.tab--button.active {
		color: #EA0029;
	}
	.tab--button:last-child{
		margin-right: 0;
	}
	.tab--button.design--customize {
        min-width: 21em;
    }
	.tab--button.order {
        min-width: 13.5em;
    }
	.tab--button.print {
        min-width: 13em;
    }
	.tab--button.menu {
        min-width: 16.5em;
    }
	.tab--button.promotion {
        min-width: 16em;
    }
	.tab--button.timer--schedule {
        min-width: 18em;
    }
	.tab--button.alignment {
        min-width: 25em;
    }
	.tab--button.notice {
        min-width: 13em;
    }
	.tab--button.others {
        min-width: 10em;
    }
	.tab--button div{
		margin-right: 5.5%;
		line-height: 0;
	}
	.design--customize div img{
		width: 38px;
		height: auto;
	}
	.order div{
		margin-right: 8.5%;
	}
	.order div img{
		width: 36px;
		height: auto;
	}
	.print div{
		margin-right: 10.5%;
	}
	.print div img{
		width: 30px;
		height: auto;
	}
	.menu div{
		margin-right: 8%;
	}
	.menu div img{
		width: 40px;
		height: auto;
	}
	.promotion div{
		margin-right: 8%;
	}
	.promotion div img{
		width: 35px;
		height: auto;
	}
	.timer--schedule div{
		margin-right: 7%;
	}
	.timer--schedule div img{
		width: 28px;
		height: auto;
	}
	.alignment div{
		margin-right: 6.5%;
	}
	.alignment div img{
		width: 41px;
		height: auto;
	}
	.notice div{
		margin-right: 8%;
	}
	.notice div img{
		width: 32px;
		height: auto;
	}
	.others div{
		margin-right: 8%;
	}
	.others div img{
		width: 36px;
		height: auto;
	}
	.tab--button h3{
		font-size: 14px;
		font-weight: 500;
		letter-spacing: 0;
		line-height: 1.28;
	}
	.tab--button h3 span{
		font-size: 12px;		
	}
	.funtion--detail{
		width: 100%;
		display: flex;
		flex-wrap: wrap;
	}
	.funtion--detail div+div{
		margin-top: 5%;
	}
	.funtion--list{
		width: 100%;
		padding: 6%;
		box-sizing: border-box;
		border: 1px solid #E0DCDC;
		border-radius: 4px;
	}
	.funtion--list h3{
		font-size: 16px;
		margin-bottom: 3%;
	}
	#function #contents .funtion--list p{
		line-height: 1.5;
	}
	#function #contents .funtion--list .regi_attention{
		font-size: 12px;
		line-height: 1.5;
		position: relative;
		padding-left: 1.3em;
		display: block;
		margin-top: 3px;
	}
	#function #contents .funtion--list .regi_attention a{
		color: #EA0029;
		text-decoration: underline !important;
		display: inline-block;
	}
	#function #contents .funtion--list .regi_attention::before{
		content: "※";
		font-size: 12px;
		position: absolute;
		left: 0;
		top: 0;
	}
	

}