@charset "UTF-8";
/* CSS Document */
/*
Theme Name:オリジナルテーマ
Description: オリジナルテーマです
Theme URI:
Author:
Author URI:
Version:
License: -----
License URI:
*/
/*********************

変数設定

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

reset

************************/
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

abbr,
address,
article,
aside,
audio,
b,
blockquote,
body,
caption,
cite,
code,
dd,
del,
dfn,
dialog,
div,
dl,
dt,
em,
fieldset,
figure,
footer,
form,
h1,
h2,
h3,
h4,
h5,
h6,
header,
hgroup,
html,
i,
iframe,
img,
ins,
kbd,
label,
legend,
li,
mark,
menu,
nav,
object,
ol,
p,
pre,
q,
samp,
section,
small,
span,
strong,
sub,
sup,
time,
ul,
var,
video {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  vertical-align: baseline;
  background-color: transparent;
  list-style: none;
  font-style: normal;
  font-weight: 400;
}

header,
article,
footer,
aside,
nav,
small,
section {
  display: block;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  line-height: 1.5;
  letter-spacing: 1rem;
}

p {
  line-height: 2;
  letter-spacing: 1rem;
  font-size: 28rem;
}

li,
ol li {
  list-style-type: none;
  letter-spacing: 1rem;
}

a img {
  border-style: none;
}

a {
  text-decoration: none;
  letter-spacing: 1rem;
}

a:hover {
  text-decoration: none;
}

img {
  max-width: 100%;
  height: auto;
  border-style: none;
}

table {
  width: 100%;
  border-collapse: collapse;
}

table th,
table td {
  vertical-align: top;
  letter-spacing: 1rem;
  text-align: left;
}

article,
aside,
dialog,
figure,
footer,
header,
hgroup,
nav,
section {
  display: block;
}

@media (min-width: 751px) {
  html {
    font-size: 0.0520833333vw;
  }
}
@media (min-width: 1921px) {
  html {
    font-size: 0.0625rem;
  }
}
@media (max-width: 750px) {
  html {
    font-size: 0.1333333333vw;
  }
}

a {
  color: #333;
  transition: 0.3s;
}
a:hover {
  opacity: 0.7;
  transition: 0.3s;
}

@media (min-width: 751px) {
  a[href^="tel:"] {
    pointer-events: none;
  }
}

@font-face {
  font-family: "utsukushi";
  src: url("./font/UtsukushiFONT.otf");
}
@font-face {
  font-family: "genei";
  src: url("./font/GenEiLateGoN_v2.ttf");
}
body {
  font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
  font-weight: 400;
  color: #333;
}
@media (min-width: 751px) {
  body {
    font-size: 16rem;
    max-width: 1920rem;
    margin: 0 auto;
  }
}
@media (max-width: 750px) {
  body {
    font-size: 28rem;
  }
}

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

フォントサイズ設定エリア

************************/
@media (min-width: 751px) {
  .fs__16 {
    font-size: 16rem;
  }
}

@media (min-width: 751px) {
  .fs__17 {
    font-size: 17rem;
  }
}

@media (min-width: 751px) {
  .fs__18 {
    font-size: 18rem;
  }
}

@media (min-width: 751px) {
  .fs__19 {
    font-size: 19rem;
  }
}

@media (min-width: 751px) {
  .fs__20 {
    font-size: 20rem;
  }
}

@media (min-width: 751px) {
  .fs__21 {
    font-size: 21rem;
  }
}

@media (min-width: 751px) {
  .fs__22 {
    font-size: 22rem;
  }
}

@media (min-width: 751px) {
  .fs__23 {
    font-size: 23rem;
  }
}

@media (min-width: 751px) {
  .fs__24 {
    font-size: 24rem;
  }
}

@media (min-width: 751px) {
  .fs__25 {
    font-size: 25rem;
  }
}

@media (min-width: 751px) {
  .fs__26 {
    font-size: 26rem;
  }
}

@media (min-width: 751px) {
  .fs__27 {
    font-size: 27rem;
  }
}

@media (min-width: 751px) {
  .fs__28 {
    font-size: 28rem;
  }
}

@media (min-width: 751px) {
  .fs__29 {
    font-size: 29rem;
  }
}

@media (min-width: 751px) {
  .fs__30 {
    font-size: 30rem;
  }
}

@media (min-width: 751px) {
  .fs__31 {
    font-size: 31rem;
  }
}

@media (min-width: 751px) {
  .fs__32 {
    font-size: 32rem;
  }
}

@media (min-width: 751px) {
  .fs__33 {
    font-size: 33rem;
  }
}

@media (min-width: 751px) {
  .fs__34 {
    font-size: 34rem;
  }
}

@media (min-width: 751px) {
  .fs__35 {
    font-size: 35rem;
  }
}

@media (min-width: 751px) {
  .fs__36 {
    font-size: 36rem;
  }
}

@media (min-width: 751px) {
  .fs__37 {
    font-size: 37rem;
  }
}

@media (min-width: 751px) {
  .fs__38 {
    font-size: 38rem;
  }
}

@media (min-width: 751px) {
  .fs__39 {
    font-size: 39rem;
  }
}

@media (min-width: 751px) {
  .fs__40 {
    font-size: 40rem;
  }
}

@media (min-width: 751px) {
  .fs__41 {
    font-size: 41rem;
  }
}

@media (min-width: 751px) {
  .fs__42 {
    font-size: 42rem;
  }
}

@media (min-width: 751px) {
  .fs__43 {
    font-size: 43rem;
  }
}

@media (min-width: 751px) {
  .fs__44 {
    font-size: 44rem;
  }
}

@media (min-width: 751px) {
  .fs__45 {
    font-size: 45rem;
  }
}

@media (min-width: 751px) {
  .fs__46 {
    font-size: 46rem;
  }
}

@media (min-width: 751px) {
  .fs__47 {
    font-size: 47rem;
  }
}

@media (min-width: 751px) {
  .fs__48 {
    font-size: 48rem;
  }
}

@media (min-width: 751px) {
  .fs__49 {
    font-size: 49rem;
  }
}

@media (min-width: 751px) {
  .fs__50 {
    font-size: 50rem;
  }
}

@media (min-width: 751px) {
  .fs__51 {
    font-size: 51rem;
  }
}

@media (min-width: 751px) {
  .fs__52 {
    font-size: 52rem;
  }
}

@media (min-width: 751px) {
  .fs__53 {
    font-size: 53rem;
  }
}

@media (min-width: 751px) {
  .fs__54 {
    font-size: 54rem;
  }
}

@media (min-width: 751px) {
  .fs__55 {
    font-size: 55rem;
  }
}

@media (min-width: 751px) {
  .fs__56 {
    font-size: 56rem;
  }
}

@media (min-width: 751px) {
  .fs__57 {
    font-size: 57rem;
  }
}

@media (min-width: 751px) {
  .fs__58 {
    font-size: 58rem;
  }
}

@media (min-width: 751px) {
  .fs__59 {
    font-size: 59rem;
  }
}

@media (min-width: 751px) {
  .fs__60 {
    font-size: 60rem;
  }
}

@media (min-width: 751px) {
  .fs__61 {
    font-size: 61rem;
  }
}

@media (min-width: 751px) {
  .fs__62 {
    font-size: 62rem;
  }
}

@media (min-width: 751px) {
  .fs__63 {
    font-size: 63rem;
  }
}

@media (min-width: 751px) {
  .fs__64 {
    font-size: 64rem;
  }
}

@media (min-width: 751px) {
  .fs__65 {
    font-size: 65rem;
  }
}

@media (min-width: 751px) {
  .fs__66 {
    font-size: 66rem;
  }
}

@media (min-width: 751px) {
  .fs__67 {
    font-size: 67rem;
  }
}

@media (min-width: 751px) {
  .fs__68 {
    font-size: 68rem;
  }
}

@media (min-width: 751px) {
  .fs__69 {
    font-size: 69rem;
  }
}

@media (min-width: 751px) {
  .fs__70 {
    font-size: 70rem;
  }
}

@media (min-width: 751px) {
  .fs__71 {
    font-size: 71rem;
  }
}

@media (min-width: 751px) {
  .fs__72 {
    font-size: 72rem;
  }
}

@media (min-width: 751px) {
  .fs__73 {
    font-size: 73rem;
  }
}

@media (min-width: 751px) {
  .fs__74 {
    font-size: 74rem;
  }
}

@media (min-width: 751px) {
  .fs__75 {
    font-size: 75rem;
  }
}

@media (min-width: 751px) {
  .fs__76 {
    font-size: 76rem;
  }
}

@media (min-width: 751px) {
  .fs__77 {
    font-size: 77rem;
  }
}

@media (min-width: 751px) {
  .fs__78 {
    font-size: 78rem;
  }
}

@media (min-width: 751px) {
  .fs__79 {
    font-size: 79rem;
  }
}

@media (min-width: 751px) {
  .fs__80 {
    font-size: 80rem;
  }
}

@media (min-width: 751px) {
  .fs__81 {
    font-size: 81rem;
  }
}

@media (min-width: 751px) {
  .fs__82 {
    font-size: 82rem;
  }
}

@media (min-width: 751px) {
  .fs__83 {
    font-size: 83rem;
  }
}

@media (min-width: 751px) {
  .fs__84 {
    font-size: 84rem;
  }
}

@media (min-width: 751px) {
  .fs__85 {
    font-size: 85rem;
  }
}

@media (min-width: 751px) {
  .fs__86 {
    font-size: 86rem;
  }
}

@media (min-width: 751px) {
  .fs__87 {
    font-size: 87rem;
  }
}

@media (min-width: 751px) {
  .fs__88 {
    font-size: 88rem;
  }
}

@media (min-width: 751px) {
  .fs__89 {
    font-size: 89rem;
  }
}

@media (min-width: 751px) {
  .fs__100 {
    font-size: 100rem;
  }
}

@media (min-width: 751px) {
  .fs__120 {
    font-size: 120rem;
  }
}

@media (min-width: 751px) {
  .fs__156 {
    font-size: 156rem;
  }
}

