@charset "UTF-8";
/*
Theme Name:lp01
Theme URI:https://lp01.wmemo.biz/
*/

@import url(css/base.css);
@import url(css/font-awesome.css);


/* ============= clearfix ============= */
/*#wrapper::after,*/
.content::after,
.header__inner::after,
.container::after {
	content:".";
	display:block;
	height:0;
	clear:both;
	visibility:hidden;
}

/* ============= font-awesome ============= */
ul.check li::before {
	font-family: 'FontAwesome';
	display: inline-block;
	width: 1em;
    text-align: center;
    vertical-align: middle;
}


/* ========================== layout ========================== */
/*#wrapper { width:100%; }*/

@media only screen and (min-width: 768px) {
.header__inner,
.container__inner,
footer nav,
footer #footer-lower .inner { max-width: 750px; }
}

@media only screen and (min-width: 992px) {
.header__inner,
.container__inner,
footer nav,
footer #footer-lower .inner { max-width:970px; }
}

@media print, screen and (min-width: 1200px) {
.header__inner,
.container__inner,
footer nav,
footer #footer-lower .inner { max-width: 1140px; }
}


/* ========================== content ========================== */
.content {
	margin:0 auto;
	padding:0 10px;
	font-size:1.6rem;
}

@media print, screen and (min-width: 992px) {
.content {
	padding:0;
	font-size:1.6rem;
}
}

/* ========================== container ========================== */
.container__inner { margin:0 auto; }


/* ========================== inner ========================== */
.inner { padding:20px 0; }
.down-arrow .inner { padding:0; }
/*.down-arrow + .inner { padding:30px 0 20px 0; }*/
/*.down-arrow + .container__inner { padding:25px 0 20px 0; }*/


@media print, screen and (min-width: 992px) {
.inner { padding:40px 0; }
}

@media print, screen and (min-width: 768px) {
.inner.w85 {
	width: 85%;
	margin:0 auto;
}
}

/* ++++++ 背景色ありのスペース ++++++ */
@media print, screen and (max-width: 767px) {
.bg { padding: 0 10px; }
}

