@charset "utf-8";

/* ----------------------- Browser Default Initialization */

*{ margin: 0 auto; padding: 0 auto;}

html {
	overflow-y: scroll;
    font-size: 62.5%;
    letter-spacing: .05rem;
    line-height: 1.5;
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
}

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td	{
}
address, caption, cite, code, dfn, em, strong, th, var	{
	font-style: normal;
}
table	{
	border-collapse: collapse;	border-spacing: 0;
}
caption, th	{
	text-align: left;
}
q:before ,q:after	{
	content: '';
}
object, embed	{
	vertical-align: top;
}
hr, legend	{
	display: none;
}
h1, h2, h3, h4, h5, h6	{
	font-size: 100%;
}
img, abbr, acronym, fieldset	{
	border: 0;
}
li	{
	list-style-type: none;
    margin: 0;
}

a:link{
    color: #fff;
    text-decoration: none;
}

a:hover{
    opacity: 80%;
}

a:visited{
    color: #fff;
}

h1 {
	color: #FFF;
	text-align:center;
	padding-top:50px;
	/*text-shadow:1px 1px 0 #666,
				-1px 1px 0 #666,
				1px -1px 0 #666,
				-1px -1px 0 #666;*/
  }

.pc { display: block !important; }
.sp { display: none !important; }

small{ font-size: 70%; text-align:center; }
.clear{clear: both;}


/* ----------------------- Basic Style */
/* ------------ Font Style */
body { color: #1a1a1a; font-size: 1.6rem; line-height: 1.7; background-color: #fff;
    /*width:100%;*/
	/*height:100vh;*//*100vhで画面1つ分*/
  }

#container {    
}

/* -----------------------header*/

header {
	width: 100%;
}

header a:link{border: none;}
header a:hover{border: none; opacity: 0.5;}

.header-txt{width: 500px; float:right; margin: 610px 70px 0 0;}

.header-txt p{font-size: 1.6rem;}


/*ロゴやサイトタイトルをセンタリング*/
.logo-area img{width: 30px; height: 30px; text-align:center; margin: 20px auto; padding: 0 auto;}


/* -----------------------コンセプト*/


.concept{width: 100%; height: auto; background: url(../images/bg-infomation.jpg) no-repeat #ffe600; background-size: contain; font-size: 2.8rem; text-align: center; padding: 40px 0;}

.concept h1{padding-top: 40px; color: #008f44; font-size: 2.3rem; text-align: center;}

.concept_menu{width: 900px; padding: 30px 0;}

.concept_menu li {width: 350px; background: #008f44; display: inline-block; margin: 10px 0; border-radius: 50px; font-size: 1.6rem; padding: 5px; position: relative; color: #fff; text-decoration: none;
}

.concept_menu li:before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-bottom: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 50%;
  right: 20%;
  margin-top: -6px;
  transform: rotate(45deg);
}

/* --------------------------------------------------------------ここからメイン*/

#maincontent{
	width: 100%;
	height: auto;
	margin: 100px auto 0;
	padding: 0 auto;
}

/* -----------------------ご案内*/

