/*   
Theme Name: davinci
Theme URI:https://sa-davinci.leap-it.jp/
Description:ダヴィンチのテーマです。


Author:金浦
Author URI:http://sangodesign.jp/
Version:1.0 2023.3.8
*/

*,
*:before,
*:after {
    margin:0;
    padding:0;
	box-sizing: inherit;
}
html {
  box-sizing: border-box;
}

/* リセットCSS */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
    display: block;
}
body {
	background-color: #FFFFFF;
	color: #000000;
	word-wrap: break-word;
	font-size: 1rem;
	line-height:1.6;
	font-family: 'Lato', 'Noto Sans JP', 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
	box-sizing: border-box;
}
ol, ul {
    list-style: none;
}
blockquote, q {
    quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
    content: '';
    content: none;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
/* img要素の余計な余白（ディセンダー）のリセット */
img {
	vertical-align:middle;
	border: 0;
	max-width: 100%;
	height:auto;
}
/* リンクの設定 */
a {
    transition : all 0.5s ease 0s;
}
a:link,
a:active,
a:visited {
	color:#000000;
	text-decoration:none;
}
a:hover,
a:focus {
	color:#c30d23;
	text-decoration:none;
}
a.u-line {
    transition : all 0.5s ease 0s;
}
a.u-line:link,
a.u-line:active,
a.u-line:visited {
	color:#c30d23;
	text-decoration:underline;
}
a.u-line:hover,
a.u-line:focus {
	color:#317499;
	text-decoration:none;
}
.btn a {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: 0.2s ease-in;
    transition: 0.2s ease-in;
    filter: alpha(opacity=100);
    opacity: 1;
}
.btn a:hover,
.btn a:active {
    filter: alpha(opacity=70);
    opacity: 0.70;
}
/* フォントサイズ */
.f80{
	font-size: 0.8rem;
}
.f120{
	font-size: 1.2rem;
}
.f130{
	font-size: 1.3rem;
}
.f150{
	font-size: 1.5rem;
}
.f180{
	font-size: 1.8rem;
}
.f200{
	font-size: 2rem;
}
.f36{
	font-size: 36px;
}
.fb{
	font-weight:bold;
}
.li12{
	line-height: 1.2;
}
.li18{
	line-height: 1.8;
}
/* カラー */
.red{
	color:#C30D23;
}
.blue{
	color: #28447C;
}

/* 改行 */
.br-sm { display:inherit;}
.br-pc { display:none;}

/* 位置 */
.center {text-align:center !important;}
.right {text-align:right !important;}
.left {text-align:left !important;}
.center_pc {text-align:center !important;}
.right-pc{text-align: right;}
.left-sm{text-align: center;}
/* 余白 */
.mt200 {margin-top:200px;}
.mt150 {margin-top:150px;}
.mt100 {margin-top:100px;}
.mt80 {margin-top:80px;}
.mt60 {margin-top:60px;}
.mt40 {margin-top:40px;}
.mt20 {margin-top:20px;}
.mt10 {margin-top:10px;}
.mt-btn{margin-top: 40px;}
.btn-mtop{margin-top: 40px;}

/* リスト */
ul.square{
	margin-top: 20px;
}
ul.square li{
	list-style: square;
	margin-left: 1em;
}


/* header */
.header{
	width: 100%;
	margin: 0 auto;
	height: 70px;
	position: relative;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .3);
}
h1.site-logo{
	position:absolute;
	top: 10px;
	left: 20px;
}
.logo-size{
	height: 50px;
}
.btn-line{
	position:absolute;
	top: 15px;
	right: 140px;
}
.btn-document{
	position:absolute;
	top: 15px;
	right: 140px;
}
.btn-document a{
	display: inline-block;
	width: 140px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #e95513;
	border-radius: 5px;
	font-size: 14px;
}
.btn-document a:hover {
	cursor: pointer;
	text-decoration: none;
	background:#c13a05;
	color: #fff;
}
.btn-contact{
	position:absolute;
	top: 15px;
	right: 10px;
}
.btn-contact a{
	display: inline-block;
	width: 120px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #c30d23;
	border-radius: 5px;
	font-size: 14px;
}
.btn-contact a:hover {
	cursor: pointer;
	text-decoration: none;
	background:#990e25;
	color: #fff;
}
a.btn-contact:link,
a.btn-contact:active,
a.btn-contact:visited,
a.btn-contact:hover,
a.btn-contact:focus,
a.btn-document:link,
a.btn-document:active,
a.btn-document:visited,
a.btn-document:hover,
a.btn-document:focus{
	color:#ffffff;
	text-decoration:none;
}