/* 水色 */
.bg.sky { background: #dfeafd; }
/* グレイ */
.bg.gray { background: #eee; }


/* ++++++ 下三角スペース ++++++ */
.down-arrow {
    position: relative;
	padding: 20px 0;
    text-align: center;
}
/* 下三角 */ 
.down-arrow:before {
  content: "";
  position: absolute;
  top: 100%;
  left: 50%;
  margin-left: -30px;
  border: 30px solid transparent;
  border-top: 30px solid;
}
.down-arrow,
.down-arrow a {
	color: #fff;
	text-decoration: none;
}

.content .down-arrow h2 { margin:0; }

.down-arrow + section ul { margin-top:50px; }

/* ============= 下三角矢印の背景・文字色バリエーション ============= */
/* 黒 */ 
.down-arrow.bg-black { background: #000; }
.down-arrow.bg-black:before { border-top-color: #000; }
/* ネイビー */ 
.down-arrow.bg-navy { background: #105cb0; }
.down-arrow.bg-navy:before { border-top-color: #105cb0; }
/* クリムゾン */ 
.down-arrow.bg-crimson { background: #DC143C; }
.down-arrow.bg-crimson:before { border-top-color: #DC143C; }
/* グリーン */ 
.down-arrow.bg-green { background: #098b09; }
.down-arrow.bg-green:before { border-top-color: #098b09; }


/* ========================== header ========================== */
/*header { border-top: 3px solid #105cb0; }*/

.header__inner {
	margin:0 auto;
	padding: 10px 10px 10px 10px;
}

.header h1 { text-align: center;}
.header__nav { display:none; }

@media print, screen and (min-width:768px) {
.header__inner { padding:10px 0 10px 0; }
.header__titlearea {  float:left; }
.header__nav {
	display: block;
	float: right;
}
.header__nav .btn {
	margin: 0;
	padding-left:4rem;
	padding-right:4rem;
}
}


/* ========================== メインビジュアル ========================== */
#mainvisual {
	width: 100%;
	height: 500px;
	padding: 0 10px;
	box-shadow: 0 6px 4px -3px rgba(0,0,0,0.3);
  	-webkit-box-shadow: 0 6px 4px -3px rgba(0,0,0,0.3);
  	-moz-box-shadow: 0 6px 4px -3px rgba(0,0,0,0.3);
	display: flex;
  justify-content: center;
  align-items: center;
}

.mainvisual__catch h2 {
	color: #004192;
	font-size:3.4rem;
	line-height: 1.3em;
}

.mainvisual__catch .tagline { display:none; }

@media print, screen and (min-width: 992px) {
#mainvisual {
	position: relative;
	display: block;
	height: 530px;
	opacity:1;
	-moz-opacity:1;
}
.mainvisual__inner {
	 position: relative;
	width: 1140px;
	margin: 0 auto;
}
.mainvisual__catch {
  position: absolute;
  left: 40px;
  top: 110px;
}
.mainvisual__catch h2 {
	left: 40px;
  top: 160px;
	width: 50%;
	color: #004192;
	font-size:4.6rem;
	line-height: 1.3em;
}
.mainvisual__catch .tagline {
	display: block;
	width: 50%;
	margin: 30px 0 0 0;
	font-size: 18px;
}
}


/* ========================== content ========================== */
/* ++++++ headline ++++++ */
.content h2 {
	margin:20px 0;
	font-size:2.4rem;
	font-weight:bold;
	line-height:1.4em;
}
@media print, screen and (min-width: 992px) {
.content h2 {
	font-size:3rem;
}
}

.content h2 + * { margin-top:20px; }

.content h3 {
	position: relative;
	margin:30px 0;
	padding:0 0 5px 0;
	color:#333;
	font-family: "Genshin-Gothic", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-size:2.6rem;
	font-weight:bold;
	line-height:1.4em;
}
.content h3::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  z-index: 2;
  content: '';
  width: 20%;
  height: 4px;
}

.content h4 {
	margin:30px 0;
	padding:0 0 5px 10px;
	border-left: 5px solid #777;
	border-bottom: 1px solid #777;
	font-size:2rem;
}


/* ============= <h3>ラインの色バリエーション ============= */
/* アクセントが黒 */
.content h3.black-line {	border-bottom:4px solid #e6e6e6; }
.content h3.black-line::after { background-color: #000; }
/* アクセントがネイビー */
.content h3.navy-line {	border-bottom:4px solid #cfe3f9; }
.content h3.navy-line::after { background-color: #105cb0; }
/* アクセントがクリムゾン */
.content h3.crimson-line {	border-bottom:4px solid #fbd5dc; }
.content h3.crimson-line::after { background-color: #DC143C; }
/* アクセントがグリーン */
.content h3.green-line {	border-bottom:4px solid #c3f3ba; }
.content h3.green-line::after { background-color: #098b09; }


/* ========================== 段落 ========================== */
.content p {
	margin:0 0 20px 0;
	line-height:1.7em;
}

.content .inner p:last-child { margin-bottom: 0; }


/* ************************************ common parts ************************************ */
div.pad,
img.pad { padding:10px; background:#fff; border:1px solid #d4d4d4; }
img.pad.thick { border:5px solid #eee; }
img.pdf { margin-left:3px; vertical-align:middle; }

img.border { border:1px solid #ddd; }

img {
	clear:both;
	 float:none;
     max-width: 100%;
     height: auto;
	 margin:0 auto;
	 text-align:center;
	 vertical-align : middle;
}

.img-l,
.img-r,
.img-c {
	float:none;
	margin:0 auto 15px auto;
	text-align:center;
}

@media print, screen and (min-width:768px) {
.img-l {
	float:left;
	margin:0 15px 10px 0;
}
.img-r {
	float:right;
	margin:0 0 10px 15px;
}
.img-l p,
.img-r p,
.img-c p { margin:3px 0 0 0; text-align:center; }
}


/* ========================== video ========================== */
.video-container {
	margin-bottom:20px;
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 30px;
	height: 0;
	overflow: hidden;
}

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


.pc_only { display:none; }

@media print, screen and (min-width: 768px) {
.pc_only { display:block; }
.m_only { display:none; }
}


/* ========================== buttons ========================== */
.btn {
	display:block;
	margin:0 auto 3rem;
	padding:1rem 2rem;
	box-shadow: 0px 4px 3px -3px rgba(0,0,0,0.3);
  	-webkit-box-shadow: 0px 4px 3px -3px rgba(0,0,0,0.3);
  	-moz-box-shadow: 0px 4px 3px -3px rgba(0,0,0,0.3);
	border-radius: 6px;  
    -webkit-border-radius: 6px; 
    -moz-border-radius: 6px;
	text-decoration:none;
	text-align:center;
}

.btn:hover {
	filter:alpha(opacity=80);
	opacity:0.8;
	-moz-opacity:0.8;
}

.btn.btn-deeppink {
	background:#b70a63;
	background: -moz-linear-gradient(top, #d33f8b 0%, #b70a63 50%, #d33f8b 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#d33f8b), color-stop(50%,#b70a63), color-stop(100%,#d33f8b));
	background: linear-gradient(to bottom, #d33f8b 0%,#b70a63 50%,#d33f8b 100%);
	color:#fff;
	font-size:1.3em;
}
.btn.btn-navy {
	background:#b70a63;
	background: -moz-linear-gradient(top, #2e76c5 0%, #105cb0 50%, #2e76c5 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#2e76c5), color-stop(50%,#105cb0), color-stop(100%,#2e76c5));
	background: linear-gradient(to bottom, #2e76c5 0%,#105cb0 50%,#2e76c5 100%);
	color:#fff;
	font-size:1.3em;
}
.btn.btn-green {
	background:#b70a63;
	background: -moz-linear-gradient(top, #209e20 0%, #098b09 50%, #209e20 100%);
	background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#209e20), color-stop(50%,#098b09), color-stop(100%,#209e20));
	background: linear-gradient(to bottom, #209e20 0%,#098b09 50%,#209e20 100%);
	color:#fff;
	font-size:1.3em;
}

/*width*/
@media print, screen and (min-width: 768px) {
.btn.w50 { width:50%; }
.btn.w60 { width:60%; }
.btn.w70 { width:70%; }
.btn.w80 { width:80%; }
.btn.w90 { width:90%; }
.btn.w97 { width:97%; }
}


/* ========================== list ========================== */
.content ul { margin: 0 0 30px 10px; }
.content ul li { margin: 0 0 10px 0; }

.content ol { margin: 0 0 30px 25px; }
.content ol li {
	margin: 0 0 15px 0;
	list-style: decimal;
}

@media print, screen and (min-width: 768px) {
	.content ul { margin: 0 0 30px 20px; }
	.content ol { margin: 0 0 30px 35px; }
}


/* *********** チェックマークのリスト *********** */
ul.check li {
	margin-bottom: 15px;
	text-indent:-1em;
  	padding-left:1em;
}
ul.check li:last-child { margin-bottom:0; }
ul.check li::before {
	content:"\f00c";
	color:#DC143C;
	font-size:1.2em;
	font-weight: bold;
}


/* *********** 番号を装飾 *********** */
ol.frame {
	margin: 0 0 30px 15px;
	counter-reset:number;
}

ol.frame li {
	margin-bottom: 15px;
  	position: relative;
	padding: 0.5em 0.5em 0.5em 30px; 
	list-style-type:none!important;
	/*font-size: 16px;*/
  	line-height: 1.5em;
}

ol.frame li:before{
  display:inline-block;
  position: absolute;
  left: -5px;
  width: 24px;
  height: 24px;
  counter-increment: number;
  content: counter(number);
  background: #105cb0;
  color: #fff;
  font-weight:bold;
  line-height: 2.4rem;
  text-align: center;
}



/* ========================== radius ========================== */
.radius-space {
	padding:20px 10px;
	border-radius: 10px;  
    -webkit-border-radius: 10px; 
    -moz-border-radius: 10px;
	border:1px solid #ddd;
	background:#fff;
}

.radius-space.gray-border {
	background:#f8f8f8;
	border:1px solid #aaa;	
}

.radius-space.bule-border {
	background:#f4f8fc;
	border:1px solid #659ddb;
}

.radius-space.green-border {
	background:#f4fef4;
	border:1px solid #54be54;
}

.radius-space.red-border {
	background:#fdf5f7;
	border:1px solid #ea5472;
}

.radius-space ul,
.radius-space li:last-child,
.radius-space p:last-child { margin-bottom:0; }


/* ------------- 四角枠 ------------- */
.square {
	margin-bottom:30px;
	padding:20px 10px;
	background:#fff;
	border:1px solid #ddd;
}
.square ul,
.square li:last-child { margin-bottom:0; }


/* ========================== 並列リスト ========================== */
ul.parallel-list li { margin-bottom:10px; }
ul.parallel-list li img { margin-bottom:6px; }
ul.parallel-list li a { text-decoration: none; }

ul.parallel-list.radius li img {
	border-radius: 10px;  
    -webkit-border-radius: 10px; 
    -moz-border-radius: 10px;	
}


@media print, screen and (min-width:600px) {
ul.parallel-list {
	margin:0 0 10px 0;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items:flex-start;
    align-items:flex-start;
}
/*ul.parallel-list li { margin-bottom:0; }*/
	
ul.parallel-list.two li {
	width:48%;
	margin-right:2%;
}
ul.parallel-list.three li {
	width:32%;
	margin-right:2%;
}
ul.parallel-list.four li {
	width:23%;
	margin-right:2%;
}
ul.parallel-list.five li {
	width:18%;
	margin-right:2%;
}
ul.parallel-list.six li {
	width:15%;
	margin-right:2%;
}
ul.parallel-list li:last-child { margin-right:0; }
}


/* ========= モバイルサイズでも横並びの並列リスト ========= */
ul.parallel-list.pararell {
	margin-bottom:10px;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items:flex-start;
    align-items:flex-start;
	text-align: left;
}
ul.parallel-list.pararell li { margin-bottom:0; }

ul.parallel-list.pararell.two li {
	width:48%;
	margin-right:2%;
}

ul.parallel-list.pararell.three li {
	width:32%;
	margin-right:2%;
}

ul.parallel-list.pararell.four li {
	width:23%;
	margin-right:2%;
}
ul.parallel-list.pararell.five li {
	width:18%;
	margin-right:2%;
}
ul.parallel-list.pararell.six li {
	width:15%;
	margin-right:2%;
}

ul.parallel-list.pararell li:last-child { margin-right:0; }


/* =================== 横スクロール（スワイプ）する要素 =================== */
.scroll-area {
overflow: auto;
  white-space: nowrap;
}


/*width*/
@media print, screen and (min-width: 768px) {
.w50 { width:50%; }
.w60 { width:60%; }
.w70 { width:70%; }
.w80 { width:80%; }
.w90 { width:90%; }
.w97 { width:97%; }
.w100 { width:100%; }
}

/* ========================== table ========================== */

@media (max-width: 767px) {
table th,
table td,
table table th,
table table td,
table table.auto th,
table table.auto td {
	display:block;
	width:auto;
}
}

/* -------- モバイル時にブレイクしないテーブル -------- */
table.unbreakable th,
table.unbreakable td,
table.unbreakable table th,
table.unbreakable table td { display:table-cell; }

/* table common */
table {
	width:100%;
	background: #fff;
	border-collapse: separate;
	border-spacing: 0;
	margin-bottom:15px;
	border-top:1px solid #ddd;
	border-left:1px solid #ddd;
}
table.auto { width:auto; }
table table { margin-bottom:0; }
th, td {
	vertical-align:top;
	padding:15px 10px 12px 10px;
	border-bottom:1px solid #ddd;
	border-right:1px solid #ddd;
}
th {
	background:#f4f4f4;
	font-weight:bold;
	text-align:left;
}

table.border { border-left:1px solid #ddd; }
table.border th,
table.border td { border-right:1px solid #ddd; }


@media print {
table th,
table td,
table table th,
table table td,
table table.auto th,
table table.auto td { display: table-cell; }
}


/* tableの中のリスト */
table ul { margin:0 0 30px 25px; }

table ul li {
	margin-bottom:5px;
	list-style:disc;
}

table p:last-child,
table ol:last-child,
table ul:last-child,
table ol li:last-child,
table ul li:last-child { margin-bottom:0; }
table ul ul { margin:10px 0 0 20px; }


/* ========================== form ========================== */
@media only screen and (max-width: 767px) {
input {
	min-height:30px;
	margin-bottom:5px;
}
}
@media (max-width:991px) {
input[type=text],
input[type=url],
input[type=email],
textarea {
	font-size:120%;
	line-height:120%;
	vertical-align:middle;
}
}

input, textarea { font-size:1.2rem; }
input { vertical-align:middle; }
td.inputGap input,
td.inputGap select,
td.inputGap textarea { margin-bottom:5px; }

td.inputList ul { margin:0 0 0 10px; }
td.inputList li {
	margin-bottom:15px;
	list-style:none;
}
td.inputList input { margin:0 5px; }

td ul { margin-left:20px; }
td ul:last-child,
td li:last-child { margin-bottom:0; }


/*form*/
.attention { color:#DC143C; }
form .example { color:#666; }



/* ========================== fonts ========================== */
.f10 { font-size:1.2rem; }
.f12 { font-size:1.2rem; }
.f14 { font-size:1.4rem; }
.f16 { font-size:1.6rem; line-height:1.4em;  }
.f18 { font-size:1.6rem; line-height:1.4em; }
.f20 { font-size:1.8rem; line-height:1.4em; }

@media only screen and (min-width: 768px) {
.f10 { font-size:1rem; }
.f12 { font-size:1.2rem; }
.f14 { font-size:1.4rem; }
.f16 { font-size:1.6rem; line-height:1.4em;  }
.f18 { font-size:1.8rem; line-height:1.4em; }
.f20 { font-size:2rem; line-height:1.4em; }
}

.j16,.j16bold,
.j18,.j18bold {
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
}

.crimson,
.crimsonBold,
.crimson a,
.crimsonBold a { color:#DC143C; }

.green,
.greenBold,
.green a,
.greenBold a { color:#159101; }

.navy,
.navyBold,
.navy a,
.navyBold a { color:#105cb0; }

.yb { background:#FF0; }


/* ========================== footer ========================== */
footer {
	padding: 40px 0 60px;
	/*background: #005c92;*/
	background: #105cb0;
	color: #fff;
}


/* ---- フッタメニュー ---- */
.footer__nav ul {
	margin-bottom:5rem;
	text-align: center;
}
.footer__nav li {
	display:inline-block;
	margin-right: 10px;
	padding-right: 10px;
	border-right: 1px solid #fff;
	font-size: 1.3rem;
}

.footer__nav li:last-child {
	margin-right:0;
	border-right:none;
}


.footer__nav a {
	color: #fff;
}


/* ---- コピーライト ---- */

footer .copyright {
	clear:both;
	position:relative;
	font-size:10px;
	text-align:center;	
}

@media print, screen and (min-width: 768px) {
footer .copyright {
	clear:both;
	font-size:12px;
	text-align:center;
}
}


/* ========================== parts ========================== */
/* ページトップ自動発生 */
#page-top {
	float:right;
    position: fixed;
	z-index:1000;
    bottom: 10px;
    right: 20px;
    /*font-size: 14px;*/
}
#page-top a {
    text-decoration: none;
    /*color: #fff;*/
    width:auto;
    display: block;
}
#page-top a:hover {
	filter:alpha(opacity=70);
	opacity:0.7;
	-moz-opacity:0.7;
}

#page-top .fa-stack {
  position: relative;
  display: inline-block;
  width:2.5em;
  height:2.5em;
  line-height:2.5em;
  vertical-align: middle;
}
#page-top .fa-stack-1x,
#page-top .fa-stack-2x {
  position: absolute;
  left: 0;
  width: 100%;
  text-align: center;
}
#page-top .fa-stack-1x {
  line-height: inherit;
  font-size:1.5em;
}
#page-top .fa-stack-2x {
	color:#105cb0;
  font-size:2.5em;
}
#page-top .fa-inverse {
  color: #fff;
}

@media only screen and (min-width:768px) {
#page-top .fa-stack {
  width:3em;
  height:3em;
  line-height:3em;
}
#page-top .fa-stack-1x { font-size:2em; }
#page-top .fa-stack-2x { font-size:3em; }
}


/* == WordPress WYSIWYG Editor Styles == */

.entry-content img {
	margin: 0 0 1.5em 0;
	}
.alignleft, img.alignleft {
	margin-right: 1.5em;
	display: inline;
	float: left;
	}
.alignright, img.alignright {
	margin-left: 1.5em;
	display: inline;
	float: right;
	}
.aligncenter, img.aligncenter {
	margin-right: auto;
	margin-left: auto;
	display: block;
	clear: both;
	}
.alignnone, img.alignnone {
	/* not sure about this one */
	}
.wp-caption {
	margin-bottom: 1.5em;
	text-align: center;
	padding-top: 5px;
	}
.wp-caption img {
	border: 0 none;
	padding: 0;
	margin: 0;
	}
.wp-caption p.wp-caption-text {
	line-height: 1.5;
	font-size: 10px;
	margin: 0;
	}
.wp-smiley {
	margin: 0 !important;
	max-height: 1em;
	}
blockquote.left {
	margin-right: 20px;
	text-align: right;
	margin-left: 0;
	width: 33%;
	float: left;
	}
blockquote.right {
	margin-left: 20px;
	text-align: left;
	margin-right: 0;
	width: 33%;
	float: right;
	}
.gallery dl {}
.gallery dt {}
.gallery dd {}
.gallery dl a {}
.gallery dl img {}
.gallery-caption {}

.size-full {}
.size-large {}
.size-medium {}
.size-thumbnail {}



/**/
