/* ----------------------------------------------------------------------------------------------------
     全端末共通のCSS（961px〜）
---------------------------------------------------------------------------------------------------- */

.pc {
	display:block;
}

.sp {
	display:none;
}

.tab2 {
	display:none;
}

.sp2 {
	display: none;
}

/* レイアウト
--------------------------------------------------------------------------*/

html {
}

body {
	color: #595757;
    background: url("../img/common/bg01.jpg") center top repeat;
	text-align: center;
	margin: 0 auto;
	height: 100%;
	letter-spacing: 0.1em;
	-webkit-text-size-adjust: 100%;
}

#wrap {
	width :100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

#layout {
	width: 100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
	overflow: hidden;
}

.width {
	width: 1200px;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

.width80 {
    width: 80%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

/* 文字
--------------------------------------------------------------------------*/

h1 {
	font-size: 300%;
	margin-bottom: 50px;
	text-align: left;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 120%;
	position: relative;
    color: #595757;
}

h1 span {
	color: #FFFF00;
    color: #0262B1;
	display: block;
	font-size: 40%;
	font-weight: 500;
    margin-bottom: 10px;
	letter-spacing: 0.1em;
}

h1.text {
    color: #FFF;
}

h1.text span {
	color: #FFFF00;
}

h2 {
	font-size: 160%;
	text-align: left;
	font-style: normal;
	font-weight: 500;
	line-height: 160%;
	padding-left: 20px;
	padding-bottom: 3px;
	margin-bottom: 30px;
	border-left: 2px solid #0262B1;
}

h2 span {
	margin-top: 0px;
	display: block;
	font-size: 45%;
	font-style: normal;
	color: #E62418;
	font-weight: 500;
    text-transform: uppercase;
}

h3 {
	position: relative;
	padding-left: 30px;
	font-size: 150%;
	margin-bottom: 30px;
    font-weight: 500;
    line-height: 150%;
	text-align: left;
}

h3::after {
     position: absolute;
     top: 20px;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 20px;
     height:2px;
     background-color: #0262B1;
}

h4 {
    color: #E62418;
    font-size: 120%;
    text-align: left;
	font-weight: 500;
    margin-bottom: 20px;
}

h4 span {
    vertical-align: middle;
    background: #E62418;
    color: #FFF;
    font-size: 20%;
	font-weight: 500;
    padding: 8px 20px;
    margin-right: 10px;
    border-radius: 100px;
}

p + h2,
p + h3,
ul + h2,
ul + h3 {
	margin-top: 40px;
}

p {
	font-size: 95%;
	line-height: 200%;
	margin-bottom: 20px;
	text-align: left;
}

ul.text {
	text-align: left;
	font-size: 95%;
	padding-bottom: 20px;
	vertical-align: middle;
	padding: 0 0 0 25px;
}

ul.text li {
	line-height: 220%;
	padding: 0 0 0 0px;
	list-style: outside;
}

ul.text li span {
	display: inline-block;
	vertical-align: top;
}

/* ヘッダー
--------------------------------------------------------------------------*/

#header {
    margin-top: 40px;
}

.header_left {
	float: left;
    margin-top: 5px;
	margin-left: 5%;
}

.header_right {
	float: right;
	margin-right: 5%;
}

/*
.fixed {
  position: fixed;
  width: 100%;
  top: 0;
  z-index: 1000;
}

.fixed #header {
    top: 0 !important;
    margin-top: 0;
    background: rgba(245,245,245, 0.9);
    padding: 10px 0 80px 0;
}

#home .fixed #header {
    top: 0 !important;
    margin-top: 0;
    padding: 10px 0 0 0;
    background: rgba(0,0,0, 0.9);
}
*/

/* ナビゲーション
--------------------------------------------------------------------------*/

nav {
}

#navi {
}

#dropmenu {
	list-style-type: none;
	margin: 0 auto;
	padding: 0;
	width: 100%;
	z-index: 1000;
}

#dropmenu li {
	position: relative;
	z-index: 1000;
	line-height: 100%;
	float: left;
	margin: 0;
	padding: 0;
	margin-left: 0px;
	text-align: center;
	box-sizing: border-box;
    font-weight: 500;
    font-style: normal;
}

#dropmenu li a {
	display: block;
	margin: 0;
	padding: 15px 15px;
	color: #FFFFFF;
	font-size: 100%;
    font-weight: 500;
	line-height: 100%;
	text-decoration: none;
}

#dropmenu li a:hover {
    color: #FFFF00;
}

#dropmenu li:nth-child(7) {
	margin-left: 10px;
    border-radius: 100px;
}

#dropmenu li:nth-child(7) a {
	padding: 15px 35px;
    border-radius: 100px;
    background: #339191;
    color: #FFF;
}

#dropmenu li:nth-child(7) a:hover {
	display: block;
    background: #E62418;
}

#menu_btn {
	display: none;
}


/* コンテンツ
--------------------------------------------------------------------------*/

#container {
    position: relative;
}

section {
	padding-bottom: 120px;
}

article {
	margin-bottom: 60px;
}

.column2 {
	width: 48%;
	float: left;
	margin-right: 4%;
	margin-bottom: 20px;
}

.column2:nth-child(2n) {
	margin-right:0;
}

.column3 {
	width: 31%;
	float: left;
	margin-right: 3.5%;
	margin-bottom: 20px;
}

.column3:nth-child(3n) {
	margin-right: 0;
}

.column4 {
	width: 23.5%;
	float: left;
	margin-right: 2%;
	margin-bottom: 20px;
}

.column4:nth-child(4n) {
	margin-right: 0;
}

.column5 {
	width: 18%;
	float: left;
	margin-right: 2.5%;
	margin-bottom: 20px;
}

.column5:nth-child(5n) {
	margin-right: 0;
}

.column2Box {
	width: 50%;
	float: left;
	margin-right: 0%;
	border-right: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
	box-sizing: border-box;
}

.column5Box {
	width: 20%;
	float: left;
}

.left50 {
	width: 50%;
	float: left;
}

.right50 {
	width: 50%;
	float: right;
}

.left60 {
	width: 55%;
	float: left;
}

.right40 {
	width: 40%;
	float: right;
}

.left30 {
	width: 30%;
	float: left;
}

.right70 {
	width: 65%;
	float: right;
}

.left40 {
	width: 40%;
	float: left;
}

.right60 {
	width: 55%;
	float: right;
}

/* トップページ
--------------------------------------------------------------------------*/

#main {
    margin-top: 120px;
    margin-bottom: 80px;
    display: flex;
	justify-content: space-between;
	align-items: stretch;
}

.main_left {
    margin-left: 5%;
    width: 35%;
}

