@charset "UTF-8";

/* 共通 /////////////////////////////////////////////////////////////////////////////////*/

#header .inner {
	padding: 15px 0;
	display: table;
}

#header h1{
	display: table-cell;
	width: 60%;
}


#header .tel{
	display: table-cell;
	color: #fff;
	border-left: none;
	text-align: right;
	width: 40%;
	font-size: 14px;
}

#header .tel img{
	vertical-align: middle;
}

#header .tel a{
	color: #fff;
	font-weight: normal;
}


#header .tel a:hover{
	color: #ed6e46;
	font-weight: normal;
}


/* SP */
@media screen and (max-width: 767px) {
	
#header .inner {
	padding: 27px 0;
	display: block;
	box-sizing: border-box;
	width: 100%;
}

#header h1{
	display: block;
	width: 95%;
	margin: 0 auto;
}


#header .tel{
	display: block;
	color: #fff;
	border-left: none;
	text-align: left;
	width: 75%;
	font-size: 14px;
	margin: 0 auto;
	text-indent: -24px;
}
	
#header .tel img{
	width: 20px;
	height: 20px;
	}
	
}


@media screen and (max-width:767px){
	#header .english{
	position: absolute;
	top:120px;
	right: 5%;
}
	
#header .english img{width: 90px;height: auto;}
}



/* メインビジュアル /////////////////////////////////////////////////////////////////////////////////*/
#main_bg{
	position: relative;
}

#main_bg .english{
	position: absolute;
	top: 10px;
	right: 0;
}

#main_bg .english a:hover{
	opacity: 0.6;
}



#main_bg h2 {
    margin-bottom: 30px;
}


#main_bg .box {
	display: table;
	table-layout: fixed;
}

#main_bg .kv {
	float: none;
	display: table-cell;
	width: 410px;
	padding-right: 30px;
	vertical-align: middle;
}

#main_bg .kv img {
	width: 410px;
	height: auto;
	margin: 0;
}

#main_bg .btn{
	display: table-cell;
	width: 520px;
	margin-top: 0;
	padding-top: 0;
  border-top: none;
  border-bottom: 4px solid #0b3775;
	vertical-align: middle;
}

#main_bg .btn .btn_txt{
	margin-bottom: 15px;
	padding-bottom: 20px;
  	border-bottom: 4px solid #0b3775;
	text-align: left;
	color: #0b3775;
}

#main_bg .btn ul{
	margin-bottom: 15px;
}

#main_bg .btn li{
	padding: 0 5px 0 0;
	vertical-align: middle;
}

#main_bg .btn h3{
	margin: 0;
}

#main_bg .btn a{
	display: inline-block;
	margin: 0 40px 0 0;
}

#main_bg .btn a:last-of-type{
	margin: 0;
}

/* SP */
@media screen and (max-width: 767px) {
	
	#main_bg .kv {
		display: block;
		width: 100%;
		margin-bottom: 10px;
		padding: 0;
		text-align: center;
	}
	
	#main_bg .kv img {
		width: 100%;
	}
	
	#main_bg .btn {
		display: block;
		width: 95%;
		margin: 0 auto;
	}
	
	
	#main_bg .btn ul {
		display: block;
	}
	
	#main_bg .btn li,
	#main_bg .btn li:last-child{
		display: block;
		margin: 0;
	}
	
	#main_bg .btn li img{width: 100%;}		
	
	#main_bg .btn h3{
		margin-bottom: 20px;
	}
	#main_bg .btn h3 img {
		height: 40px;
		width: auto;
	}
}


#content_00 .content_btn {
	text-align: center;
}


/* summary_03 /////////////////////////////////////////////////////////////////////////////////*/
#content_00 #summary_03 li.link_arrow {
	background: url(/pro/img/icon_link_arrow.svg) no-repeat left center;
	padding-left: 12px;
    font-size: 16px;
}

#content_00 #summary_03 li.link_arrow span{
	font-weight: bold;
	}


#content_00 #summary_03 ul.list li{
	list-style: disc;
	margin-left: 20px;
}


/* summary_06 /////////////////////////////////////////////////////////////////////////////////*/
#summary_06 ul.mb li a {
    font-size: 16px;
}


#summary_06 ul.en li a {
    font-size: 16px;
}




/* summary_08 /////////////////////////////////////////////////////////////////////////////////*/
#summary_08 .content_08_box {
	display: table;
	table-layout: fixed;
}

#summary_08 .content_08_img {
	display: table-cell;
	padding-right: 25px;
	vertical-align: top;
}

#summary_08 .content_08_txt {
	display: table-cell;
	vertical-align: top;
}

#summary_08 .content_00_txt {
    font-size: 18px;
    color: #0b3775;
    font-weight: bold;
    margin-bottom: 1em;
}

@media screen and (max-width:767px){
	
#summary_08 .content_08_box {
	display: block;
	table-layout: fixed;
}