.intro{width: 100%; padding: 10px 0 50px 0;}
.intro h1{font-size: 1.6rem; font-weight: bold; text-align: center; padding: 0 0 50px; color: #1a1a1a;}

.intro_contents{clear: both; margin: 0 auto; padding: 0 auto; width: 860px;}
.intro_contents_left{float:left; text-align: center; margin: 0 0 0 20px;}
.intro_contents_left_circle{width: 90px; height: 90px; line-height:90px; background: #008f44; border-radius: 50px; text-align: center; color: #fff; font-weight: bold; position: relative; z-index: 1;}
.intro_contents_left_detail{width: 400px; border: 3px dotted #008f44;  border-radius: 10px; position: relative; top: -50px; padding-top: 80px; }
.intro_contents_left_detail h2{font-size: 1.8rem; color:#008f44;}
.intro_contents_left_detail p{margin: 20px; font-size: 1.4rem; text-align: left;}
.intro_contents_left_detail_btn{font-size: 1.4rem; font-weight: bold; text-align: center; color: #fff; background: url(../images/bg-biginner.jpg);  background-repeat: no-repeat; background-size: contain; border-radius: 10px; letter-spacing: .1rem; margin: 20px; padding: 15px 0 15px 30px;}

.intro_contents_right{float:left; text-align: center; margin: 0 0 0 20px;}
.intro_contents_right_circle{width: 90px; height: 90px; line-height:90px; background: #008f44; border-radius: 50px; text-align: center; color: #fff; font-weight: bold; position: relative; z-index: 1;}
.intro_contents_right_detail{width: 400px; border: 3px solid #008f44;  border-radius: 10px; position: relative; top: -50px; padding-top: 80px; }
.intro_contents_right_detail h2{font-size: 1.8rem; color:#008f44;}
.intro_contents_right_detail p{margin: 20px; font-size: 1.4rem; text-align: left;}
.intro_contents_right_detail_btn{font-size: 1.4rem; font-weight: bold; text-align: center;  color: #fff; background: url(../images/bg-holder.jpg); background-repeat: no-repeat; background-size: contain; border-radius: 10px; letter-spacing: .1rem; margin: 20px; padding: 15px 0 15px 30px;}

.intro_contents_hosoku{clear: both; width: 80%; margin-bottom: 30px;}
.intro_contents_hosoku p{font-size: 1.2rem; text-align: left; padding-bottom: 30px;}

/* -----------------------機能*/

.dhaycard{clear: both; width: 100%;}
.dhaycard h1{width: 100%; height: 150px; line-height: 100px; background: #008f44; text-align: center; color:#fff; font-size: 2.0rem; font-weight: bold;}

.dhaycard_ttl {width: 100%; position: relative; color: #fff; text-align: center; padding: 70px 0; background-color: #008f44; font-size: 2.0rem; font-weight: bold;}
.dhaycard_ttl::after {
width: 0; height: 0; position: absolute; top: 100%; left: 50%; margin: 0 0 0 -50px; border: 30px solid transparent; border-top-color: #008f44;content: '';}

.dhaycard_img {margin: 100px 0; text-align: center;}

.dhaycard_subttl {
  position: relative;
  text-align: center; /* 文字の中央寄せ */
  font-size: 2.0rem;
}
.dhaycard_subttl::before {
  background-color: #008f44; /* 線の色 */
  border-radius: 0px; /* 線の両端を丸く */
  bottom: -10px; /* 線の位置 */
  content: "";
  height: 5px; /* 線の高さ */
  left: 50%; /* 線の中央寄せ */
  position: absolute;
  transform: translateX(-50%); /* 線の中央寄せ */
  width: 80px; /* 線の長さ */
}
 
.dhaycard_order{margin: 100px auto; padding: 0 auto; width: 860px; min-height: 310px;}
.dhaycard_order_number{float:left; width: 260px; height: auto; text-align: center; margin: 0 0 0 20px;}
.dhaycard_order_number h3{font-size: 1.8rem; font-weight: bold; text-align:center; margin: 20px 0;}
.dhaycard_order_number p{font-size: 1.4rem; text-align:left;}

.dhaycard_hosoku{clear: both; margin: 60px 0; text-align: center;}
.dhaycard_hosoku p{font-size: 1.2rem; padding-bottom: 30px;}

.dhaycard_gamen{width:860px; margin: 0 auto; padding: 0 auto; text-align:center;}
.dhaycard_gamen_left{float:left; width: 50%;}
.dhaycard_gamen_right{float:left; width: 50%;}

.dhaycard_gamen_content{width: 400px;}
.dhaycard_gamen_content_ttl{margin: 0 0 30px 0; height: 50px; line-height: 50px; font-size: 1.8rem; font-weight: bold;  color: #008f44; border: 2px solid #008f44; } 
.dhaycard_gamen_content p{margin: 20px; font-size: 1.4rem; text-align:center;}


/* -----------------------ご登録方法*/

.registration{clear: both; width: 100%; margin-top: 100px;}
.registration h1{width: 100%; height: 150px; line-height: 100px; background: #008f44; text-align: center; color:#fff; font-size: 2.0rem; font-weight: bold;}

.registration_ttl {margin: 0 0 100px 0; width: 100%; position: relative; color: #fff; text-align: center; padding: 70px 0; background-color: #008f44; font-size: 2.0rem; font-weight: bold;}
.registration_ttl::after {
width: 0; height: 0; position: absolute; top: 100%; left: 50%; margin: 0 0 0 -50px; border: 30px solid transparent; border-top-color: #008f44;content: '';}

.registration_subttl {
  position: relative;
  text-align: center; /* 文字の中央寄せ */
  font-size: 2.0rem;
    line-height: 1.2;
}
.registration_subttl::before {
  background-color: #008f44; /* 線の色 */
  border-radius: 0px; /* 線の両端を丸く */
  bottom: -30px; /* 線の位置 */
  content: "";
  height: 5px; /* 線の高さ */
  left: 50%; /* 線の中央寄せ */
  position: absolute;
  transform: translateX(-50%); /* 線の中央寄せ */
  width: 80px; /* 線の長さ */
}

.registration_order{margin: 100px auto; padding: 0 auto; width: 860px;}
.registration_order_number{float:left; width: 220px; height: auto; text-align: center; margin: 0 0 20px 20px; padding: 20px; background: #e8e8e8; border-radius: 15px; min-height: 390px;}
.registration_order_number h3{font-size: 1.8rem; font-weight: bold; text-align:center; margin: 20px 0;}
.registration_order_number p{margin: 20px 0; font-size: 1.4rem; text-align:left;}

.resistration_fix{clear: both; width: 50%; padding: 30px; border: 3px solid #008f44; text-align: center;}

.resistration_fix h3{clear: both; font-size: 2.2rem; font-weight:bold; color:#008f44; text-align: center;}
.resistration_fix p{font-size: 1.4rem;}


/* -----------------------ご不明な点はこちらまで*/

.contact{margin: 100px 0; width: 100%; height: auto; background: #eaefe4; background-size: contain; font-size: 2.8rem; text-align: center; padding: 40px 0;}

.contact h1{padding: 40px 0 20px; color: #008f44; font-size: 2.3rem; text-align: center;}
.contact p{font-size: 1.4rem;}

.contact_menu{width: 900px; padding: 30px 0;}

.contact_menu li {width: 350px; background: #008f44; display: inline-block; margin: 10px; border-radius: 10px; font-size: 1.6rem; padding: 20px; position: relative; color: #fff; text-decoration: none;
}

.contact_menu li:before {
  content: '';
  width: 6px;
  height: 6px;
  border: 0;
  border-bottom: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 50%;
  right: 20%;
  margin-top: -4px;
  transform: rotate(-45deg);
}

/* -----------------------よくあるご質問*/


.question{clear: both; width: 100%; margin-top: 100px; margin: 0 auto; padding: 0 auto;}
.question h1{width: 100%; height: 150px; line-height: 100px; background: #f1a63b; text-align: center; color:#fff; font-size: 2.0rem; font-weight: bold;}


.question a:link{
    color: #1a1a1a;
    text-decoration: underline;
}

.question a:hover{
    opacity: 80%;
}

.question a:visited{
    color: #1a1a1a;
}

.question_ttl {margin: 0 0 100px 0; width: 100%; position: relative; color: #fff; text-align: center; padding: 70px 0; background-color: #f1a63b; font-size: 2.0rem; font-weight: bold;}
.question_ttl::after {
width: 0; height: 0; position: absolute; top: 100%; left: 50%; margin: 0 0 0 -50px; border: 30px solid transparent; border-top-color: #f1a63b;content: '';}

.question_contents{width: 80%;}

.qa-008 dt {
    margin-bottom: 1em;
    color: #333333;
    font-weight: 600;
}

.qa-008 dt::before,
.qa-008 dd::before {
    margin-right: .4em;
}

.qa-008 dt::before {
    content: "Q.";
}

.qa-008 dd {
    margin: 0 0 2.5em;
    padding: 1em 1.5em;
    background-color: #fff0c0;
    color: #333333;
    border-radius: 10px;
}

.qa-008 dd::before {
    content: "A.";
}


/* フッター*/
#footer        {
    margin: 0 auto;
    padding: 0 auto;
    background: #e8e8e8;
}

#footer img{
    margin: 60px auto 0;
    padding: 0 auto;
}

#footer p{font-size: 1.0rem; text-align:center;}

.footer_contents{
}

.footer_logo{
    margin: 0 auto;
    padding: 0 auto;
    text-align: center;
}

.footer_logo a{
    text-decoration: none;
    border: none;
}

.footer_logo a:hover {
	opacity:0.8;
}

.pb5{padding-bottom: 5px;}
.pb10{padding-bottom: 10px;}
.pb15{padding-bottom: 15px;}
.pb20{padding-bottom: 20px;}
.pb30{padding-bottom: 30px;}
.pb40{padding-bottom: 40px;}
.pb50{padding-bottom: 50px;}
.pb55{padding-bottom: 55px;}
.pb60{padding-bottom: 60px;}
.pb65{padding-bottom: 65px;}
.pb70{padding-bottom: 70px;}
.pb80{padding-bottom: 80px;}
.pb90{padding-bottom: 90px;}
.pb100{padding-bottom: 100px;}

.pt5{padding-top: 5px;}
.pt10{padding-top: 10px;}
.pt15{padding-top: 15px;}
.pt20{padding-top: 20px;}
.pt30{padding-top: 30px;}
.pt40{padding-top: 40px;}
.pt50{padding-top: 50px;}
.pt55{padding-top: 55px;}
.pt60{padding-top: 60px;}
.pt65{padding-top: 65px;}
.pt70{padding-top: 70px;}
.pt80{padding-top: 80px;}
.pt90{padding-top: 90px;}
.pt100{padding-top: 100px;}
.pt150{padding-top: 150px;}

.pt-30{padding-top: -30px;}

.aling-center{text-align: center;}


/***トップへ戻るボタン***/
.pagetop {
  height: 50px;
  width: 50px;
  position: fixed;
  right: 30px;
  bottom: 30px;
  background: #008f44;
  border: solid 2px #008f44;
  border-radius: 50%;
  display: none;
  justify-content: center;
  align-items: center;
  z-index: 2;
  cursor: pointer;
}
.pagetop__arrow {
  display: block;
  height: 10px;
  width: 10px;
  border-top: 3px solid #fff;
  border-right: 3px solid #fff;
  transform: translateY(20%) rotate(-45deg);
}


/*
font-family: 'M PLUS 1p', sans-serif;
font-family: 'Noto Sans JP', sans-serif;
font-family: 'Otomanopee One', sans-serif;
font-family: 'Sawarabi Gothic', sans-serif;
font-family: 'Yomogi', cursive;
*/