.main_left p {
    color: #FFF;
    font-size: 130%;
    margin-bottom: 50px;
}

.main_right {
    position: relative;
    top: 0;
    left: 0;
    height: 100%;
    width: 55%;
}

.main_bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -10;
}

.video {
    padding-top: 56.25%;
    width: 82%;
    position: relative;
    margin-left: 9%;
}
 
.video iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 5%;
    left: 0px;
}

.main_man {
    position: relative;
    top: -115px;
    right: -75%;
    /*
    position: absolute;
    bottom: -300px;
    right: 0;
    */
    width: 25%;
    height: 100%;
    z-index: 0;
}

/* トップ
-------------------------------------*/

#top_arrow {
    background: url("../img/content/top/arrow.svg") center center no-repeat;
}

.top_left {
    float: left;
    width: 46%;
}

.top_right {
    float: right;
    width: 46%;
}

.top_box01 {
    border: 1px solid rgba(255,255,255,0.7);
    background: rgba(113,177,224,0.7);
    box-sizing: border-box;
    padding: 60px 40px 40px;
    border-radius: 20px;
}

.top_box01 h2 {
    text-align: center;
    color: #FFF;
    border: none;
    font-size: 220%;
}

.top_box01 h2.yellow {
    color: #FFFF00;
}

.top_box01 p {
    color: #FFF;
    text-align: center;
}

.top_box01 p + p {
    text-align: left;
}

.top_bg01 {
    background: url("../img/common/bg02.jpg") center top repeat;
    padding: 80px 0 20px;
}

.top_box02 {
    background: #FFFFFF url("../img/content/top/man02.svg") bottom right 50px no-repeat;
    box-sizing: border-box;
    padding: 40px 60px 40px;
    border-radius: 20px;
}

.top_box02 ul {
    list-style: none;
}

.top_box02 ul li {
    text-align: left;
    background: url("../img/content/top/list.svg") left center no-repeat;
    font-size: 130%;
    margin: 15px 0;
    padding: 10px 0 10px 45px;
}

.top_box02 ul li span {
    font-size: 120%;
    font-weight: 600;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 70%, rgba(255,255,0,1) 70%);
}

.top_box03 {
    border: 1px solid rgba(255,255,255,0.8);
    background: rgba(113,177,224,0.8);
    box-sizing: border-box;
    padding: 40px 40px 20px;
    border-radius: 20px;
}

.top_box03 h2 {
    text-align: center;
    color: #FFFFFF;
    border: none;
    font-size: 160%;
    border-bottom: 1px dotted #FFF;
    padding: 0;
    padding-bottom: 25px;
}

.top_box03 p {
    color: #FFF;
}

.step01 {
    background: url("../img/content/top/step01.png") top 60px center no-repeat, rgba(113,177,224,0.8) ;
}

.step02 {
    background: url("../img/content/top/step02.png") top 60px center no-repeat, rgba(113,177,224,0.8) ;
}

.step03 {
    background: url("../img/content/top/step03.png") top 60px center no-repeat, rgba(113,177,224,0.8) ;
}

#top_flow {
    background: url("../img/content/top/bg_step.png") center center no-repeat;
}

.caption {
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 200%;
    font-weight: 600;
	text-align: center;
    margin-top: 100px;
}

.caption span {
    color: #0262B1;
}

.caption::before,
.caption::after {
	content: '';
	width: 1px;
	height: 40px;
	background-color: #333333;
}

.caption::before {
	margin-right: 30px;
	transform: rotate(-35deg)
}

.caption::after {
	margin-left: 30px;
	transform: rotate(35deg)
}

#home .box h2 {
    border: none;
    padding: 0;
    color: #0262B1;
    font-size: 180%;
    margin-bottom: 30px;
}

.maru img {
    border-radius: 15px;
}

/* スライダー
-------------------------------------*/

.slider {
}

.slide_main　{
	text-align: center;
	margin: 0 auto;
	position: relative;
}

.slide_img {
	position: relative;
	top: 0;
	left: 0;	
	text-align: center;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	z-index: 100;
	padding: 0 10px;
}

.slide_img a {
	display: block;
	margin: 5px;
	box-sizing: border-box;
	background: #FFF;
	box-shadow: 0 0 5px #CCC;
	text-decoration: none;
}

.slide_img a:hover {
    color: #333;
}

.slide_img div {
	padding: 20px 30px;
}

.slide_img div .name {
	font-size: 130%;
	margin-bottom: 10px;
    font-weight: 600;
}

.slide_img div span {
	font-size: 50%;
    font-family: "Rubik", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    margin-top: 15px;
    color: #CCC;
    float: right;
}

.slide_img a .imgWrap {
  overflow: hidden;
  background: #000;
}

.slide_img a .imgWrap img {
  width: 100%;
  height: auto;
  transition: .3s;
}

.slide_img a:hover .imgWrap img {
	transform: scale(1.1) !important;
	opacity: 0.5;
}

.slide-arrow {
	position: absolute;
	top: 50%;
	margin-top: -30px;
	z-index: 30;
}

.prev-arrow {
	left: 30px;
	width: 50px;
	height: 50px;
}

.next-arrow {
	right: 30px;
	width: 50px;
	height: 50px;
}


/* 下階層
--------------------------------------------------------------------------*/

#prt_main {
    position: relative;
	padding: 0px 0;
}

#prt_main h1 {
    padding-top: 130px;
	font-size: 300%;
	text-align: center;
    color: #FFF;
}

#prt_main h1 span {
    text-align: center;
    color: #FFFF00;
}

#prt_main h1:before {
	display: none;
}

#feature #prt_main_bg { background: url("../img/content/feature/img01.svg") right bottom no-repeat; }
#function #prt_main_bg { background: url("../img/content/function/img01.svg") right bottom no-repeat; }
#price #prt_main_bg { background: url("../img/content/price/img01.svg") right bottom no-repeat; }
#faq #prt_main_bg { background: url("../img/content/faq/img01.svg") right bottom no-repeat; }
#company #prt_main_bg { background: url("../img/content/company/img01.svg") right bottom no-repeat; }
#form #prt_main_bg { background: url("../img/content/contact/img01.svg") right bottom no-repeat; }
#contact #prt_main_bg { background: url("../img/content/contact/img01.svg") right bottom no-repeat; }
#policy #prt_main_bg { background: url("../img/content/policy/man.svg") right bottom no-repeat; }
#privacy #prt_main_bg { background: url("../img/content/policy/man.svg") right bottom no-repeat; }


#list_navi {
    margin-top: 100px;
    padding-bottom: 25px;
	width: 85%;
	box-sizing: border-box;
}

#list_navi div {
	text-align: left;
	font-size: 80%;
    color: #FFF;
}

