@charset "utf-8";
/* CSS Document */

/* reset *************************************************************/
body {line-height:1; margin:0; font-family:arial,sans-serif;}
h1, h2, h3, h4, h5, h6, p {margin:0; font-weight:normal; display:block;}
article,footer,header {display:block;}
ul,li {list-style:none; padding:0;margin:0;}
dl,dt,dd {padding:0; margin:0;}
table,tr,td {border:0;padding:0;margin:0;}
a {color:#3c68c3;}
img {vertical-align:baseline; border:0; padding:0; margin:0;}
div {margin:0;padding:0;}
button {background: transparent;border: 0; outline: none;}
/* //reset *************************************************************/

*{
    box-sizing: border-box;
}
body,html {
    height: 100%;
}
html {
    font-size: 62.5%;
}
body {
    font-size: 1.5rem;
    color: #141414;
    line-height: 1.7;
    font-family:-apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", sans-serif;
    background: url(../img/bg_ptw.png);
    word-wrap : break-word;
}
p {
    margin-top: 2.816%;  
}
img {
    max-width: 100%;
    margin: 0 auto;
    vertical-align: bottom;
}

.inner {
  width: 100%;
  max-width: 1000px;
  margin: 0 auto;
}

h1 {
  margin: 0;
}
header {
    position: relative;
    background-image:
    url("../img/bg_map.png"),
    url("../img/bg_pt.png");
    background-position: center center, top;
    background-repeat: no-repeat, repeat;
    background-size: contain, auto;
}
header .bana {
    position: absolute;
    width: 50%;
    right: 0;
    top: 50%;
    text-align: center;
    z-index: 999;
    transform: translate(0, -50%);
}
header .inner {
    position: relative;
    flex-direction: row;
    align-items: center;
    font-family: 'Montserrat', sans-serif;
    font-weight: bold;
    font-size: 3.4rem;
    line-height: 1.2;
    color: #FFF;
    text-shadow:2px 2px 0 #019fe6, -2px -2px 0 #019fe6,
              -2px 2px 0 #019fe6, 2px -2px 0 #019fe6,
              0px 2px 0 #019fe6,  0 -2px 0 #019fe6,
              -2px 0 0 #019fe6, 2px 0 0 #019fe6;

}

.logo {
    display: block;
    margin: 8% auto;
}

.main_image {
    max-width: 55.2%;
}

form {
  max-width: 80%;
  margin: 10px auto;
}
.btn,
.btn input {
    margin: 0 auto;
    text-align: center;
    font-family: 'Poppins', sans-serif;
}
.btn a,
.btn input {
    position: relative;
    display: inline-block;
    width: 100%;
    max-width: 500px !important;
    padding: 0 20px;
    max-width: 87.5%;
    font-size: 2rem;
    font-weight: bold;
    color: rgb(22, 22, 22);
    background:rgb(255, 255, 255,0.8);
    z-index: 1;
    animation: 1s ease-in-out infinite 0s btn_anim;
    border: none;
}
@keyframes btn_anim {
 	 0% { transform:scale(1);}
 	50%{ transform:scale(1.05);}
 	100%{ transform:scale(1);}
}

header label {
    display: block;
    color: #FFF;
    text-align: left;
    font-size: 1.4rem;
}
input[type="text"] {
    padding: 5px;
    width: 100%;
    max-width: 500px;
    margin: 6px 0 1rem;
}
input::placeholder {
  color: #b1abab;
}


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


em {
  font-weight: bold;
  color: #ff8a8a;
  font-style: normal;
}

section.inner {
  margin: 80px auto;
}
.about {
    text-align: center;
    background: url("../img/bg_ptw.png");
    font-family: 'Montserrat', sans-serif;
    font-size: 2.4rem;
    line-height: 1.2;
}
.about .inner {
    padding-top: 4%;
    padding-bottom: 4%;
}
.about p {
    margin: 0;
}
.about img {
    margin: 4% 0;
}
.about span {
    font-size: 1.8rem;
}
.image {
  position: relative;
  z-index: 999;
}

#footer {
    text-align: center;
    color: #FFF;
    text-shadow: 0px 0px 3px #00ced9;
    background: url(../img/bg_pt.png);
}
#footer .inner {
  padding: 4% 0;
}
#footer .inner span {
  font-size: 3.6rem;
}
#footer .bana {
  margin: 4% 0;
}

#footer .copy {
  text-align: center;
  font-size: 1.2rem;
}
#footer a {
    color: #FFF;
    text-decoration: none;
}
#footer ul {
  margin-top: 40px;
}
#footer li {
  display: inline-block;
  margin: 10px;
}
#footer li:before {
  content: "|";
  display: inline-block;
  margin-right: 20px;
}
#footer li:first-child:before {
  display: none;
  margin-right: none;
}

