@charset "utf-8";
/* 
html5doctor.com Reset Stylesheet
v1.6.1
Last Updated: 2010-09-17
Author: Richard Clark - http://richclarkdesign.com 
Twitter: @rich_clark
*/

dd {
    display: block;
    margin-inline-start: 0;
}

html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
}

body {
	line-height:1;
    margin: 0;
    padding: 0;
}

html { line-height: 0;}

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
	display:block;
}

nav ul {
	list-style:none;
}

blockquote, q {
	quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content:'';
	content:none;
}

a,
a:visited{
	margin:0;
	padding:0;
	font-size:100%;
	vertical-align:baseline;
	background:transparent;
    text-decoration: none;
    color: #000;
}

a:hover,
a:active {
    color: #000;
}

a:hover {
	opacity: 1.0;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}


del {
	text-decoration: line-through;
}

abbr[title], dfn[title] {
	border-bottom:1px dotted;
	cursor:help;
}

table {
	border-collapse:collapse;
	border-spacing:0;
}

input, select {
	vertical-align:middle;
}

li,ul {
	list-style: none;
}


/*****************

clearfix

*****************/
.clearfix:after {
	content: ".";
	display: block;
	height: 0;
	clear: both;
	visibility: hidden;
}

.clearfix {
	min-height: 1%;
}

/* Hides from IE-mac */
* html .clearfix {
	height: 1%;
}
.clearfix {
	display: block;
}
/* End hide from IE-mac */



/***********   COMMON settng ***********/
html {font-size: 15px;}
body {
    font-family: 'Albert Sans', 'Noto Sans JP', '游ゴシック体', 'YuGothic', 'Yu Gothic medium', 'Hiragino Sans', 'Meiryo', sans-serif;
	font-size: 15px;
    line-height: 1.7;
	text-align: left;
    background: #fff;
    -webkit-text-size-adjust: 100%;
	color: #000;
	letter-spacing: 0.08em;
	font-feature-settings: "palt";
}

.pc_disp {display: block;}
.sp_disp {display: none;}
.pc_img {display: inline-block;}
.sp_img {display: none;}

a img:hover,
input[type=image]:hover {
	-webkit-filter: brightness(1.2);
	filter: brightness(1.2);
	opacity: 1.0;
	-webkit-transition: 0.2s ease-in-out;
	-moz-transition: 0.2s ease-in-out;
	-o-transition: 0.2s ease-in-out;
	transition: 0.2s ease-in-out;
}

.left { float: left;}
.right { float: right;}

img {
	width: 100%;
	height:auto;
	line-height: 0;
	vertical-align: middle;
}
main {
	margin: 0;
	overflow: hidden;
}

section {
	margin: auto;
	padding: 80px 0;
}

.inner_S {
	max-width: 900px;
	width: 90%;
	margin: auto;
}
.inner_M {
	max-width: 1100px;
	width: 90%;
	margin: auto;
}



/***********   ANNIMATION settng ***********/

/* 上下フェードイン設定 */

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

/***********   TEXT SETTING ***********/

.txt_L {font-size: 2.0rem; line-height: 1.5;}
.txt_M {font-size: 1.3rem; line-height: 1.7;}
.txt_S {font-size: 0.7rem;}
.txt_cnt { text-align: center; }
.txt_right { text-align: right; display: block;}

.txt_cc_jp {
	font-family: 'ads-piccolo', sans-serif;
	font-weight: 400;
	font-style: normal;
}