#list_navi a {
    color: #FFF;
}

#list_navi span {
	background: url("../img/common/list_navi.svg") center left no-repeat;
	padding: 3px 0 3px 30px;
}

/* コンテンツ
--------------------------------------------------------------------------*/

#content {
    background: #F5F5F5 url("../img/common/3d.svg") top 50px right 50px no-repeat;
    padding: 100px 100px 0px;
    box-sizing: border-box;
    border-radius: 20px;
}

figure {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
	background: #000;
    border-top: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    border-right: 1px solid #FFF;
}

figure:after {
    position: absolute;
    background: #fff;
    content: "";
    display: block;
    width: 70%;
    height: 1px;
    left: 15%;
    top: 50%;
    transform: scale(0);
    transition: all .5s ease-out .5s;
}

figcaption p {
    position: absolute;
    text-align: center;
	border: none;
	margin: 0;
	padding: 0;
    width: 100%;
    opacity: 1;
    transition: all .5s ease-out .5s;
}

figcaption p {
    top: 35%;
	font-size: 100%;
    transform: translateY(0px);
	color: #FFF;
    font-weight: 500;
}

figcaption p span {
    display: block;
    font-size: 50%;
    color: #FFF;
    font-family: "Rubik", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

figure:hover figcaption p {
    opacity: 1;
    transform: translateY(0);
}
 
figure img {
    opacity: .4;
    transition: all 1.2s ease-out;
    transition: .5s;
}

figure:hover img {
    opacity: .8;
    transform: scale(1.2);
}

/* feature
-------------------------------------*/

.number {
    font-size: 400%;
    font-weight: 600;
    color: #71B1E0;
    position: relative;
    z-index: 10;
    margin-left: 50px;
    line-height: 100%;
    margin-bottom: 0;
}

.box {
    position: relative;
    background: #FFF;
    padding: 50px 50px 50px;
    border-radius: 15px;
    box-sizing: border-box;
    margin-top: -25px;
}

.left50 .box {
    border-radius: 15px 0 0 15px;
}

.highlight {
    display: inline;
    background: #FFFF00;
    padding-bottom: 2px;
}

.box a .imgWrap {
  overflow: hidden;
    border-radius: 10px;
}

.box a .imgWrap img {
  width: 100%;
  height: auto;
  transition: .3s;
    border-radius: 10px;
}

.box a:hover .imgWrap img {
	transform: scale(1.2) !important;
	opacity: 0.5;
}

.border {
    border-top: 1px solid #F5F5F5;
    margin-top: 20px;
}

.border ul {
    margin-top: 20px;
}

.border ul li {
    list-style: none;
    display: inline-block;
    float: left;
	width: 23.5%;
	margin-right: 2%;
}

.border ul li:nth-child(4) {
    margin-right: 0;
}

.border ul li a {
    display: block;
    background: #71B1E0;
    padding: 15px;
    color: #FFF;
    border-radius: 100px;
    text-decoration: none;
}

.border ul li a:hover {
    background: #0262B1;
}

.picture {
    position: relative;
    z-index: 1;
    margin-top: -30px;
    margin-bottom: 0;
}

.picture img {
    border-radius: 15px 15px 0 0;
}

.column3 a .picture {
  overflow: hidden;
  background: #000;
    border-radius: 15px 15px 0 0;
}

.column3 a .picture img {
  width: 100%;
  height: auto;
  transition: .3s;
    border-radius: 15px 15px 0 0;
}

.column3 a:hover .picture img {
	transform: scale(1.1) !important;
	opacity: 0.5;
}

.box_white {
    background: #FFF;
    border-radius: 0 0 15px 15px;
    padding: 25px 20px 10px;
    box-sizing: border-box;
}

.box_white h2 {
    border: none;
    font-size: 130%;
    color: #0262B1;
    padding: 0;
    margin-bottom: 15px;
    text-align: center;
}

/* faq
-------------------------------------*/

ul.faq li {
	list-style: none;
    margin-bottom: 20px;
}

.category {
	background: #FFF url(../img/content/faq/faq_q.svg) center left 20px no-repeat;
	padding: 20px 0 20px 70px;
	margin-bottom: 0px;
    border-radius: 10px;
	font-size: 95%;
	cursor: pointer;
	color: #4a4a4a;
}

.open {
    border-radius: 10px 10px 0 0 !important;
}

p.faqQ {
    margin-bottom: 0;
}

p.faqQ:hover {
	transition: 0.3s;
	color: #0059B2;
}

.faqA {
	background-color: #FFF;
    border-top: 1px solid #F5F5F5;
	padding: 15px 20px 20px 10px;
    border-radius: 0 0 10px 10px;
}

.faqA p {
	background: url(../img/content/faq/faq_a.svg)  top 5px left 10px no-repeat;
	margin-bottom: 0;
	padding: 10px 0 10px 60px;
	font-size: 95%;
}


/* price
-------------------------------------*/

h3.price {
    padding-left: 0;
    line-height: 130%;
    margin-bottom: 20px;
}

h3.price::after {
    display: none;
    
}

h3.price span {
    background: #0262B1;
    color: #FFF;
    padding: 5px 15px 7px;
    font-size: 70%;
    border-radius: 7px;
    margin-right: 10px;
}

h3.price2 {
    padding-left: 0;
    line-height: 130%;
    margin-bottom: 10px;
}

h3.price2::after {
    display: none;
    
}

h3.price2 span {
    background: #B10202;
    color: #FFF;
    padding: 5px 15px 7px;
    font-size: 70%;
    border-radius: 7px;
    margin-right: 10px;
}

.price_blue {
    font-size: 300%;
    color: #0262B1;
    font-weight: 600;
    line-height: 100%;
}

.price_blue span {
    font-size: 50%;
}

.price_red {
    font-size: 500%;
    color: #B10202;
    font-weight: 600;
    line-height: 100%;
}

.price_red span {
    font-size: 30%;
}

.bg_arrow {
    background: url("../img/content/price/arrow.svg") center left 38% no-repeat;
}

#flow_border {
    background: url("../img/content/price/border.svg") left 15% top repeat-y;
}

.flow_box {
    border: 1px solid #BAD7EF;
    padding: 80px 0px 30px;
    box-sizing: border-box;
    border-radius: 100%;
}

.flow01 {
    background: #FFF url("../img/content/price/step01.png") center top 50px no-repeat;
}

.flow02 {
    background: #FFF url("../img/content/price/step02.png") center top 50px no-repeat;
}

.flow03 {
    background: #FFF url("../img/content/price/step03.png") center top 50px no-repeat;
}

.flow01 p,
.flow02 p,
.flow03 p {
    text-align: center;
}

