@charset "UTF-8";
@import url('https://fonts.googleapis.com/icon?family=Material+Icons');
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400&display=swap');

/* commmon */
html {  }
body { position:relative; color:#53575a; line-height:1.5; font-family:"Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; font-size:10px; font-weight:400; -webkit-font-smoothing:antialiased; font-smoothing:antialiased; font-feature-settings:"palt"; -webkit-text-size-adjust:100%; letter-spacing:0.1em; overflow-wrap: break-word; word-wrap:break-word; }
body { text-align:justify; backgronud:#f9f9f0; }
@media screen and (min-width:728px) {
	body { letter-spacing:0.30em; }
}

::selection { color:#fff; background:#0689eb; }
::-moz-selection { color:#fff; background:#0689eb; }

* { position:relative; box-sizing:border-box; }
input[type='text'],select,button,textarea { margin:0; padding:0; border:0; box-shadow:none; background:transparent; outline:0; -webkit-appearance:none; -moz-appearance:none; appearance:none; }

a { color:inherit; text-decoration:none; }
a:visited { color:#111; }
a:hover {  }
a img { border:0; }
img { vertical-align:top; }
hr { margin:0 0 20px 0; padding:0; border:0; }
div { word-break:break-all; }
.material-icons { position:relative; top:0.1em; font-size:1.0em; }
.marker { background:rgb(246,255,0); background:linear-gradient(180deg, rgba(246,255,0,0) 0%, rgba(246,255,0,0) 60%, rgba(246,255,0,0.6) 61%, rgba(246,255,0,0.6) 100%); }



/* modal  */
.modal{ display:none; position:fixed; top:0; left:0; z-index:200; width:100%; height:100vh; }
.modal__bg { position:fixed; width:100%; height:100vh; background:rgba(0,0,0,0.8); }
.modal__content__wrap { position:absolute; top:50%; left:50%; width:90%; height:345px; transform:translate(-50%,-50%); perspective:800px; transform-style:preserve-3d; }
.modal__content { padding:20px; background: #fff; box-shadow:0 0 5px 0 rgba(0,0,0,0.15); transform: translate(0,0) rotateX(0deg); opacity:1; transition:0.2s; }
	.modal__content.rotate { transform:rotateX(90deg) translate(0,0); opacity:0; transition:0.2s; }
.modal__content h4 { position:relative; margin-bottom:20px; padding:0 70px 0 0.75em; border-left:#3e8ae8 3px solid; line-height:1.5; font-size:1.8em; font-weight:bolder; }
	.modal__content h4::after { content:''; display:block; position:absolute; bottom:-5px; right:5px; width:70px; height:74px; background:url('../images/illust.svg') no-repeat; background-size:100% auto; }
.modal__content h4 br { display:inline; }
.modal__content h4 + p { margin-bottom:20px; font-size:1.6em; }
.modal__content .btnArea { margin-top:30px; }
.modal__content .btnArea a.tel { display:block; max-width:100.0%; width:100%; margin:0 auto 15px; border:#3e8ae8 1px solid; border-radius:4px; color:#fff; line-height:54px; font-size:1.8em; font-weight:bolder; text-align:center; background:#3e8ae8; transition:0.5s; pointer-events:inherit; }
.modal__content .btnArea a.tel:hover { color:#3e8ae8; background:#fff; transition:0.5s; }
.modal__content .btnArea a.tel .SP { display:inline; }
.modal__content .btnArea a.tel.PC { display:none; }
.modal__content .btnArea a.web { display:block; max-width:100.0%; width:100%; margin:0 auto; border:#fc4d2d 1px solid; border-radius:4px; color:#fff; line-height:54px; font-size:1.8em; font-weight:bolder; text-align:center; background:#fc4d2d; transition:0.5s; cursor:pointer; }
.modal__content .btnArea a.web:hover { color:#fc4d2d; background:#fff; transition:0.5s; }
.modal__content .btnArea a.web__switch { display:block; max-width:100.0%; width:100%; margin:0 auto; border:#fc4d2d 1px solid; border-radius:4px; color:#fff; line-height:54px; font-size:1.8em; font-weight:bolder; text-align:center; background:#fc4d2d; transition:0.5s; cursor:pointer; }
.modal__content .btnArea a.web__switch:hover { color:#fc4d2d; background:#fff; transition:0.5s; }
.js-modal-close { position:absolute; top:-10px; right:-10px; z-index:20; width:40px; height:40px; border-radius:40px; border:#fff 2px solid; color:#fff; line-height:40px; font-size:18px; text-align:center; background:#3e8ae8; box-shadow:0 0 5px 0 rgba(0,0,0,0.15); transform: translate(0,0); cursor:pointer; }
.PCbtnArea { display:none; }

	.modal__change__bg {  }
	.modal__change__content { position:absolute; top:0; left:0; width:100%; height:345px; padding:20px; background:#fff; box-shadow:0 0 5px 0 rgba(0,0,0,0.15); transform:rotateX(-95deg) translate(-50%,0); opacity:0; transition:0.2s; }
		.modal__change__content.rotate { transform:rotateX(0deg) translate(0,0); opacity:1; transition:0.2s; }
	.modal__change__content h4 { position:relative; margin-bottom:20px; padding:0 70px 0 0.75em; border-left:#3e8ae8 3px solid; line-height:1.5; font-size:1.8em; font-weight:bolder; }
		.modal__change__content h4::after { content:''; display:block; position:absolute; bottom:-5px; right:5px; width:70px; height:74px; background:url('../images/illust.svg') no-repeat; background-size:100% auto; }
	.modal__change__content h4 br { display:inline; }
	.modal__change__content h4 + p { margin-bottom:5px; font-size:1.6em; }
	.modal__change__content .change__btnArea { margin-top:0; }
	.modal__change__content .change__btnArea a.change__btn__form { display:block; max-width:100.0%; width:100%; margin:0 auto 15px; padding:10px 0; border:#fc4d2d 1px solid; border-radius:4px; color:#fff; line-height:1.4; font-size:1.8em; font-weight:bolder; text-align:center; background:#fc4d2d; transition:0.5s; cursor:pointer; }
	.modal__change__content .change__btnArea a.change__btn__form:hover { color:#fc4d2d; background:#fff; transition:0.5s; }
	.modal__change__content .change__btnArea a.change__btn__web { display:block; max-width:100.0%; width:100%; margin:0 auto; padding:10px 0; border:#3e8ae8 1px solid; border-radius:4px; color:#fff; line-height:1.4; font-size:1.8em; font-weight:bolder; text-align:center; background:#3e8ae8; transition:0.5s; cursor:pointer; }
	.modal__change__content .change__btnArea a.change__btn__web:hover { color:#3e8ae8; background:#fff; transition:0.5s; }

	.change__btnArea .SP { display:block !important; }
	.change__btnArea .PC { display:none !important; }

	.modalTEL { max-width:90%; top:50%; left:50%; transform:translate(-50%,-50%); }

@media screen and (min-width:728px) {
	.modal{ display:none; position:fixed; top:0; left:0; z-index:200; width:100%; height:100vh; }
	.modal__bg { position:fixed; width:100%; height:100vh; background:rgba(0,0,0,0.8); }
	.modal__content__wrap { position:absolute; top:50%; left:50%; width:480px; height:390px; transform:translate(-50%,-50%); perspective:800px; transform-style:preserve-3d; }
	.modal__content { top:0; left:0; width:100%; padding:40px; background: #fff; box-shadow:0 0 5px 0 rgba(0,0,0,0.15); transform:rotateX(0deg) translate(0,0); opacity:1; transition:0.2s; }
		.modal__content.rotate { transform:rotateX(90deg) translate(0,0); opacity:0; transition:0.2s; }
			.modal__content .btnAreaWrap.change { position:relative; overflow:hidden; height:0; opacity:0; transition:0.5s; }
	.modal__content h4 {  position:relative; margin-bottom:20px; padding:0 100px 0 0.75em; border-left:#3e8ae8 3px solid; line-height:1.5; font-size:1.8em; font-weight:bolder; }
	.modal__content h4::after { content:''; display:block; position:absolute; bottom:-10px; left:18.5em; width:90px; height:96px; background:url('../images/illust.svg') no-repeat; background-size:100% auto; }
	.modal__content h4 br { display:inline; }
	.modal__content h4 + p { margin-bottom:20px; font-size:1.6em; }
	.modal__content .btnArea { margin-top:0; }
	.modal__content .btnArea a.tel { display:inline-block; max-width:/*48.0*/100%; width:100%; margin:0 auto 15px; padding:15px 0; border:#3e8ae8 1px solid; border-radius:0; color:#fff; line-height:1.5; font-size:1.8em; font-weight:bolder; text-align:center; background:#3e8ae8; transition:0.5s; pointer-events:inherit; }
		#modal06 .modal__content .btnArea a.tel { display:inline-block; max-width:/*48.0*/100%; width:100%; margin:0 auto 15px; padding:15px 0; border:#3e8ae8 1px solid; border-radius:0; color:#3e8ae8; line-height:1.5; font-size:1.8em; font-weight:bolder; text-align:center; background:#fff; transition:0.5s; pointer-events:inherit; }
	.modal__content .btnArea a.tel:hover { color:#3e8ae8; background:#fff; transition:0.5s; }
	.modal__content .btnArea a.tel.SP { display:none; }
	.modal__content .btnArea a.tel.PC { display:block; max-width:100%; width:100%; margin:0 auto 15px; padding:15px 0; border:#3e8ae8 1px solid; border-radius:4px; color:#fff; line-height:1.5; font-size:1.8em; font-weight:bolder; text-align:center; background:#3e8ae8; transition:0.5s; cursor:pointer; pointer-events:inherit; }
	.modal__content .btnArea a.tel.PC:hover { color:#3e8ae8; background:#fff; transition:0.5s; }
	.modal__content .btnArea a.tel .PC b { font-size:1.2em; }
	.modal__content .btnArea a.tel .PC small { display:block; color:#53575a; font-size:0.85em; text-align:center; }
	.modal__content .btnArea a.tel .PC small.time { font-size:0.7em; font-weight:normal; text-align:center; }
	.modal__content .btnArea a.web { display:block; max-width:100.0%; width:100%; margin:0 auto; border:#fc4d2d 1px solid; border-radius:4px; color:#fff; line-height:54px; font-size:1.8em; font-weight:bolder; text-align:center; background:#fc4d2d; transition:0.5s; cursor:pointer; }
	.modal__content .btnArea a.web:hover { color:#fc4d2d; background:#fff; transition:0.5s; }
	.modal__content .btnArea a.web__switch { display:block; max-width:100.0%; width:100%; margin:0 auto; border:#fc4d2d 1px solid; border-radius:4px; color:#fff; line-height:54px; font-size:1.8em; font-weight:bolder; text-align:center; background:#fc4d2d; transition:0.5s; cursor:pointer; }
	.modal__content .btnArea a.web__switch:hover { color:#fc4d2d; background:#fff; transition:0.5s; }
	.js-modal-close { position:absolute; top:-10px; right:-10px; z-index:20; width:40px; height:40px; border-radius:40px; border:#fff 2px solid; color:#fff; line-height:40px; font-size:18px; text-align:center; background:#3e8ae8; box-shadow:0 0 5px 0 rgba(0,0,0,0.15); transform: translate(0,0); cursor:pointer; }
	.PCbtnArea { display:none; text-align:center; }
	.PCbtnArea.change {  }
	.PCbtnArea.change a { display:block; max-width:100%; width:100%; margin:0 auto 0; padding:15px 0; border:#3e8ae8 1px solid; border-radius:0px; color:#3e8ae8; line-height:1.5; font-size:1.8em; font-weight:bolder; text-align:center; background:#fff; transition:0.5s; cursor:pointer; pointer-events:none; }
	.PCbtnArea.change a.tel .PC b { font-size:1.2em; }
	.PCbtnArea.change a.tel .PC small { display:block; color:#53575a; font-size:0.85em; text-align:center; }
	.PCbtnArea.change a.tel .PC small.time { font-size:0.7em; font-weight:normal; text-align:center; }


	.modal__change__bg {  }
	.modal__change__content { width:100%; height:390px; padding:40px; background:#fff; box-shadow:0 0 5px 0 rgba(0,0,0,0.15); transform:rotateX(-95deg) translate(0,0); opacity:0; transition:0.2s; }
		.modal__change__content.rotate { transform:rotateX(0deg) translate(0,0); opacity:1; transition:0.2s; }
	.modal__change__content h4 {  position:relative; margin-bottom:20px; padding:0 100px 0 0.75em; border-left:#3e8ae8 3px solid; line-height:1.5; font-size:1.8em; font-weight:bolder; }
	.modal__change__content h4::after { content:''; display:block; position:absolute; bottom:-10px; left:18.5em; width:90px; height:96px; background:url('../images/illust.svg') no-repeat; background-size:100% auto; }
	.modal__change__content h4 br { display:inline; }
	.modal__change__content h4 + p { margin-bottom:20px; font-size:1.6em; }
	.modal__change__content .change__btnArea { margin-top:0; }
	.modal__change__content .change__btnArea a.change__btn__form { display:block; max-width:100.0%; width:100%; margin:0 auto 15px; padding:10px 0; border:#fc4d2d 1px solid; border-radius:4px; color:#fff; line-height:1.4; font-size:1.8em; font-weight:bolder; text-align:center; background:#fc4d2d; transition:0.5s; cursor:pointer; }
	.modal__change__content .change__btnArea a.change__btn__form:hover { color:#fc4d2d; background:#fff; transition:0.5s; }
	.modal__change__content .change__btnArea a.change__btn__web { display:block; max-width:100.0%; width:100%; margin:0 auto; padding:10px 0; border:#3e8ae8 1px solid; border-radius:4px; color:#fff; line-height:1.4; font-size:1.8em; font-weight:bolder; text-align:center; background:#3e8ae8; transition:0.5s; cursor:pointer; }
	.modal__change__content .change__btnArea a.change__btn__web:hover { color:#3e8ae8; background:#fff; transition:0.5s; }

	.change__btnArea .SP { display:none !important; }
	.change__btnArea .PC { display:block !important; }

	.modal__change__content.change { height:auto; }
	.change__btnAreaWrap.change { display:none; }

	.modalTEL { max-width:480px; top:50%; left:50%; transform:translate(-50%,-50%); }
	.modalTEL .btnArea a.tel { margin-bottom:0 !important; }
}

/* Head  */
.Head { max-width:100%; position:relative; margin:0 0 30px; border-bottom:rgba(0,0,0,0.2) 1px solid; background:linear-gradient(90deg,  #ebfafc 0%,#ffffff 81%); box-shadow:inset 0 -3px 2px 0 rgba(0,0,0,0.05); }
.Head h1 { position:relative; width:100%; margin:0 auto; text-align:center; }
.Head h1 img.SP { display:inline; width:100%; height:auto; }
.Head h1 img.PC { display:none; }

@media screen and (min-width:728px) {
	.Head { position:relative; width:100%; max-height:280px; margin:0 0 80px; border-bottom:rgba(0,0,0,0.2) 1px solid; text-align:center; background:linear-gradient(90deg,  #ebfafc 0%,#ffffff 81%); box-shadow:inset 0 -3px 2px 0 rgba(0,0,0,0.05); }
	.Head h1 {  }
	.Head h1 img.SP { display:none; }
	.Head h1 img.PC { display:inline; width:100%; max-width:1550px; height:auto; }
}


/* .Intro */
.Intro {  }
.IntroInner { display:flex; flex-flow:column wrap; justify-content:flex-start; align-items:flex-start; max-width:90%; margin:0 auto 30px; }
.Intro header { max-width:90%; margin:0 auto 20px; }
.Intro h2 { margin-bottom: 0.5em; font-size:2.0em; font-weight:bolder; }
.Intro h2 strong { display:inline-block; color:#3e8ae8; font-weight:bolder; background:rgba(99,233,248,0.3); background:linear-gradient(180deg, rgba(99,233,248,0) 0%, rgba(99,233,248,0) 70%, rgba(99,233,248,0.6) 71%, rgba(99,233,248,0.6) 90%, rgba(99,233,248,0.0) 91%); }
.Intro p { line-height:1.7; font-size:1.4em; }
.Intro p b { color:#fc4d2d; font-weight:bolder; }

/* .call */
.call { display:block; max-width:90%; margin:0 auto 30px; border:#3e8ae8 1px solid; background:#fff; box-shadow:0 0 5px 0 rgba(0,0,0,0.15); }
.call .callInner { padding:20px; }
.call header { padding:20px 20px 0; }
.call h3 { position:relative; margin-bottom:0; padding:0 70px 0 0.75em; border-left:#3e8ae8 3px solid; line-height:1.5; font-size:1.8em; font-weight:bolder; }
.call .callInner ul { margin-bottom:15px; padding-left:0.5em; font-size:1.4em; }
.call .callInner li { margin-bottom:5px; }
.call .callInner p { font-size:1.4em; }
.call .callInner .btnArea { margin-top:20px; }
/*
.call .callInner .btnArea a.tel.SP { display:block; font-size:1.4em; font-weight:bolder; text-align:center; }
.call .callInner .btnArea a.tel.SP b { color:#3e8ae8; font-size:1.2em; }
.call .callInner .btnArea a.tel.SP small { display:block; color:#53575a; font-size:0.85em; }
.call .callInner .btnArea a.tel.SP small.time { font-size:0.7em; font-weight:normal; text-align:center; }
.call .callInner .btnArea a.tel.PC { display:none; }
*/
.call .callInner .btnArea a.tel { display:inline-block; max-width:100.0%; width:100%; margin:0 auto; padding:15px 0; border:#3e8ae8 1px solid; border-radius:4px; color:#fff; line-height:1.5; font-size:1.4em; font-weight:bolder; text-align:center; background:#3e8ae8; transition:0.5s; /*pointer-events:none;*/ }
.call .callInner .btnArea a.tel:hover { color:#3e8ae8; background:#fff; transition:0.5s; /*pointer-events:none;*/ }
.call .callInner .btnArea a.tel.PC { display:none; }
.call .callInner .btnArea a.tel.SP { display:block; font-size:1.4em; font-weight:bolder; text-align:center; }

@media screen and (min-width:728px) {
	.Intro {  }
	.IntroInner { display:flex; flex-flow:column wrap; justify-content:flex-start; align-items:flex-start; max-width:980px; margin:0 auto 40px; }
	.Intro header { max-width:980px; margin:0 auto 30px; }
	.Intro h2 { margin-bottom: 0.5em; font-size:4.0em; font-weight:normal; }
	.Intro h2 strong { display:inline-block; color:#3e8ae8; font-weight:bolder; background:rgba(99,233,248,0.3); background:linear-gradient(180deg, rgba(99,233,248,0) 0%, rgba(99,233,248,0) 70%, rgba(99,233,248,0.6) 71%, rgba(99,233,248,0.6) 90%, rgba(99,233,248,0.0) 91%); }
	.Intro p { line-height:1.9; font-size:1.6em; }
	.Intro p b { color:#fc4d2d; font-weight:bolder; }

	/* .call */
	.call { display:block; max-width:980px; margin:0 auto 80px; border:#3e8ae8 1px solid; background:#fff; box-shadow:0 0 5px 0 rgba(0,0,0,0.15); text-align:center; }
	.call header { padding:40px 40px 0; }
	.call h3 { display:inline-block; position:relative; margin-bottom:0; padding:0 70px 0 0.75em; border-left:#3e8ae8 3px solid; line-height:1.5; font-size:2.7em; font-weight:bolder; }
	.call .callInner { padding:25px 40px 40px; }
	.call .callInner ul { display:inline-block; margin-bottom:15px; padding-left:0.5em; font-size:1.6em; text-align:left; }
	.call .callInner li { margin-bottom:5px; }
	.call .callInner p { font-size:1.6em; }
	.call .callInner .btnArea { margin-top:20px; }
	.call .callInner .btnArea a.tel { display:inline-block; max-width:48.0%; width:100%; margin:0 auto; padding:15px 0; border:#3e8ae8 1px solid; border-radius:4px; color:#fff; line-height:1.5; font-size:1.4em; font-weight:bolder; text-align:center; background:#3e8ae8; transition:0.5s; /*pointer-events:none;*/ }
	.call .callInner .btnArea a.tel:hover { color:#3e8ae8; background:#fff; transition:0.5s; /*pointer-events:none;*/ }
	.call .callInner .btnArea a.tel.SP { display:none; }
	.call .callInner .btnArea a.tel.PC { display:block; font-size:1.4em; font-weight:bolder; text-align:center; }
	.call .callInner .btnArea a.tel.PC b { color:#3e8ae8; font-size:1.2em; }
	.call .callInner .btnArea a.tel.PC small { display:block; color:#53575a; font-size:0.85em; }
	.call .callInner .btnArea a.tel.PC small.time { font-size:0.7em; font-weight:normal; text-align:center; }
}

/* .Ranking */
.Ranking { margin-bottom:30px; }
.Ranking header { max-width:90%; margin:0 auto 20px; }
.Ranking h2 { padding-left:0.75em; border-left:#3e8ae8 3px solid; line-height:1.5; font-size:1.8em; font-weight:bolder; }
.Ranking h2 strong { color:#3e8ae8; }
.RankingInner { max-width:90%; margin:0 auto; }
.RankingInner > li { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:center; max-width:100%; margin:0 auto 15px; padding:25px 20px 20px; border-radius:10px; background:#fff; box-shadow:0 0 10px 2px rgba(0,0,0,0.1); }
.RankingInner h3 { position:relative; width:100%; margin-bottom:20px; padding-left:35px; color:#5a5359; line-height:1.0; font-size:1.7em; font-weight:bolder; }
.RankingInner h3::after { content:''; display:block; position:absolute; top:50%; right:0; height:100%; background:#f3f3f3; transform:translate(0,-50%); }
	.RankingInner > li:nth-child(1) h3 { background:url('../images/badge01.png') no-repeat left center; background-size:auto 1.0em; }
	.RankingInner > li:nth-child(1) h3::after { width:calc(100% - 11.0em - 35px); }
	.RankingInner > li:nth-child(2) h3 { background:url('../images/badge02.png') no-repeat left center; background-size:auto 1.0em; }
.RankingInner > li:nth-child(2) h3::after { width:calc(100% - 8.0em - 35px); }
	.RankingInner > li:nth-child(3) h3 { background:url('../images/badge03.png') no-repeat left center; background-size:auto 1.0em; }
.RankingInner > li:nth-child(3) h3::after { width:calc(100% - 5.0em - 35px); }
	.RankingInner > li:nth-child(4) h3 { background:url('../images/badge04.png') no-repeat left center; background-size:auto 1.0em; }
.RankingInner > li:nth-child(4) h3::after { width:calc(100% - 5.0em - 35px); }
	.RankingInner > li:nth-child(5) h3 { background:url('../images/badge05.png') no-repeat left center; background-size:auto 1.0em; }
	.RankingInner > li:nth-child(5) h3::after { width:calc(100% - 11.5em - 35px); }
.Ranking---cover { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; width:100%; margin-bottom:15px; }
.Ranking .Txt { order:1; width:calc(100.0% - 0px); }
.Ranking .Txt table { width:100%; margin-bottom:15px; border-top:#aca9ac 1px solid; font-size:1.3em; }
.Ranking .Txt table tr { border-bottom:#aca9ac 1px solid; }
.Ranking .Txt table th { width:45%; padding:9px 1.0em; background:#f9f9f9; }
	.Ranking .Txt table th sup { position:relative; top:-0.5em; font-size:0.6em; }
.Ranking .Txt table td { padding:9px 1.0em; font-weight:bolder; }
.Ranking .Txt h4 { display:inline-block; min-width:120px; padding:5px 1.0em; color:#fff; font-size:1.2em; font-weight:bolder; background:#3e8ae8; }
.Ranking .Txt ol { padding:15px 20px 20px; border-top:#3e8ae8 1px solid; background:#f9f9f9; }
.Ranking .Txt ol li { margin-bottom:0.3em; font-size:1.5em; font-weight:bolder; letter-spacing:0; }
.Ranking .Txt ol li strong { color:#fc4d2d; }
.Ranking .Txt ol li .material-icons { top:0.2em; color:#fc4d2d; }
	.Ranking .Txt ol li:last-child { margin-bottom:0; }

.Ranking figure { order:1; width:100.0%; margin-bottom:15px; }
.Ranking figure img { width:100%; height:100%; object-fit:cover; }

.Ranking dl { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:center; width:100%; border:#fc4d2d 1px solid; border-radius:4px; background:#fc4d2d; }
.Ranking dt { align-self:center; width:100%; padding:15px; border-radius:4px 4px 0 0; color:#fff; font-size:1.4em; font-weight:bolder; text-align:center; }
.Ranking dd { width:100%; padding:15px; border-radius:0 0 4px 4px; color:#fc4d2d; font-size:1.5em; font-weight:bolder; text-align:left; background:#fff; }
	.Ranking dd .material-icons { display:inline; top:0.2em; font-size:1.2em; }
	.Ranking dd sup { position:relative; top:-0.5em; font-size:0.6em; }
	.Ranking dd small { color:#5a5359; font-size:0.8em; }
.Ranking dl + .notice { width:100%; margin-top:10px; text-align:justify; font-size:1.1em; letter-spacing:0; }

.Ranking .Done { width:100%; margin-top:20px; text-align:center; }
.Ranking .Done a { display:inline-block; max-width:420px; width:100%; margin:0 auto; border:#3e8ae8 1px solid; border-radius:4px; color:#fff; line-height:54px; font-size:1.8em; font-weight:bolder; text-align:center; background:#3e8ae8; transition:0.5s; cursor:pointer; }
.Ranking .Done a:hover { color:#3e8ae8; background:#fff; transition:0.5s; }

@media screen and (min-width:728px) {
	.Ranking { margin-bottom:80px; }
	.Ranking header { max-width:980px; margin:0 auto 30px; }
	.Ranking h2 { padding-left:0.75em; border-left:#3e8ae8 3px solid; line-height:1.0; font-size:2.7em; font-weight:bolder; }
	.Ranking h2 strong { color:#3e8ae8; }
	.RankingInner { max-width:980px; margin:0 auto; }
	.RankingInner > li { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; max-width:980px; margin:0 auto 30px; padding:40px; border-radius:10px; background:#fff; box-shadow:0 0 10px 2px rgba(0,0,0,0.1); }
	.RankingInner h3 { position:relative; width:100%; margin-bottom:20px; padding-left:45px; color:#5a5359; line-height:1.0; font-size:2.2em; font-weight:bolder; }
	.RankingInner h3::after { content:''; display:block; position:absolute; top:50%; right:0; height:100%; background:#f3f3f3; transform:translate(0,-50%); }
		.RankingInner > li:nth-child(1) h3 { background:url('../images/badge01.png') no-repeat left center; background-size:auto 1.0em; }
		.RankingInner > li:nth-child(1) h3::after { width:calc(100% - 11.0em - 45px); }
		.RankingInner > li:nth-child(2) h3 { background:url('../images/badge02.png') no-repeat left center; background-size:auto 1.0em; }
.RankingInner > li:nth-child(2) h3::after { width:calc(100% - 9.0em - 45px); }
		.RankingInner > li:nth-child(3) h3 { background:url('../images/badge03.png') no-repeat left center; background-size:auto 1.0em; }
.RankingInner > li:nth-child(3) h3::after { width:calc(100% - 6.0em - 45px); }
		.RankingInner > li:nth-child(4) h3 { background:url('../images/badge04.png') no-repeat left center; background-size:auto 1.0em; }
.RankingInner > li:nth-child(4) h3::after { width:calc(100% - 5.0em - 45px); }
		.RankingInner > li:nth-child(5) h3 { background:url('../images/badge05.png') no-repeat left center; background-size:auto 1.0em; }
		.RankingInner > li:nth-child(5) h3::after { width:calc(100% - 11.5em - 45px); }
	.Ranking---cover { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; width:100%; margin-bottom:25px; }
	.Ranking .Txt { order:1; width:calc(62.3% - 25px); }
	.Ranking .Txt table { width:100%; margin-bottom:20px; border-top:#aca9ac 1px solid; font-size:1.3em; }
	.Ranking .Txt table tr { border-bottom:#aca9ac 1px solid; }
	.Ranking .Txt table th { width:30%; padding:9px 1.0em; background:#f9f9f9; }
		.Ranking .Txt table th sup { position:relative; top:-0.5em; font-size:0.6em; }
	.Ranking .Txt table td { padding:9px 1.0em; font-weight:bolder; }
	.Ranking .Txt h4 { display:inline-block; min-width:120px; padding:5px 1.0em; color:#fff; font-size:1.2em; font-weight:bolder; background:#3e8ae8; }
	.Ranking .Txt ol { padding:15px 20px 20px; border-top:#3e8ae8 1px solid; background:#f9f9f9; }
	.Ranking .Txt ol li { margin-bottom:0.3em; font-size:1.5em; font-weight:bolder; letter-spacing:0; }
	.Ranking .Txt ol li strong { color:#fc4d2d; }
	.Ranking .Txt ol li .material-icons { top:0.2em; color:#fc4d2d; }
		.Ranking .Txt ol li:last-child { margin-bottom:0; }

	.Ranking figure { order:1; width:37.7%; margin-bottom:0; }
	.Ranking figure img { width:100%; height:100%; object-fit:cover; }

	.Ranking dl { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:center; width:100%; border:#fc4d2d 1px solid; border-radius:4px; background:#fc4d2d; }
	.Ranking dt { align-self:center; width:32%; padding:15px; border-radius:4px 0 0 4px; color:#fff; font-size:1.4em; font-weight:bolder; text-align:left; }
	.Ranking dd { width:68%; padding:15px; border-radius:0 4px 4px 0; color:#fc4d2d; font-size:1.5em; font-weight:bolder; background:#fff; }
		.Ranking dd .material-icons { display:inline-block; top:0.25em; font-size:1.2em; text-align:left; }
		.Ranking dd sup { position:relative; top:-0.5em; font-size:0.6em; }
		.Ranking dd small { color:#5a5359; font-size:0.8em; }
	.Ranking dl + .notice { width:100%; margin-top:10px; text-align:right; font-size:1.1em; letter-spacing:0; }

	.Ranking .Done { width:100%; margin-top:30px; text-align:center; }
	.Ranking .Done a { display:inline-block; max-width:420px; width:100%; margin:0 auto; border:#3e8ae8 1px solid; border-radius:4px; color:#fff; line-height:54px; font-size:1.8em; font-weight:bolder; text-align:center; background:#3e8ae8; transition:0.5s; cursor:pointer; }
	.Ranking .Done a:hover { color:#3e8ae8; background:#fff; transition:0.5s; }
}


/* .FAQ */
.FAQ { margin-bottom:40px; }
.FAQ header { max-width:90%; margin:0 auto 20px; }
.FAQ h2 { padding-left:0.75em; border-left:#3e8ae8 3px solid; line-height:1.5; font-size:1.8em; font-weight:bolder; }
.FAQ h2 strong { color:#3e8ae8; }
.FAQInner { max-width:90%; margin:0 auto; }

.FAQ ul {  }
.FAQ li { margin:0 auto 20px; padding:20px 40px 20px 25px; border-radius:10px; font-size:1.6em; font-weight:bolder; background:#fff; box-shadow:0 0 10px 2px rgba(0,0,0,0.1); }
	.FAQ li::before { content:''; display:inline-block; position:absolute; top:1.8em; right:20px; width:14px; height:1px; border:0; background:#3e8ae8; transform:translate(0,-50%) rotate(90deg); transition:0.4s; }
	.FAQ li::after { content:''; display:inline-block; position:absolute; top:1.8em; right:20px; width:14px; height:1px; border:0; background:#3e8ae8; transform:translate(0,-50%); }
	.FAQ li.active::before { content:''; display:inline-block; position:absolute; top:1.8em; right:20px; width:14px; height:1px; border:0; background:#3e8ae8; transform:translate(0,-50%) rotate(0deg); transition:0.4s; }
	.FAQ li.active::after { content:''; display:inline-block; position:absolute; top:1.8em; right:20px; width:14px; height:1px; border:0; background:#3e8ae8; transform:translate(0,-50%); }
.FAQ li > .AccordionHead { color:#3e8ae8; }
.FAQ li .num { font-family:'Montserrat', sans-serif; }
.FAQ li > .AccordionBody { display:block; margin-right:-20px; padding:10px 0 0 0; }
.FAQ li dl { margin-bottom:15px; font-size:0.8em; }
	.FAQ li dl:last-child { margin-bottom:0; }
.FAQ li dl .AccordionHead { padding:8px 35px 8px 15px; border-radius:4px; color:#fff; font-weight:bolder; background:#3e8ae8; }
	.FAQ li dl .AccordionHead::before { content:''; display:inline-block; position:absolute; top:1.25em; right:15px; width:14px; height:1px; border:0; background:#fff; transform:translate(0,-50%) rotate(90deg); transition:0.4s; }
	.FAQ li dl .AccordionHead::after { content:''; display:inline-block; position:absolute; top:1.25em; right:15px; width:14px; height:1px; border:0; background:#fff; transform:translate(0,-50%); transition:0.4s; }
	.FAQ li dl .AccordionHead.active::before { content:''; display:inline-block; position:absolute; top:1.25em; right:15px; width:14px; height:1px; border:0; background:#fff; transform:translate(0,-50%) rotate(0deg); transition:0.4s; }
	.FAQ li dl .AccordionHead.active::before { content:''; display:inline-block; position:absolute; top:1.2em; right:15px; width:14px; height:1px; border:0; background:#fff; transform:translate(0,-50%); transition:0.4s; }
.FAQ li dl .AccordionBody { padding:10px 0 20px; color:inherit; font-weight:normal; }

@media screen and (min-width:728px) {
	.FAQ { margin-bottom:80px; }
	.FAQ header { max-width:980px; margin:0 auto 30px; }
	.FAQ h2 { padding-left:0.75em; border-left:#3e8ae8 3px solid; line-height:1.0; font-size:2.7em; font-weight:bolder; }
	.FAQ h2 strong { color:#3e8ae8; }
	.FAQInner { max-width:980px; margin:0 auto; }

	.FAQ ul {  }
	.FAQ li { margin:0 auto 20px; padding:20px 25px; border-radius:10px; font-size:2.0em; font-weight:bolder; background:#fff; box-shadow:0 0 10px 2px rgba(0,0,0,0.1); }
		.FAQ li::before { content:''; display:inline-block; position:absolute; top:1.8em; right:20px; width:14px; height:1px; border:0; background:#3e8ae8; transform:translate(0,-50%) rotate(90deg); transition:0.4s; }
		.FAQ li::after { content:''; display:inline-block; position:absolute; top:1.8em; right:20px; width:14px; height:1px; border:0; background:#3e8ae8; transform:translate(0,-50%); }
		.FAQ li.active::before { content:''; display:inline-block; position:absolute; top:1.8em; right:20px; width:14px; height:1px; border:0; background:#3e8ae8; transform:translate(0,-50%) rotate(0deg); transition:0.4s; }
		.FAQ li.active::after { content:''; display:inline-block; position:absolute; top:1.8em; right:20px; width:14px; height:1px; border:0; background:#3e8ae8; transform:translate(0,-50%); }
	.FAQ li > .AccordionHead { color:#3e8ae8; }
	.FAQ li .num { font-family:'Montserrat', sans-serif; }
	.FAQ li > .AccordionBody { display:block; margin-right:0; padding:10px 20px 0 20px; }
	.FAQ li dl { margin-bottom:15px; font-size:0.8em; }
		.FAQ li dl:last-child { margin-bottom:0; }
	.FAQ li dl .AccordionHead { padding:8px 15px; border-radius:4px; color:#fff; font-weight:bolder; background:#3e8ae8; }
		.FAQ li dl .AccordionHead::before { content:''; display:inline-block; position:absolute; top:1.25em; right:15px; width:14px; height:1px; border:0; background:#fff; transform:translate(0,-50%) rotate(90deg); transition:0.4s; }
		.FAQ li dl .AccordionHead::after { content:''; display:inline-block; position:absolute; top:1.25em; right:15px; width:14px; height:1px; border:0; background:#fff; transform:translate(0,-50%); transition:0.4s; }
		.FAQ li dl .AccordionHead.active::before { content:''; display:inline-block; position:absolute; top:1.25em; right:15px; width:14px; height:1px; border:0; background:#fff; transform:translate(0,-50%) rotate(0deg); transition:0.4s; }
		.FAQ li dl .AccordionHead.active::before { content:''; display:inline-block; position:absolute; top:1.2em; right:15px; width:14px; height:1px; border:0; background:#fff; transform:translate(0,-50%); transition:0.4s; }
	.FAQ li dl .AccordionBody { padding:10px 0 20px; color:inherit; font-weight:normal; }
}


/* .Privacy */
.Privacy { margin-bottom:30px; letter-spacing:0.05em; }
.Privacy header { max-width:90%; margin:0 auto 20px; }
.Privacy h2 { padding-left:0.75em; border-left:#3e8ae8 3px solid; line-height:1.0; font-size:1.8em; font-weight:bolder; }
.Privacy h2 strong { color:#3e8ae8; }
.PrivacyInner { max-width:90%; margin:0 auto; }

.Privacy h3 { margin-bottom:0.5em; padding-bottom:0.25em; border-bottom:#999 1px solid; font-size:1.5em; font-weight:bolder; }
.Privacy h4 { margin-bottom:0.5em; font-size:1.3em; font-weight:bolder; }
.Privacy h5 { margin-bottom:0.25em; font-size:1.2em; font-weight:bolder; }
.Privacy h6 { margin-bottom:0.25em; font-size:1.1em; font-weight:bolder; }
.Privacy p { margin-bottom:25px; }
.Privacy .subHead { display:block; margin:20px 0 10px; font-weight:bolder; }
.Privacy strong { font-weight:bolder; }
.Privacy ol { margin-bottom:25px; padding-left:4.0em; list-style:decimal; }
.Privacy ul { margin-bottom:25px; padding-left:1.5em; }
.Privacy li { margin:0 0 0.25em; }

.backTop { text-align:center; padding:0 5%; }
.backTop a { display:inline-block; max-width:100%; width:100%; margin:30px auto 0; border:#999 1px solid; border-radius:4px; color:#fff; line-height:45px; font-size:1.4em; font-weight:bolder; text-align:center; background:#999; transition:0.5s; }
.backTop a:hover { color:#666; background:#fff; transition:0.5s; }

@media screen and (min-width:728px) {
	.Privacy { margin-bottom:80px; font-size:1.3em; letter-spacing:0.05em; }
	.Privacy header { max-width:980px; margin:0 auto 30px; }
	.Privacy h2 { padding-left:0.75em; border-left:#3e8ae8 3px solid; line-height:1.0; font-size:2.7em; font-weight:bolder; }
	.Privacy h2 strong { color:#3e8ae8; }
	.PrivacyInner { max-width:980px; margin:0 auto; }

	.Privacy h3 { margin-bottom:0.5em; padding-bottom:0.25em; border-bottom:#999 1px solid; font-size:1.5em; font-weight:bolder; }
	.Privacy h4 { margin-bottom:0.5em; font-size:1.3em; font-weight:bolder; }
	.Privacy h5 { margin-bottom:0.25em; font-size:1.2em; font-weight:bolder; }
	.Privacy h6 { margin-bottom:0.25em; font-size:1.1em; font-weight:bolder; }
	.Privacy p { margin-bottom:25px; }
	.Privacy .subHead { display:block; margin:20px 0 10px; font-weight:bolder; }
	.Privacy strong { font-weight:bolder; }
	.Privacy ol { margin-bottom:25px; padding-left:4.0em; list-style:decimal; }
	.Privacy ul { margin-bottom:25px; padding-left:1.5em; }
	.Privacy li { margin:0 0 0.25em; }

	.backTop { text-align:center; }
	.backTop a { display:inline-block; max-width:420px; width:100%; margin:30px auto 0; border:#999 1px solid; border-radius:4px; color:#fff; line-height:54px; font-size:1.5em; font-weight:bolder; text-align:center; background:#999; transition:0.5s; }
	.backTop a:hover { color:#666; background:#fff; transition:0.5s; }
}

/* .Corp */
.Corp { margin-bottom:30px; letter-spacing:0.05em; }
.Corp header { max-width:90%; margin:0 auto 20px; }
.Corp h2 { padding-left:0.75em; border-left:#3e8ae8 3px solid; line-height:1.0; font-size:1.8em; font-weight:bolder; }
.Corp h2 strong { color:#3e8ae8; }
.CorpInner { max-width:90%; margin:0 auto; }

.Corp table { width:100%; border-top:#c9c9c9 1px solid; border-collapse:collapse; }
.Corp table tr { border-bottom:#c9c9c9 1px solid; }
.Corp table th { display:block; width:100%; padding:10px 1.8em; font-weight:bolder; vertical-align:middle; background:rgba(0,0,0,0.025); }
.Corp table td { display:block; width:100%; padding:10px 1.8em; vertical-align:middle; }

@media screen and (min-width:728px) {
	.Corp { margin-bottom:80px; font-size:1.3em; letter-spacing:0.05em; }
	.Corp header { max-width:980px; margin:0 auto 30px; }
	.Corp h2 { padding-left:0.75em; border-left:#3e8ae8 3px solid; line-height:1.0; font-size:2.7em; font-weight:bolder; }
	.Corp h2 strong { color:#3e8ae8; }
	.CorpInner { max-width:980px; margin:0 auto; }

	.Corp table { width:100%; border-top:#c9c9c9 1px solid; border-collapse:collapse; }
	.Corp table tr { border-bottom:#c9c9c9 1px solid; }
	.Corp table th { display:table-cell; width:20%; padding:15px 1.8em; font-weight:bolder; vertical-align:middle; background:rgba(0,0,0,0.025); }
	.Corp table td { display:table-cell; width:80%; padding:15px 1.8em; vertical-align:middle; }
}








/* .Foot */
.Foot { display:flex; flex-flow:column wrap; justify-content:space-between; align-items:flex-start; positioin:relative; z-index:2; max-width:90%; width:100%; margin:30px auto 80px; letter-spacing:0.2em; } 
.Foot p { display:block; width:100%; margin-bottom:10px; font-size:0.9em; text-align:center; } 
.Foot small { display:block; width:100%; font-family:'Montserrat', sans-serif; font-size:0.8em; text-align:center; } 
.Foot .pageTop { display:block; position:fixed; right:0; bottom:0; width:60px; height:60px; color:rgba(255,255,255,1); line-height:80px; text-align:center; background:rgba(62,138,232,0.9); cursor:pointer; }
.Foot .pageTop .material-icons { font-size:2.0rem; transform:rotate(90deg); } 

@media screen and (min-width:728px) {
	.Foot { display:flex; flex-flow:row wrap; justify-content:space-between; align-items:flex-start; positioin:relative; z-index:2; max-width:980px; width:100%; margin:50px auto; letter-spacing:0.2em; } 
	.Foot p { display:block; width:50%; font-size:1.2em; text-align:left; } 
	.Foot small { display:block; width:50%; font-family:'Montserrat', sans-serif; font-size:0.9em; text-align:right; } 
	.Foot .pageTop { display:block; position:fixed; right:0; bottom:0; width:60px; height:60px; color:rgba(255,255,255,1); line-height:80px; text-align:center; background:rgba(62,138,232,0.9); cursor:pointer; }
	.Foot .pageTop .material-icons { font-size:2.0rem; transform:rotate(90deg); } 
}
