/*--------------------------------------------------------------------------
汎用
--------------------------------------------------------------------------*/
body {
	min-width: 100%;
	min-height: 100%;
	overflow: hidden;
	scrollbar-face-color: #ff931e;
	scrollbar-track-color: #fff;
	scrollbar-arrow-color: #ff931e;
	scrollbar-shadow-color: #fff;
}

main {display: block;}

/*スクロールバー*/
::-webkit-scrollbar {width: 16px background: #fff; z-index: 3;}
::-webkit-scrollbar-thumb {width: 16px; background: #ff931e; border: 1px solid #fff; border-top: none; border-bottom: none;}

/*pc限定*/
.sp {display: none!important;}

/*コンティナ*/
.container {display: block; width: 980px; margin: 0 auto;}
#front .sec03 .container,
#select .container {width: 1080px;}

.arrow {position: relative; font-size: 36px; padding: 20px 30px; border: 5px solid #1f3134; background: #fff;}
.arrow:before {content: ""; display: block; position: absolute; bottom: -46px; left: 50%; transform: translate(-50%,0); width: 0; height: 0; border-style: solid; border-width: 46px 70px 0 70px; border-color: #1f3134 transparent transparent transparent; z-index: 1;}
.arrow:after {content: ""; display: block; position: absolute; bottom: -40px; left: 50%; transform: translate(-50%,0); width: 0; height: 0; border-style: solid; border-width: 46px 70px 0 70px; border-color: #fff transparent transparent transparent; z-index: 2;}

.link {position: relative; top:0; left:0; display: inline-block; padding: 25px 20px 20px; background: #fff; border: 5px solid #ff1d25; border-radius: 10px; line-height: 1.25; box-sizing:border-box; box-shadow: 0px 5px 0 0 #ff1d25; opacity: 1; z-index: 1;}
.link:hover {opacity: 1;}
.link:active {box-shadow: 0 0 #ff1d25; transform: translate3d(0, 4px, 0); transform-origin: top;}

.card {justify-content: space-around;}
.card li {position: relative; width: 322px; height: 195px; margin: 0 0 70px; z-index: 1; transition: .3s ease; z-index: 1;}
.card li:before {content: ""; display: block; position: absolute; top: 20px; right: 0; width: 21px; height: 146px; border-radius:50%; box-shadow:5px 5px 10px 5px rgba(0,0,0,0.2); z-index: -1;}
.card li:after {content: ""; display: block; position: absolute; bottom: 0; left: 0; width: 281px; height: 21px; border-radius:50%; box-shadow:5px 5px 10px 5px rgba(0,0,0,0.2); z-index: -1;}
.card li p {text-align: center; margin-top: 10px;}

header {background: #ff931e; padding: 20px 0; text-align: center;}
header a {display: inline-block;}
header a img {margin: 0 auto;}

/*--------------------------------------------------------------------------
TOPページ
--------------------------------------------------------------------------*/
#front h1 {width: 100vw; height: 60vw; max-height: 910px; background: #ff931e; overflow: hidden;}
#front h1 img {margin: 0 auto;}

#front .sec01 {background: #ffff1e; padding: 90px 0;}
#front .sec01 .arrow {flex-wrap: nowrap; height: 350px; border: 10px solid #1f3134; margin-bottom: 90px; padding: 0;}
#front .sec01 .arrow:before {bottom: -52px; left: 50%; border-width: 52px 70px 0 70px; border-color: #1f3134 transparent transparent transparent;}
#front .sec01 .arrow:after {bottom: -40px; left: 50%; border-width: 52px 70px 0 70px; border-color: #fff transparent transparent transparent;}
#front .sec01 .arrow .step {position: absolute; top: -58px; left: -64px;}
#front .sec01 .arrow .text h3 {font-size: 67px; line-height: 1.25; padding: 30px 0 0 160px;}
#front .sec01 .arrow .text p {font-size: 27px; line-height: 1.25; padding: 20px 0 0 60px;}
#front .sec01 .arrow:nth-child(2) .text h3,
#front .sec01 .arrow:nth-child(4) .text h3 {padding-top: 45px;}
#front .sec01 .arrow:nth-child(2) .text p,
#front .sec01 .arrow:nth-child(4) .text p {padding-top: 40px;}
#front .sec01 .arrow .img {position: absolute;}
#front .sec01 .arrow .img img {margin: 0 auto;}
#front .sec01 .arrow .img small {display: block; font-weight: 700; margin-top: 10px;}
#front .sec01 .arrow:nth-child(1) .img {bottom: 40px; right: 30px;}
#front .sec01 .arrow:nth-child(2) .img {bottom: 35px; right: 25px;}
#front .sec01 .arrow:nth-child(3) .img {bottom: 40px; right: 30px;}
#front .sec01 .arrow:nth-child(4) .img {bottom: 50px; right: 35px;}
#front .sec01 .arrow:nth-child(5) .img { bottom: 20px; right: 30px;}

#front .sec02 {padding-bottom: 100px;}
#front .sec02 h2 {margin: -50px 0 65px;}
#front .sec02 ul li {width: calc((100% - 2px) / 3); padding: 0 20px; border-right: 2px solid #592f02; box-sizing: border-box;}
#front .sec02 ul li:first-child {border-left: 2px solid #592f02;}
#front .sec02 ul li img {margin: 30px auto 25px;}
#front .sec02 ul li:nth-child(2) img {margin: 20px auto 15px;}
#front .sec02 ul li h3 {font-size: 36px; color: #592f02; line-height: 1.25; letter-spacing: -1px; text-align: center;}
#front .sec02 ul li p {font-size: 19px; letter-spacing: -0.5px; margin-top: 12px;}

#front .sec03 {background: #faf8e3; padding-bottom: 40px;}
#front .sec03 h2 {font-family: 'M PLUS Rounded 1c', sans-serif; font-size: 40px; color: #8c6239; text-align: center; padding: 75px 0;}
#front .sec03 h2 span {display: block; font-size: 13px; text-align: center; font-weight: 700;}

#front .sec04 {padding: 80px 0; text-align: center;}
#front .sec04 span {display: block; font-size: 20px; font-weight: 700; margin-top: 15px;}

#notice {background: #faf8e3; padding: 60px 0 20px;}
#notice h3 {position: relative; display: inline-block; font-size: 1.85rem; color: #fff; background: #000; padding: 5px 10px 5px 15px; z-index: 1;}
#notice h3:after {content: ""; position: absolute; right: -20px; bottom: 0; display: block; width: 0; height: 0; border-style: solid; border-width: 54px 0 0px 20px; border-color: transparent transparent transparent #000000; z-index: 1;}
#notice em {color: #f3981d; font-weight: 700;}
#notice ul {display: block; margin-bottom: 50px; padding: 10px 1rem 10px 3rem; border: #000 1px solid; background: #fff; box-shadow: 10px 10px 0 0 rgba(128,128,128, .2); }
#notice ul li {font-size: 1rem; margin: 20px 0; letter-spacing: 1.25px; line-height: 1.75; list-style: decimal;}
#notice .link_bnr {display: block; max-width: 980px; width: 100%; margin: 40px auto;}