.center {
  text-align: center;
}

.fb-share-button {
}

.fb {
    display: inline-block;
    margin: 40px auto;
    padding: 10px;    
    background: #4267B2;
    color: #FFF !important;
    border-radius: 4px;
}

.fb svg {
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px;
    height: 20px !important;
    fill: currentColor;
}

/*----------------------
　下層ページ
----------------------*/
.subpage header {
  padding: 10px;
  text-align: center;
  color: #FFF;
}
.subpage header img {
  height: 60px;
}
.subpage section {
  margin: 4% auto;
  padding: 2%;
}
.subpage #wrapper {
    
}
#content {
  margin-bottom: 60px;
}

.subpage h1 {
  margin: 4% 0;
  border-bottom: 1px solid #FFF;
  font-weight: bold;
}
.subpage h2 {
  margin: 2% 0 1%;
}

ul.list {
  margin-top: 5px;
  counter-reset: num;  
}
ul.list > li {
  position: relative;
  counter-increment: num;
  margin-bottom: 10px;
  padding-left: 2rem;
}
ul.list > li:before {
  content: counter(num)"."; 
  display: inline-block;
  position: absolute;
  left: 0;
}

ol {
  margin-top: 5px;
  padding-left: 3rem;
}
ol li {
  margin-bottom: 5px;
  list-style-type: decimal;
}


dl.column { margin-top: 30px; }
dl.column dt {
	margin-bottom: 4px;
	font-size: 16px;
	font-weight: bold;
}
dl.column dd {
	overflow: hidden;
	margin-bottom: 30px;
}
dl.column dd p { margin-bottom: 1em; }
dl.column dd p:last-child { margin-bottom: 0; }

.circle {
  padding:0 0 0 1.5em;
}
.circle > li {
  list-style: circle;
}

dl p {
  margin: 0 0 30px 0;
}

table.tablePrice {
	border-collapse: inherit;
	border-spacing: 3px;
}
table.tablePrice th,
table.tablePrice td {
	padding: 15px 8px;
}
table.tablePrice th {
	background: #ececec;
	text-align: left;
}

.tcAccent { color: #f33; }

hr.breaking {
	height: 1px;
	border: none;
	border-top: 1px solid #ccc;
}

dl.term {
    display:flex;
    flex-wrap: wrap;
    border: 1px solid #141414;
    border-top: none;    
}
dl.term dt {
    width: 30%;
    padding: 10px;
    box-sizing: border-box;
    border-top: 1px solid #FFF; 
    background: #141414;
    color: #fff;
}
dl.term dt:first-child {
    border-top: 1px solid #141414;
}

dl.term dd{
    padding: 10px;
    margin: 0;
    border-top: 1px solid #141414;
    width: 70%;
    box-sizing: border-box;
    background: #fff;
}




@media screen and (max-width: 768px) {
    .inner {
        padding: 0 2%;
    }
    header .inner {
        font-size: 2.4rem;
    }
    .logo {
        width: 40%;
    }
}

@media screen and (max-width: 640px) {
    header .inner,
    .about {
        font-size: 2rem;
    }
    .about span {
        font-size: 1.6rem;
    }    
    header .bana {
        right: 2%;
    }
    header p {
        margin: 0;
    }
    .logo {
        width: 30%;
    }
    .bana_link {
        width: 70%;
        margin: 0 auto;
    }
    .about img {
        width: 80%;
    }
    #footer ul:after {
        clear: both;
        content: "";
        display: block;
    }
  
  #footer li {
    float: left;
    width: 48%;
    margin: 0;
  }
  #footer li:before {
    content: none;
    margin-right: 0;
  }

  #footer li a {
    display: block;
    padding: 5px;
  }

    #footer .copy {
        margin-top: 40px;
    }
    dl.term {
        display:block;
        flex-wrap: nowrap;
    }
    dl.term dt {
        width: 100%;
    }
    dl.term dd{
        width: 100%;
    }
}
@media screen and (max-width: 375px) {
    header .inner,
    .about {
        font-size: 1.6rem;
    }
    .about span {
        font-size: 1.2rem;
    }
    header .bana {
        right: 2%;
        width: 60%;
    }
    .logo {
        width: 40%;
        margin: 8% auto;
    }
    .bana_link {
        width: 80%;
        margin: 0 auto;
    }
    .main_image {
        max-width: 80%;
        margin-left: -20%;
    }
}