.flex {
    display: flex;
	justify-content: space-between;
	align-items: center;
    margin-bottom: 40px;
}


/* サイドバー
--------------------------------------------------------------------------*/

#sidebar {
	float: right;
	width: 25%;
	margin-bottom: 40px;
}


/* フッター
--------------------------------------------------------------------------*/

footer {
    margin-top: 120px;
}

#home footer {
    margin-top: 0px;
}

#footer_main {
    background: #FFFFFF;
}

#footer_main__left {
    float: left;
    padding-top: 60px;
}

#footer_main__left p {
    text-align: left;
    font-size: 90%;
    line-height: 160%;
}

#footer_main__right {
    float: right;
    background: url("../img/footer/footer_man.svg") right bottom -30px no-repeat;
    padding: 60px 0 90px;    
}

.link_btn {
	text-align: center;
	font-size: 120%;
    font-weight: 500;
    width: 360px;
    padding-right: 200px;
}

.link_btn2 {
	text-align: center;
	font-size: 120%;
    font-weight: 500;
    width: 400px;
    margin-left: auto;
    margin-right: auto;
}

.width80 .link_btn2 {
    width: 100%;
}

.link_btn a,
.link_btn2 a {
	transition: 0.3s;
	text-decoration: none;
	display: block;
	padding: 20px 0;
    background: #339191;
    color: #FFF;
	box-sizing: border-box;
    border-radius: 100px;
}

.link_btn a:hover,
.link_btn2 a:hover {
	color: #FFFFFF;
	transition: 0.3s;
	text-decoration: none;
	background-color: #E62418;
}

#footer_menu {
	background: #71B1E0;
	padding: 0px 0;
}

.sitemap {
}

.sitemap ul {
}

.sitemap ul li:nth-child(1) {
    border-left: 1px dotted #FFFFFF;
}

.sitemap ul li {
    display: inline;
	list-style: none;
    line-height: 100%;
    margin: 0;
    padding-bottom: 4px;
    border-right: 1px dotted #FFFFFF;
}

.sitemap ul li a {
    display: inline-block;
	font-size: 85%;
	text-decoration: none;
	color: #FFF;
    padding: 20px 20px 25px;
}

.sitemap ul li a:hover {
	text-decoration: none;
    color: #FFFF00;
}

#footer_btm {
    background: #0262B1;
    padding: 25px 0;
}

address {
    text-align: center;
    font-size: 85%;
    color: #FFF;
    font-weight: 500;
    font-style: normal;

}

/* その他
--------------------------------------------------------------------------*/

.fade {
    opacity : 0.1;
    transform : translate(0, 50px);
    transition : all 500ms;
}
 
.fade.scrollin {
    opacity : 1;
    transform : translate(0, 0);
}

/* loading
-------------------------------------*/

.loading {
	width: 100%;
	height: 100%;
	background: #FFF;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 20000;
}

.loading i {
    width: 48px;
    height: 48px;
    position: absolute;
    top: 50%;
    left: 50%;
    margin-top: -24px;
    margin-left: -24px;
}


/* その他ナビゲーション
--------------------------------------------------------------------------*/

.btn {
	text-align: center;
	font-size: 120%;
    font-weight: 500;
    width: 400px;
    margin-left: auto;
    margin-right: auto;
}

.btn a {
	transition: 0.3s;
	text-decoration: none;
	display: block;
	padding: 20px;
    color: #FFF;
    background: #71B1E0;
	box-sizing: border-box;
    border-radius: 100px;
}

.btn a:hover {
	color: #FFFFFF;
	transition: 0.3s;
	text-decoration: none;
	background-color: #0262B1;
}

.width80 .btn {
	text-align: center;
	font-size: 120%;
    font-weight: 500;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}


/* ページトップ
--------------------------------------------------------------------------*/

#page-top {
    position: fixed;
    bottom: 0px;
    right: 0px;
    font-size: 80%;
	z-index: 50;
}

#page-top a {
    background: #1260AD;
    text-decoration: none;
    color: #fff;
	padding: 25px 20px;
    text-align: center;
    display: block;
}

#page-top a:hover {
    text-decoration: none;
	background: #0088DB;
}


/* ワードプレス
--------------------------------------------------------------------------*/

.entry-footer {
	border: 1px solid #EEE;
	margin-bottom: 50px;
	margin-top: 30px;
	padding: 15px 0;
	background: #F5F5F5;
	font-size: 80%;
}

.screen-reader-text {
	/*
	display: none;
	*/
}

.nav-links {
}

.nav-previous {
	float:left
}

.nav-next {
	float: right;
}

nav.navigation {
    display: none;
}

.pagination {
    clear: both;
    padding: 20px 0;
    position: relative;
    font-size: 14px;
    line-height: 14px;
        text-align: center;
}
.pagination-box {
    display: inline-block;
}
.pagination span, .pagination a {
    display: block;
    float: left;
    margin: 2px 2px 2px 0;
    padding: 10px 15px 10px 15px;
    text-decoration: none;
    width: auto;
    color: #fff; /* 通常の文字色 */
    background: #1260AD; /* 通常の背景色 */
}
.pagination a:hover{
    color: #fff; /* マウスホバー時の文字色 */
    background: #022475; /* マウスホバー時の背景色 */
}
.pagination .current{
    padding: 10px 15px 10px 15px;
    color: #FFF; /* 現在のページの文字色 */
        background: #022475; /* 現在のページの背景色 */
}

@media only screen and (max-width: 413px) {
.pagination {
    font-size: 12px;
    line-height: 12px;
}
.pagination span, .pagination a {
    padding: 8px 10px 8px 10px;
}
.pagination .current{
    padding: 8px 10px 8px 10px;
}
}