@media (min-width: 751px) {
  .fs__200 {
    font-size: 200rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_20 {
    font-size: 20rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_21 {
    font-size: 21rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_22 {
    font-size: 22rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_23 {
    font-size: 23rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_24 {
    font-size: 24rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_25 {
    font-size: 25rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_26 {
    font-size: 26rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_27 {
    font-size: 27rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_28 {
    font-size: 28rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_29 {
    font-size: 29rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_30 {
    font-size: 30rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_31 {
    font-size: 31rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_32 {
    font-size: 32rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_33 {
    font-size: 33rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_34 {
    font-size: 34rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_35 {
    font-size: 35rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_36 {
    font-size: 36rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_37 {
    font-size: 37rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_38 {
    font-size: 38rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_39 {
    font-size: 39rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_40 {
    font-size: 40rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_41 {
    font-size: 41rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_42 {
    font-size: 42rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_43 {
    font-size: 43rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_44 {
    font-size: 44rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_45 {
    font-size: 45rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_46 {
    font-size: 46rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_47 {
    font-size: 47rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_48 {
    font-size: 48rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_49 {
    font-size: 49rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_50 {
    font-size: 50rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_51 {
    font-size: 51rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_52 {
    font-size: 52rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_53 {
    font-size: 53rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_54 {
    font-size: 54rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_55 {
    font-size: 55rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_56 {
    font-size: 56rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_57 {
    font-size: 57rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_58 {
    font-size: 58rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_59 {
    font-size: 59rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_60 {
    font-size: 60rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_61 {
    font-size: 61rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_62 {
    font-size: 62rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_63 {
    font-size: 63rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_64 {
    font-size: 64rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_65 {
    font-size: 65rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_66 {
    font-size: 66rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_67 {
    font-size: 67rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_68 {
    font-size: 68rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_69 {
    font-size: 69rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_70 {
    font-size: 70rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_71 {
    font-size: 71rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_72 {
    font-size: 72rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_73 {
    font-size: 73rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_74 {
    font-size: 74rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_75 {
    font-size: 75rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_76 {
    font-size: 76rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_77 {
    font-size: 77rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_78 {
    font-size: 78rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_79 {
    font-size: 79rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_80 {
    font-size: 80rem;
  }
}

@media (max-width: 750px) {
  .fs__sp_120 {
    font-size: 120rem;
  }
}

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

余白設定エリア

************************/
@media (min-width: 751px) {
  .mb__10 {
    margin-bottom: 10rem;
  }
}

@media (min-width: 751px) {
  .mb__15 {
    margin-bottom: 15rem;
  }
}

@media (min-width: 751px) {
  .mb__20 {
    margin-bottom: 20rem;
  }
}

@media (min-width: 751px) {
  .mb__25 {
    margin-bottom: 25rem;
  }
}

@media (min-width: 751px) {
  .mb__30 {
    margin-bottom: 30rem;
  }
}

@media (min-width: 751px) {
  .mb__35 {
    margin-bottom: 35rem;
  }
}

@media (min-width: 751px) {
  .mb__40 {
    margin-bottom: 40rem;
  }
}

@media (min-width: 751px) {
  .mb__45 {
    margin-bottom: 45rem;
  }
}

@media (min-width: 751px) {
  .mb__50 {
    margin-bottom: 50rem;
  }
}

@media (max-width: 750px) {
  .mb__sp_10 {
    margin-bottom: 10rem;
  }
}

@media (max-width: 750px) {
  .mb__sp_15 {
    margin-bottom: 15rem;
  }
}

@media (max-width: 750px) {
  .mb__sp_20 {
    margin-bottom: 20rem;
  }
}

@media (max-width: 750px) {
  .mb__sp_25 {
    margin-bottom: 25rem;
  }
}

@media (max-width: 750px) {
  .mb__sp_30 {
    margin-bottom: 30rem;
  }
}

@media (max-width: 750px) {
  .mb__sp_35 {
    margin-bottom: 35rem;
  }
}

@media (max-width: 750px) {
  .mb__sp_40 {
    margin-bottom: 40rem;
  }
}

@media (max-width: 750px) {
  .mb__sp_45 {
    margin-bottom: 45rem;
  }
}

@media (max-width: 750px) {
  .mb__sp_50 {
    margin-bottom: 50rem;
  }
}

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

    共通パーツ

************************/
.color__wh {
  color: #fff;
}

.color__gray {
  color: #272727;
}

.text__center {
  text-align: center;
}

.text__right {
  text-align: right;
}

.utsukushi {
  font-family: "utsukushi";
}

.genei {
  font-family: "genei";
}

.yumincho {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}

@media (min-width: 751px) {
  .pc__none {
    display: none;
  }
}

@media (max-width: 750px) {
  .sp__none {
    display: none;
  }
}

.adjust__link {
  padding-top: 150rem;
  margin-top: -150rem;
}

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

   ヘッダー

************************/
.header {
  position: relative;
}
@media (min-width: 751px) {
  .header {
    max-width: 1920rem;
  }
}
.header.absolute {
  position: absolute;
  width: 100%;
  top: 0;
  z-index: 2;
}
@media (max-width: 750px) {
  .header.absolute .header__separate_left {
    position: absolute;
    top: 0;
  }
}
@media (max-width: 750px) {
  .header.absolute .header__separate_right {
    position: absolute;
    top: 0;
    right: 0;
  }
}
.header__separate {
  display: flex;
}
@media (min-width: 751px) {
  .header__separate {
    justify-content: flex-end;
  }
}
@media (max-width: 750px) {
  .header__separate {
    justify-content: space-between;
    align-items: center;
  }
}
.header__separate_left {
  background: #fff;
  z-index: 2;
}
@media (min-width: 751px) {
  .header__separate_left {
    position: absolute;
    top: 30%;
    left: calc((100% - 1800rem) / 2);
    padding: 15rem 30rem;
  }
}
@media (max-width: 750px) {
  .header__separate_left {
    padding: 20rem 0 0 20rem;
  }
}
.header__separate_left.change {
  background: none;
}
@media (min-width: 751px) {
  .header__separate_left a img {
    width: 511rem;
  }
}
@media (max-width: 750px) {
  .header__separate_left a img {
    width: 340rem;
  }
}
@media (min-width: 751px) {
  .header__separate_right {
    display: flex;
  }
}
@media (min-width: 751px) {
  .header__separate_right .n1, .header__separate_right .n3 {
    display: flex;
  }
}
@media (max-width: 750px) {
  .header__separate_right .n1, .header__separate_right .n3 {
    display: none;
  }
}
@media (min-width: 751px) {
  .header__separate_right .n1 img, .header__separate_right .n3 img {
    width: 300rem;
  }
}
@media (min-width: 751px) {
  .header__separate_right .n2, .header__separate_right .n4, .header__separate_right .n5 {
    display: flex;
  }
}
@media (max-width: 750px) {
  .header__separate_right .n2, .header__separate_right .n4, .header__separate_right .n5 {
    display: none;
  }
}
@media (min-width: 751px) {
  .header__separate_right .n2 img, .header__separate_right .n4 img, .header__separate_right .n5 img {
    width: 120rem;
  }
}
.header__separate_right .page__ul1 {
  position: fixed;
  left: -100%;
  width: 100%;
  height: 100%;
  text-align: center;
  top: 0;
  background: rgba(0, 0, 0, 0.7);
  box-sizing: border-box;
  z-index: 2;
  transition: 0.3s;
  padding: 120rem 60rem 30rem 60rem;
  z-index: 1000;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  margin: 0;
}
.header__separate_right .page__ul1.on {
  left: 0;
  transition: 0.3s;
}
.header__separate_right .page__ul1 li.li {
  position: relative;
}
@media (min-width: 751px) {
  .header__separate_right .page__ul1 li.li {
    width: 40%;
    margin: 0 auto;
  }
}
.header__separate_right .page__ul1 li.li a, .header__separate_right .page__ul1 li.li p {
  display: block;
  border-bottom: 1px solid #fff;
  margin-bottom: 30rem;
  padding-bottom: 10rem;
}
@media (min-width: 751px) {
  .header__separate_right .page__ul1 li.li a, .header__separate_right .page__ul1 li.li p {
    font-size: 24rem;
  }
}
@media (max-width: 750px) {
  .header__separate_right .page__ul1 li.li a, .header__separate_right .page__ul1 li.li p {
    font-size: 28rem;
  }
}
.header__separate_right .page__ul1 li.li .main__a {
  color: #fff;
  width: 100%;
  text-align: center;
  cursor: pointer;
}
@media (min-width: 751px) {
  .header__separate_right .page__ul1 li.li .main__a {
    font-size: 20rem;
    line-height: 1.5;
    display: inline-block;
  }
}
@media (max-width: 750px) {
  .header__separate_right .page__ul1 li.li .main__a {
    display: block;
    line-height: 1.5;
  }
}
.header__separate_right .page__ul1 li.li .main__a span {
  display: block;
}
@media (min-width: 751px) {
  .header__separate_right .page__ul1 li.li.is__active .main__a {
    position: relative;
  }
}
@media (min-width: 751px) {
  .header__separate_right .page__ul1 li.li.is__active .main__a:before {
    content: "";
    width: 38rem;
    height: 6rem;
    background: #fff;
    position: absolute;
    bottom: -35%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
}
.header__separate_right .page__ul1 li a {
  color: #fff;
}
@media (min-width: 751px) {
  .header__separate_right .page__ul1 li a {
    font-size: 25rem;
  }
}
.header__separate_right .page__ul1 nav {
  display: none;
}
.header__separate_right .page__ul1 nav .js__sub-a a {
  display: flex;
  align-items: center;
  color: #fff;
}
@media (min-width: 751px) {
  .header__separate_right .page__ul1 nav .js__sub-a a {
    font-size: 24rem;
  }
}
.header__separate_right .page__ul1 nav .js__sub-a a:before {
  content: "";
  background-image: url(./images/common/js__sub__before.png);
  background-size: cover;
  background-repeat: no-repeat;
  width: 11rem;
  height: 17rem;
  margin-right: 10rem;
  display: inline-block;
}
.header-sp {
  background: #06c755;
  color: #fff;
  font-weight: 700;
  box-sizing: border-box;
  cursor: pointer;
  transition: all 0.3s;
  z-index: 1001;
}
@media (min-width: 751px) {
  .header-sp {
    width: 120rem;
    height: 123rem;
    position: relative;
  }
}
@media (max-width: 750px) {
  .header-sp {
    width: 137rem;
    height: 137rem;
    position: fixed;
    top: 0;
    right: 0;
  }
}
.header-sp.page {
  background: #0c0f50;
}
.header-sp span {
  background: #fff;
  position: absolute;
  transition: all 0.3s;
}
@media (min-width: 751px) {
  .header-sp span {
    width: 50rem;
    height: 6rem;
    left: 38rem;
  }
}
@media (max-width: 750px) {
  .header-sp span {
    width: 75rem;
    height: 2px;
    left: 30rem;
  }
}
.header-sp span:nth-of-type(1) {
  transition: 0.3s;
}
@media (min-width: 751px) {
  .header-sp span:nth-of-type(1) {
    top: 20rem;
  }
}
@media (max-width: 750px) {
  .header-sp span:nth-of-type(1) {
    top: 25rem;
  }
}
.header-sp span:nth-of-type(1).close {
  display: none;
  transition: 0.3s;
}
@media (min-width: 751px) {
  .header-sp span:nth-of-type(2) {
    top: 40rem;
  }
}
@media (max-width: 750px) {
  .header-sp span:nth-of-type(2) {
    top: 45rem;
  }
}
.header-sp span:nth-of-type(2).close {
  transform: rotate(-45deg);
  transition: 0.3s;
}
@media (min-width: 751px) {
  .header-sp span:nth-of-type(3) {
    top: 60rem;
  }
}
@media (max-width: 750px) {
  .header-sp span:nth-of-type(3) {
    top: 65rem;
  }
}
.header-sp span:nth-of-type(3).close {
  transform: rotate(45deg);
  transition: 0.3s;
}
@media (min-width: 751px) {
  .header-sp span:nth-of-type(3).close {
    top: 42rem;
  }
}
@media (max-width: 750px) {
  .header-sp span:nth-of-type(3).close {
    top: 43rem;
  }
}
.header-sp p {
  position: absolute;
  width: 100%;
  text-align: center;
  font-size: 22rem;
  font-weight: 700;
  color: #fff;
}
@media (min-width: 751px) {
  .header-sp p {
    bottom: 10rem;
  }
}
@media (max-width: 750px) {
  .header-sp p {
    bottom: 5rem;
  }
}
@media (min-width: 751px) {
  .header .page__ul {
    position: absolute;
    left: 10rem;
    width: 1420rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    bottom: -315%;
  }
}
@media (max-width: 750px) {
  .header .page__ul {
    display: none;
  }
}
.header .page__ul li.li {
  position: relative;
}
@media (max-width: 750px) {
  .header .page__ul li.li a, .header .page__ul li.li p {
    display: block;
    font-size: 28rem;
    border-bottom: 1px solid #fff;
    margin-bottom: 30rem;
    padding-bottom: 10rem;
  }
}
.header .page__ul li.li .main__a {
  text-align: center;
  cursor: pointer;
  color: #fff;
}
@media (min-width: 751px) {
  .header .page__ul li.li .main__a {
    font-size: 25rem;
    line-height: 1;
    display: inline-block;
  }
}
@media (max-width: 750px) {
  .header .page__ul li.li .main__a {
    display: block;
    line-height: 1.5;
  }
}
.header .page__ul li.li .main__a span {
  display: block;
}
@media (min-width: 751px) {
  .header .page__ul li.li.is__active .main__a {
    position: relative;
  }
}
@media (min-width: 751px) {
  .header .page__ul li.li.is__active .main__a:before {
    content: "";
    width: 38rem;
    height: 6rem;
    background: #ffcc00;
    position: absolute;
    bottom: -100%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
}
.header .page__ul li a {
  color: #fff;
}
@media (min-width: 751px) {
  .header .page__ul li a {
    font-size: 25rem;
  }
}
.header .page__ul nav {
  display: none;
}
@media (min-width: 751px) {
  .header .page__ul nav .js__sub {
    padding: 30rem 20rem;
    position: absolute;
    left: 0;
    top: 55rem;
    z-index: 5;
    background: rgba(255, 255, 255, 0.95);
    display: flex;
    flex-wrap: wrap;
    width: 500rem;
    justify-content: space-between;
  }
}
@media (min-width: 751px) {
  .header .page__ul nav .js__sub-a {
    display: flex;
    width: 48%;
  }
}
.header .page__ul nav .js__sub-a a {
  display: flex;
  align-items: center;
}
@media (min-width: 751px) {
  .header .page__ul nav .js__sub-a a {
    color: #262626;
    font-size: 20rem;
    margin: 0 0 30rem;
    justify-content: center;
  }
}
@media (max-width: 750px) {
  .header .page__ul nav .js__sub-a a {
    color: #fff;
  }
}
.header .page__ul nav .js__sub-a a:before {
  content: "";
  background-image: url(./images/common/js__sub__before.png);
  background-size: cover;
  background-repeat: no-repeat;
  width: 11rem;
  height: 17rem;
  margin-right: 10rem;
  display: inline-block;
}

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

 トップページ(mv)

************************/
.mv {
  position: relative;
}
@media (min-width: 751px) {
  .mv {
    width: 1800rem;
    margin: 0 auto 40rem;
  }
}
@media (max-width: 750px) {
  .mv {
    margin-bottom: 80rem;
  }
}
.mv img {
  width: 100%;
}

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

 トップページ(mv下メニュー)

************************/
@media (min-width: 751px) {
  .below__menu {
    width: 1520rem;
    margin: 0 auto 90rem;
    display: flex;
    justify-content: center;
  }
}
@media (max-width: 750px) {
  .below__menu {
    display: none;
  }
}
@media (min-width: 751px) {
  .below__menu .page__ul.pc__bottom {
    position: absolute;
    right: 0;
    bottom: -380rem;
  }
}
@media (min-width: 751px) {
  .below__menu .page__ul {
    display: flex;
    align-items: center;
  }
}
@media (max-width: 750px) {
  .below__menu .page__ul {
    position: fixed;
    left: -100%;
    width: 100%;
    height: 100%;
    text-align: center;
    top: 0;
    background: rgba(0, 0, 0, 0.7);
    box-sizing: border-box;
    z-index: 2;
    transition: 0.3s;
    padding: 120rem 60rem 30rem 60rem;
    z-index: 1000;
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    margin: 0;
  }
}
@media (max-width: 750px) {
  .below__menu .page__ul.on {
    left: 0;
    transition: 0.3s;
  }
}
.below__menu .page__ul li.li {
  position: relative;
}
.below__menu .page__ul li.li a, .below__menu .page__ul li.li p {
  display: block;
}
@media (max-width: 750px) {
  .below__menu .page__ul li.li a, .below__menu .page__ul li.li p {
    font-size: 28rem;
    border-bottom: 1px solid #fff;
    margin-bottom: 30rem;
    padding-bottom: 10rem;
  }
}
.below__menu .page__ul li.li .main__a {
  text-align: center;
  cursor: pointer;
}
@media (min-width: 751px) {
  .below__menu .page__ul li.li .main__a {
    font-size: 25rem;
    line-height: 1.5;
    margin-right: 50rem;
    display: inline-block;
  }
}
@media (max-width: 750px) {
  .below__menu .page__ul li.li .main__a {
    display: block;
    line-height: 1.5;
  }
}
.below__menu .page__ul li.li .main__a span {
  display: block;
}
@media (min-width: 751px) {
  .below__menu .page__ul li.li.is__active .main__a {
    position: relative;
  }
}
@media (min-width: 751px) {
  .below__menu .page__ul li.li.is__active .main__a:before {
    content: "";
    width: 38rem;
    height: 6rem;
    background: #fff;
    position: absolute;
    bottom: -35%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
}
@media (min-width: 751px) {
  .below__menu .page__ul li a {
    font-size: 25rem;
  }
}
.below__menu .page__ul nav {
  display: none;
}
@media (min-width: 751px) {
  .below__menu .page__ul nav .js__sub {
    padding: 30rem 20rem;
    position: absolute;
    right: 0;
    top: 55rem;
    z-index: 5;
    background: rgba(255, 255, 255, 0.95);
    display: flex;
    flex-wrap: wrap;
    width: 480rem;
    justify-content: space-between;
  }
}
@media (min-width: 751px) {
  .below__menu .page__ul nav .js__sub-a {
    width: 48%;
  }
}
.below__menu .page__ul nav .js__sub-a a {
  display: flex;
  align-items: center;
}
@media (min-width: 751px) {
  .below__menu .page__ul nav .js__sub-a a {
    font-size: 19rem;
    margin: 0 0 30rem;
    color: #262626;
    padding-left: 30rem;
    position: relative;
  }
}
@media (max-width: 750px) {
  .below__menu .page__ul nav .js__sub-a a {
    color: #fff;
  }
}
@media (min-width: 751px) {
  .below__menu .page__ul nav .js__sub-a a:nth-of-type(even) {
    margin: 0 0 30rem 50rem;
  }
}
.below__menu .page__ul nav .js__sub-a a:before {
  content: "";
  background-image: url(./images/common/js__sub__before.png);
  background-size: cover;
  background-repeat: no-repeat;
  width: 11rem;
  height: 17rem;
  margin-right: 10rem;
  position: absolute;
  left: 0;
  top: 2rem;
}

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

 トップページ(cvポイント)

************************/
.cmn__cv {
  background-image: url(./images/common/cmn__cv.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
}
@media (min-width: 751px) {
  .cmn__cv {
    height: 450rem;
    padding: 75rem 0;
  }
}
@media (max-width: 750px) {
  .cmn__cv {
    padding: 40rem 20rem;
  }
}
.cmn__cv_inner {
  background: rgba(72, 143, 155, 0.5);
  text-align: center;
}
@media (min-width: 751px) {
  .cmn__cv_inner {
    width: 1800rem;
    margin: 0 auto;
    padding: 20rem 40rem 30rem 40rem;
  }
}
@media (max-width: 750px) {
  .cmn__cv_inner {
    padding: 40rem 20rem;
  }
}
.cmn__cv_inner h2 {
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30rem;
}
@media (min-width: 751px) {
  .cmn__cv_inner h2 {
    font-size: 30rem;
  }
}
@media (max-width: 750px) {
  .cmn__cv_inner h2 {
    font-size: 42rem;
  }
}
.cmn__cv_inner h2:before {
  content: "";
  width: 130rem;
  height: 2px;
  background: #fff;
  display: inline-block;
  margin-right: 10rem;
}
.cmn__cv_inner h2:after {
  content: "";
  width: 130rem;
  height: 2px;
  background: #fff;
  display: inline-block;
  margin-left: 10rem;
}
.cmn__cv_inner .separate {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 750px) {
  .cmn__cv_inner .separate {
    flex-wrap: wrap;
  }
}
@media (max-width: 750px) {
  .cmn__cv_inner .separate a {
    width: 48%;
    margin-bottom: 15rem;
    display: flex;
  }
}
@media (min-width: 751px) {
  .cmn__cv_inner .separate a img {
    width: 300rem;
  }
}
@media (max-width: 750px) {
  .cmn__cv_inner .separate a img {
    width: 100%;
  }
}
@media (min-width: 751px) {
  .cmn__cv_inner .separate__right {
    width: 430rem;
  }
}
@media (max-width: 750px) {
  .cmn__cv_inner .separate__right {
    width: 100%;
  }
}
.cmn__cv_inner .separate__right dl {
  display: flex;
  align-items: center;
}
.cmn__cv_inner .separate__right dl dt {
  color: #fff;
  background: #ffcc00;
  padding: 15rem;
  border: 1px solid #948547;
}
@media (min-width: 751px) {
  .cmn__cv_inner .separate__right dl dt {
    font-size: 20rem;
    width: 113rem;
  }
}
@media (max-width: 750px) {
  .cmn__cv_inner .separate__right dl dt {
    width: 30%;
    font-size: 27rem;
  }
}
.cmn__cv_inner .separate__right dl dd {
  color: #333333;
  padding: 15rem;
  background: #fff;
}
@media (min-width: 751px) {
  .cmn__cv_inner .separate__right dl dd {
    font-size: 19rem;
    width: calc(100% - 113rem);
  }
}
@media (max-width: 750px) {
  .cmn__cv_inner .separate__right dl dd {
    width: 80%;
    font-size: 27rem;
  }
}
.cmn__cv_inner .separate__right p {
  margin-top: 10rem;
  color: #fff;
  margin-left: 10rem;
}
@media (min-width: 751px) {
  .cmn__cv_inner .separate__right p {
    font-size: 15rem;
  }
}
@media (max-width: 750px) {
  .cmn__cv_inner .separate__right p {
    font-size: 25rem;
  }
}

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

 トップページ(concept)

************************/
.concept {
  margin-top: 80rem;
  margin-bottom: 70rem;
}
.concept__inner {
  position: relative;
}
@media (min-width: 751px) {
  .concept__inner {
    width: 1800rem;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    min-height: 500rem;
  }
}
@media (max-width: 750px) {
  .concept__inner {
    min-height: 555rem;
    padding: 40rem;
  }
}
.concept__inner:after {
  content: "";
  position: absolute;
  background: rgba(0, 51, 51, 0.7);
}
@media (min-width: 751px) {
  .concept__inner:after {
    width: 946rem;
    height: 500rem;
    top: 0;
    right: 0;
    -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 35% 100%);
            clip-path: polygon(0 0, 100% 0, 100% 100%, 35% 100%);
  }
}
@media (max-width: 750px) {
  .concept__inner:after {
    -webkit-clip-path: polygon(65% 0, 100% 0, 100% 100%, 0 100%);
            clip-path: polygon(65% 0, 100% 0, 100% 100%, 0 100%);
    bottom: 0;
    right: 0;
    height: 555rem;
    width: 70%;
  }
}
.concept__inner img {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}
@media (min-width: 751px) {
  .concept__inner img {
    height: 500rem;
  }
}
@media (max-width: 750px) {
  .concept__inner img {
    -o-object-fit: cover;
       object-fit: cover;
    height: 555rem;
  }
}
@media (min-width: 751px) {
  .concept__inner_left {
    margin-right: 300rem;
    padding-top: 170rem;
  }
}
@media (max-width: 750px) {
  .concept__inner_left {
    text-align: center;
    position: relative;
    z-index: 2;
    margin-bottom: 40rem;
  }
}
.concept__inner_left h2 {
  color: #fff;
  line-height: 1;
  margin-bottom: 15rem;
}
@media (min-width: 751px) {
  .concept__inner_left h2 {
    font-size: 98rem;
  }
}
@media (max-width: 750px) {
  .concept__inner_left h2 {
    font-size: 80rem;
  }
}
.concept__inner_left p {
  color: #fff;
  line-height: 1;
}
@media (min-width: 751px) {
  .concept__inner_left p {
    font-size: 29rem;
    padding-left: 80rem;
  }
}
@media (max-width: 750px) {
  .concept__inner_left p {
    font-size: 28rem;
  }
}
.concept__inner_right {
  text-align: center;
  position: relative;
  z-index: 2;
}
@media (min-width: 751px) {
  .concept__inner_right {
    padding-top: 70rem;
  }
}
.concept__inner_right p {
  color: #fff;
  letter-spacing: 7rem;
  line-height: 1.75;
  margin-bottom: 30rem;
}
@media (min-width: 751px) {
  .concept__inner_right p {
    font-size: 52rem;
  }
}
@media (max-width: 750px) {
  .concept__inner_right p {
    font-size: 40rem;
  }
}
.concept__inner_right p span {
  display: inline-block;
}
@media (min-width: 751px) {
  .concept__inner_right p span:nth-of-type(1) {
    padding-left: 75rem;
  }
}
@media (min-width: 751px) {
  .concept__inner_right p span:nth-of-type(2) {
    padding-left: 130rem;
  }
}
.concept__inner_right a {
  color: #333333;
  background: #fff;
  padding: 15rem;
  display: inline-block;
  min-width: 326rem;
}
@media (min-width: 751px) {
  .concept__inner_right a {
    font-size: 25rem;
    margin-left: 160rem;
  }
}
@media (max-width: 750px) {
  .concept__inner_right a {
    font-size: 26rem;
  }
}

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

 トップページ(trouble)

************************/
.trouble {
  text-align: center;
  position: relative;
  margin-bottom: 190rem;
}
.trouble:before {
  content: "";
  position: absolute;
  left: 0;
  background: #fbb03b;
  z-index: -1;
}
@media (min-width: 751px) {
  .trouble:before {
    width: 69.635%;
    height: 492rem;
    top: 115rem;
  }
}
@media (max-width: 750px) {
  .trouble:before {
    width: 590rem;
    height: 492rem;
    top: 75rem;
  }
}
.trouble:after {
  content: "";
  position: absolute;
  right: 0;
  top: 150rem;
  background: #95c6ce;
  z-index: -2;
  width: 100%;
}
@media (min-width: 751px) {
  .trouble:after {
    height: 705rem;
  }
}
@media (max-width: 750px) {
  .trouble:after {
    height: 1145rem;
  }
}
.trouble__head {
  position: relative;
  z-index: 2;
}
.trouble__head h2 {
  color: #9ab237;
  line-height: 1;
  margin-bottom: 20rem;
}
@media (min-width: 751px) {
  .trouble__head h2 {
    font-size: 111rem;
  }
}
@media (max-width: 750px) {
  .trouble__head h2 {
    font-size: 70rem;
  }
}
.trouble__head p {
  color: #392c3f;
  margin-bottom: 30rem;
}
@media (min-width: 751px) {
  .trouble__head p {
    font-size: 45rem;
    margin-left: 50rem;
  }
}
@media (max-width: 750px) {
  .trouble__head p {
    font-size: 32rem;
  }
}
.trouble__inner {
  position: relative;
}
@media (min-width: 751px) {
  .trouble__inner {
    width: 1800rem;
    margin: 0 auto;
    display: flex;
  }
}
@media (max-width: 750px) {
  .trouble__inner {
    width: 90%;
    margin: 0 auto;
  }
}
.trouble__inner:before {
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  background-image: url(./images/top/trouble__before.png);
  width: 125rem;
  height: 171rem;
}
@media (min-width: 751px) {
  .trouble__inner:before {
    left: 30rem;
    top: -260rem;
  }
}
@media (max-width: 750px) {
  .trouble__inner:before {
    left: -10rem;
    top: -210rem;
  }
}
.trouble__inner:after {
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  background-image: url(./images/top/trouble__after.png);
  width: 98rem;
  height: 144rem;
}
@media (min-width: 751px) {
  .trouble__inner:after {
    right: 50rem;
    top: -140rem;
  }
}
@media (max-width: 750px) {
  .trouble__inner:after {
    right: 10rem;
    top: -190rem;
  }
}
.trouble__inner h3 {
  color: #392c3f;
  position: relative;
}
@media (min-width: 751px) {
  .trouble__inner h3 {
    font-size: 45rem;
    margin-bottom: 40rem;
  }
}
@media (max-width: 750px) {
  .trouble__inner h3 {
    font-size: 36rem;
    margin-bottom: 60rem;
  }
}
.trouble__inner h3:before {
  content: "";
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 0;
  top: 0;
}
.trouble__inner ul li {
  color: #392c3f;
  display: flex;
  align-items: center;
}
@media (min-width: 751px) {
  .trouble__inner ul li {
    font-size: 28rem;
  }
}
.trouble__inner ul li:not(:last-of-type) {
  margin-bottom: 30rem;
}
.trouble__inner ul li:before {
  background-size: contain;
  background-repeat: no-repeat;
  content: "";
  width: 38rem;
  height: 40rem;
  margin-right: 15rem;
}
.trouble__inner_left {
  background: #f3f1ea;
}
@media (min-width: 751px) {
  .trouble__inner_left {
    width: 50%;
    padding: 30rem 0 50rem 70rem;
  }
}
@media (max-width: 750px) {
  .trouble__inner_left {
    padding: 30rem 20rem;
  }
}
.trouble__inner_left h3:before {
  background-image: url(./images/top/tooth__before.png);
  width: 90rem;
  height: 84rem;
}
.trouble__inner_left ul li:before {
  background-image: url(./images/top/tooth__check.png);
}
.trouble__inner_right {
  background: #f3f1ea;
}
@media (min-width: 751px) {
  .trouble__inner_right {
    width: 50%;
    padding: 30rem 0 50rem 70rem;
  }
}
@media (max-width: 750px) {
  .trouble__inner_right {
    padding: 30rem 20rem;
  }
}
.trouble__inner_right h3:before {
  background-image: url(./images/top/implant__before.png);
  width: 40rem;
  height: 90rem;
  top: -12rem;
}
.trouble__inner_right ul li:before {
  background-image: url(./images/top/implant__check.png);
}

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

 トップページ(recommend)

************************/
.recommend {
  margin-bottom: 140rem;
  position: relative;
}
.recommend:before {
  content: "";
  -webkit-clip-path: polygon(50% 100%, 0 0, 100% 0);
          clip-path: polygon(50% 100%, 0 0, 100% 0);
  background: #488f9b;
  position: absolute;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
@media (min-width: 751px) {
  .recommend:before {
    width: 812rem;
    height: 84rem;
    top: -15%;
  }
}
@media (max-width: 750px) {
  .recommend:before {
    width: 406rem;
    height: 42rem;
    top: -8%;
  }
}
.recommend__head {
  text-align: center;
}
.recommend__head h2 {
  color: #000;
}
@media (min-width: 751px) {
  .recommend__head h2 {
    font-size: 42rem;
  }
}
@media (max-width: 750px) {
  .recommend__head h2 {
    font-size: 36rem;
  }
}
.recommend__head p {
  color: #ebe9de;
}
@media (min-width: 751px) {
  .recommend__head p {
    font-size: 100rem;
  }
}
@media (max-width: 750px) {
  .recommend__head p {
    font-size: 80rem;
  }
}
@media (min-width: 751px) {
  .recommend__inner {
    width: 1550rem;
    margin: 0 auto;
  }
}
@media (min-width: 751px) {
  .recommend__inner_separate {
    display: flex;
    justify-content: center;
  }
}
@media (max-width: 750px) {
  .recommend__inner_separate {
    text-align: center;
    margin-bottom: 40rem;
  }
}
.recommend__inner_separate img {
  height: 100%;
}
.recommend__inner_separate img:nth-of-type(1) {
  width: 437rem;
}
.recommend__inner_separate img:nth-of-type(2) {
  width: 300rem;
}
.recommend__inner_separate p {
  color: #000;
  text-align: center;
}
@media (min-width: 751px) {
  .recommend__inner_separate p {
    font-size: 51rem;
    margin: 0 30rem 50rem 0;
  }
}
@media (max-width: 750px) {
  .recommend__inner_separate p {
    font-size: 40rem;
    margin: 20rem 0;
  }
}
@media (min-width: 751px) {
  .recommend__inner_separate p span {
    font-size: 40rem;
  }
}
@media (max-width: 750px) {
  .recommend__inner_separate p span {
    font-size: 32rem;
  }
}
@media (min-width: 751px) {
  .recommend__inner_center {
    padding: 0 45rem;
  }
}
@media (max-width: 750px) {
  .recommend__inner_center {
    margin: 0 40rem;
    text-align: center;
  }
}
.recommend__inner_center p {
  font-size: 25rem;
  color: #000;
}

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

 トップページ(feature)

************************/
.feature {
  position: relative;
  padding: 100rem 0 60rem 0;
  margin-bottom: 160rem;
}
.feature:before {
  content: "";
  top: 0;
  left: 0;
  z-index: -1;
  position: absolute;
  background-image: url(./images/top/feature__before.png);
  background-size: contain;
  background-repeat: no-repeat;
}
@media (min-width: 751px) {
  .feature:before {
    width: 1000rem;
    height: 534rem;
  }
}
@media (max-width: 750px) {
  .feature:before {
    width: 500rem;
    height: 267rem;
  }
}
.feature:after {
  position: absolute;
  background: #f7f8d9;
  content: "";
  top: 50rem;
  right: 0;
  z-index: -2;
  width: 100%;
}
@media (min-width: 751px) {
  .feature:after {
    height: 500rem;
  }
}
@media (max-width: 750px) {
  .feature:after {
    height: 690rem;
  }
}
.feature__whole:after {
  content: "";
  bottom: 0;
  right: 0;
  z-index: -3;
  position: absolute;
  background-image: url(./images/top/feature__after.png);
  background-size: contain;
  background-repeat: no-repeat;
}
@media (min-width: 751px) {
  .feature__whole:after {
    width: 1000rem;
    height: 534rem;
  }
}
@media (max-width: 750px) {
  .feature__whole:after {
    width: 500rem;
    height: 267rem;
  }
}
.feature__head {
  text-align: center;
}
@media (max-width: 750px) {
  .feature__head {
    margin-bottom: 40rem;
  }
}
.feature__head h2 {
  color: #000;
}
@media (min-width: 751px) {
  .feature__head h2 {
    font-size: 42rem;
  }
}
@media (max-width: 750px) {
  .feature__head h2 {
    font-size: 36rem;
  }
}
.feature__head p {
  color: #9ab237;
  line-height: 1;
}
@media (min-width: 751px) {
  .feature__head p {
    font-size: 100rem;
  }
}
@media (max-width: 750px) {
  .feature__head p {
    font-size: 80rem;
  }
}
.feature__inner {
  position: relative;
}
@media (min-width: 751px) {
  .feature__inner {
    width: 1680rem;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
  }
}
@media (max-width: 750px) {
  .feature__inner {
    margin: 0 40rem;
  }
}
.feature__inner:before {
  content: "";
  position: absolute;
  background-image: url(./images/top/feature__mark.png);
  background-size: contain;
  background-repeat: no-repeat;
}
@media (min-width: 751px) {
  .feature__inner:before {
    width: 283rem;
    height: 210rem;
    top: -190rem;
    left: 0;
  }
}
@media (max-width: 750px) {
  .feature__inner:before {
    width: 141.5rem;
    height: 105rem;
    top: -120rem;
    left: -10rem;
  }
}
@media (max-width: 750px) {
  .feature__inner_content {
    margin-bottom: 45rem;
  }
}
.feature__inner_content .text {
  position: relative;
}
@media (min-width: 751px) {
  .feature__inner_content .text h3 {
    font-size: 30rem;
  }
}
.feature__inner_content .text h3:first-letter {
  color: #0066cc;
}
.feature__inner_content .text span {
  color: #ece6da;
  line-height: 1;
  position: absolute;
  z-index: -1;
}
@media (min-width: 751px) {
  .feature__inner_content .text span {
    font-size: 200rem;
  }
}
@media (min-width: 751px) {
  .feature__inner_content:not(:nth-of-type(1)) {
    width: 500rem;
  }
}
.feature__inner_content:not(:nth-of-type(1)) .text {
  margin-top: 20rem;
}
.feature__inner_content:not(:nth-of-type(1)) .text h3 {
  text-align: center;
  margin-bottom: 20rem;
}
@media (min-width: 751px) {
  .feature__inner_content:not(:nth-of-type(1)) .text h3 {
    font-size: 30rem;
  }
}
@media (min-width: 751px) {
  .feature__inner_content:not(:nth-of-type(1)) .text p {
    font-size: 23rem;
  }
}
@media (min-width: 751px) {
  .feature__inner_content:not(:nth-of-type(1)) .text span {
    right: 0;
    top: -25rem;
  }
}
@media (min-width: 751px) {
  .feature__inner_content:nth-of-type(3) {
    margin: 0 85rem;
  }
}
@media (min-width: 751px) {
  .feature__inner_content:nth-of-type(1) {
    flex-direction: row-reverse;
    display: flex;
    justify-content: space-between;
    margin-bottom: 140rem;
    width: 100%;
  }
}
@media (min-width: 751px) {
  .feature__inner_content:nth-of-type(1) .text {
    width: 760rem;
    margin-top: 60rem;
  }
}
.feature__inner_content:nth-of-type(1) .text h3 {
  font-weight: 500;
  color: #000000;
}
@media (min-width: 751px) {
  .feature__inner_content:nth-of-type(1) .text h3 {
    font-size: 51rem;
    margin-bottom: 50rem;
  }
}
@media (max-width: 750px) {
  .feature__inner_content:nth-of-type(1) .text h3 {
    font-size: 40rem;
    margin-bottom: 30rem;
  }
}
.feature__inner_content:nth-of-type(1) .text p {
  color: #000000;
}
@media (min-width: 751px) {
  .feature__inner_content:nth-of-type(1) .text p {
    font-size: 25rem;
  }
}
@media (max-width: 750px) {
  .feature__inner_content:nth-of-type(1) .text p {
    font-size: 26rem;
  }
}
@media (min-width: 751px) {
  .feature__inner_content:nth-of-type(1) .text span {
    right: 0;
    bottom: -60rem;
  }
}
.feature__inner_content:nth-of-type(1) .img {
  display: flex;
}
@media (min-width: 751px) {
  .feature__inner_content:nth-of-type(1) .img {
    width: 860rem;
  }
}
@media (max-width: 750px) {
  .feature__inner_content:nth-of-type(1) .img {
    justify-content: space-between;
    margin-bottom: 30rem;
  }
}
.feature__inner_content:nth-of-type(1) .img img {
  height: 100%;
}
@media (min-width: 751px) {
  .feature__inner_content:nth-of-type(1) .img img {
    width: 400rem;
  }
}
@media (max-width: 750px) {
  .feature__inner_content:nth-of-type(1) .img img {
    width: 48%;
  }
}
@media (min-width: 751px) {
  .feature__inner_content:nth-of-type(1) .img img:nth-of-type(1) {
    margin: 50rem 40rem 0 0;
  }
}

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

 トップページ(youtube)

************************/
.youtube {
  background: #c8d8d9;
}
@media (min-width: 751px) {
  .youtube {
    padding: 40rem 0 50rem;
  }
}
@media (max-width: 750px) {
  .youtube {
    padding: 40rem;
  }
}
@media (min-width: 751px) {
  .youtube__inner {
    width: 1550rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
  }
}
.youtube__inner_left {
  position: relative;
}
@media (min-width: 751px) {
  .youtube__inner_left {
    width: 970rem;
    margin-top: 40rem;
  }
}
.youtube__inner_left:after {
  content: "";
  position: absolute;
  background-image: url(./images/top/youtube__mark.png);
  background-size: contain;
  background-repeat: no-repeat;
}
@media (min-width: 751px) {
  .youtube__inner_left:after {
    width: 100rem;
    height: 147rem;
    bottom: 0rem;
    right: -40rem;
  }
}
@media (max-width: 750px) {
  .youtube__inner_left:after {
    width: 100rem;
    height: 147rem;
    bottom: -120rem;
    right: 0;
  }
}
.youtube__inner_left h2 {
  font-size: 35rem;
  font-weight: 500;
  margin-bottom: 40rem;
}
@media (max-width: 750px) {
  .youtube__inner_left h2 {
    text-align: center;
    position: relative;
  }
}
.youtube__inner_left h2:before {
  content: "＼";
  display: inline-block;
  color: #333;
}
@media (min-width: 751px) {
  .youtube__inner_left h2:before {
    margin-right: 3rem;
  }
}
@media (max-width: 750px) {
  .youtube__inner_left h2:before {
    position: absolute;
    left: -10rem;
    top: 3rem;
    font-size: 60rem;
  }
}
.youtube__inner_left h2:after {
  content: "／";
  display: inline-block;
  color: #333;
}
@media (min-width: 751px) {
  .youtube__inner_left h2:after {
    margin-left: 3rem;
  }
}
@media (max-width: 750px) {
  .youtube__inner_left h2:after {
    position: absolute;
    right: -10rem;
    top: 3rem;
    font-size: 60rem;
  }
}
.youtube__inner_left h2 span {
  font-weight: 500;
  color: #0066cc;
}
@media (min-width: 751px) {
  .youtube__inner_left p {
    font-size: 23rem;
  }
}
@media (max-width: 750px) {
  .youtube__inner_left p {
    margin-bottom: 140rem;
  }
}
.youtube__inner_right {
  position: relative;
}
@media (min-width: 751px) {
  .youtube__inner_right {
    width: 500rem;
  }
}
.youtube__inner_right:after {
  content: "";
  position: absolute;
  background-image: url(./images/top/youtube__after.png);
  background-size: contain;
  background-repeat: no-repeat;
}
@media (min-width: 751px) {
  .youtube__inner_right:after {
    width: 189rem;
    height: 103rem;
    top: -120rem;
    right: -90rem;
  }
}
@media (max-width: 750px) {
  .youtube__inner_right:after {
    width: 189rem;
    height: 103rem;
    top: -690rem;
    right: 0;
  }
}
.youtube__inner_right iframe {
  width: 100%;
  display: flex;
  border-radius: 10rem 10rem 0 0;
}
@media (min-width: 751px) {
  .youtube__inner_right iframe {
    height: 280rem;
  }
}
.youtube__inner_right a {
  background: #392c3f;
  color: #fff;
  text-align: center;
  padding: 14rem 0;
  display: block;
}
@media (min-width: 751px) {
  .youtube__inner_right a {
    font-size: 24rem;
  }
}

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

 トップページ(mouse)

************************/
.mouse__content {
  position: relative;
}
.mouse__content:before {
  position: absolute;
  content: "";
  background-size: cover;
  width: 100%;
  top: 0;
  left: 0;
  z-index: -1;
}
@media (max-width: 750px) {
  .mouse__content {
    padding: 70rem 40rem 0;
  }
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(1) {
    padding: 200rem 0 0 0;
  }
}
.mouse__content:nth-of-type(1):before {
  background-image: url(./images/top/mouse__bg1.jpg);
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(1):before {
    height: 1538rem;
  }
}
@media (max-width: 750px) {
  .mouse__content:nth-of-type(1):before {
    height: 1538rem;
    background-position: right;
  }
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(1) .mouse__content_head .left {
    padding: 30rem 100rem 30rem 70rem;
  }
}
@media (max-width: 750px) {
  .mouse__content:nth-of-type(1) .mouse__content_head .left {
    padding: 40rem 20rem 220rem 20rem;
  }
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(1) .mouse__content_head .right {
    margin-left: 15rem;
  }
}
.mouse__content:nth-of-type(1) h2:first-letter {
  color: #ec6a47;
}
.mouse__content:nth-of-type(1) .mouse__content_head .left {
  position: relative;
}
.mouse__content:nth-of-type(1) .mouse__content_head .left:after {
  content: "";
  background-image: url(./images/top/mouse1__after.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 299rem;
  height: 205rem;
  position: absolute;
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(1) .mouse__content_head .left:after {
    right: -210rem;
    bottom: 100rem;
  }
}
@media (max-width: 750px) {
  .mouse__content:nth-of-type(1) .mouse__content_head .left:after {
    right: 180rem;
  }
}
.mouse__content:nth-of-type(1) .mouse__content_bnr a:nth-of-type(odd) h3 {
  background: #d997ab;
}
.mouse__content:nth-of-type(1) .mouse__content_bnr a:nth-of-type(even) h3 {
  background: #ecb68b;
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(2) {
    padding: 140rem 0 0 0;
  }
}
.mouse__content:nth-of-type(2):before {
  background-image: url(./images/top/mouse__bg2.jpg);
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(2):before {
    height: 1462rem;
  }
}
@media (max-width: 750px) {
  .mouse__content:nth-of-type(2):before {
    height: 1462rem;
  }
}
.mouse__content:nth-of-type(2) h2:first-letter {
  color: #0099cc;
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(2) .mouse__content_head {
    flex-direction: row-reverse;
  }
}
.mouse__content:nth-of-type(2) .mouse__content_head .left {
  position: relative;
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(2) .mouse__content_head .left {
    padding: 45rem 15rem 60rem 30rem;
  }
}
@media (max-width: 750px) {
  .mouse__content:nth-of-type(2) .mouse__content_head .left {
    padding: 40rem 20rem 160rem 20rem;
  }
}
@media (max-width: 750px) {
  .mouse__content:nth-of-type(2) .mouse__content_head .left h2 {
    font-size: 60rem;
  }
}
.mouse__content:nth-of-type(2) .mouse__content_head .left:after {
  content: "";
  background-image: url(./images/top/mouse2__after.png);
  background-size: contain;
  background-repeat: no-repeat;
  width: 150rem;
  height: 116rem;
  position: absolute;
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(2) .mouse__content_head .left:after {
    right: 30rem;
    top: 20rem;
  }
}
@media (max-width: 750px) {
  .mouse__content:nth-of-type(2) .mouse__content_head .left:after {
    right: 260rem;
    bottom: 20rem;
  }
}
.mouse__content:nth-of-type(2) .mouse__content_head .left small {
  margin-bottom: 40rem;
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(2) .mouse__content_head .left__text {
    font-size: 45rem;
  }
}
.mouse__content:nth-of-type(2) .mouse__content_head .left__text span {
  color: #0099cc;
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(2) .mouse__content_head .right {
    margin-right: 70rem;
  }
}
.mouse__content:nth-of-type(2) .mouse__content_head .right a {
  background: #003366;
}
@media (min-width: 751px) {
  .mouse__content:nth-of-type(2) .mouse__content_separate {
    flex-direction: row-reverse;
  }
}
.mouse__content:nth-of-type(2) .mouse__content_bnr a:nth-of-type(odd) h3 {
  background: #8cc6ff;
}
.mouse__content:nth-of-type(2) .mouse__content_bnr a:nth-of-type(even) h3 {
  background: #0057ae;
}
@media (min-width: 751px) {
  .mouse__content_head {
    width: 1680rem;
    margin: 0 auto 70rem;
    display: flex;
    align-items: flex-end;
  }
}
@media (min-width: 751px) {
  .mouse__content_head .left {
    width: 787rem;
    background: #fff;
  }
}
@media (max-width: 750px) {
  .mouse__content_head .left {
    background: rgba(255, 255, 255, 0.7);
    margin-bottom: 30rem;
  }
}
.mouse__content_head .left small {
  text-align: center;
  color: #2e2002;
}
@media (min-width: 751px) {
  .mouse__content_head .left small {
    font-size: 30rem;
  }
}
@media (max-width: 750px) {
  .mouse__content_head .left small {
    font-size: 30rem;
  }
}
.mouse__content_head .left h2 {
  color: #2e2002;
  margin-bottom: 20rem;
  text-align: center;
}
@media (min-width: 751px) {
  .mouse__content_head .left h2 {
    font-size: 65rem;
    white-space: nowrap;
  }
}
@media (max-width: 750px) {
  .mouse__content_head .left h2 {
    font-size: 65rem;
  }
}
.mouse__content_head .left__text {
  color: #2e2002;
  text-align: center;
  margin-bottom: 20rem;
}
@media (min-width: 751px) {
  .mouse__content_head .left__text {
    font-size: 35rem;
  }
}
@media (max-width: 750px) {
  .mouse__content_head .left__text {
    font-size: 35rem;
  }
}
@media (min-width: 751px) {
  .mouse__content_head .left__text span {
    font-size: 45rem;
  }
}
@media (max-width: 750px) {
  .mouse__content_head .left__text span {
    font-size: 45rem;
  }
}
.mouse__content_head .left__text span:nth-of-type(2) {
  color: #ec6a47;
}
.mouse__content_head .left__honbun {
  color: #2e2002;
}
@media (min-width: 751px) {
  .mouse__content_head .left__honbun {
    font-size: 23rem;
  }
}
@media (max-width: 750px) {
  .mouse__content_head .right {
    display: flex;
    justify-content: center;
    margin-bottom: 30rem;
  }
}
.mouse__content_head .right a {
  color: #fff;
  background: #392c3f;
  padding: 13rem;
  display: inline-block;
  text-align: center;
}
@media (min-width: 751px) {
  .mouse__content_head .right a {
    font-size: 25rem;
    width: 352rem;
  }
}
@media (max-width: 750px) {
  .mouse__content_head .right a {
    font-size: 26rem;
    width: 300rem;
  }
}
@media (min-width: 751px) {
  .mouse__content_head .right a:nth-of-type(2) {
    margin-left: 70rem;
  }
}
@media (max-width: 750px) {
  .mouse__content_head .right a:nth-of-type(2) {
    margin-left: 15rem;
  }
}
@media (min-width: 751px) {
  .mouse__content_separate {
    width: 1680rem;
    margin: 0 auto 80rem;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
@media (max-width: 750px) {
  .mouse__content_separate {
    margin-bottom: 30rem;
  }
}
.mouse__content_separate a {
  display: inline-block;
}
@media (max-width: 750px) {
  .mouse__content_separate a {
    margin-bottom: 30rem;
  }
}
@media (min-width: 751px) {
  .mouse__content_separate a img {
    width: 714rem;
  }
}
@media (min-width: 751px) {
  .mouse__content_separate .img {
    width: 948rem;
  }
}
.mouse__content_bnr {
  display: flex;
}
@media (max-width: 750px) {
  .mouse__content_bnr {
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media (min-width: 751px) {
  .mouse__content_bnr {
    width: 1680rem;
    margin: 0 auto 90rem;
  }
}
.mouse__content_bnr a {
  display: block;
}
@media (min-width: 751px) {
  .mouse__content_bnr a {
    width: 410rem;
  }
}
@media (max-width: 750px) {
  .mouse__content_bnr a {
    width: 48%;
    margin-bottom: 30rem;
  }
}
.mouse__content_bnr a img {
  width: 100%;
  display: flex;
}
.mouse__content_bnr a h3 {
  color: #fff;
  text-align: center;
  line-height: 1.25;
}
@media (min-width: 751px) {
  .mouse__content_bnr a h3 {
    font-size: 29rem;
    padding: 12rem 0;
  }
}
@media (max-width: 750px) {
  .mouse__content_bnr a h3 {
    font-size: 28rem;
    padding: 20rem 0;
  }
}
.mouse__content_bnr a h3 span {
  line-height: 1;
}
@media (min-width: 751px) {
  .mouse__content_bnr a h3 span {
    font-size: 15rem;
  }
}
@media (max-width: 750px) {
  .mouse__content_bnr a h3 span {
    font-size: 24rem;
  }
}

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

 トップページ(blog)

************************/
.cmn__recruit_left {
  background: #ede9e3;
}
@media (min-width: 751px) {
  .cmn__recruit_left {
    width: 50%;
    padding: 100rem 80rem;
  }
}
@media (max-width: 750px) {
  .cmn__recruit_left {
    padding: 40rem;
  }
}
.cmn__recruit_left .head1 {
  display: flex;
  justify-content: flex-end;
}
.cmn__recruit_left .head1__left {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  width: calc(100% - 500rem);
}
.cmn__recruit_left .head1__left h2 {
  writing-mode: vertical-rl;
  color: #000;
}
.cmn__recruit_left .head1__left span {
  writing-mode: vertical-rl;
  color: #cc9900;
}
.cmn__recruit_left .head1 img {
  width: 500rem;
}
.cmn__recruit_left .head2 {
  margin-bottom: 45rem;
}
@media (max-width: 750px) {
  .cmn__recruit_left .head2 {
    display: flex;
  }
}
@media (min-width: 751px) {
  .cmn__recruit_left .head2 img {
    width: 258rem;
  }
}
@media (max-width: 750px) {
  .cmn__recruit_left .head2 img {
    width: 33.3333333333%;
  }
}
.cmn__recruit_left p {
  color: #000000;
  margin-bottom: 50rem;
}
.cmn__recruit_left .btn {
  display: flex;
  justify-content: space-between;
}
.cmn__recruit_left .btn a {
  display: block;
  color: #fff;
  position: relative;
  padding: 23rem;
  text-align: center;
  font-size: 25rem;
}
@media (min-width: 751px) {
  .cmn__recruit_left .btn a {
    width: 358rem;
  }
}
@media (max-width: 750px) {
  .cmn__recruit_left .btn a {
    width: 315rem;
  }
}
.cmn__recruit_left .btn a:nth-of-type(1) {
  background: #22ba4f;
}
.cmn__recruit_left .btn a:nth-of-type(2) {
  background: #fea39c;
}
@media (min-width: 751px) {
  .cmn__recruit_right {
    width: 50%;
    padding: 100rem 80rem;
  }
}
@media (max-width: 750px) {
  .cmn__recruit_right {
    padding: 40rem;
  }
}
.cmn__recruit_right .head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 50rem;
}
.cmn__recruit_right .head h2 {
  display: flex;
  align-items: center;
}
.cmn__recruit_right .head h2 span {
  margin-right: 45rem;
}
.cmn__recruit_right .head a {
  background: #ff9900;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 150rem;
  height: 43rem;
}

@media (min-width: 751px) {
  .blog {
    display: flex;
    justify-content: space-between;
  }
}
.blog .head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 40rem;
}
.blog .head span {
  color: #000;
  line-height: 1;
  font-family: "游明朝";
}
.blog .head h2 {
  color: #000;
  line-height: 1;
  font-family: "游ゴシック";
}
.blog .content {
  margin-bottom: 30rem;
}
.blog .content a {
  display: flex;
}
.blog .content a:not(:last-of-type) {
  margin-bottom: 30rem;
}
.blog .content a .left {
  margin-right: 40rem;
}
.blog .content a .left img {
  width: 180rem;
  height: 180rem;
  -o-object-fit: contain;
     object-fit: contain;
}
.blog .content a .right {
  margin-top: 10rem;
}
@media (min-width: 751px) {
  .blog .content a .right {
    width: 500rem;
  }
}
@media (max-width: 750px) {
  .blog .content a .right {
    width: 450rem;
  }
}
.blog .content a .right time {
  display: block;
  line-height: 1;
  margin-bottom: 15rem;
}
@media (max-width: 750px) {
  .blog .content a .right h3 {
    font-size: 30rem;
  }
}
.blog .content span {
  color: #e1da87;
}
.blog__left {
  background: #faf8f5;
}
@media (min-width: 751px) {
  .blog__left {
    width: 50%;
    padding: 85rem 30rem 100rem calc((100% - 1500rem) / 2);
  }
}
@media (max-width: 750px) {
  .blog__left {
    padding: 40rem;
  }
}
.blog__left .head a {
  background: #595857;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 150rem;
  height: 43rem;
}
.blog__right {
  background: #f1ece6;
}
@media (min-width: 751px) {
  .blog__right {
    width: 50%;
    padding: 85rem calc((100% - 1500rem) / 2) 100rem 30rem;
  }
}
@media (max-width: 750px) {
  .blog__right {
    padding: 40rem;
  }
}
.blog__right .head a {
  background: #595857;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 150rem;
  height: 43rem;
}
@media (min-width: 751px) {
  .blog__news {
    width: 50%;
    padding: 85rem 30rem 100rem calc((100% - 1500rem) / 2);
  }
}
@media (max-width: 750px) {
  .blog__news {
    padding: 40rem;
  }
}
.blog__news .head a {
  background: #ffcc00;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 150rem;
  height: 43rem;
}
@media (min-width: 751px) {
  .blog__calendar {
    width: 50%;
    padding: 85rem calc((100% - 1500rem) / 2) 100rem 30rem;
  }
}

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

トップページ　医院紹介ブロック

************************/
.clinic {
  position: relative;
}
.clinic__head {
  position: absolute;
  text-align: center;
}
@media (min-width: 751px) {
  .clinic__head {
    left: 45rem;
    top: -20rem;
  }
}
@media (max-width: 750px) {
  .clinic__head {
    left: 30rem;
    top: -40rem;
  }
}
@media (min-width: 751px) {
  .clinic__head img {
    width: 500rem;
    height: 502rem;
  }
}
@media (max-width: 750px) {
  .clinic__head img {
    width: 250rem;
    height: 251rem;
  }
}
@media (min-width: 751px) {
  .clinic__content {
    margin-bottom: 120rem;
  }
}
@media (max-width: 750px) {
  .clinic__content {
    margin: 0 40rem 60rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media (min-width: 751px) {
  .clinic__content img {
    width: 24.2%;
  }
}
@media (max-width: 750px) {
  .clinic__content img {
    width: 23%;
    margin-bottom: 15rem;
  }
}

@media (max-width: 750px) {
  .shinryo {
    padding: 0 40rem;
  }
}
@media (min-width: 751px) {
  .shinryo__separate {
    width: 1690rem;
    display: flex;
    justify-content: space-between;
    margin: 0 auto 40rem;
  }
}
@media (min-width: 751px) {
  .shinryo__separate_right {
    width: 740rem;
  }
}
@media (max-width: 750px) {
  .shinryo__separate_right {
    margin-bottom: 45rem;
  }
}
.shinryo__separate_right dl {
  display: flex;
  justify-content: space-between;
  margin-bottom: 15rem;
}
.shinryo__separate_right dl dt {
  color: #000;
}
@media (min-width: 751px) {
  .shinryo__separate_right dl dt {
    width: 170rem;
    font-size: 25rem;
  }
}
@media (max-width: 750px) {
  .shinryo__separate_right dl dt {
    width: 25%;
    font-size: 30rem;
  }
}
.shinryo__separate_right dl dd {
  color: #000;
}
@media (min-width: 751px) {
  .shinryo__separate_right dl dd {
    width: 570rem;
    font-size: 25rem;
  }
}
@media (max-width: 750px) {
  .shinryo__separate_right dl dd {
    width: 70%;
    font-size: 30rem;
  }
}
@media (min-width: 751px) {
  .shinryo__separate_left {
    width: 810rem;
  }
}
.shinryo__separate_left table {
  margin-bottom: 15rem;
}
.shinryo__separate_left table tr:first-of-type th,
.shinryo__separate_left table tr:first-of-type td {
  background: #0057ae;
  color: #fff;
}
.shinryo__separate_left table tr:not(:first-of-type) th,
.shinryo__separate_left table tr:not(:first-of-type) td {
  color: #333333;
}
.shinryo__separate_left table tr th {
  text-align: center;
  background: #fff;
}
@media (min-width: 751px) {
  .shinryo__separate_left table tr th {
    font-size: 30rem;
    width: 200rem;
    padding: 10rem 0;
  }
}
@media (max-width: 750px) {
  .shinryo__separate_left table tr th {
    width: 20%;
    font-size: 26rem;
    padding: 10rem 0;
  }
}
.shinryo__separate_left table tr td {
  text-align: center;
  width: calc(14.2857142857% - 20rem);
  background: #fff;
}
@media (min-width: 751px) {
  .shinryo__separate_left table tr td {
    font-size: 30rem;
    padding: 10rem 5rem;
  }
}
@media (max-width: 750px) {
  .shinryo__separate_left table tr td {
    padding: 10rem 0;
    font-size: 26rem;
    vertical-align: middle;
    text-align: center;
  }
}
.shinryo__separate_left table tr td.color {
  color: #009999;
}
.shinryo__separate_left p {
  line-height: 1.5;
  color: #000;
}
@media (min-width: 751px) {
  .shinryo__separate_left p {
    margin: 40rem 0 0 0;
    font-size: 25rem;
    white-space: nowrap;
  }
}
@media (max-width: 750px) {
  .shinryo__separate_left p {
    font-size: 26rem;
    margin: 40rem 0;
  }
}

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

  共通ブロック(インスタ)

************************/
@media (min-width: 751px) {
  .cmn__insta_inner {
    width: 1680rem;
    margin: 0 auto 70rem;
  }
}
@media (max-width: 750px) {
  .cmn__insta_inner {
    margin: 0 40rem 70rem;
  }
}
@media (min-width: 751px) {
  .cmn__insta .img {
    width: 50rem;
  }
}
.cmn__insta h2 {
  color: #000;
}

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

  共通ブロック(地図)

************************/
.cmn__map iframe {
  width: 100%;
  height: 580rem;
}

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

  共通ブロック(フッター)

************************/
@media (max-width: 750px) {
  .sp__cv {
    position: fixed;
    bottom: 0;
    left: 0;
    display: flex;
    justify-content: space-between;
    padding: 10rem 20rem;
    background: #91b7bc;
    z-index: 10;
  }
  .sp__cv li {
    width: 24%;
  }
  .sp__cv li a {
    width: 100%;
    display: block;
  }
  .sp__cv li a img {
    width: 100%;
  }
}
.fix-right {
  position: fixed;
  width: 73.5rem;
  height: 64.5rem;
  z-index: 5000;
  opacity: 1;
}
@media (min-width: 751px) {
  .fix-right {
    bottom: 190rem;
    right: 30rem;
  }
}
@media (max-width: 750px) {
  .fix-right {
    right: 20rem;
    bottom: 370rem;
  }
}
.fix-right.on {
  opacity: 0;
}

.footer {
  background: #488f9b;
}
@media (max-width: 750px) {
  .footer {
    padding-bottom: 180rem;
  }
}
.footer small {
  background: #595857;
  padding: 10rem 0;
}

@media (min-width: 751px) {
  .cmn__sitemap {
    width: 1620rem;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 50rem 0;
  }
}
@media (max-width: 750px) {
  .cmn__sitemap {
    margin: 0 40rem;
    padding: 50rem 0;
  }
}
@media (min-width: 751px) {
  .cmn__sitemap .left {
    display: flex;
    justify-content: space-between;
  }
}
@media (min-width: 751px) {
  .cmn__sitemap .left__one, .cmn__sitemap .left__second {
    width: 365rem;
  }
}
.cmn__sitemap .left__one span, .cmn__sitemap .left__second span {
  display: inline-block;
  margin-bottom: 20rem;
}
@media (min-width: 751px) {
  .cmn__sitemap .left__one span, .cmn__sitemap .left__second span {
    font-size: 25rem;
  }
}
@media (max-width: 750px) {
  .cmn__sitemap .left__one span, .cmn__sitemap .left__second span {
    font-size: 28rem;
  }
}
.cmn__sitemap .left__one ul, .cmn__sitemap .left__second ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
.cmn__sitemap .left__one ul li, .cmn__sitemap .left__second ul li {
  width: 48%;
}
.cmn__sitemap .left__one ul li a, .cmn__sitemap .left__second ul li a {
  display: flex;
  align-items: center;
}
@media (min-width: 751px) {
  .cmn__sitemap .left__one ul li a, .cmn__sitemap .left__second ul li a {
    font-size: 19rem;
    margin-bottom: 15rem;
  }
}
@media (max-width: 750px) {
  .cmn__sitemap .left__one ul li a, .cmn__sitemap .left__second ul li a {
    font-size: 26rem;
    margin-bottom: 20rem;
  }
}
.cmn__sitemap .left__one ul li a:before, .cmn__sitemap .left__second ul li a:before {
  content: "-";
  display: inline-block;
  margin-right: 3rem;
}
@media (min-width: 751px) {
  .cmn__sitemap .left__second {
    margin-left: 10rem;
    margin-right: 40rem;
  }
}
@media (max-width: 750px) {
  .cmn__sitemap .left__second {
    margin-top: 40rem;
    margin-bottom: 40rem;
  }
}
.cmn__sitemap .right {
  display: flex;
  flex-wrap: wrap;
}
@media (max-width: 750px) {
  .cmn__sitemap .right {
    justify-content: space-between;
  }
}
.cmn__sitemap .right a {
  display: block;
  margin: 0 0 15rem;
}
@media (min-width: 751px) {
  .cmn__sitemap .right a:nth-of-type(3n+2) {
    margin: 0 34rem 15rem;
  }
}
@media (max-width: 750px) {
  .cmn__sitemap .right a {
    width: 48%;
  }
}
@media (min-width: 751px) {
  .cmn__sitemap .right a img {
    width: 240rem;
  }
}
@media (max-width: 750px) {
  .cmn__sitemap .right a img {
    width: 100%;
  }
}

.float__chat {
  position: fixed;
  right: 0;
  cursor: pointer;
}
@media (min-width: 751px) {
  .float__chat {
    bottom: 30rem;
  }
}
@media (max-width: 750px) {
  .float__chat {
    bottom: 180rem;
    right: 20rem;
  }
}
@media (min-width: 751px) {
  .float__chat img {
    width: 390rem;
  }
}
@media (max-width: 750px) {
  .float__chat img {
    width: 400rem;
  }
}

.float__chat_btn {
  position: fixed;
  left: -100%;
  width: 100%;
  height: 100%;
  text-align: center;
  top: 0;
  background: rgba(103, 103, 103, 0.73);
  box-sizing: border-box;
  z-index: 2;
  transition: 0.3s;
  z-index: 1000;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
  margin: 0;
}
.float__chat_btn.on {
  left: 0;
  transition: 0.3s;
}
.float__chat_btn .content {
  background: #fff;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
@media (min-width: 751px) {
  .float__chat_btn .content {
    width: 400rem;
    padding: 30rem 20rem;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content {
    width: 670rem;
    padding: 46rem 35rem;
  }
}
.float__chat_btn .content__float {
  position: absolute;
  right: -30rem;
  top: -30rem;
  z-index: 3;
}
@media (min-width: 751px) {
  .float__chat_btn .content__float {
    width: 61rem;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content__float {
    width: 68rem;
  }
}
.float__chat_btn .content p {
  font-weight: 700;
  line-height: 1.5;
}
.float__chat_btn .content p:nth-of-type(1) {
  color: #0259A9;
  position: relative;
}
@media (min-width: 751px) {
  .float__chat_btn .content p:nth-of-type(1) {
    font-size: 22rem;
    margin-bottom: 20rem;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content p:nth-of-type(1) {
    font-size: 36rem;
    margin-bottom: 30rem;
  }
}
.float__chat_btn .content p:nth-of-type(1):after {
  content: "";
  height: 1px;
  position: absolute;
  background: #0259A9;
  left: 50%;
  transform: translate(-50%, -50%);
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
}
@media (min-width: 751px) {
  .float__chat_btn .content p:nth-of-type(1):after {
    bottom: -7rem;
    width: 300rem;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content p:nth-of-type(1):after {
    bottom: -10rem;
    width: 500rem;
  }
}
.float__chat_btn .content p:nth-of-type(2) {
  color: #333333;
}
@media (min-width: 751px) {
  .float__chat_btn .content p:nth-of-type(2) {
    font-size: 18rem;
    margin-bottom: 20rem;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content p:nth-of-type(2) {
    font-size: 31rem;
    margin-bottom: 30rem;
  }
}
.float__chat_btn .content button {
  background: #0259A9;
  color: #fff;
  font-weight: 700;
  border: none;
  cursor: pointer;
  position: relative;
}
@media (min-width: 751px) {
  .float__chat_btn .content button {
    font-size: 22rem;
    padding: 11.5rem 49rem;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content button {
    font-size: 28rem;
    padding: 20rem 60rem;
  }
}
.float__chat_btn .content button:before {
  content: "";
  background-image: url(./images/top/chat__before.svg);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
}
@media (min-width: 751px) {
  .float__chat_btn .content button:before {
    width: 25rem;
    height: 25rem;
    top: 15rem;
    left: 15rem;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content button:before {
    width: 35rem;
    height: 35rem;
    top: 23rem;
    left: 15rem;
  }
}
.float__chat_btn .content button:after {
  content: "";
  background-image: url(./images/top/chat__after.svg);
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
}
@media (min-width: 751px) {
  .float__chat_btn .content button:after {
    width: 29rem;
    height: 29rem;
    top: 15rem;
    right: 8rem;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content button:after {
    width: 39rem;
    height: 39rem;
    top: 22rem;
    right: 11rem;
  }
}
.float__chat_btn .content table {
  margin-top: 20rem;
}
.float__chat_btn .content table tr:first-of-type th,
.float__chat_btn .content table tr:first-of-type td {
  background: #0057ae;
  color: #fff;
}
.float__chat_btn .content table tr:not(:first-of-type) th,
.float__chat_btn .content table tr:not(:first-of-type) td {
  color: #333333;
}
.float__chat_btn .content table tr th {
  text-align: center;
  background: #fff;
}
@media (min-width: 751px) {
  .float__chat_btn .content table tr th {
    font-size: 18rem;
    width: 130rem;
    padding: 5rem 0;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content table tr th {
    width: 30%;
    font-size: 24rem;
    padding: 10rem 0;
  }
}
.float__chat_btn .content table tr td {
  text-align: center;
  background: #fff;
}
@media (min-width: 751px) {
  .float__chat_btn .content table tr td {
    font-size: 18rem;
    padding: 5rem 5rem;
    width: calc(14.2857142857% - 130rem);
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content table tr td {
    padding: 10rem 0;
    font-size: 24rem;
    vertical-align: middle;
    text-align: center;
    width: -15.7142857143%;
  }
}
.float__chat_btn .content table tr td.color {
  color: #009999;
}
.float__chat_btn .content li {
  line-height: 1.5;
  color: #000;
  text-align: left;
}
@media (min-width: 751px) {
  .float__chat_btn .content li {
    margin: 20rem 0 0 0;
    font-size: 14rem;
  }
}
@media (max-width: 750px) {
  .float__chat_btn .content li {
    font-size: 24rem;
    margin: 30rem 0 0;
  }
}

@media (min-width: 751px) {
  .cmn__bnr3 {
    width: 1440rem;
    margin: 0 auto;
    padding-top: 80rem;
  }
}
@media (max-width: 750px) {
  .cmn__bnr3 {
    margin: 0 40rem;
    padding-top: 40rem;
  }
}
.cmn__bnr3 a {
  display: block;
  margin-bottom: 30rem;
}
.cmn__bnr3 a img {
  width: 100%;
}

.top__news {
  background: #f3f7eb;
}
@media (min-width: 751px) {
  .top__news {
    padding: 60rem 0;
  }
}
@media (max-width: 750px) {
  .top__news {
    padding: 60rem 40rem;
  }
}
@media (min-width: 751px) {
  .top__news_inner {
    width: 85.25%;
    margin: 0 auto;
  }
}
.top__news_inner .head {
  display: flex;
  align-items: baseline;
  margin-bottom: 15rem;
}
.top__news_inner .head span {
  line-height: 1;
  display: inline-block;
}
@media (min-width: 751px) {
  .top__news_inner .head span {
    font-size: 60rem;
  }
}
@media (max-width: 750px) {
  .top__news_inner .head span {
    font-size: 60rem;
  }
}
.top__news_inner .head span:first-letter {
  color: #9ab337;
}
.top__news_inner .head h2 {
  color: #000000;
  margin-left: 15rem;
}
@media (min-width: 751px) {
  .top__news_inner .head h2 {
    font-size: 30rem;
  }
}
@media (max-width: 750px) {
  .top__news_inner .head h2 {
    font-size: 30rem;
  }
}
.top__news_inner .content {
  background: #fff;
  box-shadow: 2rem 2rem 4rem rgba(28, 35, 0, 0.2);
  overflow-y: scroll;
}
@media (min-width: 751px) {
  .top__news_inner .content {
    padding: 20rem 30rem;
    height: 410rem;
  }
}
@media (max-width: 750px) {
  .top__news_inner .content {
    padding: 20rem 30rem;
    height: 410rem;
  }
}
.top__news_inner .content a {
  display: block;
}
.top__news_inner .content a:not(:last-of-type) {
  margin-bottom: 30rem;
}
.top__news_inner .content a time {
  display: block;
  color: #000000;
  margin-bottom: 10rem;
}
.top__news_inner .content a h3 {
  margin-bottom: 10rem;
  word-wrap: break-word; /* 長い単語やURLも途中で折り返す（古いブラウザ用） */
  overflow-wrap: break-word; /* モダンブラウザ対応 */
  word-break: break-word;
}
.top__news_inner .content a p {
  word-wrap: break-word; /* 長い単語やURLも途中で折り返す（古いブラウザ用） */
  overflow-wrap: break-word; /* モダンブラウザ対応 */
  word-break: break-word;
}/*# sourceMappingURL=style.css.map */