.navi{
	position: absolute;
	top: 10px;
	right: 310px;
	font-size:16px;
}
#dropmenu {
	list-style-type: none;
	padding: 0;
}
#dropmenu li {
	position: relative;
	width:auto;
	float: left;
	margin: 0;
	padding: 0;
	text-align: center;
}
#dropmenu li a {
	display:inline-block;
	margin: 0;
	padding: 18px 1em 18px;
	color: #000000;
	font-size: 1rem;
	line-height: 1;
	text-decoration: none;
}
#dropmenu li ul {
	list-style: none;
	position: absolute;
	z-index: 100;
	top: 100%;
	left: -160px;
	width: 100%;
	margin: 0;
	padding: 0;
}
#dropmenu li ul li {
	overflow:hidden;
	width: 300%;
	height: 0;
	color: #fff;
	transition: .2s;
}
#dropmenu li ul li a {
	padding: 0 15px;
	line-height: 40px;
	background: #000000;
	color: #FFFFFF;
	width: 250px;
	text-align:center;
	font-size: 1rem;
	font-weight: normal;
}
#dropmenu > li:hover > a {  color: #c30d23; }
#dropmenu > li:hover li:hover > a {  background: #c30d23; color: #ffffff; }
#dropmenu > li:hover > ul > li {
	overflow: visible;
	height: 40px;	
}



/* TOPイメージ */
.top-img {
	background:url("img/top-img.jpg") no-repeat right center / cover;
    height: calc(100vh - 70px);
	position: relative;
  }
.top-text {
	position: absolute;
    top: 12%;
	left: 15%;
    transform: translateY(-50%);
	z-index: 4;
	font-size: 6vh;
	font-weight: bold;
	line-height: 1.4;
}
.highlight {
	text-decoration: underline;
	text-decoration-thickness: 0.3em;
	text-decoration-color: rgba(250, 237, 0, 1.0);
	text-underline-offset: -0.1em;
	text-decoration-skip-ink: none;
}
.top-img01{
	position: absolute;
    top: 23%;
	left: 20%;
	margin: auto;
	z-index: 4;
	max-width: 550px;
	width: 28.645%;
}
.top-img01 img{
	width: 100%;
}
.main_btn01{
	position: absolute;
	bottom: 5%;
	left: 22.5%;
	z-index: 4;
	max-width: 500px;
	width: 25%;
}
.main_btn02{
	position: absolute;
	bottom: 5%;
	right: 22.5%;
	z-index: 5;
	max-width: 500px;
	width: 25%;
}
.top-btn001 a,
.top-btn002 a{
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
	width: 100%;
    transition: 0.3s ease-in-out;
	font-size: 3vh;
	height: 60px;
	line-height: 60px;
    border-radius: 30px;
}
.top-btn001 a{
    background: #e95513;
    color: #ffffff;
}
.top-btn002 a{
    background: #c30d23;
    color: #ffffff;
}
.top-btn001 a:hover {
    background: #313131;
    color: #FFF;
}
.top-btn002 a:hover {
    background: #313131;
    color: #FFF;
}
.top-btn001 a:after,
.top-btn002 a:after{
    content: '';
    width: 10px;
    height: 10px;
    border-top: 3px solid #ffffff;
    border-right: 3px solid #ffffff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.top-btn001 a:hover:after,
.top-btn002 a:hover:after{
    border-color: #FFF;
}


/* タイトル */
.title{
	font-size: 2.5rem;
	font-weight: bold;
	text-align: center;
	line-height: 0.8;
}
.sub-title{
	margin-top: 20px;
	text-align: center;
	font-size: 1.2rem;
}

/* ベース */
.contents{
	width: 1160px;
	margin-left: auto;
	margin-right: auto;
}
#breadcrumbs{
	margin-top: 20px;
}

/* フッター */
.contact-box{
	width: 1160px;
	margin: 150px auto 0;
}
.contact-box-in{
	width: 1080px;
	margin:0 auto ;
	display: flex;
	justify-content: space-between;
}
.contact-box-in-btn{
	width: 46.296296%;
	margin-top: 40px;
}
.button001 a,
.button002 a{
    border-radius: 10px;
    position: relative;
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0 auto;
	width: 100%;
    padding: 10px 25px;
    transition: 0.3s ease-in-out;
	font-size: 30px;
}
.button001 a{
    background: #e95513;
    color: #ffffff;
}
.button002 a{
    background: #c30d23;
    color: #ffffff;
}
.button001 a:hover {
    background: #313131;
    color: #FFF;
}
.button002 a:hover {
    background: #313131;
    color: #FFF;
}
.button001 a:after,
.button002 a:after{
    content: '';
    width: 10px;
    height: 10px;
    border-top: 3px solid #ffffff;
    border-right: 3px solid #ffffff;
    transform: rotate(45deg) translateY(-50%);
    position: absolute;
    top: 50%;
    right: 20px;
    border-radius: 1px;
    transition: 0.3s ease-in-out;
}
.button001 a:hover:after,
.button002 a:hover:after{
    border-color: #FFF;
}
.line-box{
	width: 1080px;
	margin:40px auto 0 ;
}
.size-tel{
	width: 500px;
}
.f-logo{
	width: 200px;
}
.f-tel{
	width: 230px;
}
.tel-message{
	margin-top: 40px;
	text-align: center;
	font-size: 2rem;
	font-weight: bold;
}
.footer{
	margin-top: 100px;
	padding: 60px 0;
	background-color: #595757;
	color: #FFFFFF;
}
.footer-box{
	width: 1160px;
	margin: 0 auto;
	display: flex;
}
.br-1024{
	display: none;
}
.br-480{
	display: none;
}
.footer-box-logo{
	width: 18%;
	margin-right: 2%;
}
.footer-box-add{
	width: 25%;
	margin-right: 2%;
}
.footer-box-navi{
	margin-left: 25%;
	width: 53%;
	justify-content: flex-end;
}
.foot-navi-box{
	display: flex;
}
ul.foot-navi01{
	width: 20%;
}
ul.foot-navi02{
	width: 40%;
}
ul.foot-navi01 li,
ul.foot-navi02 li{
	list-style: disc;
	margin-left: 1em;
}
ul.foot-navi01 li a:link,
ul.foot-navi01 li a:active,
ul.foot-navi01 li a:visited,
ul.foot-navi02 li a:link,
ul.foot-navi02 li a:active,
ul.foot-navi02 li a:visited{
	color:#ffffff;
	text-decoration:none;
}
ul.foot-navi01 li a:hover,
ul.foot-navi01 li a:focus,
ul.foot-navi02 li a:hover,
ul.foot-navi02 li a:focus{
	color:#c30d23;
	text-decoration:none;
}
#copy{
	background-color: #3e3a39;
	padding: 5px 0;
	text-align: center;
	color:#ffffff;
	font-size: 12px;
}