/* ----------------------------------------------------------------------------------------------------
     タブレット（640px〜800px）
---------------------------------------------------------------------------------------------------- */ 
@media only screen and (max-width: 1100px) {

.pc {
	display:block;
}

.tab2 {
	display: block;
}

.sp {
	display:none;
}
	
.width {
	width: 95%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

}

/* ----------------------------------------------------------------------------------------------------
     タブレット（640px〜800px）
---------------------------------------------------------------------------------------------------- */ 
@media only screen and (max-width: 1030px) {

.pc {
	display:block;
}

.tab2 {
	display: block;
}

.sp {
	display:none;
}

/* 文字
--------------------------------------------------------------------------*/

h1 {
	font-size: 280%;
	margin-bottom: 50px;
	text-align: left;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 120%;
	position: relative;
    color: #595757;
}

h1 span {
	color: #FFFF00;
    color: #0262B1;
	display: block;
	font-size: 40%;
	font-weight: 500;
    margin-bottom: 10px;
	letter-spacing: 0.1em;
}

h1.text {
    color: #FFF;
}

h1.text span {
	color: #FFFF00;
}

h2 {
	font-size: 150%;
	text-align: left;
	font-style: normal;
	font-weight: 500;
	line-height: 160%;
	padding-left: 20px;
	padding-bottom: 3px;
	margin-bottom: 30px;
	border-left: 2px solid #0262B1;
}

h2 span {
	margin-top: 0px;
	display: block;
	font-size: 45%;
	font-style: normal;
	color: #E62418;
	font-weight: 500;
    text-transform: uppercase;
}

h3 {
	position: relative;
	padding-left: 30px;
	font-size: 140%;
	margin-bottom: 30px;
    font-weight: 500;
    line-height: 150%;
	text-align: left;
}

h3::after {
     position: absolute;
     top: 20px;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 20px;
     height:2px;
     background-color: #0262B1;
}

h4 {
    color: #E62418;
    font-size: 120%;
    text-align: left;
	font-weight: 500;
    margin-bottom: 20px;
}

h4 span {
    vertical-align: middle;
    background: #E62418;
    color: #FFF;
    font-size: 20%;
	font-weight: 500;
    padding: 8px 20px;
    margin-right: 10px;
    border-radius: 100px;
}

p + h2,
p + h3,
ul + h2,
ul + h3 {
	margin-top: 40px;
}

p {
	font-size: 90%;
	line-height: 200%;
	margin-bottom: 20px;
	text-align: left;
}

ul.text {
	text-align: left;
	font-size: 90%;
	padding-bottom: 20px;
	vertical-align: middle;
	padding: 0 0 0 25px;
}

ul.text li {
	line-height: 220%;
	padding: 0 0 0 0px;
	list-style: outside;
}

ul.text li span {
	display: inline-block;
	vertical-align: top;
}

/* ナビゲーション
--------------------------------------------------------------------------*/

nav {
}

#navi {
    display: none;
}

#menu_btn {
	display: block;
}

#menu_btn a {
	display: block;
    position: fixed;
    top: 30px;
    right: 30px;
    padding: 20px;
    box-sizing: border-box;
    z-index: 1000;
    background: #0262B1;
}

/* コンテンツ
--------------------------------------------------------------------------*/

#content {
    background: #F5F5F5 url("../img/common/3d.svg") top 50px right 50px no-repeat;
    padding: 100px 50px 0px;
    box-sizing: border-box;
    border-radius: 20px;
}

.top_box02 ul li {
    text-align: left;
    background: url("../img/content/top/list.svg") left center no-repeat;
    font-size: 120%;
    margin: 15px 0;
    padding: 10px 0 10px 45px;
}

.top_box02 ul li span {
    font-size: 110%;
    font-weight: 600;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 70%, rgba(255,255,0,1) 70%);
}

.top_box01 h2 {
    text-align: center;
    color: #FFF;
    border: none;
    font-size: 200%;
}

#home .box h2 {
    border: none;
    padding: 0;
    color: #0262B1;
    font-size: 160%;
    margin-bottom: 30px;
}


.price_blue {
    font-size: 200%;
    color: #0262B1;
    font-weight: 600;
    line-height: 100%;
}

.price_blue span {
    font-size: 40%;
}

.price_red {
    font-size: 380%;
    color: #B10202;
    font-weight: 600;
    line-height: 100%;
}

.price_red span {
    font-size: 20%;
}

#flow_border {
    background: url("../img/content/price/border.svg") left 22% top 100px repeat-y;
}

.left30 {
	width: 44%;
	float: left;
}

.right70 {
	width: 50%;
	float: right;
}
    
    
#top_flow {
    background: none;
}



/* フッター
--------------------------------------------------------------------------*/

.sitemap ul li a {
    display: inline-block;
	font-size: 85%;
	text-decoration: none;
	color: #FFF;
    padding: 20px 10px 25px;
}

.normalTbl table th {
    width: 33%;
}

}


/* ----------------------------------------------------------------------------------------------------
     スマホ（〜640px）
---------------------------------------------------------------------------------------------------- */ 
@media only screen and (max-width: 820px) {

.pc {
	display:none;
}

.tab2 {
	display: block;
}

.sp {
	display:block;
}

.sp2 {
	display: none;
}
	
.width {
	width: 80%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

.width80 {
    width: 100%;
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}

/* 文字
--------------------------------------------------------------------------*/

h1 {
	font-size: 190%;
	margin-bottom: 50px;
	text-align: left;
	font-weight: 500;
	letter-spacing: 0.1em;
	line-height: 120%;
	position: relative;
    color: #595757;
}

h1 span {
	color: #FFFF00;
    color: #0262B1;
	display: block;
	font-size: 40%;
	font-weight: 500;
    margin-bottom: 10px;
	letter-spacing: 0.1em;
}

h1.text {
    color: #FFF;
}

h1.text span {
	color: #FFFF00;
}

h2 {
	font-size: 160%;
	text-align: left;
	font-style: normal;
	font-weight: 500;
	line-height: 160%;
	padding-left: 20px;
	padding-bottom: 3px;
	margin-bottom: 30px;
	border-left: 2px solid #0262B1;
}

h2 span {
	margin-top: 0px;
	display: block;
	font-size: 45%;
	font-style: normal;
	color: #E62418;
	font-weight: 500;
    text-transform: uppercase;
}

h3 {
	position: relative;
	padding-left: 30px;
	font-size: 110%;
	margin-bottom: 30px;
    font-weight: 500;
    line-height: 150%;
	text-align: left;
}

h3::after {
     position: absolute;
     top: 15px;
     left:0;
     transform:translateY(-50%);
     content: '';
     width: 20px;
     height:2px;
     background-color: #0262B1;
}

h4 {
    color: #E62418;
    font-size: 120%;
    text-align: left;
	font-weight: 500;
    margin-bottom: 20px;
}

h4 span {
    vertical-align: middle;
    background: #E62418;
    color: #FFF;
    font-size: 20%;
	font-weight: 500;
    padding: 8px 20px;
    margin-right: 10px;
    border-radius: 100px;
}

p + h2,
p + h3,
ul + h2,
ul + h3 {
	margin-top: 40px;
}

p {
	font-size: 95%;
	line-height: 200%;
	margin-bottom: 20px;
	text-align: left;
}

ul.text {
	text-align: left;
	font-size: 95%;
	padding-bottom: 20px;
	vertical-align: middle;
	padding: 0 0 0 25px;
}

ul.text li {
	line-height: 220%;
	padding: 0 0 0 0px;
	list-style: outside;
}

ul.text li span {
	display: inline-block;
	vertical-align: top;
}

/* ヘッダー
--------------------------------------------------------------------------*/

#header {
    margin-top: 40px;
}

.header_left {
	float: left;
    margin-top: 5px;
	margin-left: 5%;
}

.header_right {
	float: right;
	margin-right: 5%;
}




/* コンテンツ
--------------------------------------------------------------------------*/

#container {
    position: relative;
}

