@charset "utf-8";

@font-face{
  font-family: 'mplus-2c-bold';
  src: url('../font/mplus-2c-bold.woff') format('woff'),
       url('../font/mplus-2c-bold.ttf') format('truetype');
}

/* Reset CSS */
html, body,h1, h2, h3, h4, h5, h6,a, p, span,em, small, strong,sub, sup,mark, del, ins, strike,abbr, dfn,blockquote, q, cite,code, pre,ol, ul, li, dl, dt, dd,div, section, article,
main, aside, nav,header, hgroup, footer,img, figure, figcaption,address, time,audio, video,canvas, iframe,details, summary,fieldset, form, label, legend,table, caption,tbody, tfoot, thead,tr, th, td {
    margin: 0;
    padding: 0;
    border: 0;
}
input, button, textarea, select { border-radius: 0; }
/* Chrome */
::-webkit-input-placeholder {
  color: #999;
}
/* Firefox */
::-moz-placeholder {
  color: #999;
}
/* IE */
:-ms-input-placeholder {
  color: #999;
}
input[type="text"]{ color : #999; }
input[type="text"]:focus{ color : #444; }
a { text-decoration: none; }

html { font-size: 62.5%; overflow: auto;}
body {
  font-size: 1.6rem;
  line-height: 1.6;
  overflow: hidden;
  min-width : 1000px;
}
* {
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  box-sizing : border-box;
}

a,a:visited { color: inherit; }
li{ list-style: none;}
small { font-size : 0.8em; }

/* Font */
body {
  font-family: 'Noto Sans JP','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3','メイリオ', Meiryo,YuGothic,'Yu Gothic','ＭＳ Ｐゴシック','MS PGothic',sans-serif;
}



h1#catch {
  font-family : mplus-2c-bold;
  font-size : 1.1rem;
  /* font-feature-settings : "palt" 1; */
  letter-spacing : -0.05rem;
}

table{ border-collapse: collapse; }
table th, table td { border: solid 1px black; }

/* common css */
.clearfix::after {
  content: "";
  display: block;
  clear: both;
}
.small      { font-size : 0.8em; }
.more_small { font-size : 0.6em; }
.big        { font-size : 1.2em;}
.more_big   { font-size : 1.4em; }
.center     { text-align : center; }
.text_right { text-align : right; }
.orange     { color : #FF5402; }
.green      { color : #538135; }
.red        { color : #f00; }
.link       { color : #FF5402; border-bottom : 1px solid #FF5402; }
.under_line { text-decoration: underline;}
.under_orange { border-bottom : 2px solid #FF5402; }
.inline_block { display : inline-block; }
.span_nowrap { white-space: nowrap;}
.block      { display : block; }
.text_space { letter-spacing: 1;}
.flex_center{
  display : flex;
  justify-content: center;
  align-items: center;
}
.flex_around{
  display : flex;
  justify-content: space-around;
  align-items: center;
}
.flex_start{
  display : flex;
  justify-content:flex-start;
  align-items:flex-start;
}
.text_rihgt { text-align: right;}
.right      { float : right ; }
.left       { float : left ; }
.btn        { position : relative; }
.btn:hover  { top : -2px; }

span.supText {
font-size: 75.5%;
vertical-align: top;
position: relative;
top: -0.1em;
}
span.subText {
font-size: 75.5%;
vertical-align: bottom;
position: relative;
top: 0.1em;
}

/* ポラロイド風 */
.photo_pola img{
  border: 10px solid #fff;
  border-bottom: 20px solid #fff;
  -webkit-box-shadow: 3px 3px 3px #777;
  -moz-box-shadow: 3px 3px 3px #777;
  box-shadow: 1px 1px 3px #777;
}

/* ヘッダー */
header{
  width : 100%;
  min-width : 920px;
  max-width : 1000px;
  margin : 0 auto;
  padding: 30px 0 ;
  display : flex;
  justify-content: space-between;
  /* display : grid;
  grid-template-columns: 1fr 352px; */
}
/* ロゴ */
#logo {
  /* grid-row: 1 / 3;
  grid-column: 1 / 2;

  -ms-grid-row: 1;
  -ms-grid-column: 1; */
}
#logo a {
  font-family : mplus-2c-bold;
  font-size : 2.7rem;
  letter-spacing : -0.1rem;
  color : #e14e2c;
  padding-right : 30px;
}
#logo span {
  font-family : mplus-2c-bold;
  font-size : 1.8rem;
  display: inline-block;
  line-height: 38px;
  letter-spacing: -0.05em;
}
/* サイト内検索 */
#search {
  /* grid-row: 1 / 2;
  grid-column: 2 / 3;
  -ms-grid-row: 1;
  -ms-grid-column: 2; */
  margin : 0 0 8px 0;
  box-sizing : border-box;
}
#search form {
  width : 350px;
  height : 24px;
  font-size: 0;
}
#search input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}
#search input[type='text']{
  width : 326px;
  height : 24px;
  border : 1px solid #e14e2c;
  padding-left : 8px;
  font-size : 1.1rem;
  vertical-align: middle;
}
#search input[type='hidden']{ width : 0; margin : 0; padding: 0;}
#search input[type="submit"] {
  position : relative;
  width : 24px;
  height : 24px;
  font-size : 1rem;
  padding : 0 ;
  margin : 0;
  border : 1px solid #e14e2c;
  background :#e14e2c;
  color : #fff;
  vertical-align: middle;
}
/* お問い合わせ 質問 */
header ul {
  /* grid-row: 2 / 3;
  grid-column: 2 / 3;
  -ms-grid-row: 2;
  -ms-grid-column: 2; */
  display : flex;
  justify-content: space-between;
  width : 350px;
  font-family : mplus-2c-bold;
}
header ul li {
  display : block;
  text-align: center;
  width : 170px;
  height : 32px;
  font-size: 1.4rem;
  position : relative;
}
header ul li:first-child {
  color : #e14e2c;
  border : 1px solid #e14e2c;
}
header ul li:first-child:hover {
  background : #e14e2c;
  color : #fff;
}
header ul li:last-child {
  color : #ea8932;
  border : 1px solid #ea8932;
}
header ul li:last-child:hover {
  background : #ea8932;
  color :#fff;
}
header ul li a {
  display : inline-block;
  width : 170px;
  height : 32px;
  line-height: 32px;
}
header ul li:first-child a::before{
  content : url('../common_img/icon_mail.png');
  display : inline-block;
  position : relative;
  margin-right : 3px;
  top : 1px;
}
header ul li:last-child a::before{
  content : url('../common_img/icon_faq.png');
  display : inline-block;
  position : relative;
  margin-right : 3px;
  top : 4px;
}

