@charset "utf-8";

/* CSS Document */

:root {
 font-size: 62.5%;
 color: #333;
}

body {
 animation: fadeIn 1.5s ease 0s 1 normal;
 -webkit-animation: fadeIn 1.5s ease 0s 1 normal;
}

a {
 text-decoration: none;
 transition: opacity 0.1s ease-out;
}

a:hover { opacity: 0.5; }
 @keyframes fadeIn {
 0% {
opacity: 0
}
 100% {
opacity: 1
}
}
 @-webkit-keyframes fadeIn {
 0% {
opacity: 0
}
 100% {
opacity: 1
}
}

a { color: #3399cc }

html {
 background: #fff;
 height: 100%;
 min-height: 100%;
}

body {
 font-family: Arial, Roboto, "Droid Sans", "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;
 /*font-family:'SST W55 Regular';*/
 height: 100%;
 min-height: 100%;
 font-size: 1.4rem;
}

.mainImage img {
 width: 100%;
 height: auto;
 animation-name: animation01;
 animation-duration: 3s;
 animation-timing-function: ease-in;
 animation-delay: 1s;
 animation-fill-mode: both;/* animation: animation01 3s ease-in 1s both; （まとめて指定する場合）*/
}

.itemArea {
 background-color: #f4f3ef;
 padding-bottom: 20px;
 padding-top: 10px;
 box-shadow: 0 0 67px rgba(0,0,0,0.025) inset;
}

.itemArea dl dt {
 width: 100%;
 margin: 10px auto 0;
 text-align: center;
 font-size: 2rem;
 margin-bottom: 0.5em;
}

.itemArea dl ul {
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between
}

.itemArea dd li {
 list-style: none;
 text-align: center;
 margin-bottom: 20px;
 font-size: 1rem;
}

.itemArea a {
 background: #ffffff;
 border-radius: 4em;
 padding: 11px;
 text-align: center;
 border: solid 1px #fff;
 box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
 width: 80px;
 height: 80px;
 margin-left: 10px;
 margin-right: 10px;
 display: block;
 margin-bottom: 0.8em;
}

.itemArea a img {
 margin: 0 auto;
 display: block;
 max-height: 60px;
}

.itemArea li:nth-of-type(2) a img {
 vertical-align: middle;
 width: 60px;
 height: auto;
 padding-top: 12px;
}

.itemArea li:nth-of-type(5) a img {
 vertical-align: middle;
 width: 60px;
 height: auto;
}
 @keyframes animation01 {
 from {
 left: 0;
}
 20% {
 left: 300px;
}
 70% {
 left: 300px;
 background-color: #939;
}
 to {
 left: 600px;
 background-color: #939;
}
}

.logo img {
 width: 132px;
 height: auto;
 position: absolute;
 padding-left: 20px;
 padding-top: 10px;
}

.top .btnArea {
 padding: 0px 20px 20px;
 margin-top: 30px;
}

.top .btnArea a {
 background-color: #333;
 color: #fff;
 display: inline-block;
 text-align: center;
 width: 100%;
 line-height: 64px;
 /* background-image: url(../img/top_10.png);*/
 background-size: 15px;
 background-position: 10vw center;
 position: relative;
 top: 0;
 font-size: 2rem;
 left: 0;
}

.top .btnArea a span {
 display: inline-block;
 position: absolute;
 top: -35px;
 left: -8px;
 background: #ea749b;
 color: #fff;
 border-radius: 24px;
 line-height: 1.5;
 padding: 0.5em 1em;
 font-size: 1.6rem;
 z-index: 2;
}

.btnArea a span:after {
 content: "";
 position: absolute;
 bottom: -5px;
 left: 30px;
 margin-left: 0;
 display: block;
 width: 30px;
 height: 30px;
 background: #ea749b;
 border-radius: 0 30px 0 30px;
 z-index: -1;
 -webkit-transform: rotate(30deg);
 -moz-transform: rotate(30deg);
 -ms-transform: rotate(30deg);
 -o-transform: rotate(30deg);
 transform: rotate(30deg);
 z-index: -1;
}

footer {
 background-color: #f5f5f5;
 color: #333;
 padding: 30px 20px 20px;
}

/*footer ul { margin-bottom: 30px; }

footer li {
 list-style: none;
 line-height: 4rem;
}
*/
footer dl dd a { color: #333; }

footer address {
 font-size: 1rem;
 padding-top: 12px;
 font-style: normal;
 text-align: center;
 clear: both;
}

footer dl {
 padding-right: 2px;
 box-sizing: border-box;
}

footer dd a {
 text-decoration: none;
 display: inline-block;
 background-image: url(../img/link_mark.svg);
 background-repeat: no-repeat;
 background-position: 0 center;
 background-size: 4px;
}

footer dl dt { margin-bottom: 1em }

footer dl dt a { text-decoration: underline; }

footer nav {
 margin: 0 auto 30px;
 overflow: hidden;
}

.acMenu dt {
 background: url(../img/fIcon_puras.svg) 177px 18px no-repeat;
 cursor: pointer;
 background-position: right center;
 background-size: 8px;
}

.acMenu dt.active { background-image: url(../img/fIcon_close.svg); }

.acMenu dd { display: none; }

.acMenu dd li {
 list-style: none;
 margin-left: 0;
 border-bottom: solid 1px rgba(0,0,0,0.2);
}

.acMenu dd li:last-of-type {
 border-bottom: none;
 margin-bottom: 1em;
}

footer dl dd a {
 padding-left: 0;
 background: none;
 padding-top: 0.5em;
 padding-bottom: 0.5em;
 display: block;
}

/* モーダルメニュー */


#header {
 position: relative;
 top: 0;
 text-align: left;
 height: 48px;
}

.menu-open-btn {
 background: url(../img/menu_button_back.svg) no-repeat center center;
 width: 50px;
 height: 50px;
 background-size: 25px;
 position: fixed;
 top: 0px;
 right: 0px;
 z-index: 100;
 text-indent: -99999px;
 overflow: hidden;
}

#content { }

main {
 margin: 0 auto;
 padding: 30px 25px;
 max-width: 800px;
 text-align: left;
 line-height: 1.4;
}

main h2 {
 font-size: 24px;
 font-weight: bold;
 margin: 1em 0 .5em;
}

main p { margin: .5em 0; }

#modal-menu {
 position: fixed;
 width: 100%;
 height: 100%;
 background-color: rgba(50, 47, 45, 0.9);
 background-color: rgba(240,240,240, 0.7);
 top: 0;
 left: 0;
 opacity: 0;
 transition: opacity .2s ease-out;
 pointer-events: none;
}

.rec_info { margin-bottom: 1em; }

.menu-nav {
 margin-top: 100px;
 text-align: center;
 position: relative;
 transform: translateY(50px);
 transition: all .2s ease-out;
}

.menu-nav a {
 color: #fff;
 text-decoration: none;
 font-size: 40px;
 margin: 20px 0;
 display: block;
}

.menu-close-btn {
 background: url(../img/menu_button_close.svg) no-repeat center center;
 width: 50px;
 height: 50px;
 background-size: 30px;
 position: absolute;
 top: 0px;
 right: 0px;
 text-indent: -1000px;
 overflow: hidden;
}

