@charset "utf-8";

/* fonts */
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,700|Roboto+Condensed:300,700');

/* common */
* { box-sizing:border-box; }
html { font-size:10px; }
body { position:relative; color:#3a0216; line-height:1.6; font-size:1.5rem; font-family:sans-serif; font-feature-settings:'palt'; }
body { font-family:sans-serif; background:#fefefe; }
a { color:inherit; text-decoration:none; }
img { vertical-align:top; }
table { width:100%; border-collapse:collapse; }
.PC { display:none; }
.SP { display:block; }

.note { margin-bottom:1.0rem; font-size:0.8em; }

@keyframes brink { 0% { left:-100%; } 50% { left:400%; } 100% { left:-100%; } }
.brink { animation:brink 6.25s infinite; }

.fadeIn { opacity: 1.0; transition: all 2s ease; }
.fadeOut { opacity: 0; transition: all 0.1s ease; }

@media (min-width:769px) {
    * { box-sizing:border-box; }
    html { font-size:10px; }
    body { position:relative; color:#3a0216; line-height:1.6; font-size:1.4rem; font-feature-settings:'palt'; letter-spacing:0.05em; }
    body { font-family:'Noto Sans JP',sans-serif; font-weight:200; }
    a { color:inherit; text-decoration:none; }
    img { vertical-align:top; }
    table { width:100%; border-collapse:collapse; }
    .PC { display:block; }
    .SP { display:none; }
    @keyframes brink { 0% { left:-100%; } 50% { left:400%; } 100% { left:-100%; } }
}

.Wrap { overflow:hidden; }
.marker { background:linear-gradient(to bottom,rgba(255,91,218,0.0) 0%,rgba(255,91,218,0.0) 70%,rgba(255,91,218,0.25) 71%,rgba(255,91,218,0.25) 100%); }

/* Head */
    .Head { position:fixed; top:0; left:0; z-index:201; width:100%; padding:1.5rem 1.0rem 1.2rem; background:rgba(255,255,255,0.95); box-shadow:0 0 5px 0 rgba(0,0,0,0.15); transition:0.25s; }
    .HeadInner { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:100%; }
    .Head figure { display:block; width:100%; text-align:center; }
    .Head figure img { position:relative; width:auto; height:5rem; margin:0 0; }
    .Head ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; position:fixed; bottom:0; left:0; width:100%; height:auto; padding:0.7rem; background:rgba(255,255,255,0.95); }
    .Head ul li { width:50%; margin:0 0; line-height:1.4; }
    .Head ul li.Phone a { display:block; color:#921a2f; font-size:6.4vw; text-align:center; pointer-events:inherit; }
    .Head ul li.Phone a b { font-family:'Roboto Condensed', sans-serif; font-weight:700; }
    .Head ul li.Phone a i { position:relative; top:0.4rem; font-size:1.0em; }
    .Head ul li.Phone a small { display:block; font-size:1.1rem; text-align:center; }
    .Head ul li.Mail { position:relative; width:50%; }
    .Head ul li.Mail a { display:block; width:100%; min-width:inherit; padding:0 2.0rem; color:#fff; line-height:5.0rem; font-size:1.4rem; font-weight:700; text-align:center; transition:0.25s; background:rgba(49,167,152); }
    .Head ul li.Mail a span { display:none; }

@media (min-width:769px) {
    .Head { position:fixed; top:0; left:0; z-index:201; width:100%; padding:2.0rem 1.0rem; background:rgba(255,255,255,0.95); box-shadow:0 0 5px 0 rgba(0,0,0,0.15); transition:0.25s; }
    .HeadInner { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:100%; }
    .Head figure { display:block; width:30%; text-align:left; }
    .Head figure img { position:relative; width:auto; height:5rem; margin:0 1.0rem; }
    .Head .trigger { display:none; }
    .Head ul { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; position:relative; bottom:inherit; left:inherit; width:auto; height:auto; padding:0; background:transparent; }
    .Head ul li { width:auto; margin:0 1.0rem; line-height:1.4; }
    .Head ul li.Phone a { color:#921a2f; font-size:2.8rem; pointer-events:none; }
    .Head ul li.Phone a b { font-family:'Roboto Condensed', sans-serif; font-weight:700; }
    .Head ul li.Phone a i { position:relative; top:0.4rem; font-size:1.0em; }
    .Head ul li.Phone a small { display:inline; font-size:1.3rem; text-align:left; }
    .Head ul li.Mail { position:relative; width:auto; }
    .Head ul li.Mail a { display:flex; justify-content:center; align-items:center; width:auto; min-width:250px; padding:0 3.0rem; color:#fff; line-height:5.0rem; font-size:1.6rem; font-weight:700; text-align:center; transition:0.25s; background:rgba(49,167,152); }
    .Head ul li.Mail a:hover { transition:0.25s; background:rgba(49,124,150); }
    .Head ul li.Mail a span { display:inline; }
}


@media (max-width:920px) {
    .Head ul li.Phone a { font-size:2.1rem; }
    .Head ul li.Mail a {padding: 0 2.0rem;color: #fff;line-height: 5.0rem;font-size: 1.2rem;min-width: 170px;}
}

/* Slide */
    .Slide { position:relative; width:100vw; min-height:100vh; padding-top:80px; border-bottom:#005bac 1px solid;
        background-image:url('../images/slide03.png'), url('../images/slide02.jpg');
        background-repeat:no-repeat, no-repeat;
        background-position:77% bottom, center bottom;
        background-size:100% auto, cover;
    }
    .SlideInner { position:relative; z-index:2; top:inherit; left:inherit; width:92%; height:auto; margin:0 auto; transform:translate(0,0); }
    .SlideInner::after { content:''; display:table; clear:both; height:0; }
    .SlideInner p { margin-bottom:1.0rem; color:rgba(146,26,48,1.0); line-height:1.5; font-size:/*2.5rem*/4.5vw; font-weight:700; }
    .SlideInner p::after { content:''; display:table; clear:both; height:0; }
    .SlideInner p b { font-size:/*3.7rem*/6.45vw; }
    .SlideInner p img { display:block; position:relative; width:45.0vw; margin:0 0 1.0em 0; }
    .SlideInner h1 { display:block; color:rgba(58,2,22,1.0); line-height:1.3; font-family:'Noto Sans JP', sans-serif; font-size:/*6.6rem*/7.2vw; font-weight:700; text-align:left; }
    .SlideInner h1 small { display:block; color:rgba(58,2,22,0.7); font-size:/*2.1rem*/0.5em; font-weight:200; text-align:left; text-indent:0.65em; }

    .fv_pdf { position:absolute; left:4%; bottom:0; }
    .fv_pdfInner { display:flex; flex-flow:column wrap; justify-content:flex-start; align-items:flex-start; }
    .fv_pdf p { font-size:3.7vw; font-weight:700; }
    .fv_pdf p b { font-size:1.23em; }
    .fv_pdf p b.type2 { font-size:1.05em; }
    .fv_pdf p a { display:block; margin:1.0rem 0 2.0rem; color:#fff; line-height:5.0rem; text-align:center; background:rgba(49,167,152); transition:0.25s; }
    .fv_pdf p a span { display:none; }
    .fv_pdf figure { max-width:45%; }
    .fv_pdf figure img { width:100%; height:100%; object-fit:cover; }
    .fv_badge02 { position:absolute; right:22%; top:78px; width:25.0%; }
    .fv_badge02 img { width:100%; height:100%; object-fit:cover; }
    .fv_badge03 { position:absolute; right:0; bottom:0; width:35%; }
    .fv_badge03 img { width:100%; height:100%; object-fit:cover; }

@media (min-width:769px) {
    .Slide { position:relative; border-bottom:#005bac 1px solid;display: -ms-flexbox;display: -webkit-flex;display: flex; }
    .Slide_Inner {padding:4em 0 1.6em; background:#666;min-height:680px;width:100vw; background:url('../images/slide01.jpg') no-repeat center bottom; background-size:cover; }
    .SlideInner { position:absolute; z-index:2; top:35.5%; left:50%; width:92%; height:auto; margin:auto; transform:translate(-50%,-50%);}
    .SlideInner::after { content:''; display:table; clear:both; height:0; }
    .SlideInner p { margin-bottom:2.0rem; color:rgba(146,26,48,1.0); line-height:1.3; font-size:/*2.5rem*/1.7vw; font-weight:700; }
    .SlideInner p::after { content:''; display:table; clear:both; height:0; }
    .SlideInner p b { font-size:2.45vw; }
    .SlideInner p span.b-remote { font-size: 3.2vw; }
    .SlideInner p img { position:relative; float:left; top:-1.2em; width:17.7vw; margin:0 /*2.0rem*/1.5rem -2.0em 0; }
    .SlideInner h1 { display:block; color:rgba(58,2,22,1.0); line-height:1.3; font-family:'Noto Sans JP', sans-serif; font-size:3.8vw; font-weight:700; text-align:left; }
    .SlideInner h1 small { display:block; color:rgba(58,2,22,0.7); font-size:/*2.1rem*/0.31em; font-weight:200; text-indent:0.4em; }
    .fv_pdf { position:absolute; left:6%; bottom:0px;}
    .fv_pdf p { font-size:1.8em; font-weight:700; }
    .fv_pdf p b { font-size:1.23em; }
    .fv_pdf p b.type2 { font-size:1.17em; }
    .fv_pdf p a { display:block; margin:1.0rem 0 3.0rem; color:#fff; line-height:6.5rem; text-align:center; background:rgba(49,167,152); transition:0.25s; padding: 10px 40px; }
    .fv_pdf p a:hover { background:rgba(49,167,152); transition:0.25s; }
    .fv_pdf p a span { display:inline; }
    .fv_pdf figure { max-width:inherit; padding-left:2.0rem; }
    .fv_pdf figure img { width:100%; height:100%; object-fit:cover; }
    .fv_badge02 { position:absolute; right:25%; top:inherit; bottom:57%; width:16.5%; }
    .fv_badge02 img { width:100%; height:100%; object-fit:cover; }
    .fv_badge03 { position:absolute; right:0; bottom:0; width:22%; }
    .fv_badge03 img { width:100%; height:100%; object-fit:cover; }
}
@media (min-width: 1200px) {
    .fv_badge02 {
        right: 27%;
        top: inherit;
        bottom: 54%;
    }
}

@media screen and (min-width:320px) and (max-width:768px) {
		.Slide { width:100vw; min-height:120vw;background-image:url('../images/slide03.png'), url('../images/slide02.jpg');}	.Slide { width:100vw; min-height:120vw;}
		.Slide_Inner {padding:0 0 1.6em;}	
		.SlideInner p {font-size: 3.4vw;margin-bottom:.5rem; }	.SlideInner p {font-size: 3.4vw;}
		.SlideInner p img{ margin: 0 0 .5em 0;}	    .SlideInner p b {font-size: 5vw;}
		.SlideInner p b {font-size: 5vw;}	.SlideInner p span.b-remote { font-size: 6.4vw; }
		.SlideInner h1 {font-size: 8vw;}	.SlideInner h1 {font-size: 8vw;}
		.fv_pdf p a {padding: 0.4em 2.4em;}	.fv_pdf p a {padding: 0.4em 2.4em;}
		.fv_pdf figure {display:none}	
		/*.fv_pdf figure img {width: 40vw;height: 100%;object-fit: cover;}*/
    #companies h2 {
        margin-bottom: 4.0rem;
        line-height: 1.4;
        font-size: 5.4vw;
        font-weight: 700;
        text-align: center;
    }
    .Trust2Inner header h2 {
        line-height: 1.5;
        font-size: 5.4vw;
        font-weight: 700;
        text-align: center;
    }
}
@media screen and (min-width:320px) and (max-width:378px) {
    .Slide {
        position: relative;
        width: 100vw;
		min-height: 68vh	
		/*min-height: 60vh;*/
    }
}
/* Intro */
    .Intro { position:relative; width:100vw; min-height:auto; padding:40px 0 0; background:url('../images/bg01.gif?2019_7') no-repeat center bottom; /*background-size:cover;*/ }
    .IntroInner { max-width:92%; margin:0 auto; }
    .IntroInner::after { content:''; display:table; clear:both; height:0; }
    .IntroInner header { margin-bottom:2.0rem; }
    .IntroInner header h2 { margin-bottom:0.0rem; line-height:1.4; font-size:4.8vw; font-weight:700; text-align:center; }
    .IntroInner ul { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; }
    .IntroInner li { width:100%; text-align:center; margin-bottom:3.0rem; }
    .IntroInner li figure { display:block; width:60%; margin:0 auto 2.5rem; }
    .IntroInner li figure img { width:100%; height:100%; object-fit:cover; }
    .IntroInner li h3 { margin-bottom:1.0rem; color:rgba(220,75,70,1.0); font-size:4.4vw; font-weight:700; letter-spacing:0; }
    .IntroInner li p { color:#000; text-align:justify; }

@media (min-width:769px) {
    .Intro { position:relative; width:100vw; min-height:800px; padding:100px 0 0; background:url('../images/bg01.gif?2019_7') no-repeat center bottom; /*background-size:cover;*/ }
    .IntroInner { max-width:92%; margin:0 auto; }
    .IntroInner::after { content:''; display:table; clear:both; height:0; }
    .IntroInner header { margin-bottom:2.0rem; }
    .IntroInner header h2 { margin-bottom:4.0rem; line-height:1.0; font-size:3.3vw; font-weight:700; text-align:center; }
    .IntroInner ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; }
    .IntroInner li { width:32%; text-align:center; margin-bottom:0.0rem; }
    .IntroInner li figure { display:block; width:80%; margin:0 auto 2.5rem; }
    .IntroInner li figure img { width:100%; height:100%; object-fit:cover; }
    .IntroInner li h3 { margin-bottom:1.5rem; color:rgba(220,75,70,1.0); font-size:2vw; font-weight:700; letter-spacing:0; }
    .IntroInner li p { color:#000; text-align:justify; }
}

/* Case */
    .Case { position:relative; width:100vw; padding:40px 0 0; background:#fef9f9 url('../images/bg02.gif?2019_7') no-repeat center top; /*background-size:cover;*/ }
    .CaseInner { position:relative; width:92%; margin:0 auto; }
    .CaseInner::after { content:''; display:table; clear:both; height:0; }
    .CaseInner header { margin-bottom:2.0rem; }
    .CaseInner header h2 { margin-bottom:4.0rem; line-height:1.0; font-size:6.8vw; font-weight:700; text-align:center; }
    .CaseInner ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; }
    .CaseInner li { width:100%; text-align:center; margin-bottom:3.0rem; }
    .CaseInner li figure { display:block; width:60%; margin:0 auto 2.5rem; }
    .CaseInner li figure img { width:100%; height:100%; object-fit:cover; }
    .CaseInner li h3 { margin-bottom:1.0rem; color:rgba(145,26,47,1.0); font-size:6.4vw; font-weight:700; letter-spacing:0; }
    .CaseInner li p { color:#000; text-align:center; }
    .CaseInner li p br { display:none; }

@media (min-width:769px) {
    .Case { position:relative; width:100vw; min-height:760px; padding:0; background:#fef9f9 url('../images/bg02.gif?2019_7') no-repeat center top; /*background-size:cover;*/ }
    .CaseInner { position:absolute; top:50%; left:50%; width:92%; margin:0 auto; transform:translate(-50%,-50%); }
    .CaseInner::after { content:''; display:table; clear:both; height:0; }
    .CaseInner header { margin-bottom:2.0rem; }
    .CaseInner header h2 { margin-bottom:4.0rem; line-height:1.0; font-size:2.8vw; font-weight:700; text-align:center; }
    .CaseInner ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; }
    .CaseInner li { width:32%; text-align:center; margin-bottom:0.0rem; }
    .CaseInner li figure { display:block; width:80%; margin:0 auto 2.5rem; }
    .CaseInner li figure img { width:100%; height:100%; object-fit:cover; }
    .CaseInner li h3 { margin-bottom:1.5rem; color:rgba(145,26,47,1.0); font-size:1.7vw; font-weight:700; letter-spacing:0; }
    .CaseInner li p { color:#000; text-align:center; }
    .CaseInner li p br { display:inline; }
}

/* Trust */
    .Trust { position:relative; width:100vw; padding:160px 0 30px 0; color:#fff; background:url('../images/bg05.jpg?2019_7') no-repeat center bottom; background-size:cover; }
    .TrustInner::after { content:''; display:table; clear:both; height:0; }
    .TrustInner header { width:80%; margin:0 auto; margin-bottom:1.5rem; }
    .TrustInner header h2 { line-height:1.5; font-size:5.4vw; font-weight:700; text-align:left; }
    .TrustInner header h2 br { display:none; }
    .TrustInner .Text { position:relative; width:80%; margin:0 auto; color:#fff; }
    .TrustInner h3 { margin-bottom:1.0rem; font-size:2.1rem; font-weight:700; }
    .TrustInner p { max-width:100%; line-height:1.4; text-align:justify; }
    .Trust2 { position:relative; width:100vw; padding:40px 0 30px 0; color:#bb121a; background:#fff; }
    .Trust2 ul { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; max-width:80%; margin:0 auto; }
    .Trust2 li { width:100%; text-align:center; }
    .Trust2 li figure { display:block; width:60%; margin:0 auto; }
    .Trust2 li figure img { width:100%; height:100%; object-fit:cover; }
    .Trust2 li h3 { position:relative; margin-bottom:3.3rem; font-size:4.4vw; font-weight:700; text-align:center; letter-spacing:0; }
    .Trust2 li h3::before { content:''; display:block; position:absolute; bottom:-1.5rem; left:50%; width:70px; height:2px; background:rgba(187,18,26,1.0); transform:translate(-50%,0); }
    .Trust2 li p { text-align:justify; }

    .Trust2Inner header { margin-bottom:4.0rem; }
    .Trust2Inner header h2 { color:rgba(220,75,70,1.0); line-height:1.5; font-size:3.3vw; font-weight:700; text-align:center; }
    .Trust2Inner header h2 br { display:none; }


@media (min-width:769px) {
    .Trust { position:relative; width:100vw; min-height:800px; padding:40px 0 0 0; color:#fff; background:url('../images/bg03.jpg?2019_7') no-repeat center bottom; background-size:cover; }
    .TrustInner::after { content:''; display:table; clear:both; height:0; }
    .TrustInner header { width:inherit; margin:0; margin-bottom:2.0rem; }
    .TrustInner header h2 { line-height:1.5; font-size:3.3vw; font-weight:700; text-align:center;}
    .TrustInner header h2 br { display:inline; }
    .TrustInner .Text { position:absolute; top:55%; left:50%; width:76%; margin:0; color:#fff; transform:translate(-50%,-50%); }
    .TrustInner h3 { margin-bottom:1.5rem; font-size:2.4rem; font-weight:700; }
    .TrustInner p { max-width:450px; line-height:2.0; text-align:justify; text-shadow:0 0 8px rgba(197,53,60,1.0),0 0 8px rgba(197,53,60,1.0),0 0 8px rgba(197,53,60,1.0),0 0 8px rgba(197,53,60,1.0),0 0 8px rgba(197,53,60,1.0); }
    .Trust2 { position:relative; width:100vw; min-height:500px; padding:70px 0 50px 0; color:rgba(187,18,26,1.0); background:#fff; }
    .Trust2 ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; max-width:92%; margin:0 auto; }
    .Trust2 li { width:23%; text-align:center; }
    .Trust2 li figure { display:block; width:60%; margin:0 auto; }
    .Trust2 li figure img { width:80%; height:80%; object-fit:cover; }
    .Trust2 li h3 { position:relative; margin-bottom:3.3rem; font-size:2.3vw; font-weight:700; text-align:center; letter-spacing:0; }
    .Trust2 li h3::before { content:''; display:block; position:absolute; bottom:-1.5rem; left:50%; width:70px; height:2px; background:rgba(187,18,26,1.0); transform:translate(-50%,0); }
    .Trust2 li p { text-align:justify; }
}

@media (min-width:1430px) {
    .TrustInner .Text { top: 61%; }
}

/* Function */
    .Function { position:relative; width:100vw; padding:40px 0; color:rgba(187,18,26,1.0); }
    .FunctionInner::after { content:''; display:table; clear:both; height:0; }
    .FunctionInner header { margin-bottom:2.0rem; }
    .FunctionInner header h2 { color:rgba(220,75,70,1.0); line-height:1.5; font-size:6.8vw; font-weight:700; text-align:center; }
    .FunctionInner header h2 br { display:inline; }
    .FunctionInner ul { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; max-width:92%; margin:0 auto 2.0rem; }
    .FunctionInner li { width:100%; text-align:center; margin-bottom:2.0rem; }
    .FunctionInner li figure { display:block; width:50%; margin:0 auto 1.0rem; }
    .FunctionInner li figure img { width:100%; height:100%; object-fit:cover; }
    .FunctionInner li h3 { position:relative; margin-bottom:3.3rem; font-size:3.8vw; font-weight:700; letter-spacing:0; }
    .FunctionInner li h3::before { content:''; display:block; position:absolute; bottom:-1.5rem; left:50%; width:70px; height:2px; background:rgba(187,18,26,1.0); transform:translate(-50%,0); }
    .FunctionInner li p { text-align:center; }
    .FunctionInner li:nth-child(3) p { text-align:justify; }
    .FunctionInner .catch { color:rgba(58,2,22,1.0); line-height:1.4; font-size:4.5vw; font-weight:700; text-align:center; }
    .FunctionInner .catch b { font-size:1.5em; }
    .FunctionInner .catch b > span { position:relative; top:0.05em; font-family:'Roboto Condensed', sans-serif; font-size:1.8em; }
    .FunctionInner .catch br { display:inline; }

@media (min-width:769px) {
    .Function { position:relative; width:100vw; padding:30px 0 90px; color:rgba(187,18,26,1.0); }
    .FunctionInner::after { content:''; display:table; clear:both; height:0; }
    .FunctionInner ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; max-width:92%; margin:0 auto 5.0rem; }
    .FunctionInner li { width:23%; text-align:center; margin-bottom:0; }
    .FunctionInner li figure { display:block; width:60%; margin:0 auto 2.0rem; }
    .FunctionInner li figure img { width:100%; height:100%; object-fit:cover; }
    .FunctionInner li h3 { position:relative; margin-bottom:3.3rem; font-size:2.3vw; font-weight:700; letter-spacing:0; }
    .FunctionInner li h3::before { content:''; display:block; position:absolute; bottom:-1.5rem; left:50%; width:70px; height:2px; background:rgba(187,18,26,1.0); transform:translate(-50%,0); }
    .FunctionInner li p { text-align:justify; }
    .FunctionInner .catch { color:rgba(58,2,22,1.0); line-height:1.0; font-size:2.8vw; font-weight:700; text-align:center; }
    .FunctionInner .catch b { font-size:1.5em; }
    .FunctionInner .catch b > em { position:relative; top:0.05em; font-family:'Roboto Condensed', sans-serif; font-size:1.8em; }
    .FunctionInner .catch br { display:none; }
}

/* cvArea */
    .cvArea { position:relative; width:100vw; min-height:inherit; padding:20.0rem 0 0; border-bottom:rgba(148,27,48,1.0) 1px solid; color:#fff; letter-spacing:0; background:url('../images/cv_bg-sp.jpg') no-repeat center top; background-size:cover; }
        .cvArea .badge { position:absolute; right:0; bottom:0; width:40.0vw; }
        .cvArea .badge img { width:100%; height:100%; object-fit:cover; }
    .cvAreaInner { position:relative; max-width:80.0%; margin:0 auto; }
    .cvAreaInner .Text { max-width:100.0%; }
    .cvArea h2 { margin-bottom:2.0rem; line-height:1.4; font-size:4.7vw; font-weight:700; text-align:center; }
    .cvArea h2 b { font-size:1.2em; }
    .cvArea h2.type2 { font-size:4.7vw; }
    .cvArea h2.type2 b { font-size:1.1em; }
    .cvArea h2 a { display:block; margin:2.0rem 1.0rem 0; color:rgba(49,167,152); line-height:5.0rem; font-size:4.5vw; text-align:center; background:rgba(255,255,255,1.0); transition:0.25s; }
    .cvArea h2 a span { display:none; }
    .cvArea h2 + figure { max-width:55%; }
    .cvArea h2 + figure img { width:100%; height:100%; object-fit:cover; }

@media (min-width:769px) {
    .cvArea { position:relative; width:100vw; min-height:inherit; padding:10.0rem 0 0; border-bottom:rgba(148,27,48,1.0) 1px solid; color:#fff; letter-spacing:0; background:url('../images/cv_bg.gif') no-repeat center center; background-size:cover; }
        .cvArea .badge { position:absolute; right:0; bottom:0; width:22.8vw; }
        .cvArea .badge img { width:100%; height:100%; object-fit:cover; }
    .cvAreaInner { position:relative; max-width:71.4%; margin:0 auto; }
    .cvAreaInner .Text { max-width:34.2vw; }
    .cvArea h2 { margin-bottom:2.0rem; line-height:1.4; font-size:1.95vw; font-weight:700; text-align:center; }
    .cvArea h2 b { font-size:2.4vw; }
    .cvArea h2.type2 { font-size:1.8vw; }
    .cvArea h2.type2 b { font-size:1.175em; }
    .cvArea h2 span.b-remote { font-size:1.75em; }
    .cvArea h2 a { display:block; margin:2.0rem 1.0rem 0; color:rgba(49,167,152); line-height:7.4rem; font-size:1.7vw; text-align:center; background:rgba(255,255,255,1.0); transition:0.25s; }
    .cvArea h2 a:hover { color:rgba(255,255,255,1.0); background:rgba(49,167,152); transition:0.25s; }
    .cvArea h2 a span { display:inline; }
    .cvArea h2 + figure { max-width:100%; }
    .cvArea h2 + figure img { width:100%; height:100%; object-fit:cover; }
}

/* Point */
    .Point { position:relative; width:100vw; min-height:auto; padding:4.0rem 0 0; background:url('../images/point_bg.gif') no-repeat center top; background-size:cover; }
    .PointInner { position:relative; width:92%; margin:0 auto; }
    .PointInner::after { content:''; display:table; clear:both; height:0; }
    .PointInner header { margin-bottom:2.0rem; }
    .PointInner header h2 { margin-bottom:0.0rem; line-height:1.4; font-size:5.4vw; font-weight:700; text-align:center; }
    .PointInner header h2 br { display:inline; }
    .PointInner ul { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; }
    .PointInner li { width:100%; text-align:center; margin-bottom:3.0rem; }
    .PointInner li figure { display:block; width:60%; margin:0 auto 1.5rem; }
    .PointInner li figure img { width:100%; height:100%; object-fit:cover; }
    .PointInner li h3 { margin-bottom:1.0rem; color:rgba(145,26,47,1.0); font-size:4.4vw; font-weight:700; letter-spacing:0; }
    .PointInner li p { color:#000; text-align:center; }
    .PointInner li:last-child p { text-align:justify; }

@media (min-width:769px) {
    .Point { position:relative; width:100vw; min-height:760px; padding:0; background:url('../images/point_bg.gif') no-repeat center top; background-size:cover; }
    .PointInner { position:absolute; top:50%; left:50%; width:92%; margin:0 auto; transform:translate(-50%,-50%); }
    .PointInner::after { content:''; display:table; clear:both; height:0; }
    .PointInner header { margin-bottom:4.0rem; }
    .PointInner header h2 { margin-bottom:4.0rem; line-height:1.0; font-size:2.8vw; font-weight:700; text-align:center; }
    .PointInner header h2 br { display:none; }
    .PointInner ul { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; }
    .PointInner li { width:32%; text-align:center; margin-bottom:0.0rem; }
    .PointInner li figure { display:block; width:80%; margin:0 auto 2.5rem; }
    .PointInner li figure img { width:100%; height:100%; object-fit:cover; }
    .PointInner li h3 { margin-bottom:1.5rem; color:rgba(145,26,47,1.0); font-size:1.7vw; font-weight:700; letter-spacing:0; }
    .PointInner li p { color:#000; text-align:center; }
    .PointInner li:last-child p { text-align:justify; }
}

/* Faq */
    .Faq { position:relative; width:100vw; padding:40px 0 0; color:#000; }
    .FaqInner::after { content:''; display:table; clear:both; height:0; }
    .FaqInner header { margin-bottom:2.0rem; }
    .FaqInner header h2 { margin-bottom:0.0rem; line-height:1.0; font-size:5vw; font-weight:700; text-align:center; }
    .FaqInner ul { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; max-width:92%; margin:0 auto; transition:0.25s; }
    .FaqInner li { width:100%; }
    .FaqInner li dt { display:block; width:100%; margin-bottom:1.0rem; border-bottom:#bb121a 1px solid; color:#911a2f; line-height:2.4rem; font-size:1.5rem; font-weight:700; }
    .FaqInner li dt::before { content:'Q'; display:inline-block; width:2.4rem; margin-right:0.6rem; color:#fff; font-family:'Roboto Condensed', sans-serif; font-size:1.5rem; font-weight:700; text-align:center; background:#bb121a; }
    .FaqInner li dd { position:relative; margin-bottom:3.0rem; padding-left:3.0rem; text-align:justify; }
    .FaqInner li dd br { display:none; }
    .FaqInner li dd::before { content:'A'; display:block; position:absolute; top:0.0em; left:0; width:2.0rem; height:2.0rem; border:#dc4b46 2px solid; border-radius:100%; color:#dc4b46; line-height:2.0rem; font-family:'Roboto Condensed', sans-serif; font-size:1.5rem; font-weight:700; text-align:center; }

@media (min-width:769px) {
    .Faq { position:relative; width:100vw; padding:100px 0 30px; color:#000; }
    .FaqInner::after { content:''; display:table; clear:both; height:0; }
    .FaqInner header { margin-bottom:4.0rem; }
    .FaqInner header h2 { margin-bottom:4.0rem; line-height:1.0; font-size:2.8vw; font-weight:700; text-align:center; }
    .FaqInner ul { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; max-width:68%; margin:0 auto; transition:0.25s; }
    .FaqInner li { width:100%; }
    .FaqInner li dt { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; width:100%; margin-bottom:1.5rem; border:#bb121a 1px solid; color:#911a2f; line-height:5.0rem; font-size:1.7vw; font-weight:700; }
    .FaqInner li dt::before { content:'Q'; display:block; width:5.0rem; margin-right:2.0rem; color:#fff; font-family:'Roboto Condensed', sans-serif; font-size:2.1rem; font-weight:700; text-align:center; background:#bb121a; }
    .FaqInner li dd { position:relative; margin-bottom:4.0rem; padding-left:7.0rem; text-align:justify; }
    .FaqInner li dd br { display:inline; }
    .FaqInner li dd::before { content:'A'; display:block; position:absolute; top:0.1em; left:0.5rem; width:4.0rem; height:4.0rem; border:#dc4b46 2px solid; border-radius:100%; color:#dc4b46; line-height:4.0rem; font-family:'Roboto Condensed', sans-serif; font-size:2.1rem; font-weight:700; text-align:center; }
}
@media (min-width:769px) and (max-width:961px) {
    .FaqInner ul { max-width:92%; transition:0.25s; }
}
@media (min-width:960px) and (max-width:1180px) {
    .FaqInner ul { max-width:86%; transition:0.25s; }
}

/* Faq */
    .pageTop { display:block; position:fixed; right:0; bottom:66px; width:45px; height:45px; line-height:45px; text-align:center; background:rgba(189,39,46,0.8); cursor:pointer; }
    .pageTop i { color:#fff; line-height:45px; font-size:20px; }
    .Foot { padding-bottom:5.5rem; border-top:rgba(148,27,48,1.0) 1px solid; background:rgba(0,0,0,0.02); }
    .FootInner { display:block; padding:2.0rem 2.0rem 0; }
    .Foot ul { width:100%; font-size:0.86em; text-align:center; }
    .Foot li { display:inline-block; margin-right:0.5em; margin-left:0.5em; }
    .copyright { display:block; width:92%; margin:0 auto; padding:1.5rem 0; color:rgba(0,0,0,0.4); font-size:1.0rem; text-align:center; }
@media (min-width:769px) {
    .pageTop { display:block; position:fixed; right:0; bottom:0; width:45px; height:45px; line-height:45px; text-align:center; background:rgba(189,39,46,0.8); cursor:pointer; }
    .pageTop i { color:#fff; line-height:45px; font-size:20px; }
    .Foot { padding-bottom:0.0rem; border-top:rgba(148,27,48,1.0) 1px solid; background:rgba(0,0,0,0.02); }
    .FootInner { display:flex; flex-flow:row wrap; justify-content:flex-start; align-items:center; padding:0 2.0rem; }
    .Foot ul { width:55%; font-size:0.9em; text-align:left; }
    .Foot li { display:inline-block; margin-right:1.5em; }
    .copyright { display:block; width:45%; margin:0 auto; padding:2.0rem 0; color:rgba(0,0,0,0.4); font-size:1.1rem; text-align:right; }
}

/*191011追加*/
.Head ul .Phone  { text-align: center;}

.Head ul .Phone small{ font-size: 1.5rem; font-weight: 600; }

    .TrustInner section{
        width: 100%;
        margin: auto;
        margin-top: 70px;
        margin-bottom: 0px;
        text-align: center;
        max-width: 1200px;
    }
    .TrustInner span{
        margin-top: 20px;
        text-align: center;
        font-size: 1.2em;
        font-weight: 600;
        width: 100%;
        display: block;
    }
@media only screen and (max-width: 900px) and (min-width: 320px) {
.TrustInner section iframe {
max-width: 100%;
}
}
@media only screen and (max-width: 768px) and (min-width: 531px) {
    .SlideInner p{
        font-size: 4vw;
    }
    .SlideInner p b{
        font-size: 6vw;
    }
    .SlideInner h1{
        font-size: 7.2vw;
    }
    .SlideInner h1 small{
        font-size: 2.5vw;
    }
    .fv_pdf p {
    font-size: 3vw;
    }
}
@media only screen and (max-width: 768px) and (min-width: 320px) {
    .TrustInner header h2 {
    text-shadow: 1px 2px 5px rgba(0,0,0,0.7);
    }
    .TrustInner section  {
        position: relative;
        width: 100%;
        padding-top: 56.25%;
        }
    .TrustInner section iframe {
        position: absolute;
        top: 0;
        right: 0;
        width: 100%;
        height: 100%;
    }
}
@media (min-width: 1200px){
    .TrustInner .Text {
    top: 60%;
}
}
@media (min-width: 1600px){
.SlideInner h1 {
    font-size: 4.6vw;
}
section.Intro {
    padding-top: 4vw;
}
.TrustInner header h2 {
    font-size: 2.4vw;
    text-shadow: 1px 2px 5px rgba(0,0,0,0.7);
}
.IntroInner li figure img, .PointInner li figure img, .CaseInner li figure img {
    width: 75%;
}
}
@media (min-width: 2400px){
    .IntroInner li figure img, .PointInner li figure img, .CaseInner li figure img {
    width: 60%;
}
.TrustInner header h2 {
    font-size: 2.0vw;
}
}
/* companies
----------------------------------------------- */

@media print, screen and (min-width:741px) {

	#companies {
		background: #f6f6f6;
	}
	#companies .inner {
		padding: 95px 0 60px;
		margin: auto;
		max-width: 90%;
	}
	#companies h2 {
        margin-bottom: 4.0rem;
        line-height: 1.4;
        font-size: 2.8vw;
        font-weight: 700;
        text-align: center;
	}
	#companies ul {
		padding-top: 1em;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}
	#companies li {
		padding: 4px;
	}
	#companies li p {
		font-size: 17px;
		font-weight: 500;
		color: #808080;
		margin: 12px;
	}
}
@media only screen and (min-width:1900px) {
#companies h2 {
        font-size: 2.2vw;
    }
}
@media only screen and (min-width:2000px) {
#companies h2 {
        font-size: 2.0vw;
    }
}
@media only screen and (min-width:2400px) {
#companies h2 {
        font-size: 1.8vw;
    }
}
@media only screen and (max-width:740px) {

	#companies {
		background: #f2f2f2;
	}
	#companies .inner {
		padding: 50px 0;
		margin: auto;
		max-width: 1120px;
	}
	#companies h2 {
        margin-bottom: 0.0rem;
        line-height: 1.4;
        font-size: 6vw;
        font-weight: 700;
        text-align: center;
	}
	#companies li {
		float: left;
		padding: 6px;
	}
	#companies ul {
		padding-top: 2em;
	}
	#companies li p {
		font-size: 24px;
		font-weight: 500;
		color: #808080;
		margin: 52px;
    }
    .clear:after {
        content: ".";
        display: block;
        height: 0;
        clear: both;
        visibility: hidden;
    }

    .Trust2Inner header h2 {
        margin-bottom: 0.0rem;
        line-height: 1.4;
        font-size: 5vw;
        font-weight: 700;
        text-align: center;
    }
    .Trust2Inner header {
        margin-bottom: 1.0rem;
    }
}

    /* companies width adjustment
----------------------------------------------- */
@media screen and (min-width:850px) and (max-width:1130px) {
	#companies .inner {
		max-width: 834px;
	}
}
@media screen and (min-width:572px) and (max-width:849px) {
	#companies .inner {
		max-width: 556px;
	}
	#companies li p {
		font-size: 15px;
	}
}
@media screen and (min-width:320px) and (max-width:571px) {
	#companies .inner {
		max-width: 90%;
	}
	#companies li {
		padding: 20px;
	}
	#companies li img {
		width: 100px;
		height: auto;
	}
	#companies li p {
        font-size: 16px;
        margin: 13px 4px;
	}
}
/*  Staring Campaign Style  */
div.campaign_area {
    background: #e0e0e0;
    padding: 1rem 0;
    border-bottom: #005bac 1px solid;
}
.campaign_inner {
    display: block;
    width: max-content;
    margin-left: auto;
    margin-right: auto;
    line-height: 1em;
}
div.campaign_area span {
    display: inline-block;
    background: #fff;
    color: #762628;
    font-size: .8em;
    padding: .2rem .4rem;
    margin-right: 1rem;
    border: solid 1px #762628;
    vertical-align: text-bottom;
    border-radius: 2px;
    font-weight: 600;
}
div.campaign_area a {
    margin: 30px 0 0;
    color: #4970bf;
    font-size: 1.1em;
    font-weight: 600;
}
@media (min-width:320px) and (max-width:1250px) {
    div.campaign_area {
        margin-bottom: 0rem;
    }
    div.campaign_area {
        border-bottom: none;
    }
}
@media (min-width:320px) and (max-width:768px) {
    div.campaign_area a {
        margin: 30px 0 0;
        font-size: 0.8em;
    }
}
/*  End Campaign Style  */
/* ▼パートナーバナー▼ */
.campaign_material {
    margin-left: auto;
    margin-right: auto;
    text-align: center;
    padding-top: 40px;
    padding-bottom: 20px;
    width: inherit;
}
@media (min-width:320px) and (max-width:1250px) {
    .campaign_material img {
        width : 100%;
    }
    .campaign_material {
        padding-top: 0px;
        padding-bottom: 0px;
    }
}
/* ▲パートナーバナー▲ */

/* ▼利用企業のand moreの位置調整▼ */
#companies li.and_more p {
    padding-top: 0px;
    margin-top: 10px;
    margin-bottom: -40px;
    display: block;
    width: 120px;
    padding-top: 17px;
}
@media screen and (max-width: 767x) and (min-width: 320px){
    #companies li.and_more p {
        margin-top: -20px;
        float: right;
	}
}
@media screen and (max-width: 849px) and (min-width: 768px){
	li.and_more {
		width:100%;
    }
    #companies li.and_more p {
        margin-top: -5px;
	}
}
@media screen and (max-width: 571px) and (min-width: 320px) {
	li.and_more {
		width: 96%;
	}
}
/* ▲利用企業のand moreの位置調整▼ */

/* ▼ITreviewBadgeをメイン画像に追加▼ */
.it_review_box {
    width: fit-content;
    text-align: center;
    margin: 77px auto 30px;
    position: relative;
}
.it_review_box h3 {
    font-size: 1.6em;
    font-weight: 700;
    padding: 30px 0;
}
.iframe_wrap {
    width: 310px;
    height: 250px;
    display: inline-block;
    position: absolute;
    top: -82px;
    right: -215px;
}
.it_review_box iframe {
    transform: scale(0.4);
    position:absolute;
    top:-20px;
    right:20px;
}
@media screen and (max-width: 769px) and (min-width: 700px){
    .it_review_box h3 {
        font-size: 2.5vw;
	}
}
@media print, screen and (max-width: 768px){
    .iframe_wrap {
        top: -143px;
        right: -113px;
    }
    .it_review_box h3 {
    font-size: 3.5vw;
    font-weight: 700;
    padding: 30px 0;
}
    .it_review_box iframe {
        transform: scale(0.3);
    }
    .it_review_box img{
        max-width: 80%;
    }
}
/* ▲ITreviewBadgeをメイン画像に追加▲ */

/*cookiebot用*/
#CybotCookiebotDialog {
	border-radius: 0 !important;
	box-shadow:none !important;
	position: fixed !important;
	left: 0 !important;
	width: 100% !important;
	transform: translateY(-100%) !important;
	padding: 12px !important;
	}   
	
	#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogHeader {display:none !important;}
	#CybotCookiebotDialog * {font-size: 11px !important;}
	#CookiebotWidget .CookiebotWidget-body .CookiebotWidget-main-logo {display: none !important;}
	#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonAccept,
	#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonAccept,
	#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyLevelButtonLevelOptinAllowAll {border: .25em !important;padding:1em !important;}
	
	@media screen and (min-width:981px){
	#CybotCookiebotDialog {max-width: none !important;}                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                 
	#CybotCookiebotDialog.CybotEdge #CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton,
	#CybotCookiebotDialogBodyButtons .CybotCookiebotDialogBodyContentControlsWrapper:not(.CybotCookiebotDialogHide) + #CybotCookiebotDialogBodyButtonsWrapper .CybotCookiebotDialogBodyButton {width: 146px !important;}
	#CybotCookiebotDialogFooter .CybotCookiebotDialogBodyButton {padding: .5em !important; }
	#CybotCookiebotDialogBodyContentTitle{text-align:left !important;}
	#CybotCookiebotDialog[data-template=overlay], #CybotCookiebotDialog[data-template=popup] {
		left: 50% !important;
		transform: translate(-50%,-50%) !important;
		background: #fefefe;
		top: 50%;
		max-width: 980px !important;
	}
	#CybotCookiebotDialog[data-template=overlay].CybotCookiebotDialogActive,
	#CybotCookiebotDialog[data-template=popup]  .CybotCookiebotDialogContentWrapper {max-width: 900px !important;margin: 0 auto !important;}
	}
	
	@media only screen and (max-width: 1280px) {
	#CybotCookiebotDialog {top: 100% !important;left: 0 !important;}
	#CybotCookiebotDialogPoweredByText {display:none !important;}
	}
	
	@media only screen and (max-width: 980px) {
	#CybotCookiebotDialogFooter #CybotCookiebotDialogBodyButtonsWrapper {flex-direction: row !important;} 
	#CybotCookiebotDialogBodyButtons .CybotCookiebotDialogBodyButton:not(:last-of-type) {  margin-right: .5em;padding: .5em;}
	}    
	
	@media only screen and (max-width: 600px) {
	#CybotCookiebotDialog {max-height: 220px !important;}
	}