#summary_08 .content_08_img {
	display: block;
	padding-right: 25px;
	vertical-align: top;
}

#summary_08 .content_08_txt {
	display: block;
	vertical-align: top;
}

#summary_08 .content_00_txt {
    font-size: 18px;
    color: #0b3775;
    font-weight: bold;
    margin-bottom: 1em;
}
	
	
}




/* inner us /////////////////////////////////////////////////////////////////////////////////*/

#content_00 .inner.us article {
	word-break: normal;	
}

#content_00 .inner.us #us_kv {
	width: 960px;
	margin: auto;
	padding: 35px 0;
	box-sizing: border-box;
}

#us_kv .box {
	display: table;
	table-layout: fixed;
}

#us_kv .kv {
	float: none;
	display: table-cell;
	width: 410px;
	padding-right: 30px;
	vertical-align: middle;
}

#us_kv .kv img {
	width: 380px;
	height: auto;
}

#us_kv .btn{
	display: table-cell;
	width: 520px;
	vertical-align: middle;
}


#us_kv .btn a:hover{
	opacity: 0.6;
}

#us_kv .btn_txt{
	margin: 20px 0;
}

#us_kv .btn_txt a:hover{
	opacity: 1;
}	



@media screen and (max-width:767px){
	
#content_00 .inner.us #us_kv {	
	width: 100%;
	margin:0 auto;
	padding: 35px 0;
	box-sizing: border-box;
	}

	
#us_kv .box {
	display: block;
	table-layout: fixed;
	margin: 0 auto;
}	
	
#us_kv .kv {
	float: none;
	display: block;
	width: 100%;
	padding-right: 0;
	margin: 0 auto;
	vertical-align: middle;
}
	
#us_kv .kv img {
	width: auto;
}

#us_kv .btn{
	display: block;
	width: 100%;
	vertical-align: middle;
	margin: 20px 0;
	text-align: center;
	
}

	
}


#content_00 .inner.us article h4 {
	margin-bottom: 20px;
	font-size: 30px;
	font-weight: bold;
	color: #0b3775;
	line-height: 1;
}

#content_00 .inner.us article#summary_05 h4 {
	text-align: center;
}

#content_00 .inner.us .content_00_txt {
	margin-bottom: 20px;
	line-height: 1;
}

#content_00 .txt_licence {
  line-height: 1;
}

#content_00 .inner.us #summary_01 {
	border-top: 2px solid #0b3775;
}

#content_00 .inner.us #summary_05 .panel_box {
    width: 28%;
	margin: 20px 0;
}


@media screen and (max-width:767px){
	#content_00 .inner.us #summary_05 .panel_box {
    width: 100%;
	margin: 20px 0;
}
	
	#content_00 .inner.us #summary_05 .panel_box h4 img{
		width: 50%;
	}	
	
}



#content_00 .inner.us #summary_05 .panel_box.arrow {
    width: 8%;
}

@media screen and (max-width:767px){
	#content_00 .inner.us #summary_05 .panel_box.arrow {
    text-align: center;
		 width: 100%;
	}
}




#content_00 .inner.us #summary_06 .en li {
    display: inline-block;
    margin: 0 0.5em;
}

#content_00 .inner.us #summary_07 .content_07_box {
	display: table;
	table-layout: fixed;
}

#content_00 .inner.us #summary_07 .content_07_img {
	display: table-cell;
	vertical-align: top;
}

#content_00 .inner.us #summary_07 .content_07_img a:hover{
	opacity: 0.6;
}



@media screen and (max-width:767px){
	#content_00 .inner.us #summary_07 .content_07_img {
	display: block;
	}
	
	#content_00 .inner.us #summary_07 .content_07_img img{
	width: 100%;
	}
}

#content_00 .inner.us #summary_07 .content_07_txt {
	display: table-cell;
	vertical-align: top;
	padding-right: 40px;
}


@media screen and (max-width:767px){
#content_00 .inner.us #summary_07 .content_07_txt {
	display: block;
	margin: 20px 0;
	padding-right: 0;
}	
	
}



/* points /////////////////////////////////////////////////////////////////////////////////*/

#points .cards:first-of-type {
	margin-bottom: 85px;
}

@media screen and (max-width:767px){
	
	#points .cards:first-of-type {
		margin-bottom: 60px;
	}	
	
}

