@charset "utf-8";


/*PC用*/
@media screen and (min-width: 641px) {
	.pc { display: block !important }
	.sp { display: none !important }
	.h_menu, #sp_global_nav { display: none; }

#concept .craft_ttl { height: 640px; background: url(../images/concept/bg01.jpg)no-repeat top center / cover; }
#concept .craft_ttl p { text-align: center; color: #fff; font-size: 75px; line-height: 1.4; padding-top: 244px; letter-spacing: 1px; font-weight: bold; margin-bottom: 28px; }
#concept .craft_ttl p span { font-size: 45px; display: block; font-weight: bold; }
#concept .craft_ttl ul { text-align: center; }
#concept .craft_ttl ul li { display: inline-block; background: rgba(255, 255, 255, 0.9); width: 161px; border-radius: 15px; padding: 6px; font-weight: bold; font-size: 25px; letter-spacing: 1px; margin: 0 4px; }
#concept .free-sec { background: url(../images/concept/img01.png)no-repeat top 97px  right; margin-bottom: 120px; min-width: 1100px; }
#concept .free-sec .free-top { margin: 0 auto; width: 1100px; box-sizing: border-box; padding: 165px 0 199px; position: relative; }
#concept .free-sec .free-top .free-inner { width: 515px; }
#concept .free-sec .free-top .free-inner p.comment-ico { position: absolute; left: -43px; top: 147px; }
#concept .free-sec .free-top .free-inner h2 { font-size: 75px; font-weight: bold; text-align: center; letter-spacing: 2px; padding: 94px 0 6px; }
#concept .free-sec .free-top .free-inner h2 img { display: inline-block; vertical-align: top; }
#concept .free-sec .free-top .free-inner p.free-txt02 { text-align: center; border-top: 1px solid #000; position: relative; margin-bottom: 41px; }
#concept .free-sec .free-top .free-inner p.free-txt02 span { display: inline-block; background: #fff; font-size: 35px; font-weight: bold; position: absolute; top: -25px; right: 0; left: 0; margin: auto; width: 187px; }
#concept .free-sec .free-top .free-inner p.free-txt03 { font-size: 18px; line-height: 1.7; }
#concept .free-sec .inner { margin: 0 auto; width: 1345px; box-sizing: border-box; border: 3px solid #1c1919; position: relative; padding: 84px 0 33px; }
#concept .free-sec .inner h2.common-ttl02 { font-size: 32px; letter-spacing: 1px; line-height: 1; background: #fff; position: absolute; top: -13px; right: 0; left: 0; width: 256px; margin: auto; }
#concept .free-sec .inner h2.common-ttl02 span.f_narial { background: none; padding-bottom: 0; letter-spacing: 0px; }
#concept .free-sec .inner .flex { margin: 0 auto 15px; width: 1000px; }
#concept .free-sec .inner p.mer-txt01 { text-align: center; font-size: 23px; font-weight: bold; letter-spacing: 2px; }
#concept .minutes-sec { margin: 0 auto 130px; width: 1200px; display: flex; display: -webkit-flex; display: -moz-flex; box-sizing: border-box; padding-right: 30px; justify-content: space-between; -webkit-justify-content: space-between; -moz-justify-content: space-between; }
#concept .minutes-sec p.minutes-img { width: 581px; }
#concept .minutes-sec .txt-area { width: 518px; position: relative; padding-top: 82px; }
#concept .minutes-sec .txt-area p.comment-ico { position: absolute; left: -27px; top: 0; }
#concept .minutes-sec .txt-area h2 { text-align: center; font-weight: bold; font-size: 50px; line-height: 1.3; border-bottom: 1px solid #000; padding-bottom: 10px; letter-spacing: 2px; margin-bottom: 23px; }
#concept .minutes-sec .txt-area p.minutes-txt01 { font-size: 18px; line-height: 1.8; margin-bottom: 25px; }
#concept .minutes-sec .txt-area ul { padding-left: 29px; background: url(../images/concept/line01.png)no-repeat left top; }
#concept .minutes-sec .txt-area ul li { font-size: 20px; font-weight: bold; margin-bottom: 31px; }
#concept .minutes-sec .txt-area ul li span.f_cent { color: #ff7c04; font-weight: bold; display: block; font-size: 14px; }
#concept .picture-sec { background: url(../images/concept/img03.jpg)no-repeat top 77px right 35px; padding-bottom: 150px; }
#concept .picture-sec .inner { margin: 0 auto; width: 1100px; }
#concept .picture-sec .inner .txt-area { width: 397px; position: relative; padding-top: 149px; }
#concept .picture-sec .inner .txt-area p.comment-ico { position: absolute; left: -36px; top: 0; }
#concept .picture-sec .inner .txt-area h2 { text-align: center; font-weight: bold; font-size: 50px; line-height: 1.3; border-bottom: 1px solid #000; padding-bottom: 10px; letter-spacing: 2px; margin-bottom: 23px; }
#concept .picture-sec .inner .txt-area p.pict-txt { font-size: 18px; margin-bottom: 30px; }
#concept .download-sec { margin: 0 auto 110px; width: 1185px; display: flex; display: -webkit-flex; display: -moz-flex; justify-content: space-between; -webkit-justify-content: space-between; -moz-justify-content: space-between; box-sizing: border-box; padding-right: 25px; }
#concept .download-sec .txt-area { width: 556px; position: relative; padding-top: 40px; }
#concept .download-sec .txt-area p.comment-ico { position: absolute; left: -94px; top: -29px; }
#concept .download-sec .txt-area h2 { text-align: center; font-weight: bold; font-size: 46px; line-height: 1.6; border-bottom: 1px solid #000; padding-bottom: 10px; letter-spacing: 1px; margin-bottom: 23px; }
#concept .download-sec .txt-area ul { display: flex; display: -webkit-flex; display: -moz-flex; flex-wrap: wrap; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; }
#concept .download-sec .txt-area ul li {font-weight: bold;font-size: 18px;width: 212px;padding: 5px 0 3px 43px;letter-spacing: 1px;background: url(../images/concept/ico06.png)no-repeat left top 0px;margin-bottom: 18px;}
#concept .download-sec .txt-area ul li:last-child { padding: 0; background: none; }
#concept .common-contact { padding-bottom: 30px; }

}