/* ナビゲーション */
nav#global_nav{
  width : 100%;
  background: #e14e2c;
  color : #fff;
}
ul.main_nav {
  position: relative;
  width : 1000px;
  height: 90px;
  margin: 0 auto;
  padding: 0;
  display: flex;
  z-index : 50;
  border-left : 1px solid #fff;
}
ul.main_nav > li {
  position: relative;
  width: 20%;
  border-right : 1px solid #fff;
  cursor: pointer;
}
ul.main_nav li span { display : block; }
ul.main_nav li span.voice_no {
  display : inline-block;
  width : 22px;
  text-align : right;
}
ul.main_nav > li > p,ul.main_nav > li > a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  height : 90px;
  font-size: 1.9rem;
}
ul.main_nav > li:hover {
  background : #FCB37E;
  -webkit-transition: all .2s;
  transition: all .2s;
}
/* サブナビゲーション */
ul.main_nav > li > ul.sub_nav {
  visibility: hidden;
  opacity: 0;
  position: absolute;
  top: 40px;
  min-width : 100%;
  padding : 32px 0;
  background: #fcb37e;
  color : #9f3106;
  white-space: nowrap;
}
ul.main_nav > li:hover > ul.sub_nav {
  visibility: visible;
  opacity: 1;
  top: 90px;
  -webkit-transition: all .5s;
  transition: all .5s;
}
ul.main_nav > li > ul.sub_nav a {
  display : block;
  width : 100%;
  padding : 6px 38px;
  font-size : 1.8rem;
}
ul.main_nav > li:hover {
  /* color : #9f3106;  */
  color : brown;
}
ul.main_nav > li > ul.sub_nav a:hover {
  /* color : #e14e2c;  */
  color : #000;
}
ul.main_nav > li > ul.sub_nav a:hover { background : #EF8055; }

/* パンくずリスト */
.breadcrumbs {
  width: 900px;
  margin: 10px auto 0;
}
.breadcrumbs ul {
  display: table;
  font-size: 13px;
}
.breadcrumbs ul li {
  margin: 0 10px 0 0;
  font-size: 13px;
  float: left;
}
.breadcrumbs ul li:first-child::before {
  padding: 0 3px 0 0;
  content: "\f015";
  font-family: 'Font Awesome 5 Free';
  font-weight : 900;
  font-size: 14px;
}
.breadcrumbs ul li::before {
  padding: 0 10px 0 0;
  content: "\f105";
  font-family: 'Font Awesome 5 Free';
  font-weight : 900;
  font-size: 14px;
}
.breadcrumbs ul li a:hover { color : #e14e2c; }

/* フッター */
#footer_nav{
  width : 100%;
  max-width : 1000px;
  margin : 44px auto;
}
/* #footer_nav a { text-decoration: none; } */
#footer_nav > ul > li{
  display: flex;
  padding : 13px 0 12px;
  border-bottom : 1px solid #dcdcdc;
}
#footer_nav > ul > li:last-child { border-bottom: none;}
#footer_nav > ul > li > p,#footer_nav > ul > li > a {
  width : 250px;
  font-size : 1.5rem;
  margin-left : 10px;
}
#footer_nav > ul > li > a:hover{ color : #e14e2c; }
.footer_nav_sub {
  width : calc(100% - 250px);
  font-size : 1.3rem;
  display: flex;
  flex-wrap: wrap;
}
.footer_nav_sub li{ margin : 0 48px 10px 0; }
.footer_nav_sub li a:hover { color : #e14e2c; }
.footer_nav_sub li::before{
  content : url('../common_img/list1.png');
  margin-right : 3px;
  position : relative;
  top : -2px;
}
/* 連絡先 */
#adress {
  display : flex;
  flex-wrap: wrap;
  width : 100%;
  max-width : 1000px;
  margin : 0 auto;
}
#adress > a{ margin : auto 25px; }
#adress ul{ margin-left: auto; }
#adress ul li {
  width : 230px;
  height : 26px;
  border : 1px solid #000;
  font-size : 1.3rem;
  /* line-height : 26px; */
}
#adress ul li:hover{
  background : #000;
  color : #fff;
}
#adress ul li a {
  display: inline-block;
  width : 230px;
  height : 24px;
  line-height : 24px;
  text-align: center;
  background : url('../common_img/icon_arrow.png') no-repeat;
  background-position : right 17px center;
}
#adress ul li a:hover{
  background : url('../common_img/icon_arrow_hover.png') no-repeat;
  background-position : right 17px center;
}
#adress ul li:last-child { margin-top : 10px; }
/* コピーライト */
p#copyright{
  margin-top : 60px;
  width : 100%;
  height : 50px;
  background : #dcdcdc;
  text-align : center;
  font-size : 0.9rem;
  line-height: 50px;
}

