@charset "UTF-8";
/* CSS Document */
/* ------------------------------------ #################################### OUTLINE要素 #################################### ------------------------------------ */
/* CSS Document */
/* ------------------------------------ #################################### 共通設定 #################################### ------------------------------------ */
/* ------------------------------------ MediaScreen指定 ------------------------------------ */
/* ------------------------------------ ベースプロパティ ------------------------------------ */
/* ------------------------------------ FONT指定 ------------------------------------ */
/* CSS Document */
/* ------------------------------------ #################################### module #################################### ------------------------------------ */
/* CSS Document */
/* ------------------------------------ #################################### Extend #################################### ------------------------------------ */
#contents02 h3 { padding: 30px 0 20px; text-align: center; position: relative; margin-bottom: 50px; }

#contents02 h3:after, #contents02 h3:before { content: ''; position: absolute; left: 50%; -webkit-transform: translateX(-50%) rotate(0deg); transform: translateX(-50%) rotate(0deg); -moz-transform: translateX(-50%) rotate(0deg); }

#contents02 h3:before { content: url("../../img/common/tit-icon.png"); top: -30px; }

#contents02 h3:after { width: 80px; border-bottom: 5px dotted #c0bfbf; bottom: 0; }

#keyvis h2 { padding: 30px 0 20px; text-align: center; position: relative; margin-bottom: 50px; }

#keyvis h2:after, #keyvis h2:before { content: ''; position: absolute; left: 50%; -webkit-transform: translateX(-50%) rotate(0deg); transform: translateX(-50%) rotate(0deg); -moz-transform: translateX(-50%) rotate(0deg); }

#keyvis h2:before { content: url("../../img/common/tit-icon2.png"); top: -30px; }

#keyvis h2:after { width: 80px; border-bottom: 5px dotted #c0bfbf; bottom: 0; }

#keyvis { background: #edfff6; padding: 55px 0; }

#keyvis .inner { background: #fff; padding: 60px 0; }

#keyvis h2 { font-weight: bold; font-size: 200%; margin-bottom: 0; }