section {
	padding-bottom: 120px;
}

article {
	margin-bottom: 30px;
}

.column2 {
	width: 100%;
	float: none;
	margin-right: 0%;
	margin-bottom: 20px;
}

.column2:nth-child(2n) {
	margin-right:0;
}

.column3 {
	width: 100%;
	float: none;
	margin-right: 0%;
	margin-bottom: 20px;
}

.column3:nth-child(3n) {
	margin-right: 0;
}

.column4 {
	width: 23.5%;
	float: left;
	margin-right: 2%;
	margin-bottom: 20px;
}

.column4:nth-child(4n) {
	margin-right: 0;
}

.column5 {
	width: 18%;
	float: left;
	margin-right: 2.5%;
	margin-bottom: 20px;
}

.column5:nth-child(5n) {
	margin-right: 0;
}

.column2Box {
	width: 50%;
	float: left;
	margin-right: 0%;
	border-right: 1px solid #FFF;
	border-bottom: 1px solid #FFF;
	box-sizing: border-box;
}

.column5Box {
	width: 20%;
	float: left;
}

.left50 {
	width: 100%;
	float: none;
}

.right50 {
	width: 100%;
	float: none;
}

.left60 {
	width: 100%;
	float: none;
}

.right40 {
	width: 100%;
	float: none;
}

.left30 {
	width: 100%;
	float: none;
}

.right70 {
	width: 100%;
	float: none;
}

.left40 {
	width: 100%;
	float: none;
}

.right60 {
	width: 100%;
	float: none;
}

/* トップページ
--------------------------------------------------------------------------*/

#main {
    margin-top: 40px;
    margin-bottom: 80px;
    display: block;
	justify-content: space-between;
	align-items: stretch;
}

.main_left {
    margin-left: 10%;
    width: 80%;
    margin-top: 40px;
}

.main_left p {
    color: #FFF;
    font-size: 130%;
    margin-bottom: 30px;
    margin-top: 30px;
}

.main_right {
    display: none;
    position: relative;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
}

.main_bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: -10;
}

.video {
    padding-top: 56.25%;
    width: 82%;
    position: relative;
    margin-left: 9%;
}
 
.video iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 5%;
    left: 0px;
}

.main_man {
    position: relative;
    top: -115px;
    right: -75%;
    /*
    position: absolute;
    bottom: -300px;
    right: 0;
    */
    width: 25%;
    height: 100%;
    z-index: 0;
}

/* トップ
-------------------------------------*/

#top_arrow {
    background: url("../img/content/top/arrow_sp.svg") center center no-repeat;
}

.top_left {
    float: none;
    width: 100%;
    margin-bottom: 40px;
}

.top_right {
    float: none;
    width: 100%;
}

.top_box01 {
    border: 1px solid rgba(255,255,255,0.7);
    background: rgba(113,177,224,0.7);
    box-sizing: border-box;
    padding: 40px 20px 40px;
    border-radius: 20px;
}

.top_box01 h2 {
    text-align: center;
    color: #FFF;
    border: none;
    font-size: 200%;
}

.top_box01 h2.yellow {
    color: #FFFF00;
}

.top_box01 p {
    color: #FFF;
    text-align: center;
}

.top_box01 p + p {
    text-align: left;
}

.top_bg01 {
    background: url("../img/common/bg02.jpg") center top repeat;
    padding: 80px 0 20px;
}

.top_box02 {
    background: #FFFFFF url("../img/content/top/man02.svg") bottom right 20px no-repeat;
    background-size: 50%;
    box-sizing: border-box;
    padding: 20px 20px 250px;
    border-radius: 20px;
}

.top_box02 ul {
    list-style: none;
}

.top_box02 ul li {
    text-align: left;
    background: url("../img/content/top/list.svg") left center no-repeat;
    font-size: 130%;
    margin: 15px 0;
    padding: 15px 0 15px 45px;
}

.top_box02 ul li span {
    font-size: 110%;
    font-weight: 600;
    background: rgb(255,255,255);
    background: linear-gradient(180deg, rgba(255,255,255,1) 70%, rgba(255,255,0,1) 70%);
}

.top_box03 {
    border: 1px solid rgba(255,255,255,0.8);
    background: rgba(113,177,224,0.8);
    box-sizing: border-box;
    padding: 40px 40px 20px;
    border-radius: 20px;
}

.top_box03 h2 {
    text-align: center;
    color: #FFFFFF;
    border: none;
    font-size: 160%;
    border-bottom: 1px dotted #FFF;
    padding: 0;
    padding-bottom: 25px;
}

.top_box03 p {
    color: #FFF;
}

.step01 {
    background: url("../img/content/top/step01.png") top 60px center no-repeat, rgba(113,177,224,0.8) ;
}

.step02 {
    background: url("../img/content/top/step02.png") top 60px center no-repeat, rgba(113,177,224,0.8) ;
}

.step03 {
    background: url("../img/content/top/step03.png") top 60px center no-repeat, rgba(113,177,224,0.8) ;
}

#top_flow {
    background: none;
}

.caption {
	display: block;
	justify-content: center;
	align-items: center;
	font-size: 200%;
    font-weight: 600;
	text-align: center;
    margin-top: 100px;
}

.caption span {
    display: inline;
    color: #0262B1;
}

.caption::before,
.caption::after {
    display: none;
	content: '';
	width: 1px;
	height: 40px;
	background-color: #333333;
}

.caption::before {
	margin-right: 0px;
	transform: rotate(-35deg)
}

.caption::after {
	margin-left: 0px;
	transform: rotate(35deg)
}

#home .box h2 {
    border: none;
    padding: 0;
    color: #0262B1;
    font-size: 130%;
    margin-bottom: 20px;
    margin-top: 20px;
}

.maru img {
    border-radius: 0 0 15px 15px;
}

/* スライダー
-------------------------------------*/

.slider {
}

.slide_main　{
	text-align: center;
	margin: 0 auto;
	position: relative;
}

.slide_img {
	position: relative;
	top: 0;
	left: 0;	
	text-align: center;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	z-index: 100;
	padding: 0 10px;
}

.slide_img a {
	display: block;
	margin: 5px;
	box-sizing: border-box;
	background: #FFF;
	box-shadow: 0 0 5px #CCC;
	text-decoration: none;
}

.slide_img a:hover {
    color: #333;
}

.slide_img div {
	padding: 20px 30px;
}