/* コンテンツ */
.container {
  width : 940px;
  margin : 0 auto;
}
.contents { margin : 70px auto 100px; }
.contents h2{
  position : relative;
  width : 900px;
  height : 40px;
  /* margin-left : auto; */
  margin-left : 40px;
  font-family : 'mplus-2c-bold';
  font-size : 24px;
  padding-left : 45px;
  border-top : 2px solid #ff5402;
  border-bottom : 2px solid #ff5402;
  background:repeating-linear-gradient(-45deg, #fff 0, #fff 6px, #fffaeb 6px, #fffaeb 12px);
}
.contents h2::before{
  content : url("../common_img/icon_house.png");
  position : absolute;
  width : 62px;
  height : 66px;
  left : -40px;
  bottom : -12px;
}

.area80 { width : 800px; }
.area68 { width : 700px; margin-left : auto; margin-right : auto ;}

.fit img{ width : 100%; }  /* 画像用 親要素に大きさを合わせる*/

section { margin : 30px auto 50px; }        /* 見出しの下のセクション */
section + section { margin-top : 70px;}     /* セクションが連続した場合 間を空ける */

.contents h3,.contents h3::before{
  vertical-align: middle;
}
.contents h3{
  width: 800px;
  color : #ff5402;
  margin : 30px auto 20px;
  font-size : 20px;
  line-height: 26px;
}
.contents h3::before {
  content : url("../common_img/h3_title.png");
  margin-right : 18px;
}

.contents h4{
  width : 700px;
  margin : 0 auto 20px;
  font-size : 18px;
  /* color : #fff; */
  color : #9f3106;
  line-height: 42px;
  text-align : center;
  font-weight: normal;
  position : relative;
  background :#fcb37e;
  border : 1px solid #E46B0F;
}
.contents h4:after {
  position: absolute;
  content: '';
  right:-1px;
  bottom: -1px;
  border-width: 18px 18px 0  0;
  border-style: solid;
  /* border-color:    #ff5402 #fff #fff #ff5402 ; */
  border-color:    #E46B0F #fff #fff #E46B0F ;
  box-shadow: -1px -1px 1px  rgba(0, 0, 0, 0.15);
}
.contents p {
  line-height: 1.8;
  margin-bottom : 1.5rem;
}
.contents p.bottom_none{
  margin-bottom : 0;
}
.contents p small {
  display : block;
  color : #444;
}
.contents video {
  width : 640px;
  height : 360px;
  margin : 30px auto;
}
.column{
  display : flex;
  justify-content: center;
  margin-top : 30px;
  align-items: flex-start;
}

.column1 {
  flex-direction: column;
  align-items: center;
}

.column1 > * {  margin-top : 30px;}
.column2 > *,.column3 > * { margin : 0 auto; }
.column2 > * { max-width : calc((100% / 2) - 10px); }
.column3 > * { max-width : calc((100% / 3) - 10px); }
/* 結果 ・ 結論 */
.result,.conclusion{ margin :30px auto; width : 580px;}
.result { border : 1px solid #e94045; }
.conclusion { border : 1px solid #ff5402; }
.result > p,.conclusion > p {
  height : 42px;
  font-size : 1.8rem;
  font-weight : 500;
  line-height: 42px;
  letter-spacing: 1.2em;
  text-align: center;
  vertical-align: middle;
  color : #fff;
  margin : 0;
  position : relative;
}
.result > p { background : #e94045; }
.conclusion > p { background : #ff5402; }
.result > p::before,.conclusion > p::before {
  content : '';
  display : inline-block;
  position : relative;
  width : 40px;
  height : 30px;
  vertical-align: middle;
  margin-right : 5px;
}
.result > p::before {
  top : -3px;
  background : url('../common_img/icon_denkyuu.png') no-repeat center center/ 30px ;
}
.conclusion > p::before {
  top : -3px;
  background : url('../common_img/icon_exclamation.png') no-repeat center center/ 7px ;
}
.result >div,.conclusion >div { padding : 30px 25px; margin : 0 auto; text-align: center;}

.result >div >div,.conclusion >div >div ,
.result div p,.conclusion div p {
  display : inline-block;
  text-align: left;
}
.result div { background : #ffe6e9; }
.conclusion div { background : #fffaeb; }
.result div p:last-child,.conclusion div p:last-child { margin-bottom : 0; }

div.btn_big {
  width : 420px;
  margin : 50px auto 30px;
  background : #30adff;
  font-size : 1.8rem;
  text-align: center;
  color : #fff;
  position : relative;
  top : 0;
  left : 0;
  -webkit-transition: all .2s;
  transition: all .2s;
}
div.btn_big::after {
    content :'';
    position : absolute;
    top : -30px;
    right : -30px;
    width : 40px;
    height : 40px;
    background : url(../common_img/point_btn_big.png) no-repeat top right/ 30px;
}
div.btn_big::before {
  content : '';
  position : absolute;
  width : 100%;
  height : 100%;
  top : 10px;
  left :10px;
  background : #ccedfe;
  z-index : -1;
}
div.btn_big:hover {
  top : -4px;
  -webkit-transition: all .2s;
  transition: all .2s;
}
div.btn_big a {
  display : block;
  width : 100%;
  padding: 20px 30px;
}
div.btn_big a span { display : block;}

.btn_big_txt{
  font-size: 24px !important;
}


/* トップへ戻る */
#back-to-top a img { width : 32px; }