.white { color:#fff; }
.blue { color:#0e5389; }
.sky { color:#3699e5; }
.pink { color:#f56e87; }
.yellow { color:#F8C92E; }

strong { font-weight:700; }

sup {
	font-size: 0.4em;
	vertical-align: top;
}


/*********** TITLE SETTING ***********/

.ttl_box_y {
	width: 100%;
	max-width: 475px;
	margin: 30px auto 0;
	text-align: center;
}
.ttl_box_wh,.ttl_box_blue {
	width: 100%;
	text-align: center;
}
.ttl_box_wh h2,.ttl_box_blue h2 {
	font-size: 45px;
	font-weight: 800;
	line-height: 1.4;
	color: #fff;
	margin: 10px 0;
}
.ttl_box_blue h2 {
	color: #0e5389;
}


/***********   OBJECT SETTING ***********/

.bg_white { background:#fff; }
.bg_blue { background: #1379ba; }
.bg_sky { background:#d5edff; }

.col2_box,.col3_box {
	display:flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.col3_box {
	justify-content:flex-start;
}

.txt_box p {
	margin-top:0.8em;
}

.table_box {
	display: flex;
    flex-wrap: wrap;
    border-top: 1px dashed #BABABA;
	margin: 0;
}
.table_box > dt,
.table_box > dd {
	display: flex;
	flex-direction: column;
	justify-content: top;
	border-bottom: 1px dashed #BABABA;
	padding: 1.0em 0;
}
.table_box > dt:first-child,
.table_box > dd:nth-child(2) {
	border-top: none;
}
.table_box > dt {
	width: 25%;
}
.table_box > dd {
	width: 75%;
}

/*********** CV SETTING ***********/

.btn_yellow {
	position: relative;
	background: #fff775;
	text-align: center;
	border-radius: 100px;
	border: 2px solid #000;
	width: 380px;
	margin: 20px auto;
	filter: drop-shadow(2px 3px 0 #ccc);
}
.btn_yellow::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: 25px;
	margin: auto;
	width: 6px;
	height: 6px;
	border-right: 3px solid #000;
	border-bottom: 3px solid #000;
	transform: rotate(-45deg);
}
.btn_yellow a {
	width: 100%;
	padding: 0.5em 0;
	color: #000;
	display: block;
	font-weight: 700;
}

.btn_detaile {
	position: relative;
	background: #fff775;
	text-align: center;
	border-radius: 100px;
	border: 2px solid #000;
	width: 100%;
	margin: 20px auto;
	font-size: 20px;
	filter: drop-shadow(2px 3px 0 #ccc);
	cursor: pointer;
}
.btn_detaile::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: 25px;
	margin: auto;
	width: 8px;
	height: 8px;
	border-right: 3px solid #000;
	border-bottom: 3px solid #000;
	transform: rotate(-45deg);
}
.btn_detaile a {
	width: 100%;
	padding: 0.5em 0;
	color: #000;
	display: block;
	font-weight: 700;
}
.btn_blue {
	position: relative;
	background: #9ddeff;
	text-align: center;
	border-radius: 100px;
	border: 2px solid #000;
	width: 100%;
	margin: 20px auto;
	font-size: 20px;
	filter: drop-shadow(2px 3px 0 #ccc);
}
.btn_blue::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: 25px;
	margin: auto;
	width: 8px;
	height: 8px;
	border-right: 3px solid #000;
	border-bottom: 3px solid #000;
	transform: rotate(-45deg);
}
.btn_blue a {
	width: 100%;
	padding: 0.5em 0;
	color: #000;
	display: block;
	font-weight: 700;
}

.cv_bottom {
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
	right: 0;
	margin:auto;
	padding: 10px 0;
	text-align: center;
	background: rgba(40,122,187,0.9);
	color: #fff;
	z-index: 9990;
}
.cv_bottom .box {
	max-width: 450px;
	margin: auto;
}
.cv_bottom .box p {
	font-size: 17px;
	font-weight: 700;
}

/*********** KV SETTING ***********/

header .h_logo .logo1 {
	position: absolute;
	width: 140px;
	top: 20px;
	right: 320px;
	z-index: 9990;
}
header .h_logo .logo2 {
	position: absolute;
	width: 270px;
	top: 10px;
	right: 15px;
	z-index: 9990;
}


/*********** FV SETTING ***********/

.fv {
	padding: 0;
	margin: 0;
	background: #ceefff;
	position: relative;
}
.fv .kv {
	position: relative;
	width: 100%;
	height: 750px;
	overflow: hidden;
}
.fv .kv .img_products {
	position: absolute;
	width: 305px;
	top: 120px;
	left: 0;
	right: -800px;
	margin: auto;
}
.fv .kv .img_cc {
	position: absolute;
	width: 870px;
	top: 20px;
	left: -500px;
	right: 0;
	margin: auto;
}
.fv .kv .bg_img {
	position: absolute;
	width: 100%;
	height: 220px;
	bottom: 0;
	margin: auto;
	background: url("../images/fv_cp_bg_top.png") center / 100% 220px;
}
.fv .img_icon {
	position: absolute;
	width: 480px;
	top: 405px;
	left: -650px;
	right: 0;
	margin: auto;
	z-index: 9999;
}
.fv .fv_cp {
	position: relative;
	width: 100%;
	background: url("../images/fv_cp_bg.png") repeat-y top / 100%;
	padding-bottom: 120px;
}
.fv .fv_cp .bg_img {
	position: absolute;
	width: 100%;
	height: 120px;
	bottom: 0;
	margin: auto;
	background: url("../images/fv_cp_bg_bt.png") center / 100% 120px;
	z-index: 9;
}
.fv .fv_cp .cp_bnr {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	z-index: 10;
}
.fv .fv_cp .cp_bnr li {
	width: 46%;
	padding: 0 2%;
}
.fv .fv_cp .limit {
	width: 580px;
	margin: 30px auto 0;
}

/* イラスト設置 */
.fv .illust1 {
	position: absolute;
	width: 90px;
	top: 400px;
	left: 0;
	right: -50px;
	margin: auto;
}
.fv .illust2 {
	position: absolute;
	width: 95px;
	top: 490px;
	left: 0;
	right: -280px;
	margin: auto;
}
.fv .illust3 {
	position: absolute;
	width: 130px;
	top: 380px;
	left: 0;
	right: -1270px;
	margin: auto;
}
.fv .illust4 {
	position: absolute;
	width: 260px;
	top: 570px;
	left: 0;
	right: -900px;
	margin: auto;
}

@media screen and (max-width: 1200px) {

.fv .kv {
	position: relative;
	width: 100%;
	height: 700px;
	overflow: hidden;
}
.fv .kv .bg_img {
	position: absolute;
	width: 100%;
	height: 180px;
	bottom: 0;
	margin: auto;
	background: url("../images/fv_cp_bg_top.png") center / 100% 180px;
}
.fv .kv .img_products {
	position: absolute;
	width: 260px;
	top: 120px;
	left: 0;
	right: -670px;
	margin: auto;
}
.fv .kv .img_cc {
	position: absolute;
	width: 700px;
	top: 80px;
	left: -350px;
	right: 0;
	margin: auto;
}
.fv .img_icon {
	position: absolute;
	width: 420px;
	top: 380px;
	left: -470px;
	right: 0;
	margin: auto;
	z-index: 9999;
}
.fv .fv_cp .bg_img {
	position: absolute;
	width: 100%;
	height: 100px;
	bottom: 0;
	margin: auto;
	background: url("../images/fv_cp_bg_bt.png") center / 100% 100px;
	z-index: 9;
}
	
/* イラスト設置 */
.fv .illust1 {
	position: absolute;
	width: 90px;
	top: 400px;
	left: 0;
	right: -100px;
	margin: auto;
}
.fv .illust2 {
	position: absolute;
	width: 95px;
	top: 490px;
	left: 0;
	right: -290px;
	margin: auto;
}
.fv .illust3 {
	position: absolute;
	width: 130px;
	top: 380px;
	left: 0;
	right: -1270px;
	margin: auto;
}
.fv .illust4 {
	position: absolute;
	width: 260px;
	top: 570px;
	left: 0;
	right: -900px;
	margin: auto;
}
	
}


/*********** OFFER ***********/

.offer {
	position: relative;
}
.offer .custom-shape-divider-bottom-1747121694 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}

.offer .custom-shape-divider-bottom-1747121694 svg {
    position: relative;
    display: block;
    width: calc(115% + 1.3px);
    height: 150px;
    transform: rotateY(180deg);
}

.offer .custom-shape-divider-bottom-1747121694 .shape-fill {
    fill: #FFFFFF;
}

.offer .cc_gradient {
	text-align: center;
	margin:0 auto 5%;
}
.offer .cc_gradient p {
	font-size: 54px;
	font-weight: 800;
	line-height: 1.4;
	display: inline-block;
	background: linear-gradient(90deg, #ffdea1 0%, #ffb1bf 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.offer_box {
	background: #fff;
	border: 3px solid #000;
	border-radius: 20px;
	box-sizing: border-box;
	margin: 30px auto;
}
.offer_box .box {
	padding: 30px 60px;
	box-sizing: border-box;
}
.offer_box .box2 {
	padding: 30px 110px;
	box-sizing: border-box;
}
.offer_box .lead {
	text-align: center;
}
.offer_box .lead img {
	width: 290px;
}
.offer_box .label {
	display: inline-block;
	background: #218fc2;
	padding: 0 1.0em;
	border-radius: 90px;
	font-size: 52px;
	color: #fff775;
	margin: 10px 0 0;
	font-weight: 800;
	line-height: 1.3;
	text-align: center;
}
.offer_box .label span {
	font-size: 0.7em;
	vertical-align: middle;
}
.offer_box .cc {
	font-weight: 800;
	font-size: 24px;
	line-height: 1.3;
	margin: 20px 0 0 0;
}
.offer_box .cc span {
	font-size: 1.8em;
}
.offer03 .cc span {
	font-size: 1.4em;
}
.offer_box .txt_cc_jp {
	font-size: 75px;
	letter-spacing: -0.2em;
	line-height: 1.3;
}
.offer_box .spec {
	font-weight: 700;
	font-size: 18px;
	margin: 10px auto;
}
.offer_box .spec span { font-size: 1.2em; }
.offer_box .bg_gray {
	background: #edf1f5;
	border-radius: 20px;
	padding: 40px 60px;
	margin: 15px 0;
	box-sizing: border-box;
}
.offer_box .point_area {
	background: #d8eaf8;
	border-top: 3px solid #000;
	border-radius: 0 0 20px 20px;
}
.offer_box .point_area dt {
	text-align: center;
	font-size: 30px;
	font-weight: 700;
	color: #0e5389;
}
.offer_box .point_area dd {
	margin: 20px auto;
}
.offer_box .col2_box {
	align-items: center;
	margin-top: 20px;
}
.offer_box .col2_box > div:first-child {
	width: calc(100% - 325px);
}
.offer_box .col2_box > div:last-child {
	width: 325px;
}

.offer01 {
	background: url("../images/cp1_cc_coin1.png") no-repeat top+50px left+50px / 130px,
		url("../images/cp1_cc_coin2.png") no-repeat top+50px right+50px / 130px;
	background-color: #fff;
	position: relative;
}
.offer02,.offer03 {
	background: url("../images/cp_star_l.png") no-repeat top+30px left+30px / 95px,
		url("../images/cp_star_r.png") no-repeat top+30px right+30px / 95px;
	background-color: #fff;
	position: relative;
}


/* イラスト設置 */
.offer01 .illust1 {
	position: absolute;
	width: 85px;
	top: 250px;
	left: -60px;
	right: auto;
}
.offer01 .illust2 {
	position: absolute;
	width: 90px;
	top: 320px;
	left: auto;
	right: -30px;
}
.offer01 .illust3 {
	position: absolute;
	width: 70px;
	top: auto;
	bottom: 200px;
	left: 30px;
	right: auto;
}
.offer02 .illust1 {
	position: absolute;
	width: 140px;
	top: auto;
	bottom: -50px;
	left: auto;
	right: -55px;
}
.offer03 .illust1 {
	position: absolute;
	width: 125px;
	top: 50px;
	left: -50px;
	right: auto;
}

/* アコーディオン全体 */
.offer .accordion-area{
    list-style: none;
    width: 100%;
    margin:5% 0 0 auto;
}
.offer .accordion-area dl {
    margin: 20px 0;
	color: #fff;
}

/*アコーディオンタイトル*/
.offer .title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    padding: 10px 1.5em;
	margin: 0;
    transition: all .3s ease;
	line-height: 1.5;
	background: #52a6db;
	border-radius: 100px;
}

/*アイコンの＋と×*/
.offer .title::before,
.offer .title::after{
    position: absolute;
    content:'';
    width: 13px;
    height: 2px;
    background-color: #fff;
}
.offer .title::before{
    top:50%;
    right: 15px;
    transform: rotate(0deg);
}
.offer .title::after{    
    top:50%;
    right: 15px;
    transform: rotate(90deg);
}
/*　closeというクラスがついたら形状変化　*/
.offer .title.close::before{
  	top:50%;
    right: 15px;
    transform: rotate(0deg);
}
.offer .title.close::after{
	display: none;
}

/*アコーディオンで現れるエリア*/
.offer .answer_box {
    display: none;/*はじめは非表示*/
  	margin: 15px 0 0;
}

.offer .cv_box {
    display: flex;
	justify-content: space-between;
}
.offer .cv_box a {
	width: 48.5%;
	margin: 40px auto;
}


/*********** RECOMMEND ***********/

.recommend .ttl_box_wh img {
	width: 485px;
}
.recommend .col3_box {
	width: 100%;
	max-width: 760px;
	margin: auto;
	display: flex;
	justify-content: space-between;
}
.recommend .col3_box li {
	width: 30%;
	text-align: center;
	margin-top: 2.0em;
}
.recommend .col3_box li p {
	font-size: 17px;
	font-weight: 700;
	color: #fff;
	margin-top: 0.5em;
	line-height: 1.5;
}
.recommend .col3_box li p span {
	font-size: 1.2em;
	color: #fff775;
}


/*********** GUIDE ***********/

.guide .ttl_box_wh img {
	width: 295px;
}

/*タブ切り替え全体のスタイル*/
.tabs {
	width: 100%;
	margin-top: 30px;
}

/*タブのスタイル*/
.tab_item1, .tab_item2 {
	width: 40%;
	padding: 2.67% 0;
	background: url("../images/guide_tab1_off.png") no-repeat center / cover;
	display: block;
	cursor: pointer;
	float: left;
	margin: 0 0.5% 0 4.5%;
}
.tab_item1 {
	margin-left: 10%;
}
.tab_item1:hover, .tab_item2:hover {
	opacity: 0.75;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.tab_item2 {
	background: url("../images/guide_tab2_off.png") no-repeat center / cover;
	margin-left: 0;
}


/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
	display: none;
	background: #d8eaf8;
	padding: 40px 50px;
	box-sizing: border-box;
	border: 3px solid #000;
	border-radius: 20px;
	clear: both;
	overflow: hidden;
}

.guide article {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	border-radius: 20px;
	padding: 70px 40px 30px;
	margin: 25px auto;
	box-sizing: border-box;
}
.guide article .label {
	position: absolute;
	width: 150px;
	top: -15px;
	left: 30px;
}
.guide article > div:first-child {
	width: calc(100% - 250px);
}
.guide article > div:last-child {
	width: 240px;
}
.guide article > div:first-child dt {
	font-size: 25px;
	font-weight: 700;
	color: #0e5389;
	line-height: 1.5;
	letter-spacing: 0em;
}
.guide article > div:first-child dd {
	margin-top: 1em;
}

.guide .copy_txt {
	width: 370px;
	text-align: center;
	font-weight: 700;
	margin: auto;
	background: #fff;
	border-radius: 5px;
	cursor: pointer;
}
.guide .copy_txt p {
	font-weight: 700;
	padding: 0.5em 1.5em;
}
.guide .sns_share {
	display: flex;
	justify-content: center;
	margin: 10px auto 20px;
}
.guide .sns_share li {
	position: relative;
	width: 28%;
	margin: 0 1%;
	padding: 0 0 0 25px;
	background: #2bac38;
	border-radius: 150px;
	text-align: center;
	box-sizing: border-box;
}
.guide .sns_share li.btn_fb {
	background: #0066ff;
}
.guide .sns_share li.btn_x {
	background: #000000;
}
.guide .sns_share li::after {
	position: absolute;
	content: "";
	background: url("../images/share_line.png") center / cover;
	width: 32px;
	height: 31px;
	top: 0;
	bottom: 0;
	left: 20px;
	margin: auto;
}
.guide .sns_share li.btn_fb::after {
	background: url("../images/share_fb.png") center / cover;
}
.guide .sns_share li.btn_x::after {
	background: url("../images/share_x.png") center / cover;
}
.guide .sns_share li a {
	width: 100%;
	padding: 1.0em 0;
	display: block;
	color: #fff;
}
.guide .entry_btn {
	width: 460px;
	margin: auto;
}

/*選択されているタブのコンテンツのみを表示*/
#flow1:checked ~ #flow1_content,
#flow2:checked ~ #flow2_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item1 {
  background: url("../images/guide_tab1_on.png") no-repeat center / cover;
}
.tabs input:checked + .tab_item2 {
  background: url("../images/guide_tab2_on.png") no-repeat center / cover;
}

/*********** DELIVERY ***********/

.delivery {
	position: relative;
	padding-top: 250px;
}
.delivery .custom-shape-divider-top-1747223954 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}
.delivery .custom-shape-divider-top-1747223954 svg {
    position: relative;
    display: block;
    width: calc(119% + 1.3px);
    height: 170px;
    transform: rotateY(180deg);
}
.delivery .custom-shape-divider-top-1747223954 .shape-fill {
    fill: #1379BA;
}
.delivery .ttl_box_blue img {
	width: 440px;
}

/*********** PRICE ***********/

.price {
	position: relative;
	padding-bottom: 200px;
}

.price .custom-shape-divider-bottom-1747228744 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.price .custom-shape-divider-bottom-1747228744 svg {
    position: relative;
    display: block;
    width: calc(119% + 1.3px);
    height: 170px;
    transform: rotateY(180deg);
}

.price .custom-shape-divider-bottom-1747228744 .shape-fill {
    fill: #D5EDFF;
}

.price .ttl_box_blue img {
	width: 335px;
}
.price .wrap {
	width: 100%;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 20px;
}
.price .stripe_blue {
	background-color: #d3eff7;
	background: repeating-linear-gradient( -45deg, #ade5f5, #ade5f5 5px, #d3eff7 5px, #d3eff7 25px );
}
.price .stripe_purple {
	background-color: #c3d2ee;
	background: repeating-linear-gradient( -45deg, #a7baec, #a7baec 5px, #c3d2ee 5px, #c3d2ee 25px );
}
.price .contents {
	background: #fff;
	padding: 20px;
	box-sizing: border-box;
	border-radius: 20px;
	display: flex;
	justify-content: space-between;
}
.price .contents .box {
	background: #fff;
	width: 32%;
	border-radius: 15px;
	filter: drop-shadow( 0px 3px 2px #ccc );
	overflow: hidden;
}
.price .contents .box .main_info {
	padding: 15px;
	box-sizing: border-box;
}

.price .contents .box .fee {
	border-radius: 15px;
	padding: 10px;
	box-sizing: border-box;
	font-weight: 700;
	margin-bottom: 30px;
}
.price .contents .box .fee dt {
	font-size: 18px;
	color: #0e5389;
}
.price .contents .box .fee dd {
	font-size: 25px;
}
.price .contents .box .fee dd span {
	font-size: 1.7em;
	line-height: 1.3;
}
.price .contents .box .spec {
	padding: 15px;
	box-sizing: border-box;
}
.price .contents .box .spec dl {
	display: flex;
	align-items: flex-start;
	margin-bottom: 10px;
	font-weight: 700;
}
.price .contents .box .spec dl dt,
.price .contents .box .spec dl dd {
	width: 50%;
}
.price .contents .box .spec dl dt {
	color: #0e5389;
}

/* PLAN01 */
.price .contents .plan1 .plan_name {
	background: #0e5389;
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}
.price .contents .plan1 .fee {
	background: #e7eaec;
}
.price .contents .plan1 .fee dd {
	color: #0e5389;
}

/* PLAN02 */
.price .contents .plan2 .plan_name {
	background: #3699e5;
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}
.price .contents .plan2 .fee {
	background: #d8ebfa;
}
.price .contents .plan2 .fee dd {
	color: #3699e5;
}

/* PLAN03 */
.price .contents .plan3 .plan_name {
	background: #fe879d;
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}
.price .contents .plan3 .fee {
	background: #ffdce2;
}
.price .contents .plan3 .fee dd {
	color: #f56e87;
}

/* レンタル料金 */
.price .contents .inner {
	width: 100%;
	background: #fff;
	border-radius: 15px;
	filter: drop-shadow( 0px 3px 2px #ccc );
	overflow: hidden;
}
.price .contents .inner .plan_name {
	background: #0e5389;
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}
.price .contents .inner ul {
	display: flex;
	justify-content: space-between;
	margin: 20px 0;
}
.price .contents .inner ul li {
	width: 40%;
	padding: 0 5%;
}
.price .contents .inner ul li:first-child {
	border-right: 1px solid#a6a6a6;
}
.price .plus {
	width: 60px;
	margin: 10px auto;
}
.price .txt_S a {
	text-decoration: underline;
}

/*********** SERVICE ***********/

.server {
	position: relative;
	padding-bottom: 200px;
}

.server .custom-shape-divider-bottom-1747280114 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}

.server .custom-shape-divider-bottom-1747280114 svg {
    position: relative;
    display: block;
    width: calc(118% + 1.3px);
    height: 152px;
    transform: rotateY(180deg);
}

.server .custom-shape-divider-bottom-1747280114 .shape-fill {
    fill: #6EB4E8;
}

.server .ttl_box_blue img {
	width: 335px;
}

.server .contents {
	width: 100%;
	background: #fff;
	border-radius: 20px;
	margin: 30px auto;
	overflow: hidden;
}
.server .contents .server_name {
	background: #0e5389;
	text-align: center;
	font-size: 40px;
	font-weight: 700;
	color: #fff;
	padding: 0.2em 0;
}
.server .contents .server_name small {
	font-size: 18px;
	vertical-align: middle;
}
.server .contents .server_name small span {
	color: #fff775;
}
.server .contents .box {
	padding: 30px 50px;
	box-sizing: border-box;
}
.server .contents .col2_box > div {
	width: 50%;
}
.server .contents .col2_box > div:last-child {
	width: 44%;
	margin-top: 50px;
}
.server .contents .col2_box > div:last-child img {
	margin-top: 50px;
}


/* モーダルCSS */
.modalArea {
	display: none;
	position: fixed;
	z-index: 10; /*サイトによってここの数値は調整 */
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.8);
	overflow-y: scroll;
	z-index: 9999;
}

.modalBg {
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0);
	display: block;
}

.modalWrapper {
	position: absolute;
	top:0;
	left: 50%;
	transform:translate(-50%,100px);
	width: 85%;
	max-width: 800px;
	padding: 10px 30px;
	background: #fff;
	border-radius: 20px;
	box-sizing: border-box;
}
.modal_cont {
	display: block;
	padding: 0 0 50px 0;
}
.modal_cont h3 {
	width: 100%;
	background: #0E5389;
	color: #fff;
	text-align: center;
	font-size: 30px;
	font-weight: 700;
	padding: 0.2em 0;
	margin: 10px 0; 
	border-radius: 15px;
}
.modal_cont h4 {
	width: 100%;
	color: #0E5389;
	font-size: 20px;
	font-weight: 700;
}
.modal_cont .swiper-button-next, .swiper-button-prev {
    color: #000!important;
}
.modal_cont .col2_box li {
	width: 47%;
	margin: 20px 0 0 0;
}
.modal_cont .col2_box li img {
	margin: 0 0 10px 0;
}
.modal_cont .col2_box li dl {
	text-align: center;	
}
.modal_cont .col2_box li dl dt {
	background: #71A0C4;
	font-size: 18px;
	font-weight: 700;
	color: #fff;
	padding: 0.1em 0;
}
.modal_cont .col2_box li dl dd {
	font-weight: 700;
	background: #CEE4F5;
	padding: 1.0em;
	box-sizing: border-box;
}
.modal_cont .col2_box li dl dd span {
	font-size: 2.0em;
	color: #0E5389;
}

.modal_cont table {
	border-collapse: collapse;
	width: 100%;
	box-sizing: border-box;
	margin: 20px 0 ;
	font-size: 0.9rem;
}
.modal_cont table tr,
.modal_cont table td,
.modal_cont table th{
	border: 1px solid #ccc;
	padding: 5px 8px;
}
.modal_cont table td.blueback {
	background: #71A0C4;
	color: #fff;
}
.modal_cont table td .cool,
.modal_cont table td .warm {
	background: #d5edff;
	font-size: 0.8em;
	padding: 0 0.2em;
	display: inline-block;
	margin-right: 0.2em;
}
.modal_cont table td .warm {
	background: #ffdfd5;
}
.modal_cont table td a {
	color: #000;
	text-decoration: underline;
}

.closeModal {
  position: absolute;
  top: 0;
  right: 30px;
  cursor: pointer;
	color:#fff;
	font-size: 4rem;
}


/*********** FACT ***********/

.fact {
	position: relative;
	padding-bottom: 200px;
	background: #6eb4e8;
}

.fact .custom-shape-divider-bottom-1747289989 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}

.fact .custom-shape-divider-bottom-1747289989 svg {
    position: relative;
    display: block;
    width: calc(119% + 1.3px);
    height: 157px;
    transform: rotateY(180deg);
}

.fact .custom-shape-divider-bottom-1747289989 .shape-fill {
    fill: #FFFFFF;
}
.fact .ttl_box_wh img {
	width: 335px;
}

.fact article {
	position: relative;
	background: #c8e8ff;
	width: 100%;
	border-radius: 20px;
	padding: 30px;
	margin: 50px auto 0;
	box-sizing: border-box;
}
.fact article .icon {
	position: absolute;
	width: 140px;
	top: -40px;
	left: 60px;
}
.fact article .box {
	background: #fff;
	border-radius: 20px;
	padding: 0 50px 50px;
	box-sizing: border-box;
}
.fact article h3 {
	font-size: 40px;
	font-weight: 700;
	text-align: center;
	padding-top: 50px;
}
.fact article h3 span {
	display: inline-block;
	background: linear-gradient(90deg, #96ebf2 0%, #70b1f2 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.fact article .article_box {
	margin: 30px auto;
}
.fact article .article_box li:first-child {
	width: 280px;
}
.fact article .article_box li:last-child {
	width: calc(100% - 310px);
}
.fact article .table_com {
	margin-top: 20px;
}
.fact article .table_com ul {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #333333;
}
.fact article .table_com ul:first-child {
	border-bottom: none;
}
.fact article .table_com ul:first-child li:nth-child(1) {
	background: transparent;
}
.fact article .table_com ul:first-child li:nth-child(2),
.fact article .table_com ul:first-child li:nth-child(3) {
	background: #0c70d4;
	text-align: center;
	font-weight: 700;
	font-size: 17px;
	color: #fff;
}
.fact article .table_com ul:first-child li:nth-child(3) {
	background: #16528d;
}
.fact article .table_com ul li {
	width: 37.3%;
	background: #e7f3ff;
	padding: 1.0em;
	box-sizing: border-box;
}
.fact article .table_com ul li:first-child {
	width: 25%;
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	align-content: center;
}
.fact article .table_com ul li span {
	font-size: 17px;
	color: #0c70d4;
	font-weight: 700;
}

/*********** VOICE ***********/

.voice .ttl_box_blue img {
	width: 310px;
}
.voice .article {
	width: 100%;
	margin: 30px auto;
	padding: 30px 0 30px 40px;
	border-radius: 20px;
	border: 2px solid #0e5389;
	box-sizing: border-box;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
.voice .article img {
	width: 140px;
}
.voice .article .article_txt_box {
	width: calc(100% - 220px);
}
.voice .article .article_txt_box dt {
	font-size: 22px;
	font-weight: 700;
	color:#0e5389;
}
.voice .swiper-slide {
  transition: transform 0.6s;
}
.voice .swiper-button-next {
    background: url("../images/icon_awwor_right.png") no-repeat center / cover;
	width: 32px;
	height: 32px;
	top: 0;
	bottom: 0;
	left: 0;
	right: -72%;
	margin: auto;
}
.voice .swiper-button-prev {
    background: url("../images/icon_awwor_left.png") no-repeat center / cover;
	width: 32px;
	height: 32px;
	top: 0;
	bottom: 0;
	left: -72%;
	right: 0;
	margin: auto;
}
.voice .swiper-button-prev:after, .voice .swiper-button-next:after {
	display: none;
}


/*********** FAQ ***********/

.faq .ttl_box_blue img {
	width: 230px;
}
.faq .qa_list {
	margin-top:30px;
}


/*アコーディオン全体*/
.faq .accordion-area{
    list-style: none;
    width: 100%;
    margin:0;
	border-radius: 20px;
}

/*アコーディオンタイトル*/
.faq .title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    padding: 15px 50px;
	margin: 0 0 10px;
    transition: all .3s ease;
	line-height: 1.5;
	background: #e7f3ff;
	border-radius: 20px;
	font-size: 1.15rem;
	font-weight: 700;
	color: #0e5389;
}
.faq .title span {
	position: absolute;
	content: "";
    background: url("../images/icon_question.png") no-repeat center / cover;
	width: 24px;
	height: 24px;
	top: 0;
	bottom: 0;
	left: 20px;
	margin: auto;
}

/*アイコンの＋と×*/
.faq .title::before,
.faq .title::after{
    position: absolute;
    content:'';
    width: 16px;
    height: 1px;
    background-color: #0c70d4;
}
.faq .title::before{
    top:50%;
    right: 25px;
    transform: rotate(0deg);
}
.faq .title::after{    
    top:50%;
    right: 25px;
    transform: rotate(90deg);
}
/*　closeというクラスがついたら形状変化　*/
.faq .title.close::before{
  	top:50%;
    right: 25px;
    transform: rotate(0deg);
}
.faq .title.close::after{
	display: none;
}

/*アコーディオンで現れるエリア*/
.faq .answer_box {
    display: none;/*はじめは非表示*/
    background: url("../images/icon_answer.png") no-repeat top left;
	background-size: 24px;
  	margin: 15px 20px 30px;
    padding: 0 40px;
}


/*********** FOOTER SETTING ***********/

footer {
	width: 100%;
	margin: 50px auto 0;
	padding-bottom: 120px;
	text-align: center;
}
footer .f_logo {
	width: 270px;
	margin: 20px auto;
}
footer .f_server {
	width: 440px;
	margin: 20px auto;
}
footer p {
	margin: 0.5em auto;
}




@media screen and (max-width: 990px) {
	
/*********** CV SETTING ***********/

.btn_detaile {
	position: relative;
	background: #fff775;
	text-align: center;
	border-radius: 100px;
	border: 2px solid #000;
	width: 100%;
	margin: 20px auto;
	font-size: 15px;
	filter: drop-shadow(2px 3px 0 #ccc);
	cursor: pointer;
}
.btn_detaile::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: 15px;
	margin: auto;
	width: 5px;
	height: 5px;
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
	transform: rotate(-45deg);
}
.btn_detaile a {
	width: 100%;
	padding: 0.5em 0;
	color: #000;
	display: block;
	font-weight: 700;
}
.btn_blue {
	position: relative;
	background: #9ddeff;
	text-align: center;
	border-radius: 100px;
	border: 2px solid #000;
	width: 100%;
	margin: 20px auto;
	font-size: 15px;
	filter: drop-shadow(2px 3px 0 #ccc);
}
.btn_blue::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: 15px;
	margin: auto;
	width: 5px;
	height: 5px;
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
	transform: rotate(-45deg);
}
.btn_blue a {
	width: 100%;
	padding: 0.5em 0;
	color: #000;
	display: block;
	font-weight: 700;
}

/*********** FV SETTING ***********/

.fv .kv {
	position: relative;
	width: 100%;
	height: 950px;
	overflow: hidden;
}
.fv .kv .img_products {
	position: absolute;
	width: 35%;
	top: 370px;
	left: auto;
	right: 5%;
	margin: 0;
}
.fv .kv .img_cc {
	position: absolute;
	width: 85%;
	top: 80px;
	left: 0;
	right: 0;
	margin: auto;
}
.fv .kv .bg_img {
	position: absolute;
	width: 100%;
	height: 150px;
	bottom: 0;
	margin: auto;
	background: url("../images/fv_cp_bg_top.png") center / 100% 150px;
}
.fv .img_icon {
	position: absolute;
	width: 53%;
	top: 450px;
	left: 5%;
	right: auto;
	margin: 0;
	z-index: 9999;
}
.fv .fv_cp .bg_img {
	position: absolute;
	width: 100%;
	height: 100px;
	bottom: 0;
	margin: auto;
	background: url("../images/fv_cp_bg_bt.png") center / 100% 100px;
	z-index: 9;
}
.fv .fv_cp .limit {
	width: 500px;
	margin: 30px auto 0;
}
	
/* イラスト設置 */
.fv .illust1 {
	position: absolute;
	width: 90px;
	top: 700px;
	left: 5%;
	right: auto;
	margin: 0;
}
.fv .illust2 {
	position: absolute;
	width: 90px;
	top: 790px;
	left: 25%;
	right: auto;
	margin: 0;
}
.fv .illust3 {
	display: none;
}
.fv .illust4 {
	position: absolute;
	width: 260px;
	top: 780px;
	left: auto;
	right: 12%;
	margin: 0;
}

	
/*********** OFFER ***********/
	
.offer_box .cc {
	font-weight: 800;
	font-size: 20px;
	line-height: 1.3;
	margin: 20px 0 0 0;
}
.offer_box .cc span {
	font-size: 1.6em;
}
.offer03 .cc span {
	font-size: 1.4em;
}
.offer_box .txt_cc_jp {
	font-size: 65px;
	letter-spacing: -0.2em;
	line-height: 1.3;
}
.offer_box .spec {
	font-weight: 700;
	font-size: 16px;
	margin: 10px auto;
}
	
.offer_box .col2_box {
	align-items: center;
	margin-top: 20px;
}
.offer_box .col2_box > div:first-child {
	width: 55%;
}
.offer_box .col2_box > div:last-child {
	width: 45%;
}

.offer01 {
	background: url("../images/cp1_cc_coin1.png") no-repeat top+50px left+20px / 100px,
		url("../images/cp1_cc_coin2.png") no-repeat top+50px right+20px / 100px;
	background-color: #fff;
	position: relative;
}
.offer02,.offer03 {
	background: url("../images/cp_star_l.png") no-repeat top+30px left+30px / 70px,
		url("../images/cp_star_r.png") no-repeat top+30px right+30px / 70px;
	background-color: #fff;
	position: relative;
}

/* イラスト設置 */
.offer01 .illust1 {
	position: absolute;
	width: 85px;
	top: 250px;
	left: -30px;
	right: auto;
}
.offer02 .illust1 {
	position: absolute;
	width: 120px;
	top: auto;
	bottom: -50px;
	left: auto;
	right: -40px;
}
.offer03 .illust1 {
	position: absolute;
	width: 125px;
	top: 50px;
	left: -50px;
	right: auto;
}
	
/*********** GUIDE ***********/
	
/*タブ切り替えの中身のスタイル*/
.tab_content {
	display: none;
	background: #d8eaf8;
	padding: 5%;
	box-sizing: border-box;
	border: 3px solid #000;
	border-radius: 20px;
	clear: both;
	overflow: hidden;
}

.guide article {
	position: relative;
	display: flex;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	border-radius: 20px;
	padding: 50px 40px 30px;
	margin: 25px auto;
	box-sizing: border-box;
}
.guide article .label {
	position: absolute;
	width: 120px;
	top: -15px;
	left: 30px;
}
.guide article > div:first-child {
	width: 65%;
}
.guide article > div:last-child {
	width: 30%;
}
.guide article > div:first-child dt {
	font-size: 22px;
	font-weight: 700;
	color: #0e5389;
	line-height: 1.5;
	letter-spacing: 0em;
}
.guide article > div:first-child dd {
	margin-top: 1em;
}
	
	
/*********** PRICE ***********/

.price .contents {
	background: #fff;
	padding: 15px;
	box-sizing: border-box;
	border-radius: 20px;
	display: flex;
	justify-content: space-between;
}
.price .contents .box .fee dt {
	font-size: 16px;
	color: #0e5389;
}
.price .contents .box .fee dd {
	font-size: 18px;
	line-height: 1.5;
}
.price .contents .box .fee dd span {
	font-size: 1.7em;
	line-height: 1.3;
}
.price .contents .box .spec {
	padding: 15px;
	box-sizing: border-box;
}
.price .contents .box .spec dl {
	display: block;
	align-items: flex-start;
	margin-bottom: 10px;
	font-weight: 700;
}
.price .contents .box .spec dl dt,
.price .contents .box .spec dl dd {
	width: 100%;
}
.price .contents .box .spec dl dt {
	color: #0e5389;
}

/* PLAN01 */
.price .contents .plan1 .plan_name {
	background: #0e5389;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}

/* PLAN02 */
.price .contents .plan2 .plan_name {
	background: #3699e5;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}

/* PLAN03 */
.price .contents .plan3 .plan_name {
	background: #fe879d;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}

/* レンタル料金 */
.price .contents .inner {
	width: 100%;
	background: #fff;
	border-radius: 15px;
	filter: drop-shadow( 0px 3px 2px #ccc );
	overflow: hidden;
}
.price .contents .inner .plan_name {
	background: #0e5389;
	text-align: center;
	font-size: 24px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}
.price .contents .inner ul {
	display: flex;
	justify-content: space-between;
	margin: 20px 0;
}
.price .contents .inner ul li {
	width: 40%;
	padding: 0 5%;
}
.price .contents .inner ul li:first-child {
	border-right: 1px solid#a6a6a6;
}
.price .plus {
	width: 60px;
	margin: 10px auto;
}


}


@media screen and (max-width: 767px) {
    
.pc_disp {display: none;}
.sp_disp {display: block;}
.pc_img {display: none;}
.sp_img {display: inline-block;}
	
	
/*********** COMMON settng ***********/

html { font-size:14px; }
body { font-size:14px; }
	
main {
	margin:0;
	overflow: hidden;
}
section {
	padding: 12% 0;
}
	
/***********   TEXT SETTING ***********/

.txt_XL {font-size: 3.0rem; line-height: 1.3;}
.txt_L {font-size: 1.8rem; line-height: 1.5;}
.txt_M {font-size: 1.1rem; line-height: 1.6;}
.txt_S {font-size: 0.7rem;}
	
	
/*********** TITLE SETTING ***********/

.ttl_box_y {
	width: 80%;
	margin: 30px auto 0;
	text-align: center;
}
.ttl_box_wh,.ttl_box_blue {
	width: 100%;
	text-align: center;
}
.ttl_box_wh h2,.ttl_box_blue h2 {
	font-size: 25px;
	font-weight: 800;
	line-height: 1.4;
	color: #fff;
	margin: 10px 0;
}
.ttl_box_blue h2 {
	color: #0e5389;
}

/*********** CV SETTING ***********/
	
.btn_yellow {
	position: relative;
	background: #fff775;
	text-align: center;
	border-radius: 100px;
	border: 2px solid #000;
	width: 90%;
	margin: 20px auto;
	filter: drop-shadow(2px 3px 0 #ccc);
}
.btn_yellow::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: 25px;
	margin: auto;
	width: 6px;
	height: 6px;
	border-right: 3px solid #000;
	border-bottom: 3px solid #000;
	transform: rotate(-45deg);
}
.btn_yellow a {
	width: 100%;
	padding: 0.3em 0;
	color: #000;
	display: block;
	font-weight: 700;
}

.btn_detaile {
	position: relative;
	background: #fff775;
	text-align: center;
	border-radius: 100px;
	border: 2px solid #000;
	width: 100%;
	margin: 20px auto;
	font-size: 15px;
	filter: drop-shadow(2px 3px 0 #ccc);
	cursor: pointer;
}
.btn_detaile::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: 15px;
	margin: auto;
	width: 5px;
	height: 5px;
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
	transform: rotate(-45deg);
}
.btn_detaile a {
	width: 100%;
	padding: 0.5em 0;
	color: #000;
	display: block;
	font-weight: 700;
}
.btn_blue {
	position: relative;
	background: #9ddeff;
	text-align: center;
	border-radius: 100px;
	border: 2px solid #000;
	width: 100%;
	margin: 20px auto;
	font-size: 15px;
	filter: drop-shadow(2px 3px 0 #ccc);
}
.btn_blue::before {
	position: absolute;
	content: "";
	top: 0;
	bottom: 0;
	right: 15px;
	margin: auto;
	width: 5px;
	height: 5px;
	border-right: 2px solid #000;
	border-bottom: 2px solid #000;
	transform: rotate(-45deg);
}
.btn_blue a {
	width: 100%;
	padding: 0.5em 0;
	color: #000;
	display: block;
	font-weight: 700;
}
	
.cv_bottom {
	position: fixed;
	width: 100%;
	bottom: 0;
	left: 0;
	right: 0;
	margin:auto;
	padding: 10px 0;
	text-align: center;
	background: rgba(40,122,187,0.9);
	color: #fff;
	z-index: 9990;
}
.cv_bottom .box {
	width: 80%;
	margin: auto;
}
.cv_bottom .box p {
	font-size: 1.0rem;
	font-weight: 700;
}
	

/*********** KV SETTING ***********/

header .h_logo .logo1 {
	position: absolute;
	width: 25%;
	top: 15px;
	left: 15px;
	right: auto;
	z-index: 9990;
}
header .h_logo .logo2 {
	position: absolute;
	width: 45%;
	top: 10px;
	right: 15px;
	z-index: 9990;
}

/*********** FV SETTING ***********/

.fv .kv {
	position: relative;
	width: 100%;
	height: 750px;
	overflow: hidden;
}
.fv .kv .img_products {
	position: absolute;
	width: 190px;
	top: 430px;
	left: 0;
	right: 0;
	margin: auto;
}
.fv .kv .img_cc {
	position: absolute;
	width: 400px;
	top: 100px;
	left: -30px;
	right: 0;
	margin: auto;
}
@media screen and (max-width: 375px) {
.fv .kv .img_cc {
	position: absolute;
	width: 105%;
	top: 100px;
	left: -7%;
	right: 0;
	margin: auto;
}
}
.fv .img_icon {
	position: absolute;
	width: 270px;
	top: 285px;
	left: 0;
	right: -3%;
	margin: auto;
	z-index: 9990;
}
.fv .kv .bg_img {
	position: absolute;
	width: 100%;
	height: 70px;
	bottom: 0;
	margin: auto;
	background: url("../images/fv_cp_bg_top_sp.png") no-repeat center / 100% 70px;
}
	
.fv .fv_cp {
	position: relative;
	width: 100%;
	background: url("../images/fv_cp_bg.png") repeat-y top / 100%;
	padding-bottom: 50px;
}
.fv .fv_cp .bg_img {
	position: absolute;
	width: 100%;
	height: 40px;
	bottom: 0;
	margin: auto;
	background: url("../images/fv_cp_bg_bt.png") no-repeat center / 100% 40px;
	z-index: 9;
}
.fv .fv_cp .cp_bnr {
	position: relative;
	display: block;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	z-index: 10;
}
.fv .fv_cp .cp_bnr li {
	width: 90%;
	padding: 2% 0;
	margin: auto;
}
.fv .fv_cp .limit {
	width: 90%;
	margin: 3% auto 0;
}

/* イラスト設置 */
.fv .illust1 {
	position: absolute;
	width: 20%;
	top: 450px;
	left: 1%;
	right: auto;
	margin: 0;
}
.fv .illust2 {
	position: absolute;
	width: 16%;
	top: 650px;
	left: 10%;
	right: auto;
	margin: 0;
}
.fv .illust3 {
	display: block;
	position: absolute;
	width: 20%;
	top: 550px;
	left: auto;
	right: -2%;
	margin: 0;
}
.fv .illust4 {
	position: absolute;
	width: 37%;
	top: 645px;
	left: auto;
	right: 3%;
	margin: 0;
}
	
	
/*********** OFFER ***********/

.offer .cc_gradient {
	text-align: center;
	margin:0 auto 5%;
}
.offer .cc_gradient p {
	font-size: 30px;
	font-weight: 800;
	line-height: 1.4;
	display: inline-block;
	background: linear-gradient(90deg, #ffdea1 0%, #ffb1bf 100%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.offer_box {
	background: #fff;
	border: 3px solid #000;
	border-radius: 20px;
	box-sizing: border-box;
	margin: 15px auto;
}
.offer_box .box {
	padding: 5%;
	box-sizing: border-box;
}
.offer_box .box2 {
	padding: 5%;
	box-sizing: border-box;
}
.offer_box .lead {
	text-align: center;
}
.offer_box .lead img {
	width: 65%;
}
.offer_box .label {
	display: inline-block;
	background: #218fc2;
	padding: 0 1.0em;
	border-radius: 100px;
	font-size: 28px;
	color: #fff775;
	margin: 10px 0 0;
	font-weight: 800;
	line-height: 1.3;
	text-align: center;
}
.offer_box .label span {
	font-size: 0.7em;
	vertical-align: middle;
}
.offer_box .cc {
	font-weight: 800;
	font-size: 18px;
	line-height: 1.3;
	margin: 3% 0 0 0;
}
.offer_box .txt_cc_jp {
	font-size: 35px;
	letter-spacing: -0.2em;
	line-height: 1.3;
}
.offer_box .spec {
	font-weight: 700;
	font-size: 18px;
	margin: 10px auto;
}
.offer_box .spec span { font-size: 1.2em; }
.offer_box .bg_gray {
	background: #edf1f5;
	border-radius: 20px;
	padding: 5%;
	margin: 15px 0;
	box-sizing: border-box;
}
.offer_box .point_area {
	background: #d8eaf8;
	border-top: 3px solid #000;
	border-radius: 0 0 20px 20px;
}
.offer_box .point_area dt {
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #0e5389;
	line-height: 1.5;
}
.offer_box .point_area dd {
	margin: 20px auto;
}
.offer_box .col2_box {
	display: block;
	align-items: center;
	margin-top: 20px;
}
.offer_box .col2_box > div:first-child {
	width: 100%;
	text-align: center;
}
.offer_box .col2_box > div:last-child {
	width: 90%;
	margin: auto;
}

.offer01 {
	background: url("../images/cp1_cc_coin1.png") no-repeat top+5% left+2% / 15%,
		url("../images/cp1_cc_coin2.png") no-repeat top+5% right+2% / 15%;
	background-color: #fff;
	position: relative;
}
.offer02,.offer03 {
	background: url("../images/cp_star_l.png") no-repeat top+2% left+2% / 15%,
		url("../images/cp_star_r.png") no-repeat top+2% right+2% / 15%;
	background-color: #fff;
	position: relative;
}


/* イラスト設置 */
.offer01 .illust1 {
	position: absolute;
	width: 15%;
	top: 150px;
	left: -5%;
	right: auto;
	margin: 0;
}
.offer01 .illust2 {
	position: absolute;
	width: 15%;
	top: 300px;
	left: auto;
	right: -5%;
	margin: 0;
}
.offer01 .illust3 {
	position: absolute;
	width:13%;
	top: auto;
	bottom: 260px;
	left: -5%;
	right: auto;
}
.offer02 .illust1 {
	position: absolute;
	width: 20%;
	top: 150px;
	bottom: auto;
	left: auto;
	right: -5%;
}
.offer03 .illust1 {
	position: absolute;
	width: 20%;
	top: 220px;
	left: -7%;
	right: auto;
}
.offer .cv_box {
	width: 90%;
    display: block;
	justify-content: space-between;
	margin: 10% auto;
	text-align: center;
}
.offer .cv_box img {
	margin-top: 3%;
}
	

/*********** RECOMMEND ***********/

.recommend .ttl_box_wh img {
	width: 90%;
}
.recommend .col3_box {
	width: 100%;
	max-width: 760px;
	margin: auto;
	display: flex;
	justify-content: space-between;
}
.recommend .col3_box li {
	width: 42%;
	text-align: center;
	margin-top: 2.0em;
	padding: 0 3%;
}
.recommend .col3_box li p {
	font-size: 1.0rem;
	font-weight: 700;
	color: #fff;
	margin-top: 0.5em;
	line-height: 1.5;
}
.recommend .col3_box li p span {
	font-size: 1.2em;
	color: #fff775;
}

	
/*********** GUIDE ***********/

.guide .ttl_box_wh img {
	width: 54%;
}

/*タブ切り替え全体のスタイル*/
.tabs {
	width: 100%;
	margin-top: 15px;
}

/*タブのスタイル*/
.tab_item1, .tab_item2 {
	width: 40%;
	padding: 6.68% 0;
	background: url("../images/guide_tab1_off_sp.png") no-repeat center / cover;
	display: block;
	cursor: pointer;
	float: left;
	margin: 0 0.5% 0 4.5%;
}
.tab_item1 {
	margin-left: 10%;
}
.tab_item1:hover, .tab_item2:hover {
	opacity: 0.75;
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
.tab_item2 {
	background: url("../images/guide_tab2_off_sp.png") no-repeat center / cover;
	margin-left: 0;
}
	
/*選択されているタブのコンテンツのみを表示*/
#flow1:checked ~ #flow1_content,
#flow2:checked ~ #flow2_content {
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item1 {
  background: url("../images/guide_tab1_on_sp.png") no-repeat center / cover;
}
.tabs input:checked + .tab_item2 {
  background: url("../images/guide_tab2_on_sp.png") no-repeat center / cover;
}

	
/*タブ切り替えの中身のスタイル*/
.tab_content {
	display: none;
	background: #d8eaf8;
	padding: 5%;
	box-sizing: border-box;
	border: 3px solid #000;
	border-radius: 20px;
	clear: both;
	overflow: hidden;
}

.guide article {
	position: relative;
	display: block;
	justify-content: space-between;
	align-items: center;
	background: #fff;
	border-radius: 20px;
	padding: 40px 7% 5%;
	margin: 20px auto 35px;
	box-sizing: border-box;
}
.guide article .label {
	position: absolute;
	width: 100px;
	top: -20px;
	left: 30px;
}
.guide article > div:first-child {
	width: 100%;
}
.guide article > div:last-child {
	width: 65%;
	margin: 3% auto 0;
}
.guide article > div:first-child dt {
	font-size: 18px;
	font-weight: 700;
	color: #0e5389;
	line-height: 1.5;
	letter-spacing: 0em;
}
.guide article > div:first-child dd {
	margin-top: 1em;
}

.guide .copy_txt {
	width: 100%;
	text-align: center;
	font-weight: 700;
	margin: auto;
	background: #fff;
	border-radius: 5px;
	cursor: pointer;
}
.guide .copy_txt p {
	font-weight: 700;
	padding: 0.5em 1.5em;
}
.guide .txt_L {
	font-size: 16px;
}
.guide .sns_share {
	display: block;
	justify-content: center;
	margin: 10px auto 20px;
}
.guide .sns_share li {
	position: relative;
	width: 80%;
	margin: 0 1%;
	padding: 0 0 0 25px;
	background: #2bac38;
	border-radius: 150px;
	text-align: center;
	box-sizing: border-box;
	margin: 0 auto 5px;
}
.guide .sns_share li.btn_fb {
	background: #0066ff;
}
.guide .sns_share li.btn_x {
	background: #000000;
}
.guide .sns_share li::after {
	position: absolute;
	content: "";
	background: url("../images/share_line.png") center / cover;
	width: 20px;
	height: 19px;
	top: 0;
	bottom: 0;
	left: 20px;
	margin: auto;
}
.guide .sns_share li.btn_fb::after {
	background: url("../images/share_fb.png") center / cover;
}
.guide .sns_share li.btn_x::after {
	background: url("../images/share_x.png") center / cover;
}
.guide .sns_share li a {
	width: 100%;
	padding: 0.5em 0;
	display: block;
	color: #fff;
}
.guide .entry_btn {
	width: 90%;
	margin: auto;
}


/*********** DELIVERY ***********/

.delivery {
	position: relative;
	padding-top: 100px;
}
.delivery .custom-shape-divider-top-1747223954 {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}
.delivery .custom-shape-divider-top-1747223954 svg {
    position: relative;
    display: block;
    width: calc(119% + 1.3px);
    height: 60px;
    transform: rotateY(180deg);
}
.delivery .custom-shape-divider-top-1747223954 .shape-fill {
    fill: #1379BA;
}
.delivery .ttl_box_blue img {
	width: 89%;
}



/*********** PRICE ***********/

.price {
	position: relative;
	padding-bottom: 100px;
}

.price .custom-shape-divider-bottom-1747228744 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
}

.price .custom-shape-divider-bottom-1747228744 svg {
    position: relative;
    display: block;
    width: calc(119% + 1.3px);
    height: 60px;
    transform: rotateY(180deg);
}

.price .custom-shape-divider-bottom-1747228744 .shape-fill {
    fill: #D5EDFF;
}

.price .ttl_box_blue img {
	width: 62%;
}
.price .wrap {
	width: 100%;
	padding: 3%;
	box-sizing: border-box;
	border-radius: 15px;
}
.price .stripe_blue {
	background-color: #d3eff7;
	background: repeating-linear-gradient( -45deg, #ade5f5, #ade5f5 5px, #d3eff7 5px, #d3eff7 25px );
}
.price .stripe_purple {
	background-color: #c3d2ee;
	background: repeating-linear-gradient( -45deg, #a7baec, #a7baec 5px, #c3d2ee 5px, #c3d2ee 25px );
}
.price .contents {
	background: #fff;
	padding: 7%;
	box-sizing: border-box;
	border-radius: 15px;
	display: block;
	justify-content: space-between;
}
.price .contents .box {
	background: #fff;
	width: 100%;
	border-radius: 15px;
	filter: drop-shadow( 0px 3px 2px #ccc );
	overflow: hidden;
	margin: 3% 0;
}
.price .contents .box .main_info {
	padding: 15px;
	box-sizing: border-box;
}

.price .contents .box .fee {
	border-radius: 15px;
	padding: 10px;
	box-sizing: border-box;
	font-weight: 700;
	margin-bottom: 30px;
}
.price .contents .box .fee dt {
	font-size: 1.0rem;
	color: #0e5389;
}
.price .contents .box .fee dd {
	font-size: 1.3rem;
}
.price .contents .box .fee dd span {
	font-size: 1.7em;
	line-height: 1.3;
}
.price .contents .box .spec {
	padding: 15px;
	box-sizing: border-box;
}
.price .contents .box .spec dl {
	display: flex;
	align-items: flex-start;
	margin-bottom: 10px;
	font-weight: 700;
}
.price .contents .box .spec dl dt,
.price .contents .box .spec dl dd {
	width: 50%;
	font-size: 0.9rem;
}
.price .contents .box .spec dl dt {
	color: #0e5389;
}

/* PLAN01 */
.price .contents .plan1 .plan_name {
	background: #0e5389;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}

/* PLAN02 */
.price .contents .plan2 .plan_name {
	background: #3699e5;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}

/* PLAN03 */
.price .contents .plan3 .plan_name {
	background: #fe879d;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}

/* レンタル料金 */
.price .contents .inner {
	width: 100%;
	background: #fff;
	border-radius: 15px;
	filter: drop-shadow( 0px 3px 2px #ccc );
	overflow: hidden;
}
.price .contents .inner .plan_name {
	background: #0e5389;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
}
.price .contents .inner ul {
	display: block;
	justify-content: space-between;
	margin: 20px 0;
}
.price .contents .inner ul li {
	width: 90%;
	padding: 10px 0;
	margin: 10px auto;
}
.price .contents .inner ul li:first-child {
	border-right: none;
	border-bottom: 1px solid #a6a6a6;
}
.price .plus {
	width: 40px;
	margin: 10px auto;
}

	
/*********** SERVICE ***********/

.server {
	position: relative;
	padding-bottom: 100px;
}

.server .custom-shape-divider-bottom-1747280114 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}

.server .custom-shape-divider-bottom-1747280114 svg {
    position: relative;
    display: block;
    width: calc(118% + 1.3px);
    height: 60px;
    transform: rotateY(180deg);
}

.server .custom-shape-divider-bottom-1747280114 .shape-fill {
    fill: #6EB4E8;
}

.server .ttl_box_blue img {
	width: 62%;
}

.server .contents {
	width: 100%;
	background: #fff;
	border-radius: 20px;
	margin: 15px auto;
	overflow: hidden;
}
.server .contents .server_name {
	background: #0e5389;
	text-align: center;
	font-size: 20px;
	font-weight: 700;
	color: #fff;
	padding: 0.5em 0;
	line-height: 1.1;
}
.server .contents .server_name small {
	font-size: 14px;
	vertical-align: middle;
}
.server .contents .server_name small span {
	color: #fff775;
}
.server .contents .box {
	padding: 5%;
	box-sizing: border-box;
}
.server .contents .col2_box > div {
	width: 100%;
}
.server .contents .col2_box > div:last-child {
	width: 100%;
	margin-top: 10%;
}
.server .contents .col2_box > div:last-child img {
	margin-top: 10%;
}
	
/* モーダルCSS */
.modalArea {
	display: none;
	position: fixed;
	z-index: 10; /*サイトによってここの数値は調整 */
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.8);
	overflow-y: scroll;
	z-index: 9999;
}

.modalBg {
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0);
	display: block;
}

.modalWrapper {
	position: absolute;
	top:-5%;
	left: 50%;
	transform:translate(-50%,100px);
	width: 90%;
	padding: 5%;
	background: #fff;
	border-radius: 15px;
	box-sizing: border-box;
}
.modal_cont {
	display: block;
	padding: 0 0 10px 0;
	font-size: 12px;
	line-height: 1.5;
}
.modal_cont h3 {
	width: 100%;
	background: #0E5389;
	color: #fff;
	text-align: center;
	font-size: 18px;
	font-weight: 700;
	padding: 0.2em 0;
	margin: 10px 0; 
	border-radius: 15px;
}
.modal_cont h4 {
	width: 100%;
	color: #0E5389;
	font-size: 15px;
	font-weight: 700;
}
.modal_cont .swiper-button-next, .swiper-button-prev {
    color: #000!important;
}
.modal_cont .col2_box li {
	width: 47%;
	margin: 20px 0 0 0;
}
.modal_cont .col2_box li img {
	margin: 0 0 10px 0;
}
.modal_cont .col2_box li dl {
	text-align: center;	
}
.modal_cont .col2_box li dl dt {
	background: #71A0C4;
	font-size: 13px;
	font-weight: 700;
	color: #fff;
	padding: 0.2em 0;
}
.modal_cont .col2_box li dl dd {
	font-weight: 700;
	background: #CEE4F5;
	padding: 1.0em;
	box-sizing: border-box;
}
.modal_cont .col2_box li dl dd span {
	font-size: 2.0em;
	color: #0E5389;
}
.closeModal {
  position: absolute;
  top: -1%;
  right: 5%;
  cursor: pointer;
	color:#fff;
	font-size: 3rem;
}


/*********** FACT ***********/

.fact {
	position: relative;
	padding-bottom: 100px;
	background: #6eb4e8;
}

.fact .custom-shape-divider-bottom-1747289989 {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    overflow: hidden;
    line-height: 0;
    transform: rotate(180deg);
}

.fact .custom-shape-divider-bottom-1747289989 svg {
    position: relative;
    display: block;
    width: calc(119% + 1.3px);
    height: 60px;
    transform: rotateY(180deg);
}

.fact .custom-shape-divider-bottom-1747289989 .shape-fill {
    fill: #FFFFFF;
}
.fact .ttl_box_wh img {
	width: 62%;
}

.fact article {
	position: relative;
	background: #c8e8ff;
	width: 100%;
	border-radius: 15px;
	padding: 3%;
	margin: 50px auto 0;
	box-sizing: border-box;
}
.fact article .icon {
	position: absolute;
	width: 100px;
	top: -30px;
	left: 0;
	right: 0;
	margin: auto;
}
.fact article .box {
	background: #fff;
	border-radius: 15px;
	padding: 5%;
	box-sizing: border-box;
}
.fact article h3 {
	font-size: 25px;
	font-weight: 700;
	text-align: center;
	padding-top: 50px;
	line-height: 1.4;
}

.fact article .article_box {
	margin: 5% auto;
}
.fact article .article_box li:first-child {
	width: 100%;
	margin-bottom: 2%;
}
.fact article .article_box li:last-child {
	width: 100%;
}
.fact article .table_com {
	width: 100%; 
	margin-top: 20px;
	font-size: 10px;
	line-height: 1.4;
}
.fact article .table_com ul {
	display: flex;
	justify-content: space-between;
	border-bottom: 1px solid #333333;
}
.fact article .table_com ul:first-child {
	border-bottom: none;
}
.fact article .table_com ul:first-child li:nth-child(1) {
	background: transparent;
}
.fact article .table_com ul:first-child li:nth-child(2),
.fact article .table_com ul:first-child li:nth-child(3) {
	background: #0c70d4;
	text-align: center;
	font-weight: 700;
	font-size: 10px;
	color: #fff;
}
.fact article .table_com ul:first-child li:nth-child(3) {
	background: #16528d;
}
.fact article .table_com ul li {
	width: 37.3%;
	background: #e7f3ff;
	padding: 1.0em;
	box-sizing: border-box;
}
.fact article .table_com ul li:first-child {
	width: 25%;
	text-align: center;
	font-size: 10px;
	font-weight: 700;
	align-content: center;
}
.fact article .table_com ul li span {
	font-size: 10px;
	color: #0c70d4;
	font-weight: 700;
}
	
/*********** VOICE ***********/

.voice .ttl_box_blue img {
	width: 58%;;
}
.voice .article {
	width: 100%;
	margin: 30px auto;
	padding: 8%;
	border-radius: 20px;
	border: 2px solid #0e5389;
	box-sizing: border-box;
	display: block;
	align-items: center;
	justify-content: space-between;
}
.voice .article img {
	width: 50%;
	margin: 0 0 5% 25%;
}
.voice .article .article_txt_box {
	width: 100%;
}
.voice .article .article_txt_box dt {
	font-size: 16px;
	font-weight: 700;
	color:#0e5389;
}
.voice .swiper-slide {
  transition: transform 0.6s;
}
.voice .swiper-button-next {
    background: url("../images/icon_awwor_right.png") no-repeat center / cover;
	width: 25px;
	height: 25px;
	top: 45%;
	bottom: auto;
	left: auto;
	right: 2%;
	margin: 0;
}
.voice .swiper-button-prev {
    background: url("../images/icon_awwor_left.png") no-repeat center / cover;
	width: 25px;
	height: 25px;
	top: 45%;
	bottom: auto;
	left: 2%;
	right: auto;
	margin: 0;
}
.voice .swiper-button-prev:after, .voice .swiper-button-next:after {
	display: none;
}
	

/*********** FAQ ***********/

.faq .ttl_box_blue img {
	width: 43%;
}
.faq .qa_list {
	margin-top:30px;
}

/*アコーディオンタイトル*/
.faq .title {
    position: relative;/*+マークの位置基準とするためrelative指定*/
    cursor: pointer;
    padding: 15px 45px;
	margin: 0 0 10px;
    transition: all .3s ease;
	line-height: 1.5;
	background: #e7f3ff;
	border-radius: 20px;
	font-size: 1.0rem;
	font-weight: 700;
	color: #0e5389;
}
.faq .title span {
	position: absolute;
	content: "";
    background: url("../images/icon_question.png") no-repeat center / cover;
	width: 20px;
	height: 20px;
	top: 0;
	bottom: 0;
	left: 15px;
	margin: auto;
}

/*アイコンの＋と×*/
.faq .title::before,
.faq .title::after{
    position: absolute;
    content:'';
    width: 14px;
    height: 1px;
    background-color: #0c70d4;
}
.faq .title::before{
    top:50%;
    right: 20px;
    transform: rotate(0deg);
}
.faq .title::after{    
    top:50%;
    right: 20px;
    transform: rotate(90deg);
}
/*　closeというクラスがついたら形状変化　*/
.faq .title.close::before{
  	top:50%;
    right: 20px;
    transform: rotate(0deg);
}
.faq .title.close::after{
	display: none;
}

/*アコーディオンで現れるエリア*/
.faq .answer_box {
    display: none;/*はじめは非表示*/
    background: url("../images/icon_answer.png") no-repeat top left;
	background-size: 20px;
  	margin: 15px 15px 30px;
    padding: 0 0 0 30px;
}


/*********** FOOTER SETTING ***********/

footer {
	width: 100%;
	margin: 20% auto 0;
	padding-bottom: 120px;
	text-align: center;
}
footer .f_logo {
	width: 40%;
	margin: 20px auto;
}
footer .f_server {
	width: 65%;
	margin: 20px auto;
}
footer p {
	font-size: 0.7rem;
	margin: 0.8em auto;
}

	
}