.slide_img div .name {
	font-size: 130%;
	margin-bottom: 10px;
    font-weight: 600;
}

.slide_img div span {
	font-size: 50%;
    font-family: "Rubik", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
    margin-top: 15px;
    color: #CCC;
    float: right;
}

.slide_img a .imgWrap {
  overflow: hidden;
  background: #000;
}

.slide_img a .imgWrap img {
  width: 100%;
  height: auto;
  transition: .3s;
}

.slide_img a:hover .imgWrap img {
	transform: scale(1.1) !important;
	opacity: 0.5;
}

.slide-arrow {
	position: absolute;
	top: 50%;
	margin-top: -30px;
	z-index: 30;
}

.prev-arrow {
	left: 30px;
	width: 50px;
	height: 50px;
}

.next-arrow {
	right: 30px;
	width: 50px;
	height: 50px;
}


/* 下階層
--------------------------------------------------------------------------*/

#prt_main {
    position: relative;
	padding: 0px 0;
}

#prt_main h1 {
    padding-top: 130px;
	font-size: 230%;
	text-align: center;
    color: #FFF;
}

#prt_main h1 span {
    text-align: center;
    color: #FFFF00;
}

#prt_main h1:before {
	display: none;
}

#feature #prt_main_bg { background: url("../img/content/feature/img01.svg") right bottom no-repeat; }
#function #prt_main_bg { background: url("../img/content/function/img01.svg") right bottom no-repeat; }
#price #prt_main_bg { background: url("../img/content/price/img01.svg") right bottom no-repeat; }
#faq #prt_main_bg { background: url("../img/content/faq/img01.svg") right bottom no-repeat; }
#company #prt_main_bg { background: url("../img/content/company/img01.svg") right bottom no-repeat; }
#form #prt_main_bg { background: url("../img/content/contact/img01.svg") right bottom no-repeat; }
#contact #prt_main_bg { background: url("../img/content/contact/img01.svg") right bottom no-repeat; }
#policy #prt_main_bg { background: url("../img/content/policy/man.svg") right bottom no-repeat; }
#privacy #prt_main_bg { background: url("../img/content/policy/man.svg") right bottom no-repeat; }

#prt_main_bg {
    background-size: 35% !important;
    }

#list_navi {
    margin-top: 100px;
    padding-bottom: 25px;
	width: 85%;
	box-sizing: border-box;
}

#list_navi div {
	text-align: left;
	font-size: 80%;
    color: #FFF;
}

#list_navi a {
    color: #FFF;
}

#list_navi span {
	background: url("../img/common/list_navi.svg") center left no-repeat;
	padding: 3px 0 3px 30px;
}

/* コンテンツ
--------------------------------------------------------------------------*/

#content {
    background: #F5F5F5 url("../img/common/3d.svg") top 20px right 20px no-repeat;
    background-size: 40%;
    padding: 60px 30px 0px;
    box-sizing: border-box;
    border-radius: 20px;
}

figure {
    margin: 0 auto;
    position: relative;
    overflow: hidden;
	background: #000;
    border-top: 1px solid #FFF;
    border-bottom: 1px solid #FFF;
    border-right: 1px solid #FFF;
}

figure:after {
    position: absolute;
    background: #fff;
    content: "";
    display: block;
    width: 70%;
    height: 1px;
    left: 15%;
    top: 50%;
    transform: scale(0);
    transition: all .5s ease-out .5s;
}

figcaption p {
    position: absolute;
    text-align: center;
	border: none;
	margin: 0;
	padding: 0;
    width: 100%;
    opacity: 1;
    transition: all .5s ease-out .5s;
}

figcaption p {
    top: 35%;
	font-size: 100%;
    transform: translateY(0px);
	color: #FFF;
    font-weight: 500;
}

figcaption p span {
    display: block;
    font-size: 50%;
    color: #FFF;
    font-family: "Rubik", sans-serif;
    font-optical-sizing: auto;
    font-weight: 500;
    font-style: normal;
}

figure:hover figcaption p {
    opacity: 1;
    transform: translateY(0);
}
 
figure img {
    opacity: .4;
    transition: all 1.2s ease-out;
    transition: .5s;
}

figure:hover img {
    opacity: .8;
    transform: scale(1.2);
}

/* feature
-------------------------------------*/

.number {
    font-size: 400%;
    font-weight: 600;
    color: #71B1E0;
    position: relative;
    z-index: 10;
    margin-left: 50px;
    line-height: 100%;
    margin-bottom: 0;
}

.box {
    position: relative;
    background: #FFF;
    padding: 30px 30px 20px;
    border-radius: 15px;
    box-sizing: border-box;
    margin-top: -25px;
}

.left50 .box {
    border-radius: 15px 15px 0 0;
}

.highlight {
    display: inline;
    background: #FFFF00;
    padding-bottom: 2px;
}

.box a .imgWrap {
  overflow: hidden;
    border-radius: 10px;
}

.box a .imgWrap img {
  width: 100%;
  height: auto;
  transition: .3s;
    border-radius: 10px;
}

.box a:hover .imgWrap img {
	transform: scale(1.2) !important;
	opacity: 0.5;
}

.border {
    border-top: 1px solid #F5F5F5;
    margin-top: 0px;
}

.border ul {
    margin-top: 20px;
}

.border ul li {
    list-style: none;
    display: inline-block;
    float: none;
	width: 100%;
	margin-right: 0%;
    margin-bottom: 10px;
}

.border ul li:nth-child(4) {
    margin-right: 0;
}

.border ul li a {
    display: block;
    background: #71B1E0;
    padding: 15px;
    color: #FFF;
    border-radius: 100px;
    text-decoration: none;
}

.border ul li a:hover {
    background: #0262B1;
}

.picture {
    position: relative;
    z-index: 1;
    margin-top: -30px;
    margin-bottom: 0;
}

.picture img {
    border-radius: 15px 15px 0 0;
}

.column3 a .picture {
  overflow: hidden;
  background: #000;
    border-radius: 15px 15px 0 0;
}

.column3 a .picture img {
  width: 100%;
  height: auto;
  transition: .3s;
    border-radius: 15px 15px 0 0;
}

.column3 a:hover .picture img {
	transform: scale(1.1) !important;
	opacity: 0.5;
}

.box_white {
    background: #FFF;
    border-radius: 0 0 15px 15px;
    padding: 25px 20px 10px;
    box-sizing: border-box;
}

.box_white h2 {
    border: none;
    font-size: 130%;
    color: #0262B1;
    padding: 0;
    margin-bottom: 15px;
    text-align: center;
}

/* faq
-------------------------------------*/

ul.faq li {
	list-style: none;
    margin-bottom: 20px;
}