/* TOPページ */
.toha-box{
	margin-top: 60px;
	display: flex;
	justify-content: space-between;
}
.toha-box-in{
	width: 47.5%;
}
.toha-title-blk{
	width: 100%;
	text-align: center;
	padding: 10px ;
	font-size: 2rem;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #000000;
	border-radius: 10px 10px 0 0;
}
.toha-box-blk{
	border-left: 5px solid #000000;
	border-right: 5px solid #000000;
	border-bottom: 5px solid #000000;
	border-radius: 0 0 10px 10px;
	padding: 40px 25px;
	text-align: center;
	line-height: 1.4;
}
.toha-title-red{
	width: 100%;
	text-align: center;
	padding: 10px ;
	font-size: 2rem;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #c30d23;
	border-radius: 10px 10px 0 0;
}
.toha-box-red{
	border-left: 5px solid #c30d23;
	border-right: 5px solid #c30d23;
	border-bottom: 5px solid #c30d23;
	border-radius: 0 0 10px 10px;
	padding: 40px 25px;
	text-align: center;
	line-height: 1.4;
}
.toha-box-kadai,
.toha-box-kadai-red{
	margin-top: 0px;
	font-size: 2rem;
	font-weight: bold;
}
.toha-box-kadai-red{
	color: #c30d23;
}


.nayami-box{
	margin-top: 60px;
	display: flex;
	justify-content: space-between;
}
.nayami-photo{
	width: 48%;
}
.nayami-text{
	width: 47%;
}
.nayami-text ul li{
	background-image: url("img/check.png");
	background-repeat: no-repeat;
	padding-left: 45px;
	font-size: 1.2rem;
	margin-top: 40px;
}
.merit-box{
	display: flex;
	justify-content: space-between;
}
.merit-box-in{
	margin-top: 60px;
	width: 32%;
	border-left: 2px solid #000000;
	border-right: 2px solid #000000;
	border-bottom: 2px solid #000000;
	align-items: stretch;
}
.merit-box-in-title{
	width: 100%;
	text-align: center;
	padding: 10px ;
	font-size: 1.4rem;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #000000;
}
.merit-box-in-box{
	padding: 40px 25px;
	line-height: 1.4;
}
.merit-box-in-box ul li{
	background-image: url("img/good.png");
	background-repeat: no-repeat;
	padding-left: 50px;
	font-size: 1.2rem;
	margin-top: 40px;
	height: 80px;
}
.point-box{
	margin-top: 40px;
	display: flex;
	border: 2px solid #000000;
	padding: 40px;
	align-items: center;
}
.point-number{
	width: 50px;
	height: 50px;
	line-height: 50px;
	font-size: 1.4rem;
	font-weight: bold;
	color: #FFFFFF;
	text-align: center;
	margin-right: 40px;
	background-color: #c30d23;
}
.point-text{
	width: 940px;
	font-size: 1.2rem;
}

.title-icon{
	width: 8.620689655%;
	margin-left: auto;
	margin-right: auto;
}
.title-icon img{
	width: 100%;
}