body.is-menu-open #modal-menu {
 opacity: 1;
 pointer-events: auto;
}

body.is-menu-open #content {
 pointer-events: none;
 transition: all .2s ease-out;
 -webkit-filter: blur(8px);
 -moz-filter: blur(8px);
 -ms-filter: blur(8px);
 filter: blur(8px);
}

body.is-menu-open .menu-nav { transform: translateY(0); }

ul.slidemenu-content { padding-top: 48px; }

ul.slidemenu-content li a {
 display: block;
 text-align: center;
 line-height: 2.5;
 font-size: 2rem;
 color: #333;
}

/*  top */

.top section {
 margin-bottom: 30px;

}

.top .sec01 {
 position: relative;
 width: 100%;
}

.top .sec01 .mainItem {
 background-image: url(../img/top_01.png);
 background-size: 420px;
 line-height: 1.8;
 background-position: 28% 0;
 background-repeat: no-repeat;
 height: 400px;
 opacity: 0.7;
 z-index: -1;
}

.top .sec01 p {
 padding-top: 9%;
 float: right;
 padding-right: 20px;
 text-shadow: 0 0 6px #fff;
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
 font-weight: normal;
}

.top .sec01 .sub01 {
 padding-top: 1em;
 text-align: center;
 font-size: 1.8rem;
 text-shadow: 0 0 6px #fff;
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
 font-weight: bold;
 clear: both;
}

.top .lineUp li a {
 display: block;
 min-height: 80px;
}

.top .lineUp a {
 background-size: contain;
 background-position: right;
}

.top .sec02 {
 padding: 0;/*   font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;

*/
}

.top .sec02 div { display: block; }

.top section h2 {/* font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;*/ }

.top .sec02 a {
 -webkit-flex-wrap: wrap-reverse; /* Safari */
 flex-wrap: wrap-reverse;
 display: block;
/*padding: 8px 86px*/
    padding: 8px 50px;
}

.top .sec02 div:nth-of-type(1) a { }

.top .sec02 a img {  box-shadow: 0 4px 2px rgba(0,0,0,0.4);
 width: 100%;
 height: auto;
}

.top .lineUp li {
 background-image: url(../img/top_10.png);
 background-repeat: no-repeat;
 background-position: 14px center;
 background-size: 14px;
 display: table;
 width: 100%;
 border-bottom: 1px solid #ccc;
}

.top .lineUp li:nth-of-type(1) { border-top: 1px solid #ccc; }

.top .lineUp li a {
 display: table-cell;
 vertical-align: middle;
 height: 96px;
 padding-left: 40px;
}

.top .lineUp li:nth-of-type(1), .top .lineUp li:nth-of-type(2), .top .lineUp li:nth-of-type(3), .top .lineUp li:nth-of-type(4) { background-color: #f4fbfd }

.top .lineUp li:nth-of-type(1) a { background-image: url(../img/top_02.png); }

.top .lineUp li:nth-of-type(2) a { background-image: url(../img/top_03.png); }

.top .lineUp li:nth-of-type(3) a { background-image: url(../img/top_04.png); }

.top .lineUp li:nth-of-type(4) a { background-image: url(../img/top_05.png); }

.top .lineUp li:nth-of-type(5) a { background-image: url(../img/top_12.jpg); }

.top .lineUp li:nth-of-type(6) a { background-image: url(../img/top_09.png); }

.top .lineUp li:nth-of-type(7) a { background-image: url(../img/top_09.png); }

.top .lineUp li:nth-of-type(8) a { background-image: url(../img/top_09.png); }

.lineUp a span {
 line-height: 1.4;
 display: block;
}

.top .lineUp a span:nth-of-type(1) { font-weight: bold; }

.top .lineUp a span:nth-of-type(2) { }

.top .lineUp a span:nth-of-type(3) {
 color: #333;
 font-size: 1.6rem;
}

.top .sec04 {
 background: #e2f6f0;
 overflow: hidden;
 margin-bottom: 20px;
 padding: 30px 20px;
}

.top .sec04 h2, .top .sec03 h2, .top .sec06 h2, .top .sec07 h2 {
 font-size: 3rem;
 margin-bottom: 0;
 font-weight: normal
}

.top .sec03 h2 { padding-left: 20px; }

.top .sec04 h2 span, .top .sec03 h2 span, .top .sec06 h2 span, .top .sec07 h2 span {
 font-size: 1rem;
 padding-left: 1em;
}

.top #voice_inner {
 background-color: #fbfbf5;
 width: 100%;
 padding: 20px;
 border: double #cce4ea 1px;
}

.top #voice_inner2 {
 padding: 4px;
 background-color: #fbfbf5;
}

.top .voice_inner_ttl img {
 max-width: 36%;
 height: auto;
 float: right;
}

.top .voice_inner_ttl h3 {
 color: #6c4d2f;
 line-height: 1.6;
 margin-bottom: 1em;
}

.top .voice_inner_ttl p { line-height: 1.4; }

.top .voiceDoc {
 padding-top: 1em;
 clear: both;
 line-height: 1.8;
}

.top .sec05 { padding: 0 20px 0px; }

.top .sec05 .txt01 {
 padding-bottom: 1em;
 line-height: 1.4;
}

.top .sec06 { padding: 20px; }

.top .sec07 {
 padding: 20px;
 margin-bottom: 60px !important;
}

/* sp contact */

.top #contact {
 width: 260px;
 margin: 0 auto;
 padding: 45px 15px;
 position: relative;
}

.top #contact:before, #contact:after {
 content: "";
 display: block;
 width: 290px;
 height: 35px;
 position: absolute;
 left: 50%;
 margin-left: -145px;
 background-position: 0 0;
 background-size: 290px 35px;
 background-repeat: no-repeat;
}

.top #contact:before {
 background-image: url(../../top/image/contact/bg_contact_top.jpg);
 top: 0;
}

.top #contact:after {
 background-image: url(../../top/image/contact/bg_contact_btm.jpg);
 bottom: 0;
}

.top #contact > p {
 font-size: 1.2em;
 color: #666666;
 margin-bottom: 10px;
 line-height: 1.5;
}

.top #dial01 { margin-bottom: 20px; }

.top #contact > div >h3 {
 font-size: 1.2em;
 font-weight: bold;
 color: #33cccc;
 margin-bottom: 5px;
}

.top #contact > div > p { color: #666; }

.top .dial { margin-bottom: 5px; }

.top .dial a {
 color: #33cccc;
 background-image: url(../img/top_13.jpg);
 background-repeat: no-repeat;
 background-position: left center;
 font-weight: bold;
}

.top #dial01 .dial a {
 font-size: 2.25em;
 background-size: 37px 24px;
 padding-left: 47px;
}

.top #dial02 .dial a {
 font-size: 2em;
 background-size: 28px 18px;
 padding-left: 38px;
}

/* sp news */

.top #news {
 padding: 0 0;
 margin-bottom: 20px;
}

.top #news h2 {
 float: left;
 padding: 0 0 5px 20px;
}

.top #btn_news_list {
 float: right;
 margin-top: 7px;
 padding: 5px;
 background: #666;
 font-size: 0.9em;
 color: #fff;
}

.top #news dl {
 clear: both;
 background: #edf3f5;
 padding: 10px 20px;
 min-height: 10em;
}