.price-head--card {
    height: 375px;
    margin-bottom: 0;
    padding-top: 40px;
}
.primary-list {
    line-height: 1.8;
    list-style: none;
	padding-left: 0;
}
.primary-list__item {
    position: relative;
    padding-left: 16px;
	font-size: 1.2rem
}
.primary-list__item::before {
    position: absolute;
    top: .9em;
    left: 0;
    content: "";
    display: inline-block;
    width: 4px;
    height: 4px;
    background-color: #fff;
    border-radius: 100%;
    transform: translate(100%,-50%);
}
.price-content__text-wrap{
  width: 80%;
  margin: 0 auto;
  max-width: 500px;
}
/*フッター*/
.footer-minutely__row-title{
    padding: 4px 4px;
    border: 1px solid #fff;
    display: inline-block;
    font-weight: bold;
    letter-spacing: .1em;
    word-break: keep-all;
	font-size: 1.4rem;
}
.footer-top__content-title{
padding-bottom: 24px;	
}
.footer-top__time_wrap{
text-align: center;
padding-bottom: 42px;
}
.footer-top__time{
color: #fff;
font-size: 1.6rem;
font-weight: bold;
}
/*料金モーダル*/
.modal__heading_subtxt{
text-align: center;
font-size: 1.2rem
}
.modal__body{
padding: 16px;
text-align: center;
}
.modal__price_title{
color: #003e70;
font-size: 1.6rem;
font-weight: bold;
}
.modal__price_txt{
font-size: 1.2rem;
}

/* -------------------------------
  information-area
---------------------------------*/
.information-area {
  padding: 64px 0;
  background-color: #003e70;
}
@media screen and (max-width: 414px) {
  .information-area {
    padding: 48px 0;
  }
}

.information-area__heading {
  font-size: 1.8rem;
  font-weight: bold;
  text-align: center;
  line-height: 1.8;
  letter-spacing: .1em;
}
@media screen and (max-width: 414px) {
  .information-area__heading {
    font-size: 1.4rem;
  }
}

/* information-area--price */
.information-area--price {
  background-color: #003e70;
}
.information-area--price .btn-area--information {
  margin: 20px 16px 0;
}

.primary-btn--detail-o {
    background-color: #f48600;
	color: #fff;}


.price-main--group .price-content:nth-of-type(2n) {
    border-top: 1px solid #c7d3e6;
    padding: 36px 0;
}
.media ul {
    width: 33.3%;
    padding: 30px 0 0;
}
ul {
    list-style: none;
}
.media li {
    list-style: none;
}
.media-list__figure {
    margin: auto;
}
.media-list__figure figure {
    max-width: 180px;
    margin: auto;
}
.media-list__pricearea {
    margin: 10px 0;
    font-weight: bold;
}
.houjin-plan-detail-price__number--large {
    color: #f58700;
    font-size: 24px;
    line-height: 1.1;
}

.media-list__maintxt {
    font-size: 1.4rem;
}
.media {
    display: flex;
    max-width: 770px;
    width: 100%;
    margin: 0 auto 0;
    text-align: center;
}
.price-option-main .p-priceOptionFoot {
    padding: 40px 0 0;
    background: #fff;
}
.p-priceOptionFoot_title {
    font-size: 2.5rem;
    font-weight: bold;
    text-align: center;
    margin: 0 auto 20px;
}
    .p-priceOptionFoot__pic {
        margin-right: 40px;    
		width: 35%;
    }

.p-priceOptionFoot__column {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.price-option-main .p-priceOptionFoot__text {
    color: #003e70;
	font-size: 2rem;
	font-weight: bold;
}
.plan-sub {
    margin-top: 40px;
}
.common-inner .price-option-main .information-area {
    background-color: #fff !important;
}
.price-option-main .btn-area--information {
    margin: 20px 0 0;
}
.btn-area--footer {
    margin-bottom: 20px;
}
.btn-wrap--xl-m-flex {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
}
.btn-area--plan .primary-btn {
    width: 400px;
    margin: 0 auto;
}
.primary-btn--register .primary-btn__inner {
    background-color: #f78600;
}
.price-content__heading {
    font-size: 3rem;
}
.price-content {
	padding: 86px 0 36px;
}
.section-function--last-child {
	margin: 0 auto 0;	        
	padding-bottom: 0;
}
.plan-card__tag {
    padding: 0 45px;
}
@media screen and (max-width: 1279px) {
	.box-3col__item:first-of-type .price-head--card {
		height: 300px;
	}
	.box-3col__item:nth-of-type(3) .price-head--card {
		height: 385px;
	}
	.box-3col__item .price-head--card {
		height: 270px;
	}
	.btn-area--plan .primary-btn {
		width: 100%;
		margin: 0 auto;
	}
	.btn-area--information {
		margin: 20px 0 0;
	}
	
	
}
@media screen and (max-width: 768px) {
	.btn-wrap--xl-m-flex {
		display: inherit;
	}    
	.btn-area--footer .primary-btn + .primary-btn {
        margin-left: 0%;
		margin-top: 3%;
    }
	.media {
		display: inherit;
		max-width: 700px;
		width: 100%;
		margin: 0 auto 0;
		text-align: center;
	}
	.media ul {
		width: 100%;
		padding: 30px 0 0;
	}
	.section-function--last-child {
		margin: 0 auto;
	}
}

.subpage-top {
    padding-bottom: 72px;
    padding-top: 50px;
}
.plan-card__tag {
	min-width: 150px;
}
.function-main {
    padding: 0 ;
}
.function-inner {
    max-width: 100%;
}