@media screen and (max-width: 760px) { #keyvis { padding: 30px 0; } }

#contents01 { padding: 60px 0; }

#contents01 .tit { font-weight: bold; font-size: 120%; text-align: center; line-height: 1.6; width: 100%; color: #555; margin-bottom: 40px; }

#contents01 .inner { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: space-between; }

#contents01 .box1 { width: 32%; }

#contents01 .box1 a { position: relative; }

#contents01 .box1 a:after, #contents01 .box1 a:before { position: absolute; content: ''; bottom: 0; right: 0; }

#contents01 .box1 a:before { width: 36px; height: 36px; box-sizing: border-box; border-bottom: 18px solid #00a555; border-right: 18px solid #00a555; border-left: 18px solid transparent; border-top: 18px solid transparent; }

#contents01 .box1 a:after { width: 13px; height: 13px; background: url("../../img/common/ico_arw_w.png") no-repeat center center; background-size: contain; right: 5px; bottom: 5px; }

@media screen and (max-width: 760px) { #contents01 .box1 a:before { width: 28px; height: 28px; box-sizing: border-box; border-bottom: 14px solid #00a555; border-right: 14px solid #00a555; border-left: 14px solid transparent; border-top: 14px solid transparent; }
  #contents01 .box1 a:after { width: 10px; height: 10px; background: url("../../img/common/ico_arw_w.png") no-repeat center center; background-size: contain; right: 3px; bottom: 3px; } }

#contents01 .box1 h4 { font-size: 150%; margin-bottom: 20px; border-left: 4px solid #00a555; padding-left: 20px; line-height: 1.0; }

#contents01 .box1 a { display: block; border: 1px solid #eee; box-sizing: border-box; padding: 30px; }

#contents01 .box1 dt { border-bottom: 2px dashed #eee; text-align: center; padding-bottom: 20px; }

#contents01 .box1 dd { padding-top: 20px; }

#contents01 .box1 img { max-width: 110px; width: 100%; }

#contents01 .link { margin-top: 20px; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; }

#contents01 .link img { vertical-align: middle; }

#contents01 .link a { border-bottom: 1px solid #666; margin-right: 5px; }

#contents02 { background: #f9f9f9; padding: 60px 0; }

#contents02 .pdf-btn { display: block; max-width: 300px; background: #fff; padding: 10px 20px; border: #ddd solid 5px; margin: 30px auto 0; position: relative; }

#contents02 .pdf-btn:after, #contents02 .pdf-btn:before { position: absolute; content: ''; bottom: 0; right: 0; }

#contents02 .pdf-btn:before { width: 36px; height: 36px; box-sizing: border-box; border-bottom: 18px solid #ea6d8b; border-right: 18px solid #ea6d8b; border-left: 18px solid transparent; border-top: 18px solid transparent; }

#contents02 .pdf-btn:after { width: 13px; height: 13px; background: url("../../img/common/ico_arw_w.png") no-repeat center center; background-size: contain; right: 5px; bottom: 5px; }

@media screen and (max-width: 760px) { #contents02 .pdf-btn:before { width: 28px; height: 28px; box-sizing: border-box; border-bottom: 14px solid #ea6d8b; border-right: 14px solid #ea6d8b; border-left: 14px solid transparent; border-top: 14px solid transparent; }
  #contents02 .pdf-btn:after { width: 10px; height: 10px; background: url("../../img/common/ico_arw_w.png") no-repeat center center; background-size: contain; right: 3px; bottom: 3px; } }

#contents02 .pdf-btn dl { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; align-items: center; }

#contents02 .pdf-btn dl dt { width: 90px; margin: 0 20px; }

#contents02 .pdf-btn dl dt img { width: 100%; }

#contents02 .pdf-btn dl dd { font-size: 140%; font-weight: bold; }

#contents02 .sp-br { display: none; }

#contents02 .graf { display: block; border: 2px solid #00a555; border-radius: 15px; overflow: hidden; background: #fff; }

#contents02 .graf .link { margin-top: 15px; display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; justify-content: center; align-items: center; }

#contents02 .graf .link a { border-bottom: 1px solid #666; margin-right: 5px; }

#contents02 .graf tr:not(:last-child) { border-bottom: 1px solid #00a555; }

#contents02 .graf td em, #contents02 .graf th em { font-size: 30%; vertical-align: top; }

#contents02 .graf td span, #contents02 .graf th span { display: block; font-size: 90%; }

#contents02 .graf th { font-weight: bold; padding: 10px; border-right: 1px solid #ea6d8b; width: 10%; text-align: center; box-sizing: border-box; vertical-align: middle; }

#contents02 .graf .option td, #contents02 .graf .type td, #contents02 .graf .year td { font-size: 120%; font-weight: bold; letter-spacing: 2px; }

#contents02 .graf .option td:nth-child(2), #contents02 .graf .type td:nth-child(2), #contents02 .graf .year td:nth-child(2) { color: #eb6ea5; }

#contents02 .graf .option td:nth-child(2) em, #contents02 .graf .type td:nth-child(2) em, #contents02 .graf .year td:nth-child(2) em { color: #666; }

#contents02 .graf .option td:nth-child(3), #contents02 .graf .type td:nth-child(3), #contents02 .graf .year td:nth-child(3) { color: #02b9ee; }

#contents02 .graf .option td:nth-child(3) em, #contents02 .graf .type td:nth-child(3) em, #contents02 .graf .year td:nth-child(3) em { color: #666; }

#contents02 .graf .option td:nth-child(4), #contents02 .graf .type td:nth-child(4), #contents02 .graf .year td:nth-child(4) { color: #f6aa54; }

#contents02 .graf .option td:nth-child(4) em, #contents02 .graf .type td:nth-child(4) em, #contents02 .graf .year td:nth-child(4) em { color: #666; }

#contents02 .graf .type td, #contents02 .graf .year td { font-size: 150%; }

#contents02 .graf .pink { background: #fdedee; }

#contents02 .graf td { width: 30%; padding: 20px; box-sizing: border-box; text-align: center; vertical-align: middle; }

#contents02 .graf td strong { font-weight: bold; }

#contents02 .graf td p { vertical-align: top; text-align: left; }

#contents02 .graf td:not(:last-child) { border-right: 1px solid #ea6d8b; }

#contents02 .coution { margin-top: 30px; font-size: 80%; }

#contents02 .coution em { font-size: 40%; }

/*
--------------------------
　□ MEDIA BP ~760px
--------------------------
*/
@media screen and (max-width: 760px) { #contents01 { padding: 40px 0; }
  #contents01 .tit { font-size: 100%; font-weight: normal; text-align: left; }
  #contents01 .box1 { margin-bottom: 20px; width: 100%; }
  #contents01 .box1 img { max-width: 110px; width: 100%; }
  #contents01 .inner { padding: 20px; }
  #contents01 .caution { background: #fff; padding: 25px; }
  #contents01 .caution dd { line-height: 1.6; font-size: 90%; }
  #contents01 .red { margin-top: 20px; font-size: 100%; }
  #contents02 { background: #f9f9f9; }
  #contents02 .graf th { width: 15%; padding: 10px 5px; }
  #contents02 .graf td { width: 27%; }
  #contents02 .graf .type td, #contents02 .graf .year td { font-size: 150%; }
  #contents02 .graf .pink { background: #fdedee; }
  #contents02 .graf td { padding: 20px; box-sizing: border-box; text-align: center; vertical-align: middle; }
  #contents02 .graf td strong { font-weight: bold; }
  #contents02 .graf td p { vertical-align: top; text-align: left; font-size: 80%; }
  #contents02 .graf td:not(:last-child) { border-right: 1px solid #ea6d8b; }
  #contents02 .coution { margin-top: 30px; font-size: 80%; }
  #contents02 .coution em { font-size: 40%; } }

/*
--------------------------
　□ MEDIA BP ~480px
--------------------------
*/
@media screen and (max-width: 480px) { #contents02 .graf td .link a { font-size: 90%; }
  #contents02 .graf td .link em { display: block; width: 100%; text-align: center; margin-top: 5px; }
  #contents02 .sp-br { display: block; }
  #contents02 .pc-br { display: none; }
  #contents02 .graf tbody { display: block; }
  #contents02 .graf tr { display: -webkit-box; display: -ms-flexbox; display: flex; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  #contents02 .graf td, #contents02 .graf th { width: 100%; padding: 15px 5px; }
  #contents02 .graf th { color: #fff; background: #ff7899; border-right: none; }
  #contents02 .graf .pink { background: #fff; }
  #contents02 .graf .option td, #contents02 .graf .text td, #contents02 .graf .tit td, #contents02 .graf .type td, #contents02 .graf .year td { font-size: 110%; width: 33%; } }