.top #news dl dt {
 color: #666666;
 font-size: 0.8rem;
}

.top #news dl dd { margin: 0; }

.top #news dl dd a {
 color: #0074e1;
 font-size: 1.2em;
 line-height: 1.4;
 text-decoration: underline;
}

/* sp media */

.top #media {
 padding: 0;
 margin-bottom: 20px;
}

.top #media h2 {
 float: left;
 padding: 0 0 5px 20px;
}

.top #btn_media_list {
 float: right;
 margin-top: 7px;
 font-size: 0.9em;
 color: rgb(255, 255, 255);
 padding: 5px 0.5em;
 background: rgb(102, 102, 102);
}

.top #media dl {
 clear: both;
 background: #edf3f5;
 padding: 10px 20px;
 min-height: 10em;
}

.top #media dl dt {
 color: #666666;
 font-size: 0.8rem;
}

.top #media dl { overflow: hidden; }

.top #media dl dd {
 margin: 0;
 float: left;
}

.top #media dl dd a {
 color: #0074e1;
 line-height: 1.4;
}

.top #media dl dd.media_txt {
 width: 60%;
 margin-right: 6.25%;
}

.top #fb_embed {
 width: 285px;
 margin: 0 auto 20px;
}

.top #show_pc { text-align: center; }

#btn_page_top {
 padding: 20px;
 text-align: right;
}

#btn_page_top a {
 background: url(../../common/image/ico_pagetop.png);
 background-position: right center;
 background-size: 11px 9px;
 background-repeat: no-repeat;
 padding-right: 15px;
 font-size: 0.9em;
 color: #666666;
}

.box {
 position: relative;
 min-height: 240px;
 background-position: 0 center;
}

.mainImage div { background-size: cover; }

/* com */


.com ul.com_cat {
 margin-bottom: 60px;
 overflow: hidden;
}

.com ul.com_cat li {
 list-style: none;
 padding: 0;
 margin: 0 0 30px;
 display: block;
}

.com ul.com_cat li a {
 display: block;
 vertical-align: text-bottom;
 padding: 30px 20px 30px;
 box-sizing: border-box;
 color: #000;
 text-shadow: 0 1px 1px rgba(255,255,255,0.5);
 -webkit-filter: blur(0);
}

.com ul.com_cat li a h2 {
 font-weight: 100;
 font-size: 2.75rem;
 margin-bottom: 0.25em;
}

.as-tile-image-cont {
 background-size: cover;
 background-position: center center;
 width: 100%;
 min-height: 210px;
}

.link01 {
 display: block;
 position: absolute;
 top: 40px;
 color: #08c;
 right: 20px;
}

.as-tile-content { position: relative; }

.com ul.com_cat li:nth-of-type(1) .as-tile-image-cont { background-image: url(../img/com/com001.jpg); }

.com ul.com_cat li:nth-of-type(2) .as-tile-image-cont { background-image: url(../img/com/com002.jpg); }

.com ul.com_cat li:nth-of-type(3) .as-tile-image-cont { background-image: url(../img/com/com003.jpg); }

.com ul.com_cat li:nth-of-type(4) .as-tile-image-cont { background-image: url(../img/com/com004.jpg); }

.com ul.com_cat li:nth-of-type(5) .as-tile-image-cont { background-image: url(../img/com/com005.jpg); }

.com ul.com_cat li:nth-of-type(6) .as-tile-image-cont { background-image: url(../img/com/com006.jpg); }

h1 {
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
 font-size: 2rem;
 margin-bottom: 30px;
 padding-left: 20px;
 margin: 10px auto 20px;
}

.flogo {
 text-align: center;
 display: none;
}

.flogo img { width: 140px; }

.pankuzu {
 background-image: url(../img/home_icon.svg);
 background-repeat: no-repeat;
 background-position: left 3px;
 padding-left: 24px;
 background-size: 14px;
 margin: 0 auto 20px;
 text-align: left;
 box-sizing: border-box;
}

.pankuzu li {
 display: inline-block;
 list-style: none;
}