@media screen and (max-width: 1700px){

#concept .free-sec{background-size: 729px;background-position-y: 150px;}
#concept .picture-sec{background-size: 643px;background-position-y: 150px;}

}


/*SP用*/
@media screen and (max-width: 640px) {
	.pc { display: none !important }
	.sp { display: block !important }
	img { max-width: 100%; height: auto; width: auto; }
	body { min-width: auto !important; overflow: inherit !important; }
	.sp_tac { text-align: center !important; }
	.sp_tar { text-align: right !important; }
	.sp_mb15 { margin-bottom: 15px !important; }
	.sp_mb20 { margin-bottom: 20px !important; }
	div, p, dd, dl, dt, th, td, span, li { box-sizing: border-box; }

#concept .craft_ttl { height: 84vw; background: url(../images/concept/sp/img03.jpg)no-repeat top center / 100%; box-sizing: border-box; padding-top: 49vw; }
#concept .craft_ttl p { display: none; }
#concept .craft_ttl p span { font-size: 45px; display: block; font-weight: bold; }
#concept .craft_ttl ul { text-align: center; margin: 0 auto; width: 74vw; }
#concept .craft_ttl ul li { display: inline-block; background: rgba(255, 255, 255, 0.9); width: 29vw; border-radius: 3vw; padding: 1vw 2vw; font-weight: bold; font-size: 4vw; letter-spacing: 0.2vw; margin: 0 1vw 3vw; }
#concept .free-sec { background: url(../images/concept/img01.png)no-repeat top 81vw center / 103vw; margin-bottom: 10vw; }
#concept .free-sec .free-top { margin: 0 auto 81vw; box-sizing: border-box; padding: 4vw 0 4vw; position: relative; }
#concept .free-sec .free-top .free-inner { width: 92vw; margin: 0 auto; }
#concept .free-sec .free-top .free-inner p.comment-ico { position: absolute; left: 5vw; top: 10vw; width: 19vw; }
#concept .free-sec .free-top .free-inner h2 { font-size: 11vw; font-weight: bold; text-align: center; letter-spacing: 0.2vw; padding: 20vw 0 2vw; }
#concept .free-sec .free-top .free-inner h2 img { display: inline-block; vertical-align: baseline; width: 11vw; }
#concept .free-sec .free-top .free-inner p.free-txt02 { text-align: center; border-top: 1px solid #000; position: relative; margin: 0 auto 6vw; width: 73vw; }
#concept .free-sec .free-top .free-inner p.free-txt02 span { display: inline-block; background: #fff; font-size: 5vw; font-weight: bold; position: absolute; top: -4vw; right: 0; left: 0; margin: auto; width: 32vw; }
#concept .free-sec .free-top .free-inner p.free-txt03 { font-size: 4vw; line-height: 1.7; font-weight: bold; }
#concept .free-sec .inner { margin: 0 auto; width: 92vw; box-sizing: border-box; border: 3px solid #1c1919; position: relative; padding: 13vw 4vw 6vw; }
#concept .free-sec .inner h2.common-ttl02 { font-size: 5vw; letter-spacing: 0.2vw; line-height: 1.3; background: #fff; position: absolute; top: -5vw; right: 0; left: 0; width: 55vw; margin: auto; }
#concept .free-sec .inner h2.common-ttl02 span.f_narial { background: none; padding-bottom: 0; letter-spacing: 0px; }
#concept .free-sec .inner .flex { margin: 0 auto 1vw; display: block; }
#concept .free-sec .inner p.mer-txt01 {text-align: center;font-size: 5vw;font-weight: bold;letter-spacing: 0.2vw;}
#concept .minutes-sec { margin: 0 auto 15vw; width: 92vw; box-sizing: border-box; padding: 0 4vw 71vw 0; background: url(../images/concept/img02.png)no-repeat bottom center / 72vw; }
#concept .minutes-sec p.minutes-img { width: 581px; display: none; }
#concept .minutes-sec .txt-area { position: relative; padding-top: 15vw; }
#concept .minutes-sec .txt-area p.comment-ico { position: absolute; left: 0vw; top: 0; width: 20vw; }
#concept .minutes-sec .txt-area h2 { text-align: center; font-weight: bold; font-size: 7vw; line-height: 1.3; border-bottom: 1px solid #000; padding-bottom: 3vw; letter-spacing: 0.2vw; margin-bottom: 3vw; }
#concept .minutes-sec .txt-area p.minutes-txt01 { font-size: 4vw; line-height: 1.8; margin-bottom: 6vw; }
#concept .minutes-sec .txt-area ul { padding-left: 8vw; background: url(../images/concept/line01.png)no-repeat left top / 3vw; }
#concept .minutes-sec .txt-area ul li { font-size: 4vw; font-weight: bold; margin-bottom: 5vw; }
#concept .minutes-sec .txt-area ul li span.f_cent { color: #ff7c04; font-weight: bold; display: block; font-size: 4vw; }
#concept .picture-sec { background: url(../images/concept/img03.jpg)no-repeat top 94vw right  / 96%; padding-bottom: 74vw; }
#concept .picture-sec .inner { margin: 0 auto; width: 92vw; }
#concept .picture-sec .inner .txt-area { width: 92vw; position: relative; padding-top: 27vw; }
#concept .picture-sec .inner .txt-area p.comment-ico { position: absolute; left: 0vw; top: 7vw; width: 20vw; }
#concept .picture-sec .inner .txt-area h2 { text-align: center; font-weight: bold; font-size: 7vw; line-height: 1.3; border-bottom: 1px solid #000; padding-bottom: 2vw; letter-spacing: 0.2vw; margin: 0 auto 3vw; width: 73vw; }
#concept .picture-sec .inner .txt-area p.pict-txt { font-size: 4vw; margin-bottom: 2vw; }
#concept .download-sec { margin: 0 auto 15vw; box-sizing: border-box; background: url(../images/concept/img04.jpg)no-repeat center bottom / 85vw; padding-bottom: 64vw; }
#concept .download-sec p.donw-img { display: none; }
#concept .download-sec .txt-area { position: relative; padding-top: 26vw; margin: 0 auto; width: 92vw; }
#concept .download-sec .txt-area p.comment-ico { position: absolute; left: 0vw; top: 7vw; width: 20vw; }
#concept .download-sec .txt-area h2 { text-align: center; font-weight: bold; font-size: 6vw; line-height: 1.5; border-bottom: 1px solid #000; padding-bottom: 3vw; letter-spacing: 0.2vw; margin-bottom: 5vw; }
#concept .download-sec .txt-area ul { display: flex; display: -webkit-flex; display: -moz-flex; flex-wrap: wrap; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; }
#concept .download-sec .txt-area ul li {font-weight: bold;font-size: 4vw;width: 50%;padding: 1.5vw 0 0 8vw;letter-spacing: 1px;background: url(../images/concept/ico06.png)no-repeat left top 0px / 5.5vw;margin-bottom: 6vw;line-height: 1.2;}
#concept .download-sec .txt-area ul li:last-child { padding: 0; background: none; }
#concept .common-contact { padding-bottom: 13vw; }

}