.main-kinou{
	margin-top: 15px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.main-kinou-out{
	width: 47.5%;
}


.main-kinou01,
.main-kinou02,
.main-kinou03,
.main-kinou04,
.main-kinou05,
.main-kinou06,
.main-kinou07,
.main-kinou08{
	margin-top: 40px;
}
.main-kinou01{
	background-color: #e9cbcb;
}
.main-kinou02{
	background-color: #d9b7ae;
}
.main-kinou03{
	background-color: #f5e4cd;
}
.main-kinou04{
	background-color: #dde9d3;
}
.main-kinou05{
	background-color: #d4dfe2;
}
.main-kinou06{
	background-color: #d4e1f2;
}
.main-kinou07{
	background-color: #fbf2cd;
}
.main-kinou08{
	background-color: #e2d0db;
}
.main-kinou-inbox{
	padding: 40px 40px 10px;
}
.main-kinou-icon{
	height: 60px;
}

.main-kinou01 a:hover,
.main-kinou01 a:active,
.main-kinou02 a:hover,
.main-kinou02 a:active,
.main-kinou03 a:hover,
.main-kinou03 a:active,
.main-kinou04 a:hover,
.main-kinou04 a:active,
.main-kinou05 a:hover,
.main-kinou05 a:active,
.main-kinou06 a:hover,
.main-kinou06 a:active,
.main-kinou07 a:hover,
.main-kinou07 a:active,
.main-kinou08 a:hover,
.main-kinou08 a:active{
    filter: alpha(opacity=70);
    opacity: 0.70;
}
.main-kinou-in{
	position: relative;
}
.main-kinou-text{
	margin-top: 0px;
	min-height: 80px;
}
.main-kinou-text p{
	font-size: 1.1rem;
}

.patent-icon{
	position: absolute;
	width:15%;
	top: 180px;
	right: 10px;
}
.patent-icon img{
	width: 100%;
}
.patent-icon2{
	position: absolute;
	width:75px;
	top: -15px;
	left: 10px;
}
.patent-icon2 img{
	width: 100%;
}

.kinou-icon{
	position: absolute;
	width:9%;
	top: -5px;
	right: 10px;
}
.kinou-icon img{
	width: 100%;
}

.kinou-icon2{
	position: absolute;
	width:50px;
	top: -3px;
	right: 10px;
}
.kinou-icon2 img{
	width: 100%;
}

.plan-box{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.plan-box-in{
	margin-top: 40px;
	margin-right: 3.5%;
	width: 31%;
	border: 1px solid #000000;
	text-align: center;
}
.plan-box-in:nth-child(3),
.plan-box-in:nth-child(5){
	margin-right: 0;
}
.plan-box-name{
	background-color: #000000;
	color: #FFFFFF;
	font-size: 1.4rem;
	font-weight: bold;
	padding: 0px;
}
.plan-box-text{
	padding: 0 20px 20px;
}
.btn-plan{
	margin-top: 20px;
}
.btn-plan a{
	display: inline-block;
	width: 140px;
	height: 40px;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #c30d23;
	border-radius: 5px;
	font-size: 1rem;
}
.btn-plan a:hover {
	cursor: pointer;
	text-decoration: none;
	background:#333333;
	color: #ffffff;
}
.plan-icon{
	width: 27.77777777%;
	margin: 40px auto 0;
}
.plan-icon img{
	width: 100%;
}
.plan-icon-size{
	width: 120px;
}
.plan-function{
	width: 90%;
	margin: 5% auto 0;
	display: flex;
	flex-wrap: wrap;
}
.plan-function-in{
	width: 15.25%;
	margin: 0 13% 5% 0
}
.plan-function-in:nth-child(4n),
.plan-function-in:nth-child(8n){
	width: 15.25%;
	margin: 0 0 5% 0
}
.plan-function-in img{
	width: 100%;
}
.plan-size{
	width: 50%;
}


.simple_btn_box{
	display: inline-block;
	width: 500px;
	height: 50px;
	line-height: 50px;
}
a.simple_btn:link,
a.simple_btn:active,
a.simple_btn:visited {
	display: block;
	position: relative;
	width: 100%;
	padding: 5px 10px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #000000;
}
a.simple_btn:hover,
a.simple_btn:focus {
	cursor: pointer;
	text-decoration: none;
	background: #C30D23;
	color: #fff;
}

/* よくあるご質問*/
div.qabox ul{
  width: 100%;
  margin:40px auto 0;
}div.qabox ul li{
  list-style:none;
	margin: 0px 0 0 0;
	padding: 20px 40px;
	border-top: 1px dotted #646464;
}
div.qabox ul li:last-child {
	border-bottom:  1px dotted #646464;
}
.question{
	position: relative;
	margin: 0;
	padding: 2px 0 0 60px;
	cursor: pointer;
	height: 30px;
	background: url("img/question.png") no-repeat;
}
.question:hover{
    text-decoration:none;
}
.question:after{
  content: "";
  position: absolute;
  right: 25px;
  top: 38%;
  transition: all 0.2s ease-in-out;
/*   要素の動きを指定 */  
  display: block;
  width: 8px;
  height: 8px;
  border-top: solid 4px #317499;
  border-right: solid 4px #317499;  
  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
/* transform: rotateで要素の角度を指定 */  
}
.question.open:after{
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 45%;
/*   .openクラスがついた時の要素の角度を指定 */
}
.answer{
	background: url("img/answer.png") no-repeat;
	height: auto;
	margin-top: 20px;
	padding: 2px 0 5px 60px;
}

.introduction-box{
	display: flex;
	flex-wrap: wrap;
}
.introduction-box a{
	display: block;
}
.introduction-box-in{
	width: 31%;
	margin-top: 40px;
	margin-right: 3.5%;
}
.introduction-box-in:nth-child(3n){
	margin-right: 0%;
}
.introduction-box-in img{
	width: 100%;
}
.introduction-box-in ul{
	display: flex;
	flex-wrap: wrap;
}
.introduction-box-in ul li{
	display: inline-block;
	padding: 5px 10px;
	font-size: 0.8rem;
	text-align: center;
	background-color: #b51f39;
	color: #FFFFFF;
	border-radius: 5px;
	margin: 10px 5px 0 0;
}
.introduction-box-in ul li.org{
	background-color: #d35a2a;
}
.introduction-box a {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transition: 0.2s ease-in;
    transition: 0.2s ease-in;
    filter: alpha(opacity=100);
    opacity: 1;
}
.introduction-box a:hover,
.introduction-box a:active {
    filter: alpha(opacity=70);
    opacity: 0.70;
}
table.hikaku{
	width: 100%;
	margin-top: 60px;
	border-collapse: collapse;
}
table.hikaku tr:nth-child(odd) td {
	background: #eeeeef;
}
table.hikaku th{
	padding: 15px;
	font-size: 1.2rem;
	background-color: #717071;
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
}
table.hikaku th{
	padding: 15px;
	font-size: 1.2rem;
	background-color: #717071;
	color: #FFFFFF;
	font-weight: bold;
	text-align: center;
	border: 1px solid #dbdcdc;
	width: 18%;
}
table.hikaku th.th01{
	background-color: #ffffff;
	border-bottom: 1px solid #dbdcdc;
	border-left: none;
	border-right: 1px solid #dbdcdc;
	border-top: none;
	width: 28%;
}
table.hikaku th.th02{
	background-color: #66ac90;
	border: 1px solid #dbdcdc;
	width: 18%;
}
table.hikaku td.td01{
	font-size: 1rem;
	font-weight: normal;
}
table.hikaku td{
	padding: 15px;
	font-size: 1.5rem;
	text-align: center;
	border: 1px solid #dbdcdc;
	font-weight: bold;
}

/* 下層ページ */
h2.page-name{
	margin-top: 60px;
	font-size: 2rem;
	font-weight: bold;
	text-align: center;
}
.midashi{
	margin-top: 100px;
	background-color: #000000;
	color: #FFFFFF;
	padding: 20px;
	border-radius: 10px 10px 0 0;
	text-align: center;
}

.price-box-wrap{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.price-box-in{
	margin-top: 60px;
	width: 47.5%;
	border-bottom: 1px solid #000000;
	border-left: 1px  solid #000000;
	border-right: 1px solid #000000;
}
.price-box-in2{
	margin-top: 60px;
	width: 47.5%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.price-box-in-title{
	background-color: #000000;
	text-align: center;
	height: 60px;
	line-height: 60px;
	font-size: 1.4rem;
	font-weight: bold;
	color: #FFFFFF;
}
.price-box-in-text{
	padding: 30px;
	text-align: center;
}
ul.function{
	display: flex;
	flex-wrap: wrap;
	width: 60%;
	margin: 10px auto 0;
}
ul.function li{
	width: 21.25%;
	margin: 5% 5% 0 0;		
}
ul.function li:nth-child(4n){
	margin: 5% 0 0 0;		
}
.btn-more{
	width: 80%;
	margin: 0 auto 30px;
}
.btn-more a{
	display: inline-block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	background: #c30d23;
	border-radius: 20px;
	font-size: 1.2rem;
}
.btn-more a:hover {
	cursor: pointer;
	text-decoration: none;
	background:#990e25;
	color: #fff;
}

.plan-graph{
	margin-top: 40px;
}

.plan-graph table{
	width: 100%;
	margin-top: 60px;
	border-collapse: collapse;
}
.plan-graph table tr:nth-child(odd) td {
	background: #eeeeef;
}
.plan-graph table tr:nth-child(24) td,
.plan-graph table tr:nth-child(25) td{
	background: #ffffff;
}
.plan-graph table th{
	padding: 15px 0;
	font-size: 1rem;
	background-color: #eeeeef;
	text-align: center;
	border: 1px solid #dbdcdc;
}
.plan-graph table th.th01{
	background-color: #ffffff;
	border-bottom: 1px solid #dbdcdc;
	border-left: none;
	border-right: none;
	border-top: none;
	width: 20%;
}
.plan-graph table th.th02{
	background-color: #458950;
	border: 1px solid #458950;
	color: #FFFFFF;
	width: 16%;
}
.plan-graph table th.th03{
	background-color: #317499;
	border: 1px solid #317499;
	color: #FFFFFF;
	width: 16%;
}
.plan-graph table th.th04{
	background-color: #d35a2a;
	border: 1px solid #d35a2a;
	color: #FFFFFF;
	width: 16%;
}
.plan-graph table th.th05{
	background-color: #b51f39;
	border: 1px solid #b51f39;
	color: #FFFFFF;
	width: 16%;
}
.plan-graph table th.th06{
	background-color: #ca9f20;
	border: 1px solid #ca9f20;
	color: #FFFFFF;
	width: 16%;
}
.plan-graph table th.th07{
	background-color: #3e3a39;
	border: 1px solid #ca9f20;
	color: #FFFFFF;
}
.plan-graph table td{
	padding: 15px 5px;
	font-size: 1rem;
	text-align: center;
	border: 1px solid #dbdcdc;
}
.plan-graph table td.td01{
	padding: 15px 5px;
	font-size: 1rem;
	text-align: center;
	border-top: 1px solid #dbdcdc;
	border-left: 1px solid #dbdcdc;
	border-right: 1px solid #dbdcdc;
	border-bottom: none;
}
.plan-graph table td.td02{
	padding: 15px 5px;
	font-size: 1rem;
	text-align: center;
	border-top: none;
	border-left: 1px solid #dbdcdc;
	border-right: 1px solid #dbdcdc;
	border-bottom: 1px solid #dbdcdc;
}

ul.support {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
ul.support li{
	list-style: none;
	width: 48%;
	background-color:#f4da5c;
	padding: 5px;
	font-size: 0.6rem;
	text-align: center;
	margin-top: 3%;
	border-radius: 5px;
}

.btn-more01,
.btn-more02,
.btn-more03,
.btn-more04,
.btn-more05{
	width: 80%;
	margin: 20px auto ;
}
.btn-more01 a,
.btn-more02 a,
.btn-more03 a,
.btn-more04 a,
.btn-more05 a{
	display: inline-block;
	width: 100%;
	height: 40px;
	line-height: 40px;
	text-align: center;
	text-decoration: none;
	color: #fff;
	border-radius: 5px;
	font-size: 1rem;
}
.btn-more01 a{
	background: #458950;
}
.btn-more02 a{
	background: #317499;
}
.btn-more03 a{
	background: #d35a2a;
}
.btn-more04 a{
	background: #b51f39;
}
.btn-more05 a{
	background: #ca9f20;
}
.btn-more01 a:hover,
.btn-more02 a:hover,
.btn-more03 a:hover,
.btn-more04 a:hover,
.btn-more05 a:hover{
	cursor: pointer;
	text-decoration: none;
	color: #fff;
}
.btn-more01 a:hover{
	background:#185620;
}
.btn-more02 a:hover{
	background:#124c66;
}
.btn-more03 a:hover{
	background:#aa370f;
}
.btn-more04 a:hover{
	background:#820923;
}
.btn-more05 a:hover{
	background:#8e6d1b;
}

.kinou-box{
	margin-top: 15px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.kinou-box-in01,
.kinou-box-in03,
.kinou-box-in05,
.kinou-box-in07{
	width: 750px;
	margin-top: 25px;
}
.kinou-box-in01{
	background-color: #e9cbcb;
}
.kinou-box-in03{
	background-color: #f5e4cd;
}
.kinou-box-in05{
	background-color: #d4dfe2;
}
.kinou-box-in07{
	background-color: #fbf2cd;
}
.kinou-box-in02,
.kinou-box-in04,
.kinou-box-in06,
.kinou-box-in08{
	width: 385px;
	margin-top: 25px;
}
.kinou-box-in02{
	background-color: #d9b7ae;
}
.kinou-box-in04{
	background-color: #dde9d3;
}
.kinou-box-in06{
	background-color: #d4e1f2;
}
.kinou-box-in08{
	background-color: #e2d0db;
}

.kinou01-title,
.kinou02-title,
.kinou03-title,
.kinou04-title,
.kinou05-title,
.kinou06-title,
.kinou07-title,
.kinou08-title{
	text-align: center;
	position: relative;
	height: 60px;
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 60px;
}
.kinou01-title{
	color: #fca7a7;
	background-color: #590606;
	border-bottom: 3px solid #b21818;
}
.kinou02-title{
	color: #ef5c43;
	background-color: #661002;
	border-bottom: 3px solid #871e0c;
}
.kinou03-title{
	color: #fca94f;
	background-color: #603205;
	border-bottom: 3px solid #b26a1b;
}
.kinou04-title{
	color: #a1e256;
	background-color: #213309;
	border-bottom: 3px solid #567f2b;
}
.kinou05-title{
	color: #49d3ea;
	background-color: #05353d;
	border-bottom: 3px solid #18717f;
}
.kinou06-title{
	color: #4fa9ed;
	background-color: #062642;
	border-bottom: 3px solid #175082;
}
.kinou07-title{
	color: #eaca44;
	background-color: #3a2f03;
	border-bottom: 3px solid #826d14;
}
.kinou08-title{
	color: #ef4dbd;
	background-color: #350326;
	border-bottom: 3px solid #6d0f50;
}
.kinou01-text,
.kinou02-text,
.kinou03-text,
.kinou04-text,
.kinou05-text,
.kinou06-text,
.kinou07-text,
.kinou08-text{
	padding:0 20px 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.kinou-detail{
	margin-top: 30px;
	width: 345px;
	background-color: #FFFFFF;
	border: 1px solid #dbdcdc;
	padding: 20px;
}
.kinou-detail img{
	height: 60px;
}
.osusume{
	width: 1160px;
	height: 382px;
	background-image: url("img/plan/osusume.png");
	background-repeat: no-repeat;
	position: relative;
	margin-top: 100px;
}
.osusume ul{
	position: absolute;
	top:60px;
	left: 40px;
	width: 620px;
}
.osusume ul li{
	background-image: url("img/plan/check.png");
	background-repeat: no-repeat;
	padding-left: 40px;
	font-size: 1.2rem;
	margin-top: 20px;
	min-height: 40px;
	padding-top: 5px;
}
ul.support-detail{
	margin-top: 40px;
	display: flex;
	flex-wrap: wrap;
}
ul.support-detail li{
	background-color:#f4da5c;
	width: 22%;
	padding: 15px 10px;
	margin: 40px 4% 0 0 ;
	font-size: 1.2rem;
	font-weight: bold;
	text-align: center;
	border-radius: 10px;
}

ul.support-detail li:nth-child(4n){
	margin: 40px 0 0 0;
}
.support-box{
	width: 1160px;
	height: 382px;
	background-image:url("img/plan/support.png");
	background-repeat: no-repeat;
	position: relative;
	margin-top: 100px;
}
.support-box ul{
	position: absolute;
	top:60px;
	left: 40px;
	width: 620px;
}
.support-box ul li{
	background-image: url("img/plan/check.png");
	background-repeat: no-repeat;
	padding-left: 40px;
	font-size: 1.2rem;
	margin-top: 20px;
	min-height: 40px;
	padding-top: 5px;
}
.price-box{
	width: 82%;
	margin: 60px auto 0;
	display: flex;
	justify-content:space-between;
	align-items: center;
}
.price-box-syoki{
	width: 45%;
	border: 1px solid #317499;
}
.price-box-syoki-title{
	width: 100%;
	height: 60px;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	background-color: #317499;
	color: #FFFFFF;
}
.price-box-syoki-text{
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	color: #317499;
	padding: 20px;
	
}
.price-box-running{
	width: 45%;
	border: 1px solid #b51f39;
}
.price-box-running-title{
	width: 100%;
	height: 60px;
	font-size: 1.2rem;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	background-color: #b51f39;
	color: #FFFFFF;
}
.price-box-running-text{
	font-size: 1.5rem;
	font-weight: bold;
	line-height: 60px;
	text-align: center;
	color: #b51f39;
	padding: 20px;
}
.case-category{
	margin-top: 20px;
	display: flex;
	justify-content: center;
}
.case-category ul li{
	display: inline-block;
	padding: 10px 15px;
	font-size: 1rem;
	text-align: center;
	background-color: #b51f39;
	color: #FFFFFF;
	border-radius: 5px;
	margin: 10px 10px 0 0;
}
.case-category ul li.org{
	background-color: #d35a2a;
}
.case-category ul li:last-child{
	margin: 10px 0 0 0;
}
.title-gry{
	width: 100%;
	height: 60px;
	font-size: 1.4rem;
	font-weight: bold;
	line-height: 60px;
	padding-left: 20px;
	background-color: #eeeeef;
}
.case-box{
	padding: 40px 20px;
	display: flex;
	justify-content: space-between;
}
.case-text{
	width: 72%;
}
.case-photo{
	width: 23%;
}
.flow-box01{
	display: flex;
	flex-direction: row-reverse;
}
.flow-box02{
	display: flex;
	justify-content: space-between;
}
.flow-box-number{
	margin-top: 40px;
	width: 15%;
	background-color: #eeeeef;
	display:flex;
	justify-content:center;
	align-items:center;
	font-size: 1.4rem;
}
.flow-box-detail{
	width: 80%;
}
.flow-box-detail-in{
	margin-top: 40px;
	display: flex;
	justify-content: space-between;
	padding-bottom: 40px;
	border-bottom: 1px solid #b4b4b5;
}
.flow-box-photo{
	width: 37%;
}
.flow-box-text{
	width: 58%;
}
.flow-box-text p{
	font-size: 1.4rem;
}
.red-number{
	display: inline-block;
	width: 50px;
	height: 50px;
	line-height: 50px;
	font-size: 2rem;
	font-weight: bold;
	color: #FFFFFF;
	background-color: #b51f39;
	text-align: center;
	margin-right: 0.5em;
}

.faq-list{
	display: flex;
	flex-wrap: wrap;
	margin-top: 20px;
}
.faq-list-in{
	width: 22%;
	text-align: center;
	margin-right: 4%;
	margin-top: 20px;
}
.faq-list-in:nth-child(4n){
	margin-right: 0%;
}
.faq-list-in a{
	width: 100%;
	text-align: center;
	display: inline-block;
	padding: 0.5em 1em;
	text-decoration: none;
	color: #000000;
	border: solid 1px #000000;
	transition: .4s;
	border-radius: 5px;
}
.faq-list-in a:hover {
  background: #000000;
  color: white;
}
table.enkaku{
	width: 100%;
	border-collapse: collapse;
}
table.enkaku th{
	text-align: left;
	padding: 15px;
	border-top: 1px solid #eeeeef;
	border-right: 1px solid #eeeeef;
	border-bottom: 1px solid #eeeeef;
	font-weight: bold;
	width: 20%;
}
table.enkaku td{
	text-align: left;
	padding: 15px;
	border-top: 1px solid #eeeeef;
	border-left: 1px solid #eeeeef;
	border-bottom: 1px solid #eeeeef;
}
.confirmation-box{
	width: 800px;
	margin: 60px auto 0;
}
table.kakunin{
	width: 100%;
}
table.kakunin td{
	width: 50%;
	text-align: center;
}
div.kakunin{
	display: flex;
	justify-content: center;
}
div.kakunin div.susumu,
div.kakunin div.modoru{
	width: 50%;
	text-align: center;
}



.video {
	margin-top: 40px;
	width: 100%;
	position: relative;
	padding-top: 56.25%;
}

.video iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}


.accordion {
	margin: 20px auto 0;
}
.toggle {
	display: none;
}
.option {
	position: relative;
	margin-bottom: 1em;
}
.accordion-title,
.accordion-content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.accordion-title {
	width: 50%;
	margin:  0 auto;
	display: block;
	font-weight: bold;
	background-color: #333333;
	color: #FFFFFF;
	cursor: pointer;
	text-align: center;
	height: 50px;
	border-radius: 25px;
	line-height: 50px;
}
.accordion-title::after,
.accordion-title::before {
	content: "";
	position: absolute;
	right: 1.25em;
	top: 1.25em;
	width: 2px;
	height: 0.75em;
	background-color: #FFFFFF;
	transition: all 0.3s;
}
.accordion-title::after {
	transform: rotate(90deg);
}
.accordion-content {
	max-height: 0;
	overflow: hidden;
}
.toggle:checked + .accordion-title + .accordion-content {
	max-height: 1600px;
	transition: all 1.5s;
}
.toggle:checked + .accordion-title::before {
	transform: rotate(90deg) !important;
}
.accordion-content{
	padding:0;
	display: flex;
	flex-wrap: wrap;
	flex-direction: column;
}
.accordion-kinou-detail{
	margin-top: 30px;
	width: 100%;
	background-color: #FFFFFF;
	border: 1px solid #dbdcdc;
	padding: 20px;
}
.accordion-kinou-detail img{
	height: 50px;
}








/* お問い合わせ */
.form-box{
	display: flex;
	justify-content: space-between;
}
.form-box-explain{
	width: 47.5%;
	margin-top: 60px;
}
.form-box-in{
	width: 47.5%;
	margin-top: 60px;
}

.formbox{
	margin-top:40px;
	padding:10px;
}
table.form{
	margin: 0;
	border:none;
	width:100%;
	border-collapse: collapse;
}
table.form th{
	display:block;
	width: 100%;
	text-align:left;
	padding:20px 20px 10px;
	vertical-align: middle;
}
table.form td{
	display:block;
	width: 100%;
	text-align:left;
	padding:10px 20px 20px;
    border-bottom: 1px solid #D6D6D6;
}
.privacy-btn{
	margin-top: 20px;
	padding: 0 20px;
}
.btn-submit{
	text-align: center;
}

table.form-confirmation{
	margin: 0;
	border:none;
	width:100%;
	border-collapse: collapse;
}
table.form-confirmation th{
	width: 40%;
	text-align:left;
	padding:20px;
	vertical-align: middle;
    border-bottom: 1px solid #D6D6D6;
}
table.form-confirmation td{
	width: 60%;
	text-align:left;
	padding:20px;
    border-bottom: 1px solid #D6D6D6;
}



.wpcf7-text,
.wpcf7-textarea,
.wpcf7-number,
.wpcf7-select{
	padding:5px;
	font-size: 100%;
}
 
.wpcf7-text:focus,
.wpcf7-textarea:focus,
.wpcf7-number:focus,
.wpcf7-select:focus{
outline: none;
border-width: 1px;
border-style: solid;
box-shadow: 0 0 8px rgba(100, 200, 255, 0.5);
-webkit-box-shadow: 0 0 8px rgba(100, 200, 255, 0.5);
-moz-box-shadow: 0 0 8px rgba(100, 200, 255, 0.5);
-ms-box-shadow: 0 0 8px rgba(100, 200, 255, 0.5);
-o-box-shadow: 0 0 8px rgba(100, 200, 255, 0.5);
border-color: rgba(100, 200, 255, 0.75) !important;
padding:5px;
}
 
.wpcf7-form-control-wrap {
display:inline;
width: 100%;
padding-bottom: 10px;
}
 
.wpcf7-textarea,
.wpcf7-text{
width: 96%;
}
.wpcf7-text.add{
width: 30%;
}
.wpcf7-text.wpcf7-select{
	padding: 5px;
}

.kisai{
	background-color: #ca3e47;
	color: #FFFFFF;
	font-size: 90%;
	padding: 5px 10px;
	display: inline-block;
	margin-right: 2em;
}
.nini{
	background-color: #0d3b60;
	color: #FFFFFF;
	font-size: 90%;
	padding: 5px 10px;
	display: inline-block;
	margin-right: 2em;
}

input.wpcf7-submit {
padding:1em !important;
margin:2em auto 0 !important;
background-color: #ca3e47 !important;
color: #fff !important;
font-size: 18px !important;
font-weight: bold !important;
width: 47.5%;
transition:0.5s;
}

input.wpcf7-submit:hover {
background-color:#000000 !important;
color: #fff !important;
}

input.wpcf7-previous {
padding:1em !important;
margin:2em auto 0 !important;
background-color: #0d3b60 !important;
color: #fff !important;
font-size: 18px !important;
font-weight: bold !important;
width: 47.5%;
transition:0.5s;
}

input.wpcf7-previous:hover {
background-color:#000000 !important;
color: #fff !important;
}

/*----------------------------------------------------
    表示・非表示
----------------------------------------------------*/
.hidden {
  display: none;
  visibility: hidden;
}
.hidden-phone {
	display: inherit !important;
}
.visible-phone {
	display: none !important;
}
.visible-sm {
	display: none !important;
}
.hidden-sm {
	display: inherit !important;
}