.category {
	background: #FFF url(../img/content/faq/faq_q.svg) center left 20px no-repeat;
	padding: 20px 0 20px 70px;
	margin-bottom: 0px;
    border-radius: 10px;
	font-size: 95%;
	cursor: pointer;
	color: #4a4a4a;
}

.open {
    border-radius: 10px 10px 0 0 !important;
}

p.faqQ {
    margin-bottom: 0;
}

p.faqQ:hover {
	transition: 0.3s;
	color: #0059B2;
}

.faqA {
	background-color: #FFF;
    border-top: 1px solid #F5F5F5;
	padding: 15px 20px 20px 10px;
    border-radius: 0 0 10px 10px;
}

.faqA p {
	background: url(../img/content/faq/faq_a.svg)  top 5px left 10px no-repeat;
	margin-bottom: 0;
	padding: 10px 0 10px 60px;
	font-size: 95%;
}


/* price
-------------------------------------*/

h3.price {
    padding-left: 0;
    line-height: 130%;
    margin-bottom: 20px;
}

h3.price::after {
    display: none;
}

h3.price span {
    background: #0262B1;
    color: #FFF;
    padding: 5px 15px 7px;
    font-size: 70%;
    border-radius: 7px;
    margin-right: 10px;
}

h3.price2 {
    padding-left: 0;
    line-height: 130%;
    margin-bottom: 10px;
}

h3.price2::after {
    display: none;
    
}

h3.price2 span {
    background: #B10202;
    color: #FFF;
    padding: 5px 15px 7px;
    font-size: 70%;
    border-radius: 7px;
    margin-right: 10px;
}

.price_blue {
    font-size: 160%;
    color: #0262B1;
    font-weight: 600;
    line-height: 100%;
}

.price_blue span {
    font-size: 50%;
}

.price_red {
    font-size: 220%;
    color: #B10202;
    font-weight: 600;
    line-height: 100%;
}

.price_red span {
    font-size: 30%;
}

.bg_arrow {
    background: none;
}

#flow_border {
    background: none;
}

.flow_box {
    border: 1px solid #BAD7EF;
    padding: 80px 40px 30px;
    box-sizing: border-box;
    border-radius: 100%;
    margin-bottom: 20px;
}

.flow01 {
    background: #FFF url("../img/content/price/step01.png") center top 50px no-repeat;
}

.flow02 {
    background: #FFF url("../img/content/price/step02.png") center top 50px no-repeat;
    padding: 60px 0px 20px !important;
}

.flow03 {
    background: #FFF url("../img/content/price/step03.png") center top 50px no-repeat;
    padding: 60px 0px 20px !important;
}

.flow01 p,
.flow02 p,
.flow03 p {
    text-align: center;
}

.flex {
    display: block;
	justify-content: space-between;
	align-items: center;
    margin-bottom: 40px;
}


/* サイドバー
--------------------------------------------------------------------------*/

#sidebar {
	float: right;
	width: 25%;
	margin-bottom: 40px;
}


/* フッター
--------------------------------------------------------------------------*/

footer {
    margin-top: 80px;
}

#home footer {
    margin-top: 0px;
}

#footer_main {
    background: #FFFFFF;
}

#footer_main__left {
    float: left;
    padding-top: 60px;
}

#footer_main__left p {
    text-align: center;
    font-size: 90%;
    line-height: 160%;
}

#footer_main__right {
    float: right;
    background: url("../img/footer/footer_man.svg") right bottom 0px no-repeat;
    background-size: 40%;
    padding: 20px 0 60px;    
}

.link_btn {
	text-align: center;
	font-size: 120%;
    font-weight: 500;
    width: 100%;
    padding-right: 200px;
}

.link_btn2 {
	text-align: center;
	font-size: 120%;
    font-weight: 500;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.link_btn a,
.link_btn2 a {
	transition: 0.3s;
	text-decoration: none;
	display: block;
	padding: 20px 0;
    background: #339191;
    color: #FFF;
	box-sizing: border-box;
    border-radius: 100px;
}

.link_btn a:hover,
.link_btn2 a:hover {
	color: #FFFFFF;
	transition: 0.3s;
	text-decoration: none;
	background-color: #E62418;
}

#footer_main__right .link_btn {
	text-align: center;
	font-size: 120%;
    font-weight: 500;
    width: 80%;
    padding-right: 200px;
}


    
#footer_menu {
    display: none;
	background: #71B1E0;
	padding: 0px 0;
}

.sitemap {
}

.sitemap ul {
}

.sitemap ul li:nth-child(1) {
    border-left: 1px dotted #FFFFFF;
}

.sitemap ul li {
    display: inline;
	list-style: none;
    line-height: 100%;
    margin: 0;
    padding-bottom: 4px;
    border-right: 1px dotted #FFFFFF;
}

.sitemap ul li a {
    display: inline-block;
	font-size: 85%;
	text-decoration: none;
	color: #FFF;
    padding: 20px 20px 25px;
}

.sitemap ul li a:hover {
	text-decoration: none;
    color: #FFFF00;
}

#footer_btm {
    background: #0262B1;
    padding: 25px 0;
}

address {
    text-align: center;
    font-size: 85%;
    color: #FFF;
    font-weight: 500;
    font-style: normal;

}
    
/* その他ナビゲーション
--------------------------------------------------------------------------*/

.btn {
	text-align: center;
	font-size: 120%;
    font-weight: 500;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
}

.btn a {
	transition: 0.3s;
	text-decoration: none;
	display: block;
	padding: 20px;
    color: #FFF;
    background: #71B1E0;
	box-sizing: border-box;
    border-radius: 100px;
}

.btn a:hover {
	color: #FFFFFF;
	transition: 0.3s;
	text-decoration: none;
	background-color: #0262B1;
}

.normalTbl table th {
    display: block;
    width: auto;
    padding: 20px 20px 10px;
    border-bottom: none;
    margin: 0;
}

.normalTbl table th:after{
    display: none;
    padding: 0;
}

.normalTbl table td {
    display: block;
    width: auto;
    padding: 0 20px 20px;
}
    
.normalTbl input {
	height: 40px;
	padding: 0 10px;
	border: 1px solid #CCC;
    width: 80% !important;
}

.normalTbl input[type=checkbox] {
	border: 1px solid #CCC;
	width: 20px !important;
	height: 20px !important;
    padding: 0 0 10px;
}

.normalTbl input[type=radio] {
	border: 1px solid #CCC;
	width: 15px !important;
	height: 15px !important;
    padding: 0 0 10px;
}


}




/* ----------------------------------------------------------------------------------------------------
     スマホ（〜640px）
---------------------------------------------------------------------------------------------------- */ 
@media only screen and (max-width: 640px) {


.sp2 {
	display: block;
}


}