.pankuzu a { color: #fff }

.pankuzu li a {
 padding-right: 1.5em;
 text-decoration: none;
 display: inline-block;
 background-image: url(../img/link_mark.svg);
 background-repeat: no-repeat;
 background-position: right center;
 background-size: 6px;
 margin-right: 1em;
}

.pankuzu li em {
 display: inline-block;
 font-style: normal;
}

.slo {
 /* background-image: url(../img/slo001.png);
 background-size: cover;
 background-attachment: fixed;
 background-color:#dff1f7;*/
 height: 100%;
 min-height: 100%;
}

body { height: 100%; }

.slo p { }

.slo section:nth-of-type(1) {
 font-size: 1.8rem;
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
 text-align: center;
 margin-bottom: 90px;
}

.slo section:nth-of-type(1) h2 {
 font-size: 3rem;
 margin-bottom: 1.2em;
}

.slo section:nth-of-type(1) p { margin-bottom: 2em; }

.slo section:nth-of-type(2) {
 text-align: left;
 margin-bottom: 60px;
}

.slo section:nth-of-type(2) img {
 width: 100%;
 height: auto;
 margin-bottom: 30px;
}

.slo section:nth-of-type(2) p { padding: 0 10px; }

.mes section { }

.mes section mes02 {
 -webkit-flex-direction: column;
 flex-direction: column;
 font-size: 2rem;
}

.mes section .txt01 {
 flex-direction: column;
 -webkit-flex-direction: column;
 font-size: 2rem;
 margin-bottom: 1em;
}

.mes section:nth-of-type(1) .mes01 { text-align: center; }

.mes section:nth-of-type(1) .mes01 img { height: auto; }

.mes section:nth-of-type(1) .mes02 p { margin-bottom: 1em; }

.mes section:nth-of-type(1) .mes02 {
 padding-right: 20px;
 padding-left: 20px;
 margin-bottom: 30px;
}

.mes section:nth-of-type(1) .mes01 img {
 width: 200px;
 height: auto;
}

.mes .mesBox { margin-bottom: 30px; }

.mes h2 {
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
 font-size: 3rem;
 margin-bottom: 30px;
 margin: 10px auto 20px
}

.mes section:nth-of-type(1) .txt01 p { padding-bottom: 1em; }

.pc { display: none }

.box2.sp {
 position: relative;
 min-height: 200px;
 min-height: 52vw;
 background-position: center center;
}

.movie .thumnail_list { margin: 0 0 30px; }

.movie .thumnail_list li:nth-of-type(1) { border-top: 1px #ccc solid; }

.movie .thumnail_list li {
 display: block;
 border-bottom: 1px #ccc solid;
}

.movie .thumnail_list li a {
 align-items: center;
 display: flex;
 -webkit-display: flex;
 flex-wrap: nowrap;
 min-height: 50px;
 flex-direction: row;
 -webkit-flex-direction: row;
}

.movie .thumnail_list li a .doc {
 padding: 0 1em;
 box-sizing: border-box;
 width: 70%
}

.movie .thumnail_list li a .img {
 width: 30%;
 display: block;
}

.movie .thumnail_list li a .img img {
 width: 100%;
 height: auto;
}

.movie .video-container {
 width: 20%;
 float: left;
}

.movie .subtitle {
 color: #333;
 font-size: 2rem;
}

.doc01 { padding: 0 20px 30px; }

.docter img {
 /* padding-top: 0.25em; */
    /* padding-left: 0.25em; */
 border-radius: 100%;
 /* border: solid 1px #ccc; */
 width: 40%;
 height: auto;
 margin-top: 20px;
 margin-bottom: 0.25em;
 box-shadow: 0 0.25vw 2vw rgba(0, 0, 0, 0.5);
}

.docter {
 text-align: center;
 margin: 0 auto
}

.youtube {
 width: 100%;
 height: 220px;
 margin-bottom: 30px
}

.youtube iframe {
 width: 100%;
 height: 100%;
}

.movie h2 {
 padding: 0 20px;
 line-height: 1.4;
 font-size: 1.4rem;
 font-weight: normal;
}

.col02 { column-count: none; }

.gnav { display: none; }

.fooetrNav02 li { display: inline-block; }

.fooetrNav02 li a {
 text-decoration: none;
 display: inline-block;
 background-image: url(../img/link_mark.svg);
 background-repeat: no-repeat;
 background-position: 0 center;
 background-size: 4px;
 padding-left: 14px;
 padding-right: 1em;
 margin-bottom: 1em;
 font-size: 1.4rem;
 color: #333;
 line-height: 1.8em;
}

.topSec01Inner {
 min-height: 10vw;
 width: 100%;
 overflow: hidden;
 background-image: url(../img/top_01.png);
 background-size: contain;
 background-position: 20% center;
}

.mesege .wrapper {
 width: 100%;
 margin: 0 auto 60px;
 padding-left: 0;
 padding-right: 0;
 box-sizing: border-box;
}

.mesege { margin: 0 }

.mesege section {
 width: 100%;
 padding-bottom: 4em;
 padding-top: 4em;
 color: #000 !important;
}

.mesege section:nth-of-type(odd) {
 background: #effcfc;
 box-shadow: 0 0 67px rgba(0,0,0,0.05) inset;
}

.mesege section:nth-of-type(1) { }

.mesege section:nth-of-type(2) {
 /*background-image: url(../img/mesege/img_message01.png);*/
 background-size: cover;
 background-position: left center;
}

.mesege section:nth-of-type(3) {
 /* background-image: url(../img/mesege/img_message02.png);*/
 background-size: cover;
 background-position: center center;
}

.mesege section:nth-of-type(4) {
 /*background-image: url(../img/mesege/img_message04.png);*/
 background-size: cover;
 background-position: center center;
}

.mesege section:nth-of-type(5) {
 /*background-image: url(../img/mesege/img_message03.png);*/
 background-size: cover;
 background-position: top center;
 min-height: 27vw;
}

.mesege section:nth-of-type(5) .secInner {
 padding-left: 4vw;
 background-origin: border-box;
 font-size: 2.5rem;
 font-weight: 100;
}

.mesege section h2 {
 font-size: 2.5rem;
 margin-bottom: 1em;
 font-weight: 100;
}

.mesege section p {
 margin-bottom: 1em;
 font-size: 1.4rem;
}

.secInner {
 margin: 0 auto;
 width: 100%;
 box-sizing: border-box;
 padding-left: 20px;
 padding-right: 20px;
}

.com_cat { }

/*.philosophy p { font-size: 2rem !important; }

.philosophy section:nth-of-type(odd) .secInner { float: left; }

.philosophy section:nth-of-type(even) .secInner { float: right; }

.philosophy section .secInner { width: 40%; }*/

.philosophy section:nth-of-type(1) p, .recruit section:nth-of-type(1) p {
 text-align: center;
 font-size: 2rem;
 padding-bottom: 2em;
 padding-left: 20px;
 padding-right: 20px;
}

.philosophy section:nth-of-type(2) p, .recruit section:nth-of-type(2) {
 margin-bottom: 2em;
 font-size: 1.4rem;
 padding-left: 20px;
 padding-right: 20px;
}

.philosophy section:nth-of-type(2), .recruit section:nth-of-type(2) { margin-bottom: 100px; }

.philosophy section:nth-of-type(1) p {
 padding-left: 20px;
 padding-right: 20px;
}

.outline section { width: 100%; }

.com_table table { margin: 0 auto 120px; }

.com_table table td {
 border-bottom: 1px solid #ccc;
 padding-top: 1em;
 padding-bottom: 1em;
 padding-left: 2em;
}

.com_table table th {
 border-bottom: 1px solid #ccc;
 padding-top: 1em;
 padding-bottom: 1em;
 padding-left: 1em;
}

.outline section h2 {
 font-size: 2rem;
 padding-left: 20px;
 padding-right: 20px;
 margin-bottom: 1em
}

.outline address {
 font-size: 1.4rem;
 margin-bottom: 10px;
 font-style: normal;
 padding-left: 20px;
 padding-right: 20px
}

.outline .googleMap { padding-bottom: 80px; }

.recruit .com_table table {
 width: 100%;
 margin-bottom: 60px;
}

.recruit .com_table table td {
 border-bottom: 1px solid #ccc;
 padding-top: 1em;
 padding-bottom: 1em;
 font-size: 1.4rem;
 padding-left: 1em;
 padding-right: 1em;
}

.recruit .com_table table th {
 border-bottom: 1px solid #ccc;
 padding-top: 1em;
 padding-bottom: 1em;
 padding-left: 1em;
 font-size: 1.4rem;
 width: 8rem;
}

.recruit section h2 {
 font-size: 3rem;
 font-weight: 100;
 padding: 0;
 text-align: center
}

.recruit section h2 span {
 background-color: #333;
 display: inline-block;
 width: 4px;
 height: 23px;
 border-radius: 10px;
 /* vertical-align: middle; */
 margin-right: 0.25em;
}

.recruit section dt {
 margin-bottom: 1em;
 text-align: center;
 font-size: 3rem;
 font-weight: 100;
 color: #08c;
}

.recruit section dd { margin-bottom: 1em; }

.recruit section dd ul {
 padding-left: 20px;
 margin-bottom: 20px;
 display: inline-block;
 border: solid 1px #333;
 padding: 0.5em;
 margin: 0 auto 0;
 border-radius: 8px;
}

.recruit section dd ul li { margin-left: 1.5em; }

.recruit section dl {
 margin-bottom: 3em;
 background-color: #f1f1f1;
 box-sizing: border-box;
 padding: 20px;
 border-radius: 8px;
}

.recruit section:nth-of-type(2) { padding-bottom: 30px; }

.recruit section:nth-of-type(3) { padding-bottom: 60px; }

.recruit section:nth-of-type(3) table {
 border-top: 1px #ccc solid;
 font-size: 1.4rem;
 margin: 0 auto 30px;
}

.recruit section:nth-of-type(3) table th {
 padding-left: 1rem;
 border-bottom: 1px #ccc solid;
}

.recruit section:nth-of-type(3) table td {
 border-bottom: 1px #ccc solid;
 padding: 30px 0 30px 20px;
}

.recruit section:nth-of-type(3) table ul { margin-left: 20px; }

.recruit section:nth-of-type(4) dl {
 padding-right: 20px;
 padding-left: 0;
 padding-top: 0;
 padding-bottom: 0;
 background: none;
 text-align: center;
}

.recruit section:nth-of-type(4) dl:last-of-type {
 padding-left: 0;
 background: none;
}

.recruit section:nth-of-type(4) dt {
 background-color: #08c;
 display: inline-block;
 height: 30vw;
 width: 30vw;
 line-height: 30vw;
 border-radius: 50%;
 color: #fff;
 font-size: 6vw;
 margin: 0 auto;
 margin-bottom: 1em;
}

.info h1 { padding-left: 0; }

.info section > dl { margin-bottom: 60px; }

.info section > dl > dt {
 font-size: 2rem;
 margin-bottom: 20px;
}

.info section {
 padding-left: 20px;
 padding-right: 20px;
}

.info section dt span {
 display: inline-block;
 vertical-align: middle;
}

.info section .infotext { padding-bottom: 60px; }

.info section > dl > dd > dl > dd { margin-bottom: 2em; }

.info section > dl > dd > dl > dt {
 font-size: 1.6rem;
 margin-bottom: 1rem;
 font-weight: bold;
}

.info section > dl > dd > p { margin-bottom: 1em; }

.info section > dl > dl > dl > dd {
 margin-bottom: 1rem;
 background-color: #f00;
}

.info section .dl_list { margin-bottom: 60px; }

.info section .dl_list dt {
 margin-bottom: 1em;
 margin-top: 1em;
}

.info .wrappe dd p { margin-bottom: 2em; }

.info section .dl_list dd {
 margin-bottom: 0.5em;
 padding-bottom: 0.125em;
 background-image: url(../img/doto.svg);
 background-repeat: no-repeat;
 background-size: 4px;
 background-position: left 8px;
 list-style: none;
 padding-left: 0.6em;
}

.info section .dl_list li {
 margin-bottom: 0.5em;
 padding-bottom: 0.125em;
 background-image: url(../img/doto.svg);
 background-repeat: no-repeat;
 background-size: 4px;
 background-position: left 8px;
 list-style: none;
 padding-left: 0.6em;
}

.info section > dl > dl { padding-left: 30px; }

.red { color: #f00; }

.waku {
 border: solid 1px #ccc;
 padding: 10px 20px;
 margin: 30px auto 60px auto;
 box-sizing: border-box;
}

.waku strong {
 font-size: 2.75rem;
 font-weight: 100;
 padding-bottom: 0.25em;
 display: block;
}

.waku2 {
 border: solid 1px #ccc;
 padding: 30px 10px 30px 30px;
 margin: 30px auto 60px auto;
 box-sizing: border-box;
 margin-left: 10px;
 margin-right: 10px;
}

.info section p:nth-of-type(1) strong {
 font-size: 2rem;
 font-weight: 100;
 margin-bottom: 1em;
}

.info section section p:nth-of-type(1) {
 padding-left: 20px;
 padding-right: 20px;
 margin-bottom: 1em;
}

.info section p:nth-of-type(2) { }

.info section ul {
 padding-left: 20px;
 padding-right: 0px;
}

.info section ul li {
 margin-bottom: 0.5em;
 padding-bottom: 0.125em;
 background-image: url(../img/doto.svg);
 background-repeat: no-repeat;
 background-size: 4px;
 background-position: left 8px;
 list-style: none;
 padding-left: 0.6em;
}

.waku2 ol li {
 list-style-type: decimal;
 margin-bottom: 0.5em;
}

.waku3 {
 margin-bottom: 1em;
 margin-top: 1em;
 display: block;
}

.waku3 strong { font-size: 2rem; }

.info h2 {
 font-size: 2.7rem;
 font-weight: 100;
 margin-bottom: 1em;
 text-align: center;
}

.top .col2 { display: block; }

.faq section { margin-bottom: 60px; }

.faq section:nth-of-type(1) h2 {
 font-size: 2rem;
 font-weight: 100;
 margin-bottom: 60px;
}

.faq h3 {
 font-size: 3rem;
 font-weight: 100;
 margin-bottom: 1em;
 border-bottom: 1px solid #000;
}

.faq h4 {
 font-size: 2rem;
 margin-bottom: 1em;
}

.faq p { margin-bottom: 1em; }

.faq p:last-of-type { margin-bottom: 2em; }

.faq dl.faqlist { padding: 1em 0; }

.faq dl.faqlist dt {
 position: relative;
 top: 0px;
 left: 0;
 padding-left: 50px;
 margin-bottom: 1em;
 font-size: 1.8rem;
}

.faq dl.faqlist dd {
 margin: 0;
 position: relative;
 padding-left: 50px;
 margin-bottom: 30px;
}

.faq dl.faqlist dt:before {
 background-color: #000;
 color: #fff;
 content: "Q";
 width: 40px;
 height: 40px;
 line-height: 20px;
 padding: 10px;
 border-radius: 50%;
 position: absolute;
 left: 0;
 text-align: center;
}

.faq dl.faqlist dd:before {
 background-color: #eee;
 color: #000;
 content: "A";
 text-align: center;
 width: 40px;
 height: 40px;
 line-height: 20px;
 font-size: 20px;
 padding: 10px;
 border-radius: 50%;
 display: block;
 position: absolute;
 top: 0;
 left: 0;
}

.faq section:nth-of-type(1) .flexRap .secInner2 { vertical-align: top; }

.faq section:nth-of-type(1) .flexRap ul { }

.faq section:nth-of-type(1) .flexRap h2 {
 margin-bottom: 1em;
 padding-left: 20px;
}

.faq section ul {
 display: block;
 padding: 0 0 2em 0;
 margin-left: 1em;
}

.faq section ul li {
 margin-bottom: 0.125em;
 padding-bottom: 0.125em;
 background-image: url(../img/doto.svg);
 background-repeat: no-repeat;
 background-size: 4px;
 background-position: left 8px;
 list-style: none;
 padding-left: 0.6em;
}

.faq section ul.time { margin: 1em 0; }

.faq section ul.time li { margin-bottom: 0.25em; }

.faq em {
 font-style: normal;
 display: block;
 margin-bottom: 0.5em;
}

.info section { margin-bottom: 30px }

@media screen and (min-width:780px) {

.info section { margin-bottom: 100px !important; }

.info section section p:nth-of-type(1) {
 padding-left: 0;
 padding-right: 0;
 margin-bottom: 1em;
}

.info section p:nth-of-type(2) {
 padding-left: 0;
 padding-right: 0;
}

.waku {
 padding: 30px;
 box-sizing: border-box;
 width: 100%;
 margin-left: 0;
 margin-right: 0;
}

.waku2 {
 padding: 30px;
 box-sizing: border-box;
 width: 100%;
 padding-left: 50px;
 margin-left: 0;
 margin-right: 0;
}

.info section > dl > dt {
 font-size: 3rem;
 margin-bottom: 20px;
}

.info section dt span:nth-of-type(1) {
 border-radius: 20px;
 background-color: #333;
 height: 1.8rem;
 margin-right: 1rem;
 width: 3px;
}

.info section .dl_list dd {
 margin-left: 2.5em;
 padding-left: 0.8em;
}

.info section > dl > dd > dl > dt {
 font-size: 1.8rem;
 margin-bottom: 1rem;
 font-weight: normal;
}

.com_table table th { width: 9rem; }

.com_table table { font-size: 1.8rem; }

.recruit section:nth-of-type(3) table td {
 border-bottom: 1px #ccc solid;
 padding: 30px 0 30px 30px;
}

.recruit section:nth-of-type(3) table { font-size: 1.8rem !important; }

.recruit section:nth-of-type(4) .flow { display: flex; }

.recruit section dl { padding: 50px; }

.recruit section:nth-of-type(4) dl {
 background-size: 40px;
 flex: 1;
 background-image: url(../img/top_10.png);
 background-repeat: no-repeat;
 background-position: right 61px;
 background-size: 2vw;
}

.recruit section:nth-of-type(4) dt {
 background-color: #08c;
 display: inline-block;
 height: 140px;
 width: 140px;
 line-height: 140px;
 border-radius: 50%;
 color: #fff;
 font-size: 26px;
}

.recruit section:nth-of-type(4) dd { text-align: left; }

.recruit section {
 width: 900px;
 margin: 0 auto;
}

.philosophy section:nth-of-type(1) p, .recruit section:nth-of-type(1) { font-size: 3rem; }

.philosophy section:nth-of-type(2) p, .recruit section:nth-of-type(2) {
 margin-bottom: 2em;
 font-size: 2rem;
}

.outline section {
 width: 900px;
 margin: 0 auto;
}

.outline .googleMap {
 width: 1000px;
 padding-bottom: 100px;
}

.itemArea dl dt { width: 920px; }

.secInner {
 width: 960px;
 margin: 0 auto;
 box-sizing: border-box;
 padding-left: 20px;
 padding-right: 20px;
}

.mesege section h2 { font-size: 4rem; }

.mesege section .secInner {
 padding-top: 1em;
 padding-bottom: 1em;
}

.top .sec02 div {
 display: -webkit-flex; /* Safari */
 display: flex;
}

.topSec01Inner {
 min-height: 10vw;
 width: 100%;
 overflow: hidden;
 background-image: url(../img/top_01.png);
 background-size: contain;
 background-size: 35vw;
 background-position: 33% center;
}

.col02 { column-count: 2; }

.movie h2 {
 padding: 0 20px 10px;
 line-height: 2;
 font-size: 2rem;
 font-weight: normal;
}

.youtube {
 width: 560px;
 height: 315px;
 margin: 0 auto 60px;
}

.youtube iframe {
 width: 100%;
 height: 100%;
}

.docter img { width: 100%; }

.doc01 p {
 font-size: 2rem;
 padding-top: 3em;
 padding-right: 1em;
}

.doc01 {
 -webkit-display: flex;
 display: flex;
 -webkit-flex-direction: row;
 flex-direction: row;
 -webkit-flex-wrap: no-wrap;
 flex-wrap: no-wrap;
 padding: 0;
 margin-top: -30px;
}

.docter {
 padding-top: 10px;
 width: 240px;
}

.movie .thumnail_list {
 -webkit-display: flex;
 display: flex;
 -webkit-flex-wrap: wrap;
 flex-wrap: wrap;
}

.movie .thumnail_list li { width: 50%; }

.movie .thumnail_list li:nth-of-type(2) { border-top: 1px #ccc solid; }

.movie .thumnail_list li:nth-of-type(odd) { border-right: 1px #ccc solid; }

.movie .thumnail_list li a .img { width: 40%; }

.movie .thumnail_list li a .img img { width: 160px; }

.pc {
 display: block;
 background-size: 1500px !important;
 background-position: center center
}

.box2.sp { display: none }

.mes section:nth-of-type(1) {
 -webkit-flex-direction: row;
 flex-direction: row;
 -webkit-display: flex;
 display: flex;
}

.mes section:nth-of-type(1) .mes02 {
 padding-right: 0;
 width: 540px;
}

.mes section:nth-of-type(1) .mes01 { width: 394px; }

.mes section:nth-of-type(1) .mes01 img {
 width: 394px;
 height: auto;
}

.mes section:nth-of-type(1) .imgbox img {
 width: 300px;
 height: auto;
}

.slo section:nth-of-type(1) { font-size: 2.4rem; }

.slo section:nth-of-type(1) h2 { font-size: 5rem; }

.flogo {
 width: 960px;
 margin: 0 auto;
 display: block;
}

.flogo img { width: 96px; }

h1 {
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
 font-size: 5rem;
 margin-bottom: 30px;
 width: 940px;
 padding-left: 0;
 margin: 30px auto 30px;
 text-align: center;
}

.btnArea a {
 line-height: 92px;
 font-size: 3rem;
}

.btnArea a span {
 font-size: 2rem;
 line-height: 0.5;
 top: -40px;
 left: -61px;
}

.btnArea a span:after { left: 85px; }

.btnArea {
 width: 520px;
 margin: 0 auto;
}

footer dd a, footer dd a:visited {
 text-decoration: none;
 display: inline-block;
 padding-left: 1em;
 font-size: 1.2rem;
 padding-right: 0.5em;
}

footer dl dd a {
 padding-left: 14px;
 background-image: url(../img/link_mark.svg);
 background-repeat: no-repeat;
 background-position: 0 center;
 background-size: 4px;
}

footer dl dd { display: block !important; }

.acMenu dd li {
 list-style: none;
 margin-left: 0;
 border-bottom: none;
}

footer a:active, footer a:hover { text-decoration: underline; }

footer address {
 border-top: none;
 padding-bottom: 10px;
}

footer {
 overflow: hidden;
 margin: 0 auto 0;
}

footer nav {
 width: 960px;
 margin: 0 auto;
 display: flex;
}

footer dl {
 display: inline-block;
 font-size: 0.5rem;
 padding-right: 90px;
}

footer dl dt {
 margin-bottom: 1.2em;
 cursor: default !important;
 font-size: 1.8rem;
}

footer dl dd { margin-bottom: 0.5em; }

.acMenu dt, .acMenu dt.active { background: none; }

.acMenu dd { display: block; }

.top section, .com article, .mes section, .philosophy section .info section, .philosophy section, .movie section, .info section {
 max-width: 960px;
 margin: 0 auto 60px;
 box-sizing: border-box;
}

.slo .col02 {
 max-width: 960px;
 margin: 0 auto 60px;
}

.wrapper { }

/* top */

.box {
 position: relative;
 min-height: 400px;
}

.mainImage div { background-size: cover; }

.top .lineUp li {
 border-bottom: 1px solid #ccc;
 box-sizing: border-box;
}

.top .lineUp li:nth-of-type(odd) { border-right: 1px solid #ccc; }

.top .lineUp li:nth-of-type(2) { border-top: 1px solid #ccc; }

.top .top .sec01 {
 background-size: 400px;
 background-position: 178px 0px;
 color: #666;
}

.top .sec02 {
 box-shadow: none;
 text-align: center;
}

.top .sec02 div { display: inline; }

.top .sec02 div a {
 width: 230px;
 display: inline-block;
}

header {
 width: 980px;
 margin: 0 auto;
}

/*.mainImage {
 background: url(../img/top_14.jpg) no-repeat center center;
 height: 400px;
}

.mainImage img { display: none; }
*/
.top .sec01 p {
 font-size: 2.5rem;
 padding-top: 7%;
 padding-bottom: 3%;
 padding-right: 94px;
}

.top .sec01 .sub01 {
 font-size: 2.5rem;
 margin-bottom: 2em;
}

.top .sec04 {
 padding: 30px;
 margin-bottom: 60px !important;
}

/*.top .sec05 { padding-bottom: 30px !important; }*/

.top .lineUp {
 padding: 20px;
 overflow: hidden;
}

.top .lineUp li {
 width: 50%;
 float: left
}

.top .sec05 .txt01 { padding-right: 20px; }

.top #dial01, .top #dial02 { padding: 0 20px; }

.top .col2 { display: flex; }

.top .col2 section {
 box-sizing: border-box;
 width: 50%;
 -webkit-flex-direction: row; /* Safari */
 flex-direction: row;
}

.top .sec05 {
 display: flex;
 -webkit-display: flex;
}

.top .sec05 .dial01 {
 -webkit-flex-direction: row; /* Safari */
 flex-direction: row;
}

.com ul.com_cat {
 display: flex !important;
 flex-wrap: wrap;
}

.com ul.com_cat li {
 width: 50%;
 list-style: none;
 padding: 0;
 padding: 15px;
}

.as-tile-image-cont { overflow: hidden; }

.pankuzu { width: 960px; }

.gnav { display: block; }

.gnav ul {
 width: 980px;
 margin: 0 auto;
 border-top: solid 1px #eee;
 text-align: center;
}

.menu-open-btn { display: none; }

.gnav li { display: inline-block; }

.gnav li a {
 padding: 1em 2.5em;
 display: block;
 color: #000;
}

.logo img {
 width: 200px;
 height: auto;
 position: absolute;
 padding-left: 20px;
 padding-top: 18px;
}

#header {
 position: relative;
 top: 0;
 text-align: left;
 height: 80px;
}

.fooetrNav02 {
 border-top: solid 1px #ccc;
 padding-top: 20px;
 margin-top: 30px;
}

.fooetrNav02 ul {
 text-align: right;
 text-align: center;
 width: 100%;
}

.fooetrNav02 li { display: inline; }

.fooetrNav02 li a { padding: 0 1em 0 0.8em; }

.itemArea dl ul {
 width: 960px;
 margin: 0 auto;
}

.docter img { box-shadow: 0 2px 5px rgba(0, 0, 0, 0.4); }

.blurIn {
 -webkit-filter: blur(30px);
 -webkit-transition: -webkit-filter 0.5s ease-out;
 transition: -webkit-filter 0.5s ease-out;
}

.blurIn2 {
 -webkit-filter: blur(30px);
 -webkit-transition: -webkit-filter 0.25s ease-out;
 transition: -webkit-filter 0.25s ease-out;
}

/* top */
.sp-buttons {
 padding-top: 0px;
 margin-top: -30px;
}

.sp-button {
 width: 10px;
 height: 10px;
 border: none;
 margin: 7px;
 background: #fff;
 border-radius: 50%;
 box-shadow: 0 0 4px rgba(0,0,0,0.2);
}

.sp-selected-button {
 background: rgba(0,203,255,0.8);
 box-shadow: 0 0 4px rgba(0,83,171,0.9);
}

/* 左右の矢印の設定 */
.sp-arrow {
 width: 48px;
 height: 48px;
}

.sp-vertical .sp-arrow {
 -webkit-transform: none;
 -ms-transform: none;
 transform: none;
}
}

.sp-horizontal .sp-previous-arrow { background: url(img/prev.png) no-repeat; }

.sp-horizontal .sp-next-arrow { background: url(img/next.png) no-repeat; }

.sp-previous-arrow:before, .sp-previous-arrow:after, .sp-next-arrow:before, .sp-next-arrow:after { content: inherit; }

/**/

.item section > h2 {
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
 font-size: 2rem;
 margin-bottom: 30px;
 padding-left: 20px;
 margin: 10px auto 20px;
}

.item .doc {
 padding-left: 20px;
 padding-right: 20px;
 padding-top: 20px;
 text-align: center;
}

.item section ul { margin-bottom: 60px; }

.item section ul li {
 margin-bottom: 8rem;
 padding-top: 0rem;
}

.item section ul li h2 {
 font-size: 3em;
 font-weight: 100;
 line-height: 1;
}

.item .ml {
 font-size: 1em;
 display: block;
 line-height: 1.5;
 padding-top: 1em;
 padding-bottom: 1em;
}

.item ul .thum { width: 100%; }

.item ul .thum img {
 width: 100%;
 height: auto;
}

.item p {
 margin-bottom: 1em;
 padding-top: 0.5em;
}

.item .li_subt {
 border: solid 1px #ff1256;
 border-radius: 2px;
 padding: 0.25em 1.5em;
 margin-bottom: 0.8em;
 display: inline-block;
 color: #ff1256;
}

.item .li_subt_b {
 color: #0062d9;
 border: solid 1px #0062d9;
 border-radius: 2px;
 padding: 0.25em 1.5em;
 margin-bottom: 0.8em;
 display: inline-block;
}

.item .dlRap { padding: 0 10px; }

.item .dlRap dl { margin-bottom: 0.5em; }

.item .dlRap dl a {
 padding: 1em;
 color: #fff !important;
 background-color: #333;
 display: inline-block;
 border-radius: 4px;
 width: 100%;
}

.item .dlRap .btn a {
 font-size: 1.5em;
 padding: 1em;
 color: #fff !important;
 background-color: #ff1256;
 display: inline-block;
 border-radius: 4px;
 margin-bottom: 1em;
 width: 100%;
}

.item .dlRap dl:nth-of-type(2) a { font-size: 0.8rem; }

.item .dlRap dt {
 font-size: 2em;
 display: block;
 font-weight: 100;
 margin-bottom: -10px;
}

.item .dlRap dd {
 display: block;
 font-size: 1rem;
 font-weight: 100;
 line-height: 1.2;
}

.item .dlRap dd strong {
 margin-bottom: -10px;
 font-size: 3.5rem;
}

.item .small {
 display: block;
 font-size: 2rem;
}

.item .small_t { font-size: 8px; }

@media screen and (min-width: 769px) {
.top .sec02 a {    padding: 0 5px;}
.item section {
 width: 960px;
 margin: 0 auto;
}

.item section { }

.item section ul {
 width: 100%;
 display: flex;
 flex-wrap: wrap;
 justify-content: space-between;
 align-content: space-between;
 margin-top: 60px;
}

.item section li {
 width: 260px;
 justify-content: center;
 align-items: center;
 list-style: none;
}

.item section ul li h2 {
 font-size: 2em;
 font-weight: 100;
 line-height: 1.2;
}

.item .dlRap dl a { background-color: #666; }

.item section > h2 {
 font-family: "游明朝", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", "ＭＳ 明朝", serif;
 font-size: 5rem;
 margin-bottom: 30px;
 width: 940px;
 padding-left: 0;
 margin: 30px auto 30px;
 text-align: center;
}

.faq section:nth-of-type(1) .flexRap {
 /* display: flex;
 justify-content: center;*/
 width: 640px;
 margin: 0 auto;
}
}

.outline .syanai {
 width: 100% !important;
 max-width: 980px !important;
 margin-bottom: 100px !important;
}

.outline .syanai img { width: 50%; }

/* 20170107 */
.sns {
 text-align: left;
 background-color: #666;
}

.sns_inner {
 max-width: 960px;
 margin: 0 auto;
 padding: 0 20px;
}

.sns a {
 width: 48px;
 height: auto;
 display: inline-block;
 margin: 12px 4px
}

/*20170201*/

.item_d section {
 padding: 10px 0 30px;
 font-size: 1.3rem;
}

.item_d section:nth-of-type(odd) {
 background-color: #f6f6f6;
 background: radial-gradient(#ffffff, #dae4ef);
}

.item_d section:nth-of-type(1) {
 padding-top: 0 !important;
 padding-bottom: 0 !important;
}

.item_d section:nth-of-type(2) {
 padding-top: 20px !important;
 padding-bottom: 0 !important;
}

.item_d h1 {
 padding-left: 0;
 text-align: left;
 font-size: 3em;
 color: #333;
}

.item_d h1 span:nth-of-type(1) {
 font-size: 0.5em;
 padding-top: 0 !important;
 padding-bottom: 0 !important;
}

.item_d h1 span {
 line-height: 1.2;
 display: block;
}

/* ウィンドウ幅が0〜479pxの場合に適用するCSS */
@media screen and ( max-width:479px ) {

.item_d h1 {
 padding-left: 0;
 text-align: left;
 font-size: 2em;
}
}

.item_d section h2 {
 font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "sans-serif";
 font-size: 3rem !important;
 font-weight: 100;
 margin-bottom: 30px;
 margin: 10px auto 20px;
 padding-left: 0;
 text-align: center;
}

.item_d .sub_t {
 text-align: left;
 padding-right: 100px;
}

.item_d .sub_t span { display: inline-block; }

.item_d section .sec_wrap {
 max-width: 780px;
 margin: 0 auto 0;
 text-align: center;
 box-sizing: border-box;
 padding-left: 20px;
 padding-right: 20px;
}

.item_d section:nth-of-type(1) .sec_wrap {
 margin: 0 auto;
 padding: 40px 20px !important;
}

.item_d .entry-title { display: none; }

.item_d .kakaku01 {
 font-size: 5em;
 margin-bottom: 0.5em;
 color: #ff0043;
 text-shadow: 0 2px 0 rgba(51, 51, 51, 0.64);
 font-weight: 100;
 padding-left: 0.05em;
}

.item_d .info_01 {
 text-align: left;
 padding-left: 2em;
}

.item_d .info_01 li { margin-bottom: 0.5em; }

.item_d .item_d .yen { font-size: 0.8em; }

.item_d .post-meta { display: none; }

.item_d .type01 {
 font-size: 0.8em;
 background: #555;
 color: #fff;
 margin: 0.25em;
 padding: 0.25em 0.5em;
 display: inline-block;
}

.item_d .kakaku00 { margin-bottom: 0; }

.item_d .article h2 {
 border-left: 1px solid #000;
 margin: 0 0 30px;
 padding: 25px 30px;
 font-size: 26px;
}

.item_d .ita { font-style: italic; }

.item_d .red {
 color: #ff005e;
 font-size: 1.3em;
}

.item_d .teiki .entryBtn a {
 background: #009912;
 font-weight: bold;
 color: #fff;
 text-shadow: 0 2px 0 rgba(0,0,0,0.5);
 display: inline-block;
 padding: 20px 0;
 width: 100%;
 border-radius: 0.25em;
 font-size: 2.5em;
 box-shadow: 0 10px 0 rgba(0,0,0,0.2);
 max-width: 475px;
 /* float: right; */
 background: linear-gradient(#00dd41, #007308);
}

.item_d .teiki .entryBtn a span {
 display: inline-block;
 padding-right: 1.5em;
 background-image: url(../img/item/btnp01.svg);
 background-repeat: no-repeat;
 background-position: right center;
 background-size: 30px;
}

.item_d .tuujyou .entryBtn a {
 background: #009912;
 font-weight: bold;
 color: #fff;
 text-shadow: 0 2px 0 rgba(0,0,0,0.5);
 /* display: block; */
    /* text-align: center; */
 display: inline-block;
 padding: 0.8em 0;
 width: 100%;
 border-radius: 0.25em;
 font-size: 1.5em;
 box-shadow: 0 10px 0 rgba(0,0,0,0.2);
 max-width: 475px;
 /* float: right; */
 background: linear-gradient(#999, #444);
}

.item_d .tuujyou .entryBtn a span {
 display: inline-block;
 padding-right: 1.5em;
 background-image: url(../img/item/btnp01.svg);
 background-repeat: no-repeat;
 background-position: right center;
 background-size: 20px;
}

.tuujyou .kakaku01 { font-size: 2.8em; }

.teiki { }

.tuujyou {
 margin-top: 20px;
 margin-bottom: 30px;
}

.item_d .info_m {
 list-style-type: disc;
 text-align: left;
 margin-left: 2em;
 margin-top: 20px;
 margin-bottom: 30px
}

.item_d .info_m li { margin-bottom: 0.5em; }

.item_d .info_b { margin: 0 auto; }

.item_d .info_b li {
 box-shadow: 0 4px 2px rgba(0,0,0,0.2);
 text-align: left;
 margin-bottom: 1em;
 background-image: url(../img/item/chack01.svg);
 background-repeat: no-repeat;
 background-position: 19px 5px;
 list-style: none;
 background-size: 60px;
 background-color: rgba(255,255,255,0.8);
 padding: 1em 1em 1em 6em;
 border-radius: 0.5em;
 min-height: 5em;
}

.item_d .info_c { margin: 0 auto; }

.item_d .info_c li {
 box-shadow: 0 4px 2px rgba(0,0,0,0.2);
 text-align: left;
 margin-bottom: 1em;
 background-image: url(../img/item/user_w.svg);
 background-repeat: no-repeat;
 background-position: 20px center;
 list-style: none;
 background-size: 60px;
 background-color: rgba(255,255,255,0.8);
 padding: 1em 1em 1em 7em;
 border-radius: 0.5em;
}

.item_d .info01 {
 margin: 0 auto;
 /*max-width: 400px;*/
 margin: 0 auto;
 list-style-type: disc;
}

.item_d .info01 li { display: inline-block; }

.item_d .info02 {
 text-align: left;
 margin: 0 auto;/*max-width: 400px;*/
}

.item_d .info02 li {
 text-align: left;
 margin-bottom: 1em;
 margin-left: 2em;
}

.item_d .entryBtn { text-align: center; }

.item_d .haisou {
 border: solid 1px #000;
 padding: 1em 2em;
 box-sizing: border-box;
 margin-bottom: 30px;
}

.item_d .item section li {
 width: auto;
 justify-content: center;
 align-items: center;
 list-style: none;
 margin-bottom: 0 !important;
}

.item_d .seibun{
	text-align: left;
}

.item_d .seibun li {
 list-style: none;
 display: inline-block;
 padding-right: 1em;
 line-height: 2;
 font-size: 0.8em;
}
.item_d dl{
	text-align: left;
	
}
.item_d dt{
	font-size: 2rem;
	text-align: center;
	margin-bottom: 0.5em;
}
.item_d dd{
	margin-bottom: 